1. 程式人生 > >sharding-jdbc-how2work 當當的sharding-jdbc剖析(查詢)

sharding-jdbc-how2work 當當的sharding-jdbc剖析(查詢)

查詢 aso 剖析 cts statement dstat ges bstr red

1. 以JDBC作為出發點

1.1 重新實現了JDBC的幾個接口

實現javax.sql.DataSource接口 ShardingDataSource
實現java.sql.Connection接口 ShardingConnection
實現java.sql.Statement ShardingStatement
實現java.sql.PreparedStatement ShardingPreparedStatement
實現java.sql.ResultSet AbstractShardingResultSet

重新實現的模式是adapter的模式

具體的實現分析見下面的思維導圖

技術分享

1.2 聚合 比較排序的處理

技術分享

2. Executor

技術分享

3. Route

技術分享

4. Parse後visitor的處理

技術分享

4.1 AbstractMySQLVisitor 處理細節

技術分享

4.2 MySQLSelectVisitor 邏輯

技術分享

delete insert update的見第4節一開始的那張圖。

sharding-jdbc-how2work 當當的sharding-jdbc剖析(查詢)