网易首页 > 网易号 > 正文 申请入驻

博客数据库连接Elasticsearch用MySQL还是MongoDB更合适

0
分享至

若进行博客等文本类数据的读写以及搜索引擎连接的解决方案对比,这就包括了搜索引擎数据同步,文章属性、文章内容、文章内图片以及图片属性的存储和查询,可以肯定的下结论:MongoDB的解决方案中要远远好于MySQL的解决方案。

一、从开发工序角度

MySQL的文章读写方式

方式一:文章标题、作者、标签、时间和内容存关系表,图片存OSS,地址存关系表

上述方式因为OSS和MySQL没有事务关系,因此需要编辑文章过程中存储图片和存储草稿都是分开设计,后台写入是分开执行,查询过程更适合前端异步获取图片,另外OSS需要额外的访问授权。

最最关键的问题是OSS收费!

方式2:文章标题、作者、标签、时间和内容存关系表,图片存本地,地址存关系表,Nginx作为图片查询代理

上图中实线为写入过程,虚线为查询过程。写入本地文件的过程依然无法保证事务,因此仍需要后台分开执行,查询过程Nginx的业务授权非常麻烦,需要引入Openresty和授权服务器的对接,而且文件的存储存在文件数超过操作系统最大限制的可能,图片缺乏可靠性备份机制。

唯一的好处就是图片存储本地不用额外付费。

我们再看看MongoDB文章读写方式

如上图方式一:整存整取,MongoDB可以将文章标题、作者、标签、时间和内容,图片存在一个集合中,那么图片为BSON格式,形成整存整取,若文章+图片的完整文档不超过16M,是BSON比较合适。 若文档因为图过大,超过16M,就使用方式二,使用MongoDB提供的GridFS插件存取。

方式一:从开发工序上最简单,但不适合太大图片,导致文档整体超过16M。

方式二:相当于需要访问不同的MongoDB数据库,从代码复杂度上就要更高,而且一致性控制不如方式一好。

其他优势:这两种方式都可以得到MongoDB的统一访问控制保护。这两种方式都使图片通过副本集实现可靠性备份。

但最最关键的是没有MySQL变扭的超出技术范围的架构考虑,到底用OSS要收费,还是用Http代理的免费模式,容忍可靠性、复杂性及安全性问题超级大的情况。

二、从性能角度看

1、文章插入性能

从目前MongoDB4实测情况看,给定时间段内数据写入量级越大,MongoDB的完成时间就比MySQL的完成时间越短。因此博客网站平台或者博客爬虫系统,写入的数据量特别大的情况下,MongoDB可以提供更优越的负载能力。

2、伸缩性

MongoDB和MySQL都可以进行数据库级的内存缓存,但是MongoDB可以将文档最大可能的缓存在内存中,得到最优的性能表现。若内存不够的情况出现就会溢出到磁盘中,那么性能就会减弱,这个时候可以通过水平分区,实现更好的内存表现。

MySQL的分片必须通过自研或引入第三方的分片应用实现手动分片,即一张数据表迁移到不同MySQL库中,按照数据记录进行分表,最终达到分片应用对多库实现负载均衡的目的,这种方式的缺点就是实现分片的过程非常复杂和麻烦。

MongoDB的分片属于其核心架构之一,也是NoSQL天然所擅长的能力,因此MongoDB可以在用户不干预的情况下实现集合分片,这比MySQL的手动分片不知道要轻松多少。

上图中Mongos路由器作为接口,连接整个集群,将所有的读写请求指引到合适的分片上,配置服务器持久化分片集群的元数据,以及数据在分片之间进行迁移的历史信息,而且配置服务器本身也是高可靠的。

三、与Elasticsearch连接角度看

MySQL连接Elasticsearch

一种方式可以通过CDC(数据变更捕获)工具抓取binglog到Kafka,再由Kafka管道输出到Elasticsearch

另一种方式通过JDBC“轮询”数据库,再推送Elasticsearch

第一种方式在引入CDC抓取工具,例如debezium后,会让整个流程非常复杂,经历的环节过多,仍要控制好Kafka的按键分区和折叠模式,数据管道也要解决关系结构向文档结构的ETL过程。

当然方式一也可以不用Kafka,直接走Logstash管道的过滤通道,但是第三方CDC抓取工具就要再考虑一层与Logstash的对接过程。

第二种方式虽然简单,不过JDBC轮询对MySQL有不小的影响,而且业务表需要提供变化日志表,再有Logstash等清洗程序再做ETL合并同步,这个过程也不容易。

我们再看MongoDB连接Elasticsearch

通过mongo-connector可以轻松实现MongoDB到Elasticsearch的数据实时同步

mongo-connector通过监听oplog,非常类似MySQL CDC工具对binglog的监听,实时对数据进行采集并直接同步到Elasticsearch中,因为MongoDB和Elasticsearch都是无模式的文档型数据库,因此ETL过程可以由mongo-connector工具实现MongoDB集合向ES索引的无缝写入,会省去ETL过程很大的麻烦。

四、总结

从上面的架构描述上,其实已经强有力地论证了MongoDB无论作为存储文档型的博客文章也好,还是与其他专有搜索引擎同步也好,相对于MySQL,是更好的解决方案。

我是“读字节”,来自西安的技术创业者,专注大数据技术和分布式架构的解读、创作、咨询

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
沙特突发!

