搜索:InfluxDB

InfluxDB架构设计和数据布局

原创 2018-07-20 11:44 阅读(417)次
InfluxDB架构设计和数据布局 作为专门针对时间序列数据的存储,InfluxDB在使用的时候也需要针对本身的特性结合需求来设计schema。 1. 针对tags和field的特性进行设计schema tag 被索引,查询速度快。field没有做索引,查询需要scan,速度慢。 根据以上特性 ⑴ 常用来查询的数据存放在tags中 ⑵ 计划用来group by() 的数据,放在tags中 ⑶ 数据计划用InfluxQL function来处理的,放在fields中 ⑷ 数据需要表示为string以外的值,放在fields中。(tags始终表示为字符串) 2. 避免用InfluxQL的关键字...

InfluxDB的设计见解和权衡

原创 2018-07-19 18:21 阅读(297)次
作为时序数据库,InfluxDB在设计的时候,对一些具体问题做了优化,提高性能的同时也需要作出权衡,削减一些功能。 如下  方案一:趋向赞成问题,方案二:趋向反对问题 1. 当DB收到多次相同的数据,认为他是client多次发送了相同的数据。 方案一:赞成,为此提高性能,照单全收。InfluxDB是进行field set的整合。 方案二:反对,不支持存储重复数据,可能发生覆盖。 2. 时序数据库很少发生删除。如果发横几乎是删除大范围的旧数据,而不是删除刚刚插入的新数据。 方案一:限制删除权限,增加读写性能。 方案二:删除功能强烈限制。(我理解甚至不提供删除功能) 3. 更新数据很少发...

初识InfluxDB

原创 2018-07-18 16:05 阅读(266)次
如果对时序数据库概念还不是很了解,建议先看我的上一篇文章 What is a Time Series Database? InfluxDB主要用来对大量带时间戳数据的存储,包括DevOps监控,应用程序metrics,物联网传感器数据和实时分析。 通过配置InfluxDB以保持数据达到规定的时间长度,自动删除过期数据,从而节省机器空间。 InfluxDB还提供类似SQL的查询语言,用于与数据交互。 它用GO编写,所以编译后是没有对外部依赖的二进制文件。 它具有高性能,对相同的数据有高吞吐量的插入,压缩和实施查询。TSM引擎允许高吞吐量的数据插入和数据压缩。 它提供了高性能的API和H...