 TokuDB索引结构TokuDB索引结构 网易杭州研究院---胡争(博客:openinx.github.io) TokuDB简介 • 基于分形树实现的MySQL存储引擎 • Tokutek公司2007年研发,2013年开源 • 2015年Percona公司收购Tokutek公司 • TokuDB内部的K-V存储引擎为ft-index • TokuMx: ft-index + MongoDB Server层代码 4M vs InnoDB 16K) 更高性能,更低成本! 分形树索引结构(一) 分形树结构(二) • msg_buffer – 先进先出队列 • BasementNode(OMT) – 弱平衡二叉树 – 增删改查期望复杂度O(logN) • 页大小默认4M。 • 扇出fanout默认[4,16]区间。 分形树结构(三) 分形树Insert/Update/Delete • 步骤:0 码力 | 19 页 | 1.97 MB | 1 年前3 TokuDB索引结构TokuDB索引结构 网易杭州研究院---胡争(博客:openinx.github.io) TokuDB简介 • 基于分形树实现的MySQL存储引擎 • Tokutek公司2007年研发,2013年开源 • 2015年Percona公司收购Tokutek公司 • TokuDB内部的K-V存储引擎为ft-index • TokuMx: ft-index + MongoDB Server层代码 4M vs InnoDB 16K) 更高性能,更低成本! 分形树索引结构(一) 分形树结构(二) • msg_buffer – 先进先出队列 • BasementNode(OMT) – 弱平衡二叉树 – 增删改查期望复杂度O(logN) • 页大小默认4M。 • 扇出fanout默认[4,16]区间。 分形树结构(三) 分形树Insert/Update/Delete • 步骤:0 码力 | 19 页 | 1.97 MB | 1 年前3
 《Redis使用手册》(试读版)许 不得将本⽂档及其内容⽤于任何商业⽤途,违者必究。 ⽬录 以下是《Redis使⽤⼿册》⼀书的完整⽬录,其中标题后⾯带 * 的⼤章都在本⽂档提供了试读。 前⾔* 1. 引⾔* 第⼀部分:数据结构与应⽤ 2. 字符串(String)* 3. 散列(Hash)* 4. 列表(List)* 5. 集合(Set)* 6. 有序集合(Sorted Set) 7. HyperLogLog 8. 位图(bitmap) 当你使⽤这些服务时, 你实际上就是在使⽤ Redis 。 除了变得越来越受欢迎之外, Redis 在过去数年的另⼀个变化就是更新速度越来越快, 功能也变得越来越多、越 来越强⼤: ⽐如说, Redis 的数据结构数量已经从过去的五种增加到了九种, RDB-AOF 混合持久化模式的引⼊ 使得⽤户不必再陷⼊“⻥和熊掌不可兼得”的难题中, ⽽集群功能和模块机制的引⼊则让 Redis 在性能和功能上拥 有了近乎⽆限的扩展能⼒。 版本以及本书配套的读者服务 ⽹站。 1.1 Redis 简介 Redis 是⼀个主要由 Salvatore Sanfilippo (antirez)开发的开源的内存数据结构存储器, 它经常被⽤作数据 库、缓存以及消息代理等⽤途。 Redis 因为它丰富的数据结构、极快的速度、⻬全的功能⽽为⼈所知, 它是⽬前内存数据库⽅⾯的事实标准, 在 互联⽹上有⾮常⼴泛的应⽤, 包括微博、Twitter、GitHub、Stack0 码力 | 352 页 | 6.57 MB | 1 年前3 《Redis使用手册》(试读版)许 不得将本⽂档及其内容⽤于任何商业⽤途,违者必究。 ⽬录 以下是《Redis使⽤⼿册》⼀书的完整⽬录,其中标题后⾯带 * 的⼤章都在本⽂档提供了试读。 前⾔* 1. 引⾔* 第⼀部分:数据结构与应⽤ 2. 字符串(String)* 3. 散列(Hash)* 4. 列表(List)* 5. 集合(Set)* 6. 有序集合(Sorted Set) 7. HyperLogLog 8. 位图(bitmap) 当你使⽤这些服务时, 你实际上就是在使⽤ Redis 。 除了变得越来越受欢迎之外, Redis 在过去数年的另⼀个变化就是更新速度越来越快, 功能也变得越来越多、越 来越强⼤: ⽐如说, Redis 的数据结构数量已经从过去的五种增加到了九种, RDB-AOF 混合持久化模式的引⼊ 使得⽤户不必再陷⼊“⻥和熊掌不可兼得”的难题中, ⽽集群功能和模块机制的引⼊则让 Redis 在性能和功能上拥 有了近乎⽆限的扩展能⼒。 版本以及本书配套的读者服务 ⽹站。 1.1 Redis 简介 Redis 是⼀个主要由 Salvatore Sanfilippo (antirez)开发的开源的内存数据结构存储器, 它经常被⽤作数据 库、缓存以及消息代理等⽤途。 Redis 因为它丰富的数据结构、极快的速度、⻬全的功能⽽为⼈所知, 它是⽬前内存数据库⽅⾯的事实标准, 在 互联⽹上有⾮常⼴泛的应⽤, 包括微博、Twitter、GitHub、Stack0 码力 | 352 页 | 6.57 MB | 1 年前3
 πDataCS赋能工业软件创新与实践⼤模型数据计算系统,以云原⽣技术重构数据存储和计算,⼀份数据,多引擎数据计算,AI数学模型、数据和 计算三者互为增强,全面升级⼤数据系统⾄⼤模型时代 ,赋能⾏业AI场景应用。 具备整体数据平台⽅案,支持多模数据处理(结构化、半结构化 以及非结构化数据),实现数据共享和分析。 软件优化 + 新硬件(FPGA)加速,实现数据全链路的性能飞跃, 让数据存储、SQL查询、向量计算以及机器学习等能⼒全面升级。 @2024 OpenPie 、HDFS、 MapReduce以及YARN 。可视化管理是Ambari,其他的计算引擎、列存数据库 等都需要额外的组件,应对不同的场景需要安装对应的组件和依赖。 ⽣态丰富,对结构化数据、半结构化数据以及非结构化数据都支持,可以很好 的完成各种业务场景的数据处理需求。但是对于开发的要求比较⾼,需要掌握 多种组件的不同使用⽅法,业务开发周期会比较久。 国外开源软件,与国产软硬件兼容性差,不符合信创趋势,也⽆法直接利用云 Lakehouse引擎,1个硬件加速器,应对各种场景的计算,同时也兼容Spark、 Flink等计算任务,保留用户的使用习惯。 ⽣态完善,支持主流的开发语⾔和数据科学⼯具,支持多模数据处理(结构化、 半结构化以及非结构化),提供标准的SQL接⼝和API,完成各种复杂场景的数 据处理,业务开发周期短,现存的代码基本可以⽆缝迁移和复用。 国内自主研发,具备社区版、商业版以及云SaaS服务,与国产软硬件完美兼容,0 码力 | 36 页 | 4.25 MB | 1 年前3 πDataCS赋能工业软件创新与实践⼤模型数据计算系统,以云原⽣技术重构数据存储和计算,⼀份数据,多引擎数据计算,AI数学模型、数据和 计算三者互为增强,全面升级⼤数据系统⾄⼤模型时代 ,赋能⾏业AI场景应用。 具备整体数据平台⽅案,支持多模数据处理(结构化、半结构化 以及非结构化数据),实现数据共享和分析。 软件优化 + 新硬件(FPGA)加速,实现数据全链路的性能飞跃, 让数据存储、SQL查询、向量计算以及机器学习等能⼒全面升级。 @2024 OpenPie 、HDFS、 MapReduce以及YARN 。可视化管理是Ambari,其他的计算引擎、列存数据库 等都需要额外的组件,应对不同的场景需要安装对应的组件和依赖。 ⽣态丰富,对结构化数据、半结构化数据以及非结构化数据都支持,可以很好 的完成各种业务场景的数据处理需求。但是对于开发的要求比较⾼,需要掌握 多种组件的不同使用⽅法,业务开发周期会比较久。 国外开源软件,与国产软硬件兼容性差,不符合信创趋势,也⽆法直接利用云 Lakehouse引擎,1个硬件加速器,应对各种场景的计算,同时也兼容Spark、 Flink等计算任务,保留用户的使用习惯。 ⽣态完善,支持主流的开发语⾔和数据科学⼯具,支持多模数据处理(结构化、 半结构化以及非结构化),提供标准的SQL接⼝和API,完成各种复杂场景的数 据处理,业务开发周期短,现存的代码基本可以⽆缝迁移和复用。 国内自主研发,具备社区版、商业版以及云SaaS服务,与国产软硬件完美兼容,0 码力 | 36 页 | 4.25 MB | 1 年前3
 TiDB v6.1 中文手册· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 2355 14.11.1 SQL 语言结构和语法 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 访问集群TiDB Dashboard 监控页面,默认用户名为 root,密码 为空。 • 执行以下命令确认当前已经部署的集群列表: tiup cluster list • 执行以下命令查看集群的拓扑结构和状态: tiup cluster display TiDB v6.1 中文手册· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 2355 14.11.1 SQL 语言结构和语法 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 访问集群TiDB Dashboard 监控页面,默认用户名为 root,密码 为空。 • 执行以下命令确认当前已经部署的集群列表: tiup cluster list • 执行以下命令查看集群的拓扑结构和状态: tiup cluster display- 89 3.1.3 探索更多 • 如果你刚刚部署好一套 TiDB 本地测试集群: – 学习TiDB SQL 操作 Error != nil { return session.Error } return session.Transaction(fc) } 进入目录 gorm : cd gorm 目录结构如下所示: . ├ ─ ─ Makefile ├ ─ ─ go.mod ├ ─ ─ go.sum └ ─ ─ gorm.go 其中,gorm.go 是 gorm 这个示例程序的主体。使用 0 码力 | 3572 页 | 84.36 MB | 1 年前3
 TiDB v5.4 中文手册· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 1742 12.11.1 SQL 语言结构和语法 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 访问集群TiDB Dashboard 监控页面,默认用户名为 root,密码 为空。 • 执行以下命令确认当前已经部署的集群列表: tiup cluster list • 执行以下命令查看集群的拓扑结构和状态: tiup cluster display TiDB v5.4 中文手册· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 1742 12.11.1 SQL 语言结构和语法 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 访问集群TiDB Dashboard 监控页面,默认用户名为 root,密码 为空。 • 执行以下命令确认当前已经部署的集群列表: tiup cluster list • 执行以下命令查看集群的拓扑结构和状态: tiup cluster display- 80 3.1.3 探索更多 • 如果你刚刚部署好一套 TiDB 本地测试集群: – 学习TiDB SQL 操作 可以自定义用户,也可以和中控机的用户保持一致。 • 如果部署目录配置为相对路径,会部署在用户家目录下。 4.3.2 TiFlash 部署拓扑 本文介绍在部署最小拓扑集群的基础上,部署TiFlash 的拓扑结构。TiFlash 是列式的存储引擎,已经成为集群 拓扑的标配,适合 Real-Time HTAP 业务。 4.3.2.1 拓扑信息 实例 个数 物理机配置 IP 配置 TiDB 3 16 VCore 0 码力 | 2852 页 | 52.59 MB | 1 年前3
 Apache ShardingSphere 中文文档 5.0.0-alpha本小节主要介绍数据分片的核心概念,主要包括: • SQL 核心概念 • 分片核心概念 • 配置核心概念 • 行表达式 • 分布式主键 • 强制分片路由 SQL 逻辑表 水平拆分的数据库(表)的相同逻辑和数据结构表的总称。例:订单数据根据主键尾数拆分为 10 张表,分 别是 t_order_0 到 t_order_9,他们的逻辑表名为 t_order。 真实表 在分片的数据库中真实存在的物理表。即上个示例中的 将会以它作为整个绑定表的主表。所有路由计算将 会只使用主表的策略,那么 t_order_item 表的分片计算将会使用 t_order 的条件。故绑定表之间的 分区键要完全相同。 广播表 指所有的分片数据源中都存在的表,表结构和表中的数据在每个数据库中均完全一致。适用于数据量不 大且需要与海量数据的表进行关联查询的场景,例如:字典表。 单表 指所有的分片数据源中只存在唯一一张的表。适用于数据量不大且不需要做任何分片操作的场景。 配置数据节点 对于均匀分布的数据节点,如果数据结构如下: db0 ├── t_order0 └── t_order1 db1 ├── t_order0 └── t_order1 用行表达式可以简化为: db${0..1}.t_order${0..1} 或者 db$->{0..1}.t_order$->{0..1} 对于自定义的数据节点,如果数据结构如下: db0 ├── t_order00 码力 | 301 页 | 3.44 MB | 1 年前3 Apache ShardingSphere 中文文档 5.0.0-alpha本小节主要介绍数据分片的核心概念,主要包括: • SQL 核心概念 • 分片核心概念 • 配置核心概念 • 行表达式 • 分布式主键 • 强制分片路由 SQL 逻辑表 水平拆分的数据库(表)的相同逻辑和数据结构表的总称。例:订单数据根据主键尾数拆分为 10 张表,分 别是 t_order_0 到 t_order_9,他们的逻辑表名为 t_order。 真实表 在分片的数据库中真实存在的物理表。即上个示例中的 将会以它作为整个绑定表的主表。所有路由计算将 会只使用主表的策略,那么 t_order_item 表的分片计算将会使用 t_order 的条件。故绑定表之间的 分区键要完全相同。 广播表 指所有的分片数据源中都存在的表,表结构和表中的数据在每个数据库中均完全一致。适用于数据量不 大且需要与海量数据的表进行关联查询的场景,例如:字典表。 单表 指所有的分片数据源中只存在唯一一张的表。适用于数据量不大且不需要做任何分片操作的场景。 配置数据节点 对于均匀分布的数据节点,如果数据结构如下: db0 ├── t_order0 └── t_order1 db1 ├── t_order0 └── t_order1 用行表达式可以简化为: db${0..1}.t_order${0..1} 或者 db$->{0..1}.t_order$->{0..1} 对于自定义的数据节点,如果数据结构如下: db0 ├── t_order00 码力 | 301 页 | 3.44 MB | 1 年前3
 TiDB v7.1 中文手册· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 2780 14.11.1 SQL 语言结构和语法 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 支持在备份日志时修改 TiKV 配置项 log-backup.max-flush-interval #14433 @joccau – TiCDC * 优化同步数据到对象存储的场景下发生 DDL 事件时的目录结构 #8890 @CharlesCheung96 * 优化 TiCDC 在同步任务失败时对上游 GC TLS 的设置方法 #8403 @charleszheng44 * 支持同步到 Kafka-on-Pulsar 访问集群TiDB Dashboard 监控页面,默认用户名为 root,密码 为空。 • 执行以下命令确认当前已经部署的集群列表: tiup cluster list • 执行以下命令查看集群的拓扑结构和状态: tiup cluster display TiDB v7.1 中文手册· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 2780 14.11.1 SQL 语言结构和语法 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 支持在备份日志时修改 TiKV 配置项 log-backup.max-flush-interval #14433 @joccau – TiCDC * 优化同步数据到对象存储的场景下发生 DDL 事件时的目录结构 #8890 @CharlesCheung96 * 优化 TiCDC 在同步任务失败时对上游 GC TLS 的设置方法 #8403 @charleszheng44 * 支持同步到 Kafka-on-Pulsar 访问集群TiDB Dashboard 监控页面,默认用户名为 root,密码 为空。 • 执行以下命令确认当前已经部署的集群列表: tiup cluster list • 执行以下命令查看集群的拓扑结构和状态: tiup cluster display- 3.1.3 探索更多 如果你刚刚部署好一套 TiDB 本地测试集群,你可以继续: • 学习TiDB SQL 操作 0 码力 | 4369 页 | 98.92 MB | 1 年前3
 TiDB v6.5 中文手册· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 2626 14.11.1 SQL 语言结构和语法 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 访问集群TiDB Dashboard 监控页面,默认用户名为 root,密码 为空。 • 执行以下命令确认当前已经部署的集群列表: tiup cluster list • 执行以下命令查看集群的拓扑结构和状态: tiup cluster display TiDB v6.5 中文手册· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 2626 14.11.1 SQL 语言结构和语法 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 访问集群TiDB Dashboard 监控页面,默认用户名为 root,密码 为空。 • 执行以下命令确认当前已经部署的集群列表: tiup cluster list • 执行以下命令查看集群的拓扑结构和状态: tiup cluster display- 3.1.3 探索更多 • 如果你刚刚部署好一套 TiDB 本地测试集群: – 学习TiDB SQL 操作 – env("DATABASE_URL"): datasource db { provider = "mysql" url = env("DATABASE_URL") } 第 4 步:初始化表结构 运行以下命令,使用 Prisma Migrate 根据 prisma/schema.prisma 文件中的数据模型定义来初始化数据库表结 构: npx prisma migrate dev prisma 0 码力 | 4049 页 | 94.00 MB | 1 年前3
 TiDB v8.1 中文手册· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 2962 14.13.1 SQL 语言结构和语法 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · threshold 修改 默认值从 9223372036854775807 修改为 10000,从而迅速中断异常任务,以便用户 尽快进行相应调整。这避免了在导入完成 后,才发现是因为数据源异常或表结构定 义错误导致导入了大量冲突数据,从而节 省时间和计算资源。 TiCDC security.client- �→ allowed-user 新增 指定可用于客户端鉴权的用户名,列表中 不存在的用户的鉴权请求将被直接拒绝。 访问集群TiDB Dashboard 监控页面,默认用户名为 root,密码 为空。 • 执行以下命令确认当前已经部署的集群列表: tiup cluster list • 执行以下命令查看集群的拓扑结构和状态: tiup cluster display TiDB v8.1 中文手册· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 2962 14.13.1 SQL 语言结构和语法 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · threshold 修改 默认值从 9223372036854775807 修改为 10000,从而迅速中断异常任务,以便用户 尽快进行相应调整。这避免了在导入完成 后,才发现是因为数据源异常或表结构定 义错误导致导入了大量冲突数据,从而节 省时间和计算资源。 TiCDC security.client- �→ allowed-user 新增 指定可用于客户端鉴权的用户名,列表中 不存在的用户的鉴权请求将被直接拒绝。 访问集群TiDB Dashboard 监控页面,默认用户名为 root,密码 为空。 • 执行以下命令确认当前已经部署的集群列表: tiup cluster list • 执行以下命令查看集群的拓扑结构和状态: tiup cluster display- 3.1.3 探索更多 如果你刚刚部署好一套 TiDB 本地测试集群,你可以继续: • 学习TiDB SQL 操作 0 码力 | 4807 页 | 101.31 MB | 1 年前3
 TiDB v8.0 中文手册· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 2973 14.13.1 SQL 语言结构和语法 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 访问集群TiDB Dashboard 监控页面,默认用户名为 root,密码 为空。 • 执行以下命令确认当前已经部署的集群列表: tiup cluster list • 执行以下命令查看集群的拓扑结构和状态: tiup cluster display TiDB v8.0 中文手册· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 2973 14.13.1 SQL 语言结构和语法 · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 访问集群TiDB Dashboard 监控页面,默认用户名为 root,密码 为空。 • 执行以下命令确认当前已经部署的集群列表: tiup cluster list • 执行以下命令查看集群的拓扑结构和状态: tiup cluster display- 83 3.1.3 探索更多 如果你刚刚部署好一套 TiDB 本地测试集群,你可以继续: • 学习TiDB SQL env("DATABASE_URL"): datasource db { provider = "mysql" url = env("DATABASE_URL") } 第 4 步:初始化表结构 运行以下命令,使用 Prisma Migrate 根据 prisma/schema.prisma 文件中的数据模型定义来初始化数据库表结 构: npx prisma migrate dev prisma 0 码力 | 4805 页 | 101.28 MB | 1 年前3
共 84 条
- 1
- 2
- 3
- 4
- 5
- 6
- 9














 
 