核心特性—全局二级索引

简介: 全局二级索引(Global Secondary Index,GSI)是PolarDB-X中的一项重要特性,相比于本地二级索引,全局二级索引中的数据按照指定的拆分方式分布在各个存储节点上。通过全局二级索引,用户能够按需增加拆分维度、提供全局唯一约束等。

每个GSI对应一张分布式索引表,和其他分布式表一样,按照指定的分区规则水平拆分为多张物理表。PolarDB-X使用分布式事务维护主表和索引表之间数据强一致。p325029.png

全局二级索引还支持以下特性:

  • 支持选择覆盖列,减少回表操作开销。
  • 在线表结构变更,添加GSI不锁主表。
  • 支持通过HINT指定索引,自动判断是否需要回表。

示例1:增加拆分维度。例如,对于在线商城的订单表,假设按照买家用户维度拆分,那么对于卖家查询(例如,查询某个卖家的本月所有订单)就需要扫描所有分区。但是借助全局二级索引,可以仅仅扫描相应卖家所在的索引表分区,快速找到所需的订单信息。

示例2:全局唯一约束。例如,假设用户表是一张分布式表,按照用户ID分区。若要求用户手机号需要全局唯一,那么本地索引无法满足,必须构建一个以手机号作为索引键(同时也是分区键)的唯一索引。

相关文章
|
SQL 索引
简单了解RBO、CBO和HBO
简单了解RBO、CBO和HBO
|
存储 SQL 缓存
StarRocks常见面试问题(一)
StarRocks常见面试问题(一)
|
10月前
|
数据挖掘 Python
时间序列分析中的互相关与相干性分析:前导-滞后关系的理论基础与实际应用
时间序列数据在现代数据分析中广泛应用,从金融市场到生物医学领域。本文重点介绍两种分析工具:互相关和相干性分析。互相关用于量化两个时间序列的时域关系,揭示前导-滞后关系;相干性分析则评估信号在频率域的相关性,适用于脑电图等研究。通过实际案例和Python代码示例,展示了这两种方法的应用价值。
1021 8
时间序列分析中的互相关与相干性分析:前导-滞后关系的理论基础与实际应用
|
存储 缓存 算法
Flink RocksDB 状态后端参数调优实践
RocksDB 的配置也是极为复杂的,可调整的参数多达百个,没有放之四海而皆准的优化方案。如果仅考虑 Flink 状态存储这一方面,我们仍然可以总结出一些相对普适的优化思路。本文先介绍一些基础知识,再列举方法。
Flink RocksDB 状态后端参数调优实践
|
存储 缓存 大数据
Starrocks执行查询报错:Memory of process exceed limit. Used: XXX, Limit: XXX. Mem usage has exceed the limit of BE
Starrocks执行查询报错:Memory of process exceed limit. Used: XXX, Limit: XXX. Mem usage has exceed the limit of BE
|
安全 Linux 程序员
一招解决开发环境问题——远程容器开发指南
使用C++作为主要开发语言的程序猿们应该会认同搭建开发环境是一件烦人的事情。笔者在运营iLogtail开源社区的过程中发现开发和调试环境问题也是成员问的最多的问题之一。利用 VSCode 的 Remote-Development 插件可以使整个开发环境运行在远程容器中,利用容器技术做到一致、可移植、天然隔离的环境开发编译。本文由浅到深带大家搭建这样的远端容器开发环境。
|
存储 NoSQL 分布式数据库
Hbase的三种索引_全局索引,覆盖索引,本地索引(七)
Hbase的三种索引_全局索引,覆盖索引,本地索引(七)
394 0
|
存储 SQL 关系型数据库
Apache Doris 聚合函数源码阅读与解析|源码解读系列
Apache Doris Active Contributor 隐形通过本文记录下对源码的理解,以方便新人快速上手源码开发。
394 1
Apache Doris 聚合函数源码阅读与解析|源码解读系列
|
存储 缓存 监控
StarRocks面试题及答案整理,最新面试题
StarRocks面试题及答案整理,最新面试题
1005 0
|
编解码 数据可视化 数据库
天气和气象数据网站集合
数据全,各种气象数据都有,但是需要注册实名会员,审核通过后才可下载。鸡肋
834 0