開源框架整理(持續更新)

數據庫相關

sharding-jdbc

噹噹開源sharding-jdbc,輕量級數據庫分庫分表中間件java

Sharding-JDBC是噹噹應用框架ddframe中,從關係型數據庫模塊dd-rdb中分離出來的數據庫水平分片框架,實現透明化數據庫分庫分表訪問。Sharding-JDBC是繼dubbox和elastic-job以後,ddframe系列開源的第3個項目。 Sharding-JDBC直接封裝JDBC協議,能夠理解爲加強版的JDBC驅動,舊代碼遷移成本幾乎爲零。 Sharding-JDBC定位爲輕量級java框架,使用客戶端直連數據庫,以jar包形式提供服務,無proxy代理層,無需額外部署,無其餘依賴,DBA也無需改變原有的運維方式。git

主要包括如下特色:github

  1. 可適用於任何基於java的ORM框架,如:JPA, Hibernate, Mybatis, Spring JDBC Template或直接使用JDBC。
  2. 可基於任何第三方的數據庫鏈接池,如:DBCP, C3P0, BoneCP, Druid等。
  3. 理論上可支持任意實現JDBC規範的數據庫。雖然目前僅支持MySQL,但已有支持Oracle,SQLServer等數據庫的計劃。
  4. 分片策略靈活,可支持等號,between,in等多維度分片,也可支持多分片鍵。
  5. SQL解析功能完善,支持聚合,分組,排序,limit,or等查詢,並支持Binding Table以及笛卡爾積表查詢。
  6. 性能高。單庫查詢QPS爲原生JDBC的99.8%;雙庫查詢QPS比單庫增長94%。

參考資料

相關文章
相關標籤/搜索