沙特突发!

中国基金报
2024-06-03 00:14:51
军界高层:被策反成间谍,被查时携情妇叛逃美国,后来被谁暗杀?

军界高层:被策反成间谍,被查时携情妇叛逃美国,后来被谁暗杀?

阿胡
2024-05-21 11:27:48
副高已环绕地球一圈,今年要热到离谱?权威预测:6月台风少偏热

副高已环绕地球一圈,今年要热到离谱?权威预测:6月台风少偏热

中国气象爱好者
2024-06-03 12:22:49
河北一男子手拿镰刀致三人死亡!受害者苦苦哀求,网友:太残忍了

河北一男子手拿镰刀致三人死亡!受害者苦苦哀求,网友:太残忍了

三月柳
2024-06-02 15:30:06
当普通人都感觉经济很难的时候,其实经济危机早就全面爆发了

当普通人都感觉经济很难的时候,其实经济危机早就全面爆发了

芯怡飞
2024-06-01 14:19:03
女人在过夫妻性生活时,为什么总发出声音?医生:大多数人不了解

女人在过夫妻性生活时,为什么总发出声音?医生:大多数人不了解

皮皮讲文
2024-01-02 10:36:17
女子穿瑜伽裤接孩子太骨感,男家长回头观望,网友:这穿着不合适

女子穿瑜伽裤接孩子太骨感,男家长回头观望,网友:这穿着不合适

小虎新车推荐员
2024-06-03 08:22:45
麦价不如水!网友亲测后满眼泪:谷贱伤农别再忽悠了,粮荒将至

麦价不如水!网友亲测后满眼泪:谷贱伤农别再忽悠了,粮荒将至

大风文字
2024-06-01 09:09:42
上海财政是唯一自给率在100%以上省区...

上海财政是唯一自给率在100%以上省区...

金石随笔
2024-06-03 00:06:20
英国禁止1年制留学生暑假回国或离境

英国禁止1年制留学生暑假回国或离境

鬼菜生活
2024-06-01 10:22:20
欧文曾踩踏绿军队标,而獭兔却为他开脱,你怎么看?

欧文曾踩踏绿军队标,而獭兔却为他开脱,你怎么看?

舟瑜
2024-06-03 17:11:03
美国的渗透开始奏效,扶持的内鬼纷纷在华露头,专家:全部铲除!

美国的渗透开始奏效,扶持的内鬼纷纷在华露头,专家:全部铲除!

小lu侃侃而谈
2024-06-02 21:40:53
吃掉苏联的一百万亿美元败光了,过惯奢侈生活的美国,只能内战了

吃掉苏联的一百万亿美元败光了,过惯奢侈生活的美国,只能内战了

小杨历史
2024-06-03 11:00:22
胡塞打了美国航母,然后70%的国家都有想法了!

胡塞打了美国航母,然后70%的国家都有想法了!

武当云中客
2024-06-01 21:33:39
《庆余年3》正式官宣,十大主演名单公布,开播时间初步确定

《庆余年3》正式官宣,十大主演名单公布,开播时间初步确定

娱乐倾城巷
2024-05-31 17:06:19
中国女排0比3不敌意大利,世界排名被日本女排超越

中国女排0比3不敌意大利,世界排名被日本女排超越

澎湃新闻
2024-06-02 20:50:31
天津大学迎来新院长,年仅36岁的女子担任,令人震惊!

天津大学迎来新院长,年仅36岁的女子担任,令人震惊!

飞哥AI矩阵
2024-06-01 12:55:25
比亚迪卖疯了!5月新能源车卖了超33万辆!赛力斯也发布了成绩单

比亚迪卖疯了!5月新能源车卖了超33万辆!赛力斯也发布了成绩单

每日经济新闻
2024-06-02 17:10:07
阿里扎:科比比詹姆斯更值得GOAT的称号

阿里扎:科比比詹姆斯更值得GOAT的称号

懂球帝
2024-06-02 22:58:15
去了一趟上海,发现上海人3个奇怪现象

去了一趟上海,发现上海人3个奇怪现象

西莫的艺术宫殿
2024-06-02 22:45:20
2024-06-03 17:36:49
读字节
读字节
大数据,软件架构的深度解读
11文章数 85关注度
往期回顾 全部

科技要闻

2万字演讲|黄仁勋剧透 未来3年新品有这些

头条要闻

美方对中国官员实施签证限制 外交部回应

头条要闻

美方对中国官员实施签证限制 外交部回应

体育要闻

万人空巷!皇马举行欧冠夺冠庆典

娱乐要闻

混战升级!编剧赵冬苓力挺王阳遭围攻

财经要闻

接班100天,宗馥莉急了

汽车要闻

搭载华为HiCAR 传祺M6 MAX售14.58万元

态度原创

游戏
艺术
数码
旅游
军事航空

韩游十年如一日?18禁MMORPG新游,玩家:挺烧的没几万搞不定

艺术要闻

穿越时空的艺术:《马可·波罗》AI沉浸影片探索人类文明

数码要闻

618序幕揭开,这款洗净比天花板洗衣机一定会是你的菜!

旅游要闻

哈尔滨至香港航线正式开通

军事要闻

朝国防省:朝方将暂停向韩方投放垃圾

无障碍浏览 进入关怀版