Sharding-JDBC 3.x 原理篇之基本介紹(二)附1.x~3.x版本文件
阿新 • • 發佈:2018-12-14
前言
上一篇描述了Sharding-JDBC的歷史演進過程和設計理念,本篇將具體描述Sharding-Sphere的具體功能和個版本特性。後續將對常用核心功能逐一進行分析和探討。
版本功能
1.x功能列表
分庫分表
SQL解析功能完善,支援聚合,分組,排序,LIMIT,TOP等查詢,並且支援級聯表以及笛卡爾積的表查詢
支援內、外連線查詢
分片策略靈活,可支援=,BETWEEN,IN等多維度分片,也可支援多分片鍵共用,以及自定義分片策略
- 基於Hint的強制分庫分表路由
讀寫分離 - 一主多從的讀寫分離配置,可配合分庫分表使用
- 基於Hint的強制主庫路由
柔性事務 - 最大努力送達型
- TCC型(TBD)
分散式主鍵 - 統一的分散式基於時間序列的ID生成器
- 協議適配&多樣性配置
- 全ORM支援
- 全資料庫連線池支援
- 多資料庫支援(目前支援MySQL,Oracle,SQLServer和PostgreSQL)
- Spring名稱空間支援
- YAML名稱空間支援
- 基於動態語言的分片策略配置
2.x功能列表
在1.x版本的基礎上又增加了下列功能
分庫分表
- 自定義的靈活分片策略,支援多分片鍵共用,支援inline表示式
讀寫分離 - 支援同一執行緒內的資料一致性
- 支援分庫分表與讀寫分離共同使用
- 支援基於Hint的強制主庫路由
- 分散式治理(2.x新增功能)
- 支援配置中心,可動態修改配置
- 支援客戶端熔斷和失效轉移
- 支援Open Tracing協議
3.x功能列表
3.x已更新名字為Sharding-Sphere,包名也隨之轉換