ClickHouse MergeTree原理解析-朱凯
ClickHouse MergeTree原理解析 朱凯@深圳 2019.10 朱 凯 远光软件 大数据事业部/平台开发部 总经理 资深架构师,腾讯云TVP专家 10多年IT从业经验,精通Java、Nodejs等语言方向 著有: 《企业级大数据平台构建:架构与实现》、 《ClickHouse原理解析与开发实战》(连载写作中) 珠海总部园 区占地面积 6 万平方米 珠海、北京、武汉 累加,n从1 开始,每当新创建一个分区目录时,计数n就会累积加1 。对于一个新的分区目录而言,MinBlockNum与 MaxBlockNum取值一样,同等于n。 • Level 合并的层级,可以理解为某个分区被合并过的次数。 Level计数与BlockNum有所不同,它并不是全局累加的。 对于每一个新创建的分区目录而言,其初始值均为0。之 后,以分区为单位,如果相同分区发生合并动作,则在相 应分区内计数累积加1。0 码力 | 35 页 | 13.25 MB | 1 年前3Greenplum Database 管理员指南 6.2.1
些帮助,在编写过程 中,仍会参考官方文档,但绝不是简单的翻译,甚至有些内容会与官方文档不一致。 编者提醒,升级版本极其重要,4 版本早该淘汰了,5 版本和 6 版本都带来了极大 的性能和稳定性的提升。 声明 本文档的版权归[陈淼]个人所有,未经许可和授权不得抄袭和引用。 本文档中的绝大部分内容都经过编者重新考量和实测验证,有些观点与官方手册有 出入,仅代表编者本人 致读者 如果您在阅读和参考本书的过程中发现有任何不妥之处,或者有任何的建议和意见, 欢迎联系编者,本书主要针对 GP 数据库的爱好者进行编写,包括产品的安装和使用说 明,以及最佳实践等内容。本书的发布更新情况与编者的时间有关,不做承诺。 编写: 陈淼 电邮: miaochen@mail.ustc.edu.cn Greenplum Database 管理员指南 V6.2.1 ......................................................................................... - 116 - 理解 GP 的表分区 ..........................................................................................0 码力 | 416 页 | 6.08 MB | 1 年前3Mybatis 3.3.0 中文用户指南
XML)中包含了对 MyBatis 系统的核心设置,包含获取数据库连接实例的数据源(DataSource)和 决定事务范围和控制方式的事务管理器(TransactionManager)。XML 配置文件的详细内容后面再探讨,这里先给出一个简单的示 例: 0 码力 | 98 页 | 2.03 MB | 1 年前3Apache ShardingSphere 中文文档 5.4.1
独立部署 ShardingSphere‐JDBC 定位为轻量级 Java 框架,在 Java 的 JDBC 层提供的额外服务。它使用客户端直连 数据库,以 jar 包形式提供服务,无需额外部署和依赖,可理解为增强版的 JDBC 驱动,完全兼容 JDBC 和各种 ORM 框架。 • 适用于任何基于 JDBC 的 ORM 框架,如:JPA, Hibernate, Mybatis, Spring JDBC 实现的语法规则。 行表达式的使用非常直观,只需要在配置中使用 ${ expression } 或 $->{ expression } 标识行 表达式即可。目前支持数据节点和分片算法这两个部分的配置。行表达式的内容使用的是 Groovy 的语法, Groovy 能够支持的所有操作,行表达式均能够支持。例如: ${begin..end} 表示范围区间 ${[unit1, unit2, unit_x]} 表示枚举值 正常运行。 与将数据根据分片键打散至各个数据节点的水平分片不同,读写分离则是根据 SQL 语义的分析,将读操 作和写操作分别路由至主库与从库。 读写分离的数据节点中的数据内容是一致的,而水平分片的每个数据节点的数据内容却并不相同。将水 平分片和读写分离联合使用,能够更加有效的提升系统性能。 8.3. 读写分离 35 Apache ShardingSphere document 8.30 码力 | 530 页 | 4.49 MB | 1 年前3Apache ShardingSphere v5.5.0 中文文档
独立部署 ShardingSphere‐JDBC 定位为轻量级 Java 框架,在 Java 的 JDBC 层提供的额外服务。它使用客户端直连 数据库,以 jar 包形式提供服务,无需额外部署和依赖,可理解为增强版的 JDBC 驱动,完全兼容 JDBC 和各种 ORM 框架。 • 适用于任何基于 JDBC 的 ORM 框架,如:JPA, Hibernate, Mybatis, Spring JDBC 实现的语法规则。 行表达式的使用非常直观,只需要在配置中使用 ${ expression } 或 $->{ expression } 标识行 表达式即可。目前支持数据节点和分片算法这两个部分的配置。行表达式的内容使用的是 Groovy 的语法, Groovy 能够支持的所有操作,行表达式均能够支持。例如: ${begin..end} 表示范围区间 ${[unit1, unit2, unit_x]} 表示枚举值 正常运行。 与将数据根据分片键打散至各个数据节点的水平分片不同,读写分离则是根据 SQL 语义的分析,将读操 作和写操作分别路由至主库与从库。 读写分离的数据节点中的数据内容是一致的,而水平分片的每个数据节点的数据内容却并不相同。将水 平分片和读写分离联合使用,能够更加有效的提升系统性能。 8.3. 读写分离 35 Apache ShardingSphere document 8.30 码力 | 557 页 | 4.61 MB | 1 年前3Apache ShardingSphere 中文文档 5.3.2
独立部署 ShardingSphere‐JDBC 定位为轻量级 Java 框架,在 Java 的 JDBC 层提供的额外服务。它使用客户端直连 数据库,以 jar 包形式提供服务,无需额外部署和依赖,可理解为增强版的 JDBC 驱动,完全兼容 JDBC 和各种 ORM 框架。 • 适用于任何基于 JDBC 的 ORM 框架,如:JPA, Hibernate, Mybatis, Spring JDBC 。 行表达式的使用非常直观,只需要在配置中使用 ${ expression } 或 $->{ expression } 标识行 表达式即可。目前支持数据节点和分片算法这两个部分的配置。行表达式的内容使用的是 Groovy 的语法, Groovy 能够支持的所有操作,行表达式均能够支持。例如: ${begin..end} 表示范围区间 ${[unit1, unit2, unit_x]} 表示枚举值 正常运行。 与将数据根据分片键打散至各个数据节点的水平分片不同,读写分离则是根据 SQL 语义的分析,将读操 作和写操作分别路由至主库与从库。 读写分离的数据节点中的数据内容是一致的,而水平分片的每个数据节点的数据内容却并不相同。将水 平分片和读写分离联合使用,能够更加有效的提升系统性能。 8.3. 读写分离 35 Apache ShardingSphere document 8.30 码力 | 508 页 | 4.44 MB | 1 年前3TiDB中文技术文档
数据库管理 TiDB 服务 TiDB 进程启动参数 TiDB 系统数据库 TiDB 系统变量 TiDB 专用系统变量和语法 TiDB 访问权限管理 TiDB 用户账户管理 使用加密连接 SQL 优化 理解 TiDB 执行计划 统计信息 语言结构 字面值 数据库、表、索引、列和别名 关键字和保留字 用户变量 表达式语法 注释语法 字符集和时区 字符集支持 字符集配置 时区 数据类型 日期和时间类型 基本数据类型 进行构建,生成于 2018- 06-25。 书栈(BookStack.CN) 仅提供文档编写、整理、归类等功能,以及对文档内容的生成和导出工具。 文档内容由网友们编写和整理,书栈(BookStack.CN) 难以确认文档内容知识点是否错漏。如果您在阅读文档 获取知识的时候,发现文档内容有不恰当的地方,请向我们反馈,让我们共同携手,将知识准确、高效且有效地传递 给每一个人。 同时,如果您在日常工作、生活 进程启动参数 TiDB 数据目录 TiDB 系统数据库 TiDB 系统变量 TiDB 专用系统变量和语法 TiDB 服务器日志文件 TiDB 访问权限管理 TiDB 用户账户管理 使用加密连接 SQL 优化 理解 TiDB 执行计划 统计信息 语言结构 字面值 数据库、表、索引、列和别名 关键字和保留字 用户变量 表达式语法 注释语法 字符集和时区 字符集支持 字符集配置 时区 数据类型 数值类型 日期和时间类型0 码力 | 444 页 | 4.89 MB | 5 月前3Apache ShardingSphere 中文文档 5.2.0
Sphere 提供在单机数据库之上的分布式事务能力,可实现跨底层数据源的数据安全。 读 写 分离 读写分离,是应对高压力业务访问的手段之一。ShardingSphere 基于对 SQL 语义理解及底层 数据库拓扑感知能力,提供灵活、安全的读写分离能力,且可实现读访问的负载均衡。 高 可 用 高可用,是对数据存储计算平台的基本要求。ShardingSphere 基于无状态服务,提供高可用 独立部署 ShardingSphere‐JDBC 定位为轻量级 Java 框架,在 Java 的 JDBC 层提供的额外服务。它使用客户端直连 数据库,以 jar 包形式提供服务,无需额外部署和依赖,可理解为增强版的 JDBC 驱动,完全兼容 JDBC 和各种 ORM 框架。 • 适用于任何基于 JDBC 的 ORM 框架,如:JPA, Hibernate, Mybatis, Spring JDBC 。 行表达式的使用非常直观,只需要在配置中使用 ${ expression } 或 $->{ expression } 标识行 表达式即可。目前支持数据节点和分片算法这两个部分的配置。行表达式的内容使用的是 Groovy 的语法, Groovy 能够支持的所有操作,行表达式均能够支持。例如: ${begin..end} 表示范围区间 ${[unit1, unit2, unit_x]} 表示枚举值0 码力 | 449 页 | 5.85 MB | 1 年前3Apache ShardingSphere 中文文档 5.0.0-alpha
1 ShardingSphere-JDBC 定位为轻量级 Java 框架,在 Java 的 JDBC 层提供的额外服务。它使用客户端直连数据库,以 jar 包形式 提供服务,无需额外部署和依赖,可理解为增强版的 JDBC 驱动,完全兼容 JDBC 和各种 ORM 框架。 • 适用于任何基于 JDBC 的 ORM 框架,如:JPA, Hibernate, Mybatis, Spring JDBC 语法说明 行表达式的使用非常直观,只需要在配置中使用 ${ expression } 或 $->{ expression } 标识行 表达式即可。目前支持数据节点和分片算法这两个部分的配置。行表达式的内容使用的是 Groovy 的语法, Groovy 能够支持的所有操作,行表达式均能够支持。例如: ${begin..end} 表示范围区间 ${[unit1, unit2, unit_x]} 表示枚举值 ShardingSphere document, v5.0.0-beta SQL 解析 分为词法解析和语法解析。先通过词法解析器将 SQL 拆分为一个个不可再分的单词。再使用语法解析器 对 SQL 进行理解,并最终提炼出解析上下文。解析上下文包括表、选择项、排序项、分组项、聚合函数、 分页信息、查询条件以及可能需要修改的占位符的标记。 执行器优化 合并和优化分片条件,如 OR 等。 SQL 路由0 码力 | 301 页 | 3.44 MB | 1 年前3Apache ShardingSphere 中文文档 5.0.0
1 ShardingSphere-JDBC 定位为轻量级 Java 框架,在 Java 的 JDBC 层提供的额外服务。它使用客户端直连数据库,以 jar 包形式 提供服务,无需额外部署和依赖,可理解为增强版的 JDBC 驱动,完全兼容 JDBC 和各种 ORM 框架。 • 适用于任何基于 JDBC 的 ORM 框架,如:JPA, Hibernate, Mybatis, Spring JDBC Apache ShardingSphere 的前身。 定位为轻量级 Java 框架,在 Java 的 JDBC 层提供的额外服务。它使用客户端直连数据库,以 jar 包形式 提供服务,无需额外部署和依赖,可理解为增强版的 JDBC 驱动,完全兼容 JDBC 和各种 ORM 框架。 • 适用于任何基于 JDBC 的 ORM 框架,如:JPA, Hibernate, Mybatis, Spring JDBC 数据库兼容度希望达成的主 要目标。 4.1.4 SQL 解析 SQL 是使用者与数据库交流的标准语言。SQL 解析引擎负责将 SQL 字符串解析为抽象语法树,供 Apache ShardingSphere 理解并实现其增量功能。 目前支持 MySQL, PostgreSQL, SQLServer, Oracle, openGauss 以及符合 SQL92 规范的 SQL 方言。由于 SQL 语法的复杂性,目前仍然存在少量不支持的0 码力 | 385 页 | 4.26 MB | 1 年前3
共 76 条
- 1
- 2
- 3
- 4
- 5
- 6
- 8