• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    大數據量批處理系統和大數據量批處理方法技術方案

    技術編號:8532982 閱讀:568 留言:0更新日期:2013-04-04 16:05
    本發明專利技術提供了一種大數據量批處理系統,包括:中間件單元用于向一級緩存裝置發送查詢請求,以及接收來自二級緩存裝置的二級分頁主鍵集合,根據二級分頁主鍵集合向數據庫查詢待處理數據并在對待處理數據進行計算處理后,向數據庫發送持久化數據請求;一級緩存裝置用于向數據庫查詢符合查詢請求的主鍵集合,以及根據主鍵集合生成一級分頁主鍵集合并將一級分頁主鍵集合返回至二級緩存裝置;二級緩存裝置用于根據一級分頁主鍵集合生成二級分頁主鍵集合并將二級分頁主鍵集合返回至中間件單元。本發明專利技術還提供了一種大數據量批處理方法。根據本發明專利技術的技術方案,可大大提高系統海量數據的處理速度,降低系統處理時間,進而提升系統的綜合性能。

    【技術實現步驟摘要】

    本專利技術涉及計算機
    ,具體而言,涉及一種大數據量批處理系統和一種大數據量批處理方法。
    技術介紹
    目前大型的聯機事務處理系統(OLTP)中,衡量其系統性能好壞的指標,往往是一些關鍵核心算法在大數據量應用場景下的處理速度,而處理速度的快慢直接影響整個系統的性能。一個大型的信息化系統,往往都有一些自己比較復雜業務處理邏輯、業務處理算法,當這些復雜的業務處理在小數據量應用場景下效率問題往往都被忽視,因為這種場景下系統響應速度是比較快的,而在大數據量情況下可能就會出現系統處理性能的瓶頸,長時間無響應或者直接宕機等嚴重情況,那么其中比較共性和核心的問題就是第一,如果數據量過大,程序一次性讀到內存中可能造成系統內存溢出;第二,如果不是一次性讀取數據到內存中,循環讀取一條一條數據在進行處理,則算法由批處理變成了循環單個處理,也必定大大影響系統的性能。對此,現有技術使用后臺分頁技術來解決這樣的問題。現有的分頁技術都是在數據庫端實現分頁技術,一種是直接利用SQL語句來進行分頁,例如第一次取第1-50條記錄,第二次取第51-100條記錄等等依次類推,這種方式雖然達到了每次讀取有限的記錄加載到內存中,但是數據庫端的壓力依然很大,因為每次SQL語句的查詢都是對結果集全紀錄的掃描,處理速度并沒有優化;另外一種是通過代碼來實現分頁,例如JAVA中利用ResultSet結果集進行循環遍歷來實現,第一次遍歷第1_50條記錄并取出。第二次遍歷第1-100條記錄,但只取出第51-100條記錄,這種方式依然存在每次預先查詢所有記錄的缺點;其次還有一種通過預先查出將滿足條件結果集的主鍵PK,然后存入臨時表并編上序號,之后通過序號一批批讀出PK集合,在利用PK集合到數據庫中查詢出數據,這種方式雖然解決了前面的問題,但是由于要一批批從數據庫臨時表中讀取數據,在高并發的情況下,數據庫端的壓力還是非常大,并且會有多次中間件單元到數據庫的連接、查詢、數據網絡傳輸,在窄帶環境中,效率依然存在一些瓶頸,另外沒有合理的利用中間件單元資源。最后上述三種方案都沒有提出加載數據到內存中后,如何用一種通用的方式進一步優化數據處理的速度,都只是考慮解決整個算法中數據加載的瓶頸,而往往大數據量批處理算法往往有查詢加載和數據處理持久化兩個過程,并且分頁處理如何自動適配多數據庫,這些都是問題。所以,如何解決大數據量加載過程中中間件單元資源和數據庫資源的合理使用,如何使分頁底層自適應多種數據庫,如何提出一整套解決方法和系統,防止中間件單元內存溢出、減輕數據庫端處理壓力、降低中間件單元和數據庫之間網絡傳輸數據量,這是亟待解決的技術問題
    技術實現思路
    本專利技術正是基于上述問題,提出了一種大數據量批處理技術,能夠防止中間件單元內存溢出、減輕數據庫端的處理壓力。根據本專利技術的一個方面,本專利技術提供了一種大數據量批處理系統,包括中間件單元、一級緩存裝置和二級緩存裝置,其中,所述中間件單元用于向所述一級緩存裝置發送查詢請求,以及接收來自所述二級緩存裝置的二級分頁主鍵集合,根據所述二級分頁主鍵集合向數據庫查詢待處理數據并在對所述待處理數據進行計算處理后,向所述數據庫發送持久化數據請求;所述一級緩存裝置用于向所述數據庫查詢符合所述查詢請求的主鍵集合,以及根據所述主鍵集合生成一級分頁主鍵集合并將所述一級分頁主鍵集合返回至所述二級緩存裝置;所述二級緩存裝置用于根據所述一級分頁主鍵集合生成二級分頁主鍵集合并將所述二級分頁主鍵集合返回至所述中間件單元。通過上述技術方案,在中間件讀取數據的過程中加入兩級緩存結構,大大優化數據讀取,解決了中間件內存溢出的技術問題。在上述技術方案中,優選的,還可以包括第一設置單元,設置所述一級緩存裝置的一級緩存閾值;所述一級緩存裝置還用于在所述主鍵集合的數據量小于等于所述一級緩存閾值時,直接將所述一級分頁主鍵集合返回至所述二級緩存裝置,以及在所述主鍵集合的數據量大于所述一級緩存閾值時,建立并插入臨時表,對所述臨時表進行分頁并將獲取的主鍵返回至所述二級緩存裝置。如果只有一級緩存結構來解決中間件內存溢出的問題,則必須對每頁主鍵數據量做更細粒度的控制,當采用了兩級緩存結構之后,由于一級緩存返回的只是主鍵,每一個主鍵只是一個固定長度的字符串,占用內存較少,所以可大大提高一級緩存結構每頁的主鍵數據總量。在上述技術方案中,優選的,還可以包括第二設置單元,設置所述二級緩存裝置的二級緩存閾值;所述二級緩存裝置還用于在所述一級分頁主鍵的數據量小于等于所述二級緩存閾值時,直接將所述二級分頁主鍵集合返回至所述中間件單元,以及在所述主鍵集合的數據量大于所述二級緩存閾值時,將所述二級分頁主鍵集合暫存于內存,從所述內存中取出每一頁主鍵數據,根據所述每一頁主鍵數據查詢所述待處理數據。基于中間件實際處理數據的占用量設置二級緩存裝置的二級緩存閾值,合理設置各級緩存結構的存儲閾值能夠最大限度的提升系統的處理效率。上述技術方案中,優選的,所述中間件單元包括事務建立子單元,用于建立獨立事務;加鎖子單元,用于對所述待處理數據添加中間件單元級別主鍵鎖,對所述待處理數據進行處理,在處理結束后,對所述中間件單元級別鎖進行解鎖。每一頁數據采用獨立事務處理,也就是說每頁數據處理完畢后事務立即提交,而不是僅在整個算法最外層起一個事務,不會對數據庫中所有數據進行長時間加鎖鎖定,從而提升數據庫整體并發處理能力,降低了數據庫端的壓力。在上述任一技術方案中,優選的,還可以包括自識別裝置,使所述一級緩存裝置自適應多類型數據庫。根據本專利技術的另一方面,還提供了一種大數據量批處理方法,包括以下步驟步驟402,中間件單元向一級緩存裝置發送查詢請求,數據庫返回符合所述查詢請求的主鍵集合至所述一級緩存裝置;步驟404,所述一級緩存裝置根據所述主鍵集合生成一級分頁主鍵集合并將所述一級分頁主鍵集合返回至二級緩存裝置;步驟406,所述二級緩存裝置根據所述一級分頁主鍵集合生成二級分頁主鍵集合并將所述二級分頁主鍵集合返回至所述中間件單元;步驟408,所述中間件單元根據所述二級分頁主鍵集合向所述數據庫查詢待處理數據并再對所述待處理數據進行計算處理后,向所述數據庫發送持久化數據請求。通過上述技術方案,在中間件讀取數據的過程中加入兩級緩存結構,大大優化數據讀取,解決了中間件內存溢出的技術問題。在上述技術方案中,優選的,所述步驟404具體包括設置所述一級緩存裝置的一級緩存閾值;在所述主鍵集合的數據量小于等于所述一級緩存閾值時,直接將所述一級分頁主鍵集合返回至所述二級緩存裝置;在所述主鍵集合的數據量大于所述一級緩存閾值時,建立并插入臨時表,對所述臨時表進行分頁并將獲取的主鍵返回至所述二級緩存裝置。如果只有一級緩存結構來解決中間件內存溢出的問題,則必須對每頁主鍵數據量做更細粒度的控制,當采用了兩級緩存結構之后,由于一級緩存返回的只是主鍵,每一個主鍵只是一個固定長度的字符串,占用內存較少,所以可大大提高一級緩存結構每頁的主鍵數據總量。在上述技術方案中,優選的,所述步驟406具體包括設置所述二級緩存裝置的二級緩存閾值;在所述一級分頁主鍵的數據量小于等于所述二級緩存閾值時,直接將所述二級分頁主鍵集合返回至所述中間件單元;在所述主鍵集合的數據量大于所述二級緩存閾值時本文檔來自技高網
    ...

    【技術保護點】
    一種大數據量批處理系統,其特征在于,包括:中間件單元、一級緩存裝置和二級緩存裝置,其中,所述中間件單元用于向所述一級緩存裝置發送查詢請求,以及接收來自所述二級緩存裝置的二級分頁主鍵集合,根據所述二級分頁主鍵集合向數據庫查詢待處理數據并在對所述待處理數據進行計算處理后,向所述數據庫發送持久化數據請求;所述一級緩存裝置用于向所述數據庫查詢符合所述查詢請求的主鍵集合,以及根據所述主鍵集合生成一級分頁主鍵集合并將所述一級分頁主鍵集合返回至所述二級緩存裝置;所述二級緩存裝置用于根據所述一級分頁主鍵集合生成二級分頁主鍵集合并將所述二級分頁主鍵集合返回至所述中間件單元。

    【技術特征摘要】
    1.一種大數據量批處理系統,其特征在于,包括中間件單元、一級緩存裝置和二級緩存裝置,其中, 所述中間件單元用于向所述一級緩存裝置發送查詢請求,以及接收來自所述二級緩存裝置的二級分頁主鍵集合,根據所述二級分頁主鍵集合向數據庫查詢待處理數據并在對所述待處理數據進行計算處理后,向所述數據庫發送持久化數據請求; 所述一級緩存裝置用于向所述數據庫查詢符合所述查詢請求的主鍵集合,以及根據所述主鍵集合生成一級分頁主鍵集合并將所述一級分頁主鍵集合返回至所述二級緩存裝置; 所述二級緩存裝置用于根據所述一級分頁主鍵集合生成二級分頁主鍵集合并將所述二級分頁主鍵集合返回至所述中間件單元。2.根據權利要求1所述的大數據量批處理系統,其特征在于,還包括第一設置單元,設置所述一級緩存裝置的一級緩存閾值; 所述一級緩存裝置還用于在所述主鍵集合的數據量小于等于所述一級緩存閾值時,直接將所述一級分頁主鍵集合返回至所述二級緩存裝置,以及在所述主鍵集合的數據量大于所述一級緩存閾值時,建立并插入臨時表,對所述臨時表進行分頁并將獲取的主鍵返回至所述二級緩存裝置。3.根據權利要求1所述的大數據量批處理系統,其特征在于,還包括 第二設置單元,設置所述二級緩存裝置的二級緩存閾值; 所述二級緩存裝置還用于在所述一級分頁主鍵的數據量小于等于所述二級緩存閾值時,直接將所述二級分頁主鍵集合返回至所述中間件單元,以及在所述主鍵集合的數據量大于所述二級緩存閾值時,將所述二級分頁主鍵集合暫存于內存,從所述內存中取出每一頁主鍵數據,根據所述每一頁主鍵數據查詢所述待處理數據。4.根據權利要求3所述的大數據量批處理系統,其特征在于,所述中間件單元包括 事務建立子單元,用于建立獨立事務; 加鎖子單元,用于對所述待處理數據添加中間件單元級別主鍵鎖,對所述待處理數據進行處理,在處理結束后,對所述中間件單元級別鎖進行解鎖。5.根據權利要求1至4中任一項所述的大數據量批處理系統,其特征在于,還包括自識別裝置...

    【專利技術屬性】
    技術研發人員:張成
    申請(專利權)人:用友軟件股份有限公司
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 无码精品人妻一区二区三区免费| 久久男人Av资源网站无码软件 | 亚洲av无码专区在线电影天堂| 无码国产伦一区二区三区视频| 中文字幕亚洲精品无码| 亚洲av无码不卡私人影院| 亚洲Aⅴ无码专区在线观看q| 精品无码久久久久久国产| 国产AV无码专区亚洲AV男同| 无码日本电影一区二区网站| 成人无码AV一区二区| 亚洲av无码av在线播放| 亚洲AV无码久久精品成人| 人妻无码aⅴ不卡中文字幕| 99久久无码一区人妻a黑| 亚洲av永久无码精品秋霞电影影院 | 久久精品日韩av无码| 久久久久亚洲AV无码专区首JN| heyzo专区无码综合| av色欲无码人妻中文字幕| 亚洲精品无码久久久影院相关影片 | 久久无码AV一区二区三区| 日韩欧国产精品一区综合无码| 无码专区一va亚洲v专区在线| 亚洲精品无码久久毛片波多野吉衣| 久久久无码精品亚洲日韩软件 | 人妻少妇AV无码一区二区| 亚洲AV无码一区二区三区鸳鸯影院 | 国产综合无码一区二区色蜜蜜| 色综合久久无码五十路人妻| 中文字幕丰满乱子伦无码专区| 午夜无码人妻av大片色欲| 久久久久久99av无码免费网站| 亚洲AV无码AV吞精久久| 国产成人无码AV麻豆| 无码粉嫩小泬无套在线观看 | 无码射肉在线播放视频| 亚洲综合久久精品无码色欲| 亚洲中文字幕无码av在线| 98久久人妻无码精品系列蜜桃| 色AV永久无码影院AV|