“听说了吗?这家公司即将有一个大项目要来!”tomcat神秘地说道。
隔壁的Nginx闻声说道:“什么大项目?”
“说是什么大数据,要实现10亿级数据秒级检索!”
“啥,10亿,秒级?”
“是啊,这次不知道又是哪个数据库要受苦了。”tomcat笑着说道。
“MySQL呢,来活儿了!”Nginx喊。
MySQL一听这项目情况,连连摇头,“别开玩笑了,我这小本买卖,哪承接得了这种业务啊,这数据量太大了,还要秒级检索,我可干不了。”
“你这专业的数据库都干不了,那谁能干?”
“我是以事务为基础的关系型数据库管理系统,关注ACID特性和数据完整性,在传统业务场景中是我的强项。你说的这个场景它不是我的擅长啊!我感觉HBase老哥能揽这活儿,他不是号称大数据的数据库吗,铁定能行。”
一旁的HBase一脸淡定,毕竟是大数据领域的大佬,气场还是很稳,缓缓问道:“区区10亿数据,有什么好怕的,他们准备用多少台服务器?”
“听说是单机。”tomcat说道。
一听这话,HBase瞪大了眼睛,“单机?那我可干不了。”
“你不是干大数据的吗,怎么也干不了?”Nginx问道。
“我确实是干大数据的,但我要依赖Hadoop生态,从来都是组团战斗,采用集群化部署,这单机要实现这么大数据量秒级检索,我可没把握!”
“还是看我的吧。”一个声音从角落里传来。
大伙寻声看去,原来是ElasticSearch。
“我还没说话呢”,这时,又一个声音从另一个角落出来。
大伙再次看去,MongoDB也从角落里走了过来。
“你们俩,能行吗?”,MySQL有些怀疑地问道。
“我是专门用于全文搜索和分析的数据库,使用倒排索引进行快速搜索。我在处理大型数据集时非常擅长,集群和单机我都能部署,虽然单机10亿数据量还要秒级查询挑战很大,但我相信还是可以试一试。”ES自信地说到。
大伙听完都点了点头。
“再快你也是用Java写的,而我是用C++写的!我是一款基于文档的数据库,提供灵活的数据模型,可以轻松地处理非结构化数据。我的查询速度很快,并且能够支持高并发读写操作,这个项目我也可以试一试。”
“你C++写的怎么了,未必有我快!我的全文检索性能,你能比吗?”ES有些不服。
MongoDB也不退让,“这项目又没说要全文检索,恐怕是英雄无用武之地。反倒是你那写入数据的高延迟才让人担心呢。”
“这项目也没强调数据的实时性啊!”
见两位争执不下,MySQL站了出来,“好了好了,大家都别嘴上工夫逞强了,到底谁更技高一筹,到时候看测试结果就知道了!我打听到明天程序员就要来做性能测试,你们准备准备吧!”
这俩又互放了几句狠话就离开了,喧闹的服务器总算安静了下来。
第二天,大家都在关注着这个ElasticSearch和MongoDB的比试,等了很久却一直没有消息。
一直到了下午,Nginx才传来了消息:“兄弟们,ES和MongoDB两位都没戏了!我刚刚听浏览器告诉我,程序员从网上下载了一个新的数据库软件,一会儿就要传上来安装了!”
“叫什么名字?”,大伙齐声问到。
“叫什么Click···,哎,我有点想不起来了!”Nginx支支吾吾。
“没听过这号人物啊,咱数据库圈啥时候来的新人?”MySQL说道。
MongoDB不屑地说,“新人啊,那不用怕。”
倒是ES有些不安,眉头紧锁,低声说道:“这名字有点耳熟,好像有点厉害的样子。”
就在大伙说话间,这新的数据库软件已经安装完成。
这一下大家看清楚了他的名字:ClickHouse!
他热情地跟大家打招呼,“大家好,我是ClickHouse,大家都叫我CK,刚来到这里,多多关照。”
大伙一阵寒暄后,程序员对CK的性能测试开始了。
只见数据源源不断的通过网络灌了进来,才没多一会儿就超过10亿条了。
“你的写入速度怎么这么快?”,MySQL惊讶地问道。
“你这确定是写了10亿条数据吗,怎么才占了10几个G存储?”
“我是一个列式存储的数据库,使用高性能的压缩算法压缩数据,来存储和检索大量数据,所以占用空间会省很多,这对查询也有帮助,可以减少很多I/O数量,提升查询性能。”
“有那么厉害吗,能查多快?”
ClickHouse只是笑了一下,并没有回答。
说话间,程序员开始了查询性能测试。
tomcat说到:“来了老哥,查询请求过来了。”
话音刚落,tomcat就收到了数据,前后不过800毫秒的时间。
接着程序员又进行了多次查询测试,CK基本上都能做到秒级响应,有时候甚至在几十毫秒。这一波操作下来,大伙看得叹为观止。
连一向自负的MongoDB也忍不住问到:“好家伙,你咋这么快?”
“我跟您一样,也是用C++写的,除了列式存储、压缩数据,我还有稀疏索引、跳数索引、SIMD指令应用等技术,所以比较快。”
大伙都纷纷点头,凑了过来,围了一圈儿,让CK详细地分享起他高性能的秘密。
一旁的HBase叹了口气说道:“真是长江后浪推前浪啊!”
如果字段的最大可能长度超过255字节,那么长度值可能…
只能说作者太用心了,优秀
感谢详解
一般干个7-8年(即30岁左右),能做到年入40w-50w;有…
230721