手记

【九月打卡】第13天 如何借助NoSQL的特性助力业务场景

课程名称Java架构师-十项全能

课程章节

如何借助NoSQL的特性助力业务场景

主讲老师

姚半仙

课程内容

MongoDB是摇摆于SQL和NoSQL之间的一种形态,是最接近SQL的一种NoSQL数据库,它的特点是面向集合。它是由Collection唯一标识的文档,其实就是JSON。

下面是一个MongoDB的例子:

MongoDB对事务的支持并不强。对于跨文档事务的场景,如QPS比较高,底层的存储模型经常发生变化,或者存储对象非常大等等的场景,都可以迁移到MongoDB实现。

 

Key-Value数据库:

Redis、Tair、Memcached。但是要提前知道数据的key,才能查询到需要的数据。value不能反向查找key。Key-Value数据库是一种快速寻址的数据库。主要用于业务缓存、限流/计数器等。

 

图形化数据库:Neo4J、GraphQL。做复杂网状结构数据的构件和查询。

 

HBase:列数据库,只要定位到当前列,就能拿到纵轴的一个聚合。适合存储大量数据。会对数据进行高效压缩,计算时节省内存和算力。 只适合用作数据仓库、数据分析和存储、并行查询和数据压缩。

 

ES、Solr:搜索引擎。

当搜索Java架构师时,系统会对Java架构师进行分词, 分成Java、架构师。然后在自己的倒排索引中去查询它所对应的位置。比如java对应的ID是1,3,6、架构师对应的ID是4,5。然后关联以java、架构师对应的课程。

倒排索引是把正向索引反过来,正向索引相当于key找到value,倒排索引是通过value找到key。

ES的数据异构方案怎么使用?如使用Canal讲关系型数据库的数据,异构到ES中。

0人推荐
随时随地看视频
慕课网APP