今天,經(jīng)過(guò)一個(gè)多月的線(xiàn)上運(yùn)行,我們很榮幸的發(fā)布guzz 1.2.9分布式切表功能。分布式切表是指將一張大表分切成N張小表,并將這些小表儲(chǔ)存到不同的數(shù)據(jù)庫(kù)(機(jī)器)中,從而實(shí)現(xiàn)數(shù)據(jù)的分散存儲(chǔ)和分散查詢(xún)。
對(duì)于大型系統(tǒng)和數(shù)據(jù)規(guī)模較大的系統(tǒng),分布式切表提供了非常好的解決方案,有效的解決了大數(shù)據(jù)分散存儲(chǔ)、查詢(xún)、歸檔和維護(hù)等諸多的問(wèn)題。但市面上流行的數(shù)據(jù)層框架,對(duì)于此特性幾乎無(wú)人涉及。guzz首次將這種技術(shù)做成了通用框架級(jí)別,更全面的提供“一站式數(shù)據(jù)層解決方案”。
guzz 1.2.9 build20110209 更新介紹:
分布式切表:
guzz特性。
分布式切表以guzz的Shadow Table為基礎(chǔ)。在Shadow Table的基礎(chǔ)上,通過(guò)配置完成,應(yīng)用不需要修改現(xiàn)有代碼即可完成小表的分布式存儲(chǔ)。具體請(qǐng)參看:http://code.google.com/p/guzz/wiki/TutorialVirtualDB?wl=zh-Hans
至此,guzz已經(jīng)通過(guò)6個(gè)層面完成了全面的數(shù)據(jù)分切支持:
支持記錄SQL執(zhí)行時(shí)間:
在打印執(zhí)行的SQL和SQL參數(shù)的同時(shí),通過(guò) 調(diào)試服務(wù)(DebugService) 兩個(gè)新的參數(shù)允許打印出sql執(zhí)行所花費(fèi)的時(shí)間,并且允許控制只打印執(zhí)行時(shí)間超過(guò)一定時(shí)長(zhǎng)的sql語(yǔ)句。時(shí)間單位為納秒。
具體請(qǐng)參看:http://code.google.com/p/guzz/wiki/AppendCoreService?wl=zh-Hans
支持hbm.xml的package屬性:
支持配置hbm.xml的類(lèi)名時(shí),指定package。用于支持某些hibernate工具自動(dòng)生成的配置文件。
其他:
1. 更改LogService為InsertQueueService;
2. 修復(fù)了幾個(gè)bug。
什么是guzz?
guzz是一套用來(lái)解決ORM、多數(shù)據(jù)源管理、以及通用數(shù)據(jù)計(jì)算的數(shù)據(jù)層框架,為系統(tǒng)在數(shù)據(jù)層的設(shè)計(jì)提供一站式解決方案。guzz可以看作是 ibatis/hibernate的一大補(bǔ)充和延伸,并可以取代這2個(gè)東西。
guzz主要功能與特點(diǎn):
- 現(xiàn)代大規(guī)模系統(tǒng)設(shè)計(jì),技術(shù)上吸收了ibatis/hibernate的優(yōu)點(diǎn)
- 對(duì)于大部分場(chǎng)景,支持像hibernate一樣的對(duì)象持久、映射和方便的增刪改查,提高開(kāi)發(fā)效率
- 對(duì)于復(fù)雜場(chǎng)景,支持像ibatis一樣,讓DBA參與SQL設(shè)計(jì)的復(fù)雜數(shù)據(jù)庫(kù)操作和優(yōu)化,以及SQL在線(xiàn)調(diào)試
- 更簡(jiǎn)潔、更好用、更容易控制的批操作接口
- 支持在線(xiàn)加載與調(diào)試SQL。按照應(yīng)用策略,從文件/數(shù)據(jù)庫(kù)/Web Service等途徑,動(dòng)態(tài)提取與使用SQL語(yǔ)句(Dynamic SQL)
- 支持應(yīng)用程序使用大量的數(shù)據(jù)庫(kù)和主從讀寫(xiě)分離
- 支持?jǐn)?shù)據(jù)庫(kù)表在多組機(jī)器間水平分布(Shard),并自動(dòng)維護(hù)多組機(jī)器之間的分布式事務(wù)
- 支持1張表按照業(yè)務(wù)規(guī)則分切成多張小表(Shadow),并支持每張小表?yè)碛凶约禾厥獾膶傩宰侄危–ustom)
- 支持1張大表分切后的小表,分布到不同的數(shù)據(jù)庫(kù)中(VirtualDB)
- 支持超越范式的特殊關(guān)聯(lián)、非結(jié)構(gòu)化數(shù)據(jù)等異構(gòu)資源POJO模式的統(tǒng)一讀取
- 支持組件化服務(wù)(SOA)和服務(wù)相互依賴(lài),構(gòu)建企業(yè)/項(xiàng)目實(shí)施基礎(chǔ)平臺(tái)
- 提供面向?qū)ο蟮臄?shù)據(jù)庫(kù)讀取標(biāo)簽(JSP Taglib),加快頁(yè)面展示層的快速變更、開(kāi)發(fā)與部署
- 支持配置管理服務(wù)器,可以使用一套軟件系統(tǒng)對(duì)所有應(yīng)用程序的配置進(jìn)行統(tǒng)一管理
項(xiàng)目地址:http://code.google.com/p/guzz/
文檔:http://code.google.com/p/guzz/wiki/WikiHomePage?tm=6
下載:http://code.google.com/p/guzz/downloads/list
下一個(gè)build更新計(jì)劃:
- 做什么哪?開(kāi)源一個(gè)云服務(wù)項(xiàng)目?
- 輔助診斷類(lèi)功能?
|