guzz是一套用來解決ORM、多數(shù)據(jù)源管理、以及通用數(shù)據(jù)計算的數(shù)據(jù)層框架,為系統(tǒng)在數(shù)據(jù)層的設計提供一站式解決方案。guzz可以看作是 ibatis/hibernate的一大的延伸,并可以取代這2個東西。
guzz主要功能與特點:
文檔:http://www.guzz.org/wiki/GuzzGuide
1.2.7正式版 更新介紹:
本次更新有很多新概念需要介紹,因此篇幅較長。詳細的示例和說明請參看:
表分切:http://www.guzz.org/wiki/GuzzShadow
自定義屬性表(基于表分切):[url]http://www.guzz.org/wiki/GuzzCustomTable [/url]
并行任務執(zhí)行(基于服務):http://www.guzz.org/wiki/GuzzFutureService
主健生成策略:http://www.guzz.org/wiki/GuzzHbm
下一版本計劃:
guzz主要功能與特點:
- 現(xiàn)代大規(guī)模系統(tǒng)設計,技術上吸收了ibatis/hibernate的優(yōu)點
- 支持像hibernate一樣的對象化持久、映射和方便的增刪改查
- 支持像ibatis一樣,讓dba參與sql設計的復雜數(shù)據(jù)庫操作和優(yōu)化
- 支持應用程序使用大量的數(shù)據(jù)庫和主從讀寫分離
- 支持超越范式的特殊關聯(lián)、非結構化數(shù)據(jù)等異構資源的統(tǒng)一管理
- 支持數(shù)據(jù)表在多組機器間水平分布(Shard),并自動維護多組機器之間的分布式事務
- 支持1張表按照業(yè)務規(guī)則分切成多張小表(Shadow),并支持每張小表擁有自己特殊的屬性字段(Custom)
- 支持組件化服務(SOA),構建企業(yè)/項目實施基礎平臺
- 提供面向對象的數(shù)據(jù)庫讀取標簽(JSP Taglib),加快頁面展示層的快速變更、開發(fā)與部署
- 支持配置管理服務器,可以使用一套軟件系統(tǒng)對所有應用程序的配置進行統(tǒng)一管理
文檔:http://www.guzz.org/wiki/GuzzGuide
1.2.7正式版 更新介紹:
- 支持表分切。允許同一對象按照業(yè)務規(guī)則,分別存儲在不同的表中。如新聞評論:新聞頻道的評論存放在 tb_c1,娛樂:tb_c2,體育tb_c3,其他:tb_c4,滿足同類在線數(shù)據(jù)的數(shù)據(jù)表平行擴展需要。表分切命名為:Shadow Table。
- 支持自定義屬性表。允許分切后的每張小表擁有自己的動態(tài)對象屬性和字段。如購物網站中:商品對象擁有統(tǒng)一的名稱、價格、編號、評分等,但不同的商品可能有自己特殊的屬性,如圖書擁有ISBN和出版社作者,服裝擁有尺碼、顏色、款式等等。自定義屬性允許程序只定義1個商品域對象,然后通過自定義屬性和切表,將每1種特定的商品分切到1張自己特殊的表中,這張表同時擁有商品通用的字段以及這種商品自己的字段,查詢時可以按照特殊字段直接在數(shù)據(jù)庫中進行關系查詢。在guzz中,自定義屬性的定義允許存儲到數(shù)據(jù)庫中,像普通對象一樣動態(tài)生成和管理,不用配置復雜的xml。自定義屬性命名為:Custom Table。
- 增加并行任務支持。用于多個遠程服務同步的調用,降低等待時間。
- 增加hilo和seqhilo主健生成策略。至此,hibernate支持的常見主健生成策略,guzz都支持了。
- 增加外掛環(huán)境接口。如果在spring中啟動,允許在guzz中獲取spring定義的bean。
本次更新有很多新概念需要介紹,因此篇幅較長。詳細的示例和說明請參看:
表分切:http://www.guzz.org/wiki/GuzzShadow
自定義屬性表(基于表分切):[url]http://www.guzz.org/wiki/GuzzCustomTable [/url]
并行任務執(zhí)行(基于服務):http://www.guzz.org/wiki/GuzzFutureService
主健生成策略:http://www.guzz.org/wiki/GuzzHbm
下一版本計劃:
- 數(shù)據(jù)庫自動分庫支持。允許同一張表,分散在多臺數(shù)據(jù)庫中。
- 提供更多對服務的支持。
- 探索SASS(軟件就是服務)的數(shù)據(jù)層模型。
- 其他。