【重新发现PostgreSQL之美】- 13 brin 时序索引

背景



场景:

  • 物联网、游戏、金融、证券、车联网等场景, appendonly的高并发数据写入, 需要高效的按时间区间进行数据统计分析.

挑战:

  • 写入量大, 传统btree索引对写入的RT影响大, 导致性能下降严重.
  • 普通btree索引存储空间占用较大.
  • 普通btree索引采用链表存储, 逻辑上有序, 而物理离散, 加上IO有prefetch, 使得按btree的索引范围查询将占用大量IO通道. 范围查询效率差.

PG解决方案:

  • PG采用堆表存储, 使用时序索引, 每连续的N个数据块存储min,max val. 时序索引只有btree的几百分之一大小. 并且支持快速的范围查询.
  • 其他数据库产品采用聚集存储无法实现时序索引, 因为聚集存储本身必须按PK组织, 在数据块层面已经没有时序顺序了.

202105/20210507_05.md  PostGIS索引(GiSTBRINR-Tree)选择、优化- 2

202103/20210326_02.md  PostgreSQL 14 preview - BRIN (典型IoT 时序场景块级索引支持bloom filter - 随机,大量distinct value, 值查询

202103/20210326_01.md  PostgreSQL 14 preview - BRIN (典型IoT 时序场景块级索引支持multi-range min-max [s] - 分段范索引》

202103/20210324_01.md  PostgreSQL 14 preview - brin 索引内存化》

201803/20180323_05.md  PostgreSQL 11 preview - BRIN索引接口功能(BLOOM FILTERmin max分段)

201711/20171107_25.md  HTAP数据PostgreSQL 场景与性能测试之24 - (OLTP) 时序数据并发写入(序索引BRIN)

201708/20170824_01.md  PostgreSQL BRIN索引的pages_per_range选项优化与内核代码优化思考》

201708/20170823_01.md  《万亿级电商广告- brin黑科技(最低成本)毫秒圈人(视觉挖掘姊妹篇) - 阿里云RDS PostgreSQL, HybridDB for PostgreSQL最佳践》

201708/20170820_01.md  PostGIS索引(GiSTBRINR-Tree)选择、优化阿里云RDS PostgreSQL最佳践》

201706/20170617_01.md  《自动选择正确索引访问接口(btree,hash,gin,gist,sp-gist,brin,bitmap...)的方法》

201706/20170611_02.md  PostgreSQL 并行写入堆表,如何保证时线性存- BRIN索引化》

201704/20170405_01.md  PostgreSQL 10.0 preview 功能增- BRIN 索引更新smooth化》

201702/20170219_01.md  PostgreSQL 聚集存BRIN索引高并大吞吐数据查询场景解

201604/20160414_01.md  PostgreSQL 网黑科技瘦身几百倍的索引(BRIN index)

201505/20150526_01.md  PostgreSQL 9.5 new feature - lets BRIN be used with R-Tree-like indexing strategies For "inclusion" opclasses

201504/20150419_01.md  PostgreSQL 9.5 new feature - BRIN (block range index) index

202105/20210518_02.md  PostgreSQL, MADlib, Tensorflow 实现机器学习是时序分析使用本地数据不需要move data.

202105/20210514_01.md  PostgreSQL 时序数据库插件timescaledb 2.2.1 custom plan provider接口实现index skip scan, 加速distinct, last_value, first_value等大表稀疏快速搜索最快上万倍性能提升》

202105/20210509_01.md  PostgreSQL 应用开发解决方案最佳实践系列课程- 6. 时空、时态、时序、日志等轨迹系统》

202104/20210429_03.md  PostgreSQL - 时序、IoT类场景- time_bucket 分析函数内置date_bin

202104/20210429_02.md  PostgreSQL - 时序、IoT类场景- first_value , last_value , agg , cte , window , recursive

202104/20210429_01.md  PostgreSQL - 时序、IoT类场景自定histogram函数绘制数据分布柱状图- cte window range width_bucket format plpgsql

202104/20210428_03.md  PostgreSQL 时序数据库设计最佳实践citus,columnar,partition,timescaledb,压缩,高速写,parallel append 多分区并行查询,分区》

202103/20210325_01.md  PostgreSQL 14 preview - date_bin 任意起点任意bucket(interval) split bucket align 统计时序场景(iot, 金融等),timescaledb

202004/20200412_03.md  《一款兼容PostgreSQL协议的时序数据库- QuestDB

201912/20191218_01.md  PostgreSQL 时序数据库timescaledb支持compress调度》

201910/20191027_04.md  PostgreSQL timescaledb插件pg_prometheus - PostgreSQLprometheus序数据插件》

201905/20190509_01.md  pipelinedb 团队加入ConfluentTimescaleDB时序插件支持准实时聚合(类流式计算)》

201804/20180420_01.md  [未完待] PostgreSQL + timescaleDB + Prometheus 序数据合》

201801/20180129_01.md  PostgreSQL 时序数据库插件timescaleDB 部署(含例子纽约TAXI数据透分析) - PostGIS + timescaleDB => PG时空数据库》

201712/20171225_01.md  PostgreSQL 时序数据案例时间流逝动压缩(时间粒度老化), 同比\环比》

201711/20171107_16.md  HTAP数据PostgreSQL 场景与性能测试之15 - (OLTP) 查询一个时序区间的数据》

201708/20170823_02.md  业务,求最新(从7秒到7毫秒的化之旅)阿里云RDS PostgreSQL最佳践》

201707/20170705_01.md  PostgreSQL 海量序数据(任意滑窗口实时统计分析) - 传感器、人群、物体等对象跟踪》

201707/20170702_01.md  PostgreSQL FDW 伪列实现时序数据存储自动分区- FUNCTION pushdown

201705/20170518_01.md  (流式、lambda、触)实时处理大比拼(IoT)\金融,时序处理最佳实践》

201704/20170417_01.md  PostgreSQL 时序最佳实践证券交易系统数据库设计阿里云RDS PostgreSQL最佳践》

201704/20170409_05.md  序数据有哪些特点? TimescaleDB时序数据库介绍》

201611/20161128_01.md  序数据合并景加速分析和实现复合索引,窗口分组查询加速,变态递归加速》

 

 

上一篇:PostgreSQL 快速给指定表每个字段创建索引 - 2


下一篇:Linux系统资源限制