Apache ShardingSphere 中文文档 5.4.1
拔的方式更换。主要包 括查询优化器、分布式事务引擎、分布式执行引擎、权限引擎和调度引擎等。 2.3.2 L2 功能层 用于提供增量能力,其所有组件均是可选的,可以包含零至多个组件。组件之间完全隔离,互无感知,多 组件可通过叠加的方式相互配合使用。主要包括数据分片、读写分离、数据加密、影子库等。用户自定义 功能可完全面向 Apache ShardingSphere 定义的顶层接口进行定制化扩展,而无需改动内核代码。 8.2 分布式事务 8.2.1 背景 数据库事务需要满足 ACID(原子性、一致性、隔离性、持久性)四个特性。 • 原子性(Atomicity)指事务作为整体来执行,要么全部执行,要么全不执行; • 一致性(Consistency)指事务应确保数据从一个一致的状态转变为另一个一致的状态; • 隔离性(Isolation)指多个事务并发执行时,一个事务的执行不应影响其他事务的执行; • state)则允许系统状态更新有一定的延时,这个延时对客户来说不一定能够察觉; • 最终一致性(Eventually consistent)通常是通过消息传递的方式保证系统的最终一致性。 在 ACID 事务中对隔离性的要求很高,在事务执行过程中,必须将所有的资源锁定。柔性事务的理念则是 通过业务逻辑将互斥锁操作从资源层面上移至业务层面。通过放宽对强一致性要求,来换取系统吞吐量 的提升。 基于 ACID 的强一致性事务和基于0 码力 | 530 页 | 4.49 MB | 1 年前3Apache ShardingSphere 中文文档 5.3.2
拔的方式更换。主要包 括查询优化器、分布式事务引擎、分布式执行引擎、权限引擎和调度引擎等。 2.3.2 L2 功能层 用于提供增量能力,其所有组件均是可选的,可以包含零至多个组件。组件之间完全隔离,互无感知,多 组件可通过叠加的方式相互配合使用。主要包括数据分片、读写分离、数据加密、影子库等。用户自定义 功能可完全面向 Apache ShardingSphere 定义的顶层接口进行定制化扩展,而无需改动内核代码。 8.2 分布式事务 8.2.1 背景 数据库事务需要满足 ACID(原子性、一致性、隔离性、持久性)四个特性。 • 原子性(Atomicity)指事务作为整体来执行,要么全部执行,要么全不执行; • 一致性(Consistency)指事务应确保数据从一个一致的状态转变为另一个一致的状态; • 隔离性(Isolation)指多个事务并发执行时,一个事务的执行不应影响其他事务的执行; • state)则允许系统状态更新有一定的延时,这个延时对客户来说不一定能够察觉; • 最终一致性(Eventually consistent)通常是通过消息传递的方式保证系统的最终一致性。 在 ACID 事务中对隔离性的要求很高,在事务执行过程中,必须将所有的资源锁定。柔性事务的理念则是 通过业务逻辑将互斥锁操作从资源层面上移至业务层面。通过放宽对强一致性要求,来换取系统吞吐量 的提升。 基于 ACID 的强一致性事务和基于0 码力 | 508 页 | 4.44 MB | 1 年前3Apache ShardingSphere 中文文档 5.2.0
rdingSphere 提供一套完整的、透明化、安全的、 低改造成本的数据加密解决方案。 影 子 库 在全链路压测场景下,ShardingSphere 通过影子库功能支持在复杂压测场景下数据隔离,压 测获得测试结果可准确反应系统真实容量和性能水平。 1.1.3 产品优势 • 极致性能 驱动程序端历经长年打磨,效率接近原生 JDBC,性能极致。 • 生态兼容 代理端支持任何通过 MySQL/PostgreSQL 式可通过可插拔的方式更换。主要包 括查询优化器、分布式事务引擎、分布式执行引擎、权限引擎和调度引擎等。 L2 功能层 用于提供增量能力,其所有组件均是可选的,可以包含零至多个组件。组件之间完全隔离,互无感知,多 组件可通过叠加的方式相互配合使用。主要包括数据分片、读写分离、数据库高可用、数据加密、影子库 等。用户自定义功能可完全面向 Apache ShardingSphere 定义的顶层接口进行定制化扩展,而无需改动 3.2 分布式事务 3.2.1 背景 数据库事务需要满足 ACID(原子性、一致性、隔离性、持久性)四个特性。 • 原子性(Atomicity)指事务作为整体来执行,要么全部执行,要么全不执行; • 一致性(Consistency)指事务应确保数据从一个一致的状态转变为另一个一致的状态; • 隔离性(Isolation)指多个事务并发执行时,一个事务的执行不应影响其他事务的执行; •0 码力 | 449 页 | 5.85 MB | 1 年前3Apache ShardingSphere v5.5.0 中文文档
拔的方式更换。主要包 括查询优化器、分布式事务引擎、分布式执行引擎、权限引擎和调度引擎等。 2.3.2 L2 功能层 用于提供增量能力,其所有组件均是可选的,可以包含零至多个组件。组件之间完全隔离,互无感知,多 组件可通过叠加的方式相互配合使用。主要包括数据分片、读写分离、数据加密、影子库等。用户自定义 功能可完全面向 Apache ShardingSphere 定义的顶层接口进行定制化扩展,而无需改动内核代码。 8.2 分布式事务 8.2.1 背景 数据库事务需要满足 ACID(原子性、一致性、隔离性、持久性)四个特性。 • 原子性(Atomicity)指事务作为整体来执行,要么全部执行,要么全不执行; • 一致性(Consistency)指事务应确保数据从一个一致的状态转变为另一个一致的状态; • 隔离性(Isolation)指多个事务并发执行时,一个事务的执行不应影响其他事务的执行; • state)则允许系统状态更新有一定的延时,这个延时对客户来说不一定能够察觉; • 最终一致性(Eventually consistent)通常是通过消息传递的方式保证系统的最终一致性。 在 ACID 事务中对隔离性的要求很高,在事务执行过程中,必须将所有的资源锁定。柔性事务的理念则是 通过业务逻辑将互斥锁操作从资源层面上移至业务层面。通过放宽对强一致性要求,来换取系统吞吐量 的提升。 基于 ACID 的强一致性事务和基于0 码力 | 557 页 | 4.61 MB | 1 年前3Apache ShardingSphere 中文文档 5.1.1
API,它可以用于实现框架扩展或组件替换。 3.4.2 挑战 可插拔架构对程序架构设计的要求非常高,需要将各个模块相互独立,互不感知,并且通过一个可插拔 内核,以叠加的方式将各种功能组合使用。设计一套将功能开发完全隔离的架构体系,既可以最大限度 的将开源社区的活力激发出来,也能够保障项目的质量。 Apache ShardingSphere 5.x 版本开始致力于可插拔架构,项目的功能组件能够灵活的以可插拔的方式进 3.4. 可插拔架构 16 Apache ShardingSphere document, v5.1.1 L2 功能层 用于提供增量能力,其所有组件均是可选的,可以包含零至多个组件。组件之间完全隔离,互无感知,多 组件可通过叠加的方式相互配合使用。主要包括数据分片、读写分离、数据库高可用、数据加密、影子库 等。用户自定义功能可完全面向 Apache ShardingSphere 定义的顶层接口进行定制化扩展,而无需改动 4.4 分布式事务 4.4.1 背景 数据库事务需要满足 ACID(原子性、一致性、隔离性、持久性)四个特性。 • 原子性(Atomicity)指事务作为整体来执行,要么全部执行,要么全不执行; • 一致性(Consistency)指事务应确保数据从一个一致的状态转变为另一个一致的状态; • 隔离性(Isolation)指多个事务并发执行时,一个事务的执行不应影响其他事务的执行; •0 码力 | 409 页 | 4.47 MB | 1 年前3Apache ShardingSphere 中文文档 5.1.2
API,它可以用于实现框架扩展或组件替换。 3.4.2 挑战 可插拔架构对程序架构设计的要求非常高,需要将各个模块相互独立,互不感知,并且通过一个可插拔 内核,以叠加的方式将各种功能组合使用。设计一套将功能开发完全隔离的架构体系,既可以最大限度 的将开源社区的活力激发出来,也能够保障项目的质量。 Apache ShardingSphere 5.x 版本开始致力于可插拔架构,项目的功能组件能够灵活的以可插拔的方式进 3.4. 可插拔架构 16 Apache ShardingSphere document, v5.1.2 L2 功能层 用于提供增量能力,其所有组件均是可选的,可以包含零至多个组件。组件之间完全隔离,互无感知,多 组件可通过叠加的方式相互配合使用。主要包括数据分片、读写分离、数据库高可用、数据加密、影子库 等。用户自定义功能可完全面向 Apache ShardingSphere 定义的顶层接口进行定制化扩展,而无需改动 4.4 分布式事务 4.4.1 背景 数据库事务需要满足 ACID(原子性、一致性、隔离性、持久性)四个特性。 • 原子性(Atomicity)指事务作为整体来执行,要么全部执行,要么全不执行; • 一致性(Consistency)指事务应确保数据从一个一致的状态转变为另一个一致的状态; • 隔离性(Isolation)指多个事务并发执行时,一个事务的执行不应影响其他事务的执行; •0 码力 | 446 页 | 4.67 MB | 1 年前3Apache ShardingSphere 中文文档 5.1.0
API,它可以用于实现框架扩展或组件替换。 3.4.2 挑战 可插拔架构对程序架构设计的要求非常高,需要将各个模块相互独立,互不感知,并且通过一个可插拔 内核,以叠加的方式将各种功能组合使用。设计一套将功能开发完全隔离的架构体系,既可以最大限度 的将开源社区的活力激发出来,也能够保障项目的质量。 Apache ShardingSphere 5.x 版本开始致力于可插拔架构,项目的功能组件能够灵活的以可插拔的方式进 3.4. 可插拔架构 16 Apache ShardingSphere document, v5.1.0 L2 功能层 用于提供增量能力,其所有组件均是可选的,可以包含零至多个组件。组件之间完全隔离,互无感知,多 组件可通过叠加的方式相互配合使用。主要包括数据分片、读写分离、数据库高可用、数据加密、影子库 等。用户自定义功能可完全面向 Apache ShardingSphere 定义的顶层接口进行定制化扩展,而无需改动 4.4 分布式事务 4.4.1 背景 数据库事务需要满足 ACID(原子性、一致性、隔离性、持久性)四个特性。 • 原子性(Atomicity)指事务作为整体来执行,要么全部执行,要么全不执行; • 一致性(Consistency)指事务应确保数据从一个一致的状态转变为另一个一致的状态; • 隔离性(Isolation)指多个事务并发执行时,一个事务的执行不应影响其他事务的执行; •0 码力 | 406 页 | 4.40 MB | 1 年前3Apache ShardingSphere 中文文档 5.0.0-alpha
由结果后,如果是路由至唯一的数据节点, 则无需涉及到结果归并。因此补列和分页信息等改写都没有必要进行。尤其是分页信息的改写,无需将 数据从第 1 条开始取,大量的降低了对数据库的压力,并且节省了网络带宽的无谓消耗。 流式归并优化 它仅为包含 GROUP BY 的 SQL 增加 ORDER BY 以及和分组项相同的排序项和排序顺序,用于将内存归 并转化为流式归并。在结果归并的部分中,将对流式归并和内存归并进行详细说明。 3.2 分布式事务 3.2.1 背景 数据库事务需要满足 ACID(原子性、一致性、隔离性、持久性)四个特性。 • 原子性(Atomicity)指事务作为整体来执行,要么全部执行,要么全不执行。 • 一致性(Consistency)指事务应确保数据从一个一致的状态转变为另一个一致的状态。 • 隔离性(Isolation)指多个事务并发执行时,一个事务的执行不应影响其他事务的执行。 • state)则允许系统状态更新有一定的延时,这个延时对客户来说不一定能够察觉。 • 而最终一致性(Eventually consistent)通常是通过消息传递的方式保证系统的最终一致性。 在 ACID 事务中对隔离性的要求很高,在事务执行过程中,必须将所有的资源锁定。柔性事务的理念则是 通过业务逻辑将互斥锁操作从资源层面上移至业务层面。通过放宽对强一致性要求,来换取系统吞吐量 的提升。 基于 ACID 的强一致性事务和基于0 码力 | 301 页 | 3.44 MB | 1 年前3Apache ShardingSphere 中文文档 5.0.0
API,它可以用于实现框架扩展或组件替换。 3.4.2 挑战 可插拔架构对程序架构设计的要求非常高,需要将各个模块相互独立,互不感知,并且通过一个可插拔 内核,以叠加的方式将各种功能组合使用。设计一套将功能开发完全隔离的架构体系,既可以最大限度 的将开源社区的活力激发出来,也能够保障项目的质量。 Apache ShardingSphere 5.x 版本开始致力于可插拔架构,项目的功能组件能够灵活的以可插拔的方式进 式可通过可插拔的方式更换。主要包 括查询优化器、分布式事务引擎、分布式执行引擎、权限引擎和调度引擎等。 L2 功能层 用于提供增量能力,其所有组件均是可选的,可以包含零至多个组件。组件之间完全隔离,互无感知,多 组件可通过叠加的方式相互配合使用。主要包括数据分片、读写分离、数据库高可用、数据加密、影子库 等。用户自定义功能可完全面向 Apache ShardingSphere 定义的顶层接口进行定制化扩展,而无需改动 4.3 分布式事务 4.3.1 背景 数据库事务需要满足 ACID(原子性、一致性、隔离性、持久性)四个特性。 • 原子性(Atomicity)指事务作为整体来执行,要么全部执行,要么全不执行; • 一致性(Consistency)指事务应确保数据从一个一致的状态转变为另一个一致的状态; • 隔离性(Isolation)指多个事务并发执行时,一个事务的执行不应影响其他事务的执行; •0 码力 | 385 页 | 4.26 MB | 1 年前3Apache ShardingSphere ElasticJob 中文文档 2023 年 11 月 01 日
开启失效转移功能,ElasticJob 会监控作业每一分片的执行状态,并将其写入注册中心,供其他节点感知。 在一次运行耗时较长且间隔较长的作业场景,失效转移是提升作业运行实时性的有效手段;对于间隔较 短的作业,会产生大量与注册中心的网络通信,对集群的性能产生影响。而且间隔较短的作业并未见得 关注单次作业的实时性,可以通过下次作业执行的重分片使所有的分片正确执行,因此不建议短间隔作 业开启失效转移。 另外需要注意的是,作业本身的幂等性,是保证失效转移正确性的前提。 灵活定制化作业是 ElasticJob 3.x 版本的最重要设计变革。新版本基于 Apache ShardingSphere 可插拔架 构的设计理念,打造了全新作业 API。意在使开发者能够更加便捷且相互隔离的方式拓展作业类型,打造 ElasticJob 作业的生态圈。 ElasticJob 提供了对作业的弹性伸缩、分布式治理等功能的同时,并未限定作业的类型。它通过灵活的作 业 API,将作业解耦 态,可保证数据不会重复选取。 maxTimeDiffSeconds: 如果时间误差超过配置秒数则作业启动时将抛异常。 reconcileIntervalMinutes: 在分布式的场景下由于网络、时钟等原因,可能导致 ZooKeeper 的数据与真实运行的作业产生不一致,这 种不一致通过正向的校验无法完全避免。需要另外启动一个线程定时校验注册中心数据与真实作业状态 的一致性,即维持 ElasticJob0 码力 | 98 页 | 1.97 MB | 1 年前3
共 18 条
- 1
- 2