深藍色心情

          過來聊聊~~~~

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            31 Posts :: 0 Stories :: 46 Comments :: 0 Trackbacks

          guzz 1.2.9更新介紹: 

          本次更新: 

          1. 優化了批操作接口。增加了默認的自動提交和清除選項,使得調用者可以連續插入百萬記錄而不用自己計數,手工分batchSize提交。默認batchSize的大小根據數據庫類型和版本,自動選擇性價比最合適的;當然調用者也可以在程序中修改。 

          2. 新提供Leader服務接口。Leader接口用于在集群環境下確認自己是不是主機,一個集群下一般只允許1臺主機。新提供的LeaderService僅為接口,開發者需要根據自身情況選擇適合自己的實現。halo-cloud工程實現了基于zookeeper的Leader服務,代碼:[http://code.google.com/p/halo-cloud/source/browse/trunk/misc/com/guzzservices/version/impl/ZKLeaderElectionServiceImpl.java] 

          什么是guzz? 

          guzz是一套用于多數據庫編程的ORM框架,用于替代hibernate和ibatis,實現在一套系統中輕松使用多臺數據庫。guzz同時提供通用數據計算和配置管理等,簡化系統復雜度,為系統在數據層的設計提供一站式解決方案。

          guzz主要功能與特點: 
          • 現代大規模系統設計,技術上吸收了ibatis/hibernate的優點
          • 支持應用程序使用大量的數據庫和主從讀寫分離
          • 支持數據庫表在多組機器間水平分布(Shard),并自動維護多組機器之間的分布式事務
          • 支持1張表按照業務規則分切成多張小表(Shadow),并支持每張小表擁有自己特殊的屬性字段(Custom)
          • 支持1張大表分切后的小表,分布到不同的數據庫中(VirtualDB)
          • 支持超越范式的特殊關聯、非結構化數據等異構資源POJO模式的統一讀取
          • 支持組件化服務(SOA)和服務相互依賴,構建企業/項目實施基礎平臺
          • 提供面向對象的數據庫讀取標簽(JSP Taglib),加快頁面展示層的快速變更、開發與部署
          • 對于大部分場景,支持像hibernate一樣的對象持久、映射和方便的增刪改查,提高開發效率
          • 對于復雜場景,支持像ibatis一樣,讓DBA參與SQL設計的復雜數據庫操作和優化,以及SQL在線調試
          • 更簡潔、更好用、更容易控制的批操作接口
          • 支持在線加載與調試SQL。按照應用策略,從文件/數據庫/Web Service等途徑,動態提取與使用SQL語句(Dynamic SQL)
          • 支持配置管理服務器,可以使用一套軟件系統對所有應用程序的配置進行統一管理
          項目地址:http://code.google.com/p/guzz/ 
          文檔:http://code.google.com/p/guzz/wiki/WikiHomePage?tm=6 
          下載:http://code.google.com/p/guzz/downloads/list 

          posted on 2011-07-29 09:14 深藍色心情 閱讀(1556) 評論(6)  編輯  收藏 所屬分類: Java

          Feedback

          # 進口高空作業平臺[未登錄] 2011-07-29 10:15 bob
          此技術可以很好的為我們服務,希望可以得到更多的運用  回復  更多評論
            

          # re: guzz1.2.9更新發布,支持選舉服務 2011-08-17 11:09 鯊骨文
          這個GUZZ框架 俺不想要那么復雜的.
          俺想要可以同時連接多個數據庫,前臺一個SQL語句自動定位到某個數據庫中,不用程序切換.如果發現這個SQL語句查詢的表同時存在多個數據庫中,那么就分別查詢每個庫,然后匯總數據再返回前臺.

            回復  更多評論
            

          # re: guzz1.2.9更新發布,支持選舉服務 2011-08-17 20:12 深藍色心情
          @鯊骨文
          這種功能不可能實現,表名相同的不代表意思就相同。好比多個系統交叉引用,為了方便,允許訪問對方的數據庫,用戶表都是tb_user之類的,自動化肯定出問題。。。這類功能不適合基礎框架做,在上層做封裝吧。  回復  更多評論
            

          # re: guzz1.2.9更新發布,支持選舉服務 2011-08-26 18:11 鯊骨文
          支持1張大表分切后的小表,分布到不同的數據庫中

          難道跟我的想要的不一樣嗎?

          比如說學生表 t_student 這個大表是如何分切? 你的意思是不用關心表存放在哪個庫中,GUZZ自動地去切!

          你的意思站在程序員角度上用GUZZ創建一張大表,不關心存放在哪里,不關心用什么數據庫是嗎?
          如果站在數據庫這塊來看,原有一個ORACLE數據庫學生表擁有2億學生.想再用1臺機器裝個ORACLE 然后把建立一個一模一樣的表,然后把1億學生數據遷移到新機器上. 然后應用要查數據,通過GUZZ來驅動兩臺機器上的數據庫一起查,然后再合并數據提交給前臺.


          這樣的需求不能實現嗎?  回復  更多評論
            

          # re: guzz1.2.9更新發布,支持選舉服務 2011-08-26 18:15 鯊骨文
          @深藍色心情

          為什么要限制呢? 你不用管它意思是否相同.這是人去管的事情.

          ORACLE 有并行查詢一個表的功能.
          想要這個功能升級 可以并行查多個庫中的同一張表.  回復  更多評論
            

          # re: guzz1.2.9更新發布,支持選舉服務 2011-08-29 08:30 深藍色心情
          @鯊骨文

          我沒有明白你的意思,但是應該沒有任何限制。
            回復  更多評論
            

          主站蜘蛛池模板: 三门峡市| 七台河市| 乃东县| 漳浦县| 汉阴县| 台北市| 天水市| 湾仔区| 新兴县| 吴忠市| 蒲江县| 河北区| 宣威市| 南宫市| 进贤县| 渑池县| 乐亭县| 长海县| 长春市| 靖远县| 正宁县| 互助| 曲沃县| 监利县| 延寿县| 呼玛县| 抚宁县| 拉萨市| 樟树市| 天台县| 和静县| 大理市| 水城县| 双牌县| 高邑县| 贵州省| 贡觉县| 哈巴河县| 商河县| 华亭县| 铜川市|