1.2.2 InfluxDB的历史

随着工业的快速发展,传统的关系型数据库面对快速增长的时序数据开始显得逐渐吃力,由于采用BTree的随机读写的模式,在寻道上会消耗很多时间,在目前物联网数据的大量写入要求下,传统关系型数据库的效率太过低下,于是时序数据库应运而生。

从图1-3中可以看出,时序数据库最早可追溯到20世纪90年代,为满足监控领域时序数据的存储要求,以RRDTool和KDB+为代表,出现了第一批时序数据库,它们将一个固定大小的数据库内嵌在监控系统中,来达到随时间变化快速存储数据的能力,但其缺点是读取能力依旧较弱,并且处理的数据比较单一。

图1-3 时序数据库发展史

后来随着大数据发展,不只是监控领域,其他领域也出现了需要处理大量时序数据的需求。从2011年年始,陆续出现了以openTSDB、Kairos为代表的基于分布式存储的数据库,其对时间进行了针对性优化。例如,openTSDB的底层依赖HBase集群存储,根据时序的特征对数据进行压缩,节省了存储空间。相较于之前的时序数据库,在存储和读写性能方面上有了显著提升,但其依赖Hadoop和HBase环境,使得部署及维护成本极高。

由于openTSDB本身的不足再加上部署维护不便,促成了低成本时序数据库的诞生。在这场混战中,InfluxDB得益于其高效的数据读取存储的能力和算法,慢慢地占据了主流市场。

Errplane公司在2013年下半年开始以开源项目的形式开始了InfluxDB的研发。其目的是提供一个高性能的监控以及告警的解决方案。2014年11月,Errplane公司获得了梅菲尔德风险投资公司与Trinity Ventures领投的A轮投资,金额高达810万美元。在2015年,Errplane正式更名为InfluxData,在2016年9月获得了金额高达1600万美元的B轮投资,又于2018年2月获得3500万美元的C轮投资。