时序数据库
阅读数:103 评论数:0
跳转到新版页面分类
数据库
正文
0、时序数据库的特点
(1)按时间顺序写入,没有更新与删除操作。
(2)写多读少
1、时间序列模型
每个数据结构如下:
(1)timestamp:表示数据发生的时间。
(2)metric:当前数据的标识,有些系统中也称为name。
(3)value:数据的数值 。
(4)tag:附属属性。
2、几种时序数据库对比
时序数据库 | 优点 | 缺点 |
OpenTSDB |
-Metric+Tags -集群方案成熟(HBase) -写高效(LSM-Tree) |
-查询函数有限 -依赖HBase -运维复杂 -聚合分析能力弱 |
InfluxDB |
-Metrics+Tags -部署简单、无依赖 -高效存储 |
-开源版本没有集群功能 -存在版本兼容问题 -存储引擎在变化 |
ClickHouse |
-具有强大的多维聚合分析能力 -实时高效数据读写 -支持类SQL查询 -具有丰富的函数支持 -具有分布式容错框架 -支持原始数据查询 |
-集群功能较弱 |
Elasticsearch
Elasticsearch是一个分布式的开源搜索和分析引擎,当然也可以它作为时序数据库使用。
总结
可以按照以下需求自行选择合适的存储,但要以实践为准:
(1)数据量小(亿级),不需要分布式:InfluxDB
(2)数据量较大,分布式集群:opentsdb
(3)需要兼顾时间序列与聚合:elastisearch。
相关推荐
一、概述
事物处理技术主要包括数据库恢复技术和并发控制技术。
所谓事务是用户定义的一个数据库操作序列,这些操作要么全做要么全不做。事务通常以begin transaction开始,以commit或ro
在用户看来,关系模型的数据的逻辑结构是一张二维表。关系模式中常用的关系操作包括:选择(Select)、投影(Project)、连接(Join)、除(Divide)、并(Union)、交(Inte
一、B-tree
我们常见的数据库系统,其索引使用的数据结构多是B-Tree或者B+Tree。例如,MsSql使用的是B+Tree,Oracle及Sysbase使用的是B-Tree。所以在最开始,简单
经纬度保留到小数点后7位,精度就是1cm,所以mysql数据库保存经纬度常用decimal(10,7)。因为decimal在mysql中以字符串存储,所以相对于float来说更精确,相对于字符串
通常分为六个阶段:
一、需求分析
需求分析不仅要明确用户的各种需求,还要充分考虑今后可能的扩充与改变。常用结构化分析方法(SA, Structured Analysis),即自上而下,逐层分解的方式分
一、为什么要引入反规范化
原因在于规范化的目标是减少冗余,但是与此同时也增加了查询数据的难度。如果系统对查询的频率和性能要求很高,那么就需要引入受控冗余来降低规范化程度。
二、主要反规范化技术
1、增