InfluxDB如何平衡打点速度和压缩比

在实际使用InfluxDB的过程中,发现一个有意思的现象,打点速度越快,同样多的数据点,落到磁盘上的文件就会越大,原因是什么呢?这篇文章就来探究一下打点速度和压缩比的规律。

Shard Group & Shard & tsm file的关系

我们知道InfluxDB底层的存储文件是tsm文件,关于tsm的详细格式可以参考这里,下面是shard gorup和shard的关系:

InfluxDB数据压缩实践

在上述InfluxDB压缩算法的文章中,描述了具体使用的压缩算法,但单就这些算法并不能指导实践,为此本文针对不同的数据类型总结了压缩率,并给出了能提高压缩率的实际方法,写点姿势,希望能在实际生产中指导实践。

influx_inspect dumptsm xxx.tsm

上述命令是InfluxDB提供的一个inspect tsm文件的工具,运行上述命令会产生如下输出

Summary:

File: /tmp/tsm1-test412750211/tsm1test039799558

......

InfluxDB数据压缩算法

InfluxDB版本1.4.3

InfluxDB中支持的数据类型有:

int

float

bool

string

timestamp

int类型的压缩

// Write encodes v to the underlying buffers.

func (e *IntegerEncoder) Write(v int64) {

// Delta-encode each value as it's written. This happens before

//......

[build micro service using Golang] performance tracing

It's important to trace the performance of the program. When build micro service with golang, we

【努力学习区块链】使用Sia出租磁盘空间来获取收益

什么是Sia

Sia是一个把区块链技术应用到分布式存储的平台,他的主要目标是将平常普通群众的未被使用的空闲磁盘空间利用起来做成一个全球的分布式存储系统,从而使得存储成本降低,由于使用的是区块链,所以在数据的安全性方面有相对于云厂商更好的体验。

目前官方宣布的价格为$2/TB/month,远远小于AWS的23/TB/month的价格。

本文的其余部分将介绍如何将自己的磁盘空间挂载到Sia网络上以赚取收益。

工作原理

在Sia网络中,主要有两个角色,出租者和寻租者;

出租者是想要把自己的......

为什么我需要一个时序数据库

时序数据是一系列带有时间戳的数据组成的序列,比如

1. 单个股票在一个时间范围内的价格

2. 某个地点在一段时间范围内的温度变化

3. 某个传感器在一段时间范围内的参数变化

等等

实际上,随着传感器的价格越来越便宜,网络的普及、智能网关和云端应用的出现,人类控制,监控物理世界的能力越来越强,越来越多的设备、传感器接入网络,从而这些设备和传感器的信息越来越容易拿到。

根据 DB-Engines的统计, Time Series DBMS是发展最为迅猛的DBMS,这也证实上上述推断:物理世......