深藍色心情

          過來聊聊~~~~

            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 深藍色心情 閱讀(1555) 評論(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 深藍色心情
          @鯊骨文

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

          主站蜘蛛池模板: 青田县| 龙胜| 兴城市| 万盛区| 永城市| 新晃| 石狮市| 南漳县| 新闻| 德化县| 铜陵市| 金沙县| 甘洛县| 庆阳市| 越西县| 三台县| 龙岩市| 土默特右旗| 湖南省| 新沂市| 棋牌| 临沧市| 舒城县| 涞水县| 玛曲县| 浦北县| 榆树市| 东兴市| 长子县| 新安县| 宜川县| 绥芬河市| 鹤庆县| 精河县| 安吉县| 许昌县| 来凤县| 竹山县| 资源县| 乐安县| 建宁县|