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.6.1 发布,基于 PostgreSQL 的时序数据库

TimescaleDB 1.6.1 发布了。TimescaleDB 是基于 PostgreSQL 开发的一款时序数据库,以插件化的形式打包提供。 此维护版本包含自 1.6.0 版本以来的错误修复,尤其是解决了连续聚合、time_buck...

03/21 07:27

TimescaleDB 1.6.0 发布,基于 PostgreSQL 的时序数据库

TimescaleDB 1.6.0 发布了。TimescaleDB 是基于 PostgreSQL 开发的一款时序数据库,以插件化的形式打包提供。 此版本主要新特性使用户可以将聚合数据保持为连续聚合,同时使用drop_chunks删除...

01/16 07:26

TimescaleDB 1.4.0 发布,支持多个连续聚合

TimescaleDB 1.4.0 发布了,TimescaleDB 是基于 PostgreSQL 开发的一款时序数据库,以插件化的形式打包提供。 此版本包含连续聚合的主要新功能,并使分析查询的性能得到改进。 1.3.0 版本中添...

2019/07/20 07:29

TimescaleDB 1.3.2 发布,安全修复版本

TimescaleDB 1.3.2 发布了,TimescaleDB 是基于 PostgreSQL 开发的一款时序数据库,以插件化的形式打包提供。 此维护版本包含自 1.3.1 版本以来的错误和安全修复程序。官方认为该更新具有中到...

2019/06/26 07:11

TimescaleDB 1.3.0 发布,新增连续聚合功能

TimescaleDB 1.3.0 发布了,TimescaleDB 是基于 PostgreSQL 开发的一款时序数据库,以插件化的形式打包提供。 新版本更新如下: 主要特性 #1184 添加连续聚合功能 次要特性 #1005 启用每个...

2019/05/08 06:36

TimescaleDB 1.2.0 发布,首次使用 TIMESCALE 许可

TimescaleDB 1.2.0 发布了,TimescaleDB 是基于 PostgreSQL 开发的一款时序数据库,以插件化的形式打包提供。 1.2.0 第一次使用了 TIMESCALE License,License 详情查看:https://github.co...

2019/01/31 07:11

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

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

2018/12/22 07:24

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

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

2018/12/14 07:07

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

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

2018/12/07 07:48

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

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

2018/11/01 07:32

没有更多内容

加载失败,请刷新页面

1
回答
关于TSDB分区时间间隔的问题

TSDB 自动按照时间间隔分区,比如 7 days,这个是自动从每周一开始,还是从入库去启动的这一天开始计算?

02/24 22:01

没有更多内容

加载失败,请刷新页面

没有更多内容

edgedb 集成timescaledb

timescaledb 是一个强大的pg 扩展,可以让我们的pg 数据库支持时序数据库的能力,以下测试下与edgedb 集成 预备 因为edgedb 当前是基于pg11 开发的,所以需要使用pg11 的timescale 扩展 环境...

2019/04/23 19:17
15
0
TimescaleDB 简单试用

TimescaleDB 是一个对于pg进行了改造的时序数据库 安装测试使用docker 安装&&运行 docker run -d --name timescaledb -p 5432:5432 timescale/timescaledb or 集成postgis docker r...

2018/06/23 22:34
45
0
prometheus远程存储之influxdb和timescaledb对比测试

写在最前面 看了timescaledb官方的测试文章TimescaleDB比拼InfluxDB:如何选择合适的时序数据库?,发现差异较大的只在存储, 就准备用timescaledb,因为公司有专门的数据库小组,可以对pg进...

2019/07/11 16:58
3.3K
0
TimescaleDB比拼InfluxDB:如何选择合适的时序数据库?

https://www.itcodemonkey.com/article/9339.html 时序数据已用于越来越多的应用中,包括物联网、DevOps、金融、零售、物流、石油天然气、制造业、汽车、太空、SaaS,乃至机器学习和人工智能...

2019/02/13 15:22
104
0
Collecting metrics with the PostgreSQL and TimescaleDB output plugin for Telegraf

转自:https://docs.timescale.com/v1.3/tutorials/telegraf-output-plugin 文章演示了如何使用pg output 插件 以及Telegraf agent 获取系统信息到timescaledb,一篇不错的实践类文章 一张参...

2019/06/08 09:00
3
0
timescaledb 集成prometheus

timescaledb 1.0 已经发布了,同时支持prometheus 使用doker-compose 运行 环境准备 docker-compose 文件 version: '2.1' services: pg_prometheus: image: timescale/pg_prometheus:...

2018/09/12 23:56
33
0
使用outflux 导入influxdb 的数据到timescaledb

influxdb 以及timescaledb 都是不错的时序数据库,timescaledb 团队提供了直接从influxdb 导入 环境准备 docker-compose 文件 version: "3" services: timescaledb: image: ti...

2019/04/12 11:12
3
0
timescaledb 几个方便的api

timescaledb 提供了内置的api 操作,方便我们进行操作控制 hypertable 控制api add_dimension 向hypertable添加一个额外的分片方式,可以做为分片列有时间间隔的以及hash分片 必须参数 名称 ...

2018/06/28 13:49
0
0
TimescaleDB1.3 的新特性——Continuous aggregates: faster queries with automatically maintained material...

One characteristic of time-series data workloads is that the dataset will grow very quickly. Without the proper data infrastructure, these large data volumes can cause slowdowns...

2019/05/11 07:54
9
0
prometheus使用postgresql-adapter连接postgresql

概述 Prometheus使用postgresql需要使用postgresql-adapter进行数据转换。在安装postgresql-adapter之前需要安装2个扩展:pg_prometheus和timescaledb 官方推荐使用PostgreSQL, pg_promethe...

2019/08/08 12:46
20
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部