为什么腾讯QQ的大数据平台选择了InfluxDB数据库?( 四 )
为什么通用数据库在时序场景上不是最优的选择呢?许多通用数据库正在为时序数据添加一些支持 , 虽然可能很容易使用 , 但它们基本上都不是针对海量时序数据的吞吐量和实时操作而设计的 。
与InfluxDB相比 , 通用数据库 , 如Cassandra、MongoDB、HBase等 , 需要开发人员投入大量的时间进行代码编写 , 以开发与InfluxDB类似的功能 。 具体来说 , 开发人员需要做如下工作:
- 编写代码实现跨集群数据分片功能、聚合运算和采样功能、数据生命周期管理功能等 。
- 实现丰富的API接口 。
- 编写用于数据采集的工具 。
- 实现实时处理模块并编写用于监控和警报的代码 。
- 编写可视化引擎以向用户显示时序数据 。
1. InfluxDB vs ElasticSearch
ElasticSearch是专为搜索而设计的系统 , 是实现搜索功能的绝佳选择 。
然而 , 对于时序数据 , 却并非如此 。 在处理时序数据时 , InfluxDB的性能远远超过ElasticSearch系统 , 对于写入吞吐量 , InfluxDB通常优于ElasticSearch 5~10倍 , 具体差值取决于架构 。 对于特定时序的查询速度 , 使用ElasticSearch比使用InfluxDB要慢5~100倍 , 具体差值取决于查询的时间范围 。
最后 , 如果需要存储原始数据以便稍后查询 , 则ElasticSearch上的硬盘占用比InfluxDB大10~15倍 。 如果先汇总数据再存储 , ElasticSearch的硬盘占用比InfluxDB大3~4倍 。 综合来看 , ElasticSearch非常适合进行搜索 , 但不适用于时序存储和实时分析 。
2. InfluxDB vs MongoDB
【为什么腾讯QQ的大数据平台选择了InfluxDB数据库?】MongoDB是一个开源的、面向文档的数据库 , 俗称NoSQL数据库 , 用C和C ++语言编写 。 虽然它通常不被认为是真正的时序型数据库(TSDB) , 但它经常被用作时序存储系统 。 它以时间戳和分组的形式提供建模原语 , 使用户能够存储和查询时序数据 。
MongoDB旨在存储“无模式”数据 , 其中每个对象可能具有不同的结构 。 实际上 , MongoDB通常用于存储内容大小可变的JSON或BSON对象 。 由于其采用通用性和无模式数据存储区设计 , MongoDB无法利用时序数据的高度结构化特性 。
需要特别指出的是 , 时序数据由标签(键/值串对)和时间戳组成 , 这时必须对MongoDB做专门配置以支持时序数据 , 但这样做效率很低 。
相比MongoDB , InfluxDB的性能和成本优势明显 , InfluxDB的写性能大约是MongoDB的2.4倍 , 存储效率大约是MongoDB的20倍 , 查询效率大约是MongoDB的5.7倍 。 综合来看 , MongoDB非常适合文档和自定义对象 , 但不适用于大规模的时序数据和实时分析 。
3. InfluxDB vs OpenTSDB
OpenTSDB是一个可扩展的分布式时序型数据库 , 用Java语言编写 , 构建在HBase之上 。 它最初是由Beno?t Sigoure于2010年开始编写的 , 并在LGPL下开源 。
OpenTSDB不是一个独立的时序型数据库 , 相反 , 它依赖HBase作为其数据存储层 , 因此OpenTSDB时序守护进程(OpenTSDB中的TSD用语)在实例之间没有共享状态可以高效地提供查询引擎的功能 。
OpenTSDB允许通过其API进行简单的聚合和数学运算 , 但没有完整的查询语言 。 OpenTSDB支持毫秒的分辨率 , 但随着亚毫秒级操作的普及 , OpenTSDB有时会出现精度不足的问题 。
相比OpenTSDB , InfluxDB的性能和成本优势明显 , InfluxDB的写性能大约是OpenTSDB的5倍 , 存储效率大约是OpenTSDB的16.5倍 , 查询效率大约是OpenTSDB的3.65倍 。
另外 , OpenTSDB的设计初衷主要是用于生成仪表板图 , 不是为了满足任意查询 , 也不是为了存储数据 。 这些限制会影响它的使用方式 。
- 热量|为什么有的人喝凉水都长肉,有的人却光吃不胖?营养科医生:原因其实很简单
- 驱动中国腾讯内部人士爆料:与“老干妈”合作多个环节有漏洞 却无人察觉
- 疫情|美国疫情速报:确诊数已逼近284万;特朗普发话:99%新冠病例完全无害;美专家:实际感染数或是现有数据10~24倍
- 央视记者火线追踪,腾讯告老干妈成热点,检察机关可以提前介入
- 蜜蜂蜇熊刺针拔不出而被肢解致死
- 三星手机|为什么三星手机,在我国越来越没市场了?原来这是必然结果
- 主从|Redis系列(五):主从复制
- 腾讯|原创 腾讯如果想冻结阿里的资金,阿里除了束手就擒还有办法反制么?
- 不执著财经|为什么越来越多的外企都搬迁到东南亚?
- 腾讯财讯|刚刚!中信证券、中信建投又澄清了,第二个“南北车”难诞生?