开源时序数据库 TimescaleDB

开源时序数据库 TimescaleDB

Apache-2.0
C/C++ 查看源码»
跨平台
2017-09-07
Ryan-瑞恩

TimescaleDB 是基于 PostgreSQL 数据库开发的一款时序数据库,以插件化的形式打包提供,随着 PostgreSQL 的版本升级而升级,不会因为另立分支带来麻烦。

TimescaleDB 架构

数据自动按时间和空间分片(chunk)

TimescaleDB 具有以下特点

1. 基于时序优化

2. 自动分片(自动按时间、空间分片(chunk))

3. 全 SQL 接口

4. 支持垂直于横向扩展

5. 支持时间维度、空间维度自动分区。空间维度指属性字段(例如传感器 ID,用户 ID 等)

6. 支持多个 SERVER,多个 CHUNK 的并行查询。分区在 TimescaleDB 中被称为 chunk。

7. 自动调整 CHUNK 的大小

8. 内部写优化(批量提交、内存索引、事务支持、数据倒灌)。

  • 内存索引,因为 chunk size 比较适中,所以索引基本上都不会被交换出去,写性能比较好。

  • 数据倒灌,因为有些传感器的数据可能写入延迟,导致需要写以前的 chunk,timescaleDB 允许这样的事情发生(可配置)。

9. 复杂查询优化(根据查询条件自动选择 chunk,最近值获取优化(最小化的扫描,类似递归收敛),limit 子句 pushdown 到不同的 server,chunks,并行的聚合操作)

10. 利用已有的 PostgreSQL 特性(支持 GIS,JOIN 等),方便的管理(流复制、PITR)

11. 支持自动的按时间保留策略(自动删除过旧数据)

示例代码

Creating a hypertable

-- We start by creating a regular SQL table
CREATE TABLE conditions (
  time        TIMESTAMPTZ       NOT NULL,
  location    TEXT              NOT NULL,
  temperature DOUBLE PRECISION  NULL,
  humidity    DOUBLE PRECISION  NULL
);

-- Then we convert it into a hypertable that is partitioned by time
SELECT create_hypertable('conditions', 'time');
加载中

评论(2)

zhenruyan
zhenruyan

引用来自“zhenruyan”的评论

很赞!
试试
zhenruyan
zhenruyan
很赞!

TimescaleDB 1.0.1 发布,基于 PG 的时序数据库

TimescaleDB 1.0.1 已发布,这是自10月底发布 1.0 正式版本后的首个修复和改进版本。 TimescaleDB 是基于 PostgreSQL 数据库开发的一款时序数据库,以插件化的形式打包提供,随着 PostgreSQL...

12/07 07:48

TimescaleDB 1.0 正式发布!基于 PG 的时序数据库

TimescaleDB 1.0 正式发布了,开发团队表示,自9月分宣布第一个候选版本以来,Timescale 的工程师团队合并了 50 多个 PR,以加强数据库,提高稳定性和易用性。 今天,TimescaleDB 1.0 宣布正...

11/01 07:32

TimescaleDB 1.0.0 rc3 发布,重要里程碑

TimescaleDB 1.0.0 rc3 发布了,TimescaleDB 是基于 PostgreSQL 数据库开发的一款时序数据库,以插件化的形式打包提供,随着 PostgreSQL 的版本升级而升级,不会因为另立分支带来麻烦。 此版...

10/19 07:43

TimescaleDB 1.0.0-rc2 发布,基于 PG 的时序数据库

TimescaleDB 1.0.0-rc2 发布了,TimescaleDB 是基于 PostgreSQL 数据库开发的一款时序数据库,以插件化的形式打包提供,随着 PostgreSQL 的版本升级而升级,不会因为另立分支带来麻烦。 主要...

09/30 07:41

TimescaleDB 0.12.1 发布,基于 PG 的时序数据库

TimescaleDB 0.12.1 发布了,TimescaleDB 是基于 PostgreSQL 数据库开发的一款时序数据库,以插件化的形式打包提供,随着 PostgreSQL 的版本升级而升级,不会因为另立分支带来麻烦。 主要更新...

09/20 07:21

TimescaleDB 0.12.0 发布,基于 PgSQL 的时序数据库

TimescaleDB 0.12.0 已发布,更新亮点: Scheduler framework:此版本引入了后台作业框架和调度程序。在 PostgreSQL 实例中运行的每个数据库都有一个调度程序,可以调度来自新作业表的重复作...

09/11 07:25

TimescaleDB 0.11.0 发布,基于 PgSQL 的时序数据库

TimescaleDB 0.11.0 已发布,更新亮点: Adaptive chunking(自适应分块传输):该功能目前处于测试阶段,允许数据库自动调整 chunk 的时间间隔,以便用户无需手动设置此间隔大小。在此版本中...

08/11 07:17

TimescaleDB 0.9.2 发布,基于 PgSQL 的时序数据库

TimescaleDB 0.9.2 已发布,TimescaleDB 是基于 PostgreSQL 数据库开发的一款时序数据库,以插件化的形式打包提供,随着 PostgreSQL 的版本升级而升级,不会因为另立分支带来麻烦。 Timescal...

05/06 08:01

TimescaleDB 0.9.0 发布,基于 PgSQL 的时序数据库

TimescaleDB 0.9.0 已发布,TimescaleDB 是基于 PostgreSQL 数据库开发的一款时序数据库,以插件化的形式打包提供,随着 PostgreSQL 的版本升级而升级,不会因为另立分支带来麻烦。 Timescal...

03/06 07:49

没有更多内容

加载失败,请刷新页面

没有更多内容

暂无问答

Ubuntu安装TimescaleDB 1.0

1.下载安装PostgreSql 下载地址 由于我使用的Ubuntu是16.04,所以添加对应的16.04的软件源 1.添加软件源 cd /etc/apt/sources.list.d/ echo "deb http://apt.postgresql.org/pub/repos/apt/ x...

11/01 19:26
13
0
数据的未来:SQL正在击败NoSQL?

读 随着计算机的日益普及,各种应用每天产生的数据量呈指数级增长。如何存储这些数据,有效处理分析这些数据,并从中提取有价值的信息,是当下迫切需要解决的问题。在过去的十年里,NoSQL在软件...

2017/11/01 11:07
27
0
awk

更新中

01/17 21:37
15
0
为什么说小程序诞生在微信生态更受欢迎——麦鱼科技为您解答

小程序,在2017年无论在业界,还是在大众都掀起一股旋风的新时代科技产物。现在无论是微信、小米、谷歌都在涉足。都在进行开发和研究市场布局。但是就目前国内的情况来看,相对受到追捧的还是...

02/13 09:58
1
0
MySQL8与PG10:新版本下的较量谁更胜一筹?

既然MySQL 8和PostgreSQL 10已经发布了,现在是时候回顾一下这两大开源关系型数据库是如何彼此竞争的。 在这些版本之前,人们普遍认为,Postgres在功能集表现更出色,也因其“学院派”风格而...

06/12 14:22
9
0

没有更多内容

加载失败,请刷新页面

没有更多内容

返回顶部
顶部