[發明專利]一種對海量文件進行存取的方法及裝置無效
| 申請號: | 201010163051.8 | 申請日: | 2010-04-29 |
| 公開(公告)號: | CN101859316A | 公開(公告)日: | 2010-10-13 |
| 發明(設計)人: | 趙輝;姚愛國;鐘良勇;肖保鋒;趙鵬山;王志亮;崔旭敏;王智廣;曾舜峰;王春暉 | 申請(專利權)人: | 北京無限立通通訊技術有限責任公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京集佳知識產權代理有限公司 11227 | 代理人: | 馬敬;逯長明 |
| 地址: | 100022 北京市*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 海量 文件 進行 存取 方法 裝置 | ||
技術領域
本發明涉及數據業務技術領域,特別涉及一種對海量文件進行存取的方法及裝置。
背景技術
隨著近年來軟件技術的發展及企業信息建設的推薦,現在的應用系統所要處理的數據越來越龐大,所要服務的用戶數量也不斷加大。現有的應用服務器系統通常都會有大量的用戶數據需要存儲和訪問。對用戶的服務質量依賴于對數據的存儲和訪問獲取的響應速度。而隨著數據量的增加和用戶數的增多,在達到一定的數量級時,會造成在文件系統中同一級目錄數量過多,系統檢索目錄的速度大大降低,在創建和讀取用戶數據文件時都大大增加了時間的開銷和系統資源的開銷,降低了用戶服務質量,使得文件存儲系統成為整個應用系統的瓶頸。
為了改進文件存儲系統的性能,應用系統多采用將用戶信息分布到不同目錄和設備的方式進行存儲。常用的方式有:
1)直接以用戶編號建立目錄,在該目錄下存儲該用戶的用戶數據,在讀取用戶數據時直接在該用戶目錄下讀取。
上述存取方式至少存在如下缺陷:用戶數據的存儲規模有限。在計算機操作系統里,對單層目錄里可以存儲的目錄和文件的數量是有限的。再有,同級目錄太多,用戶數據定位太慢,影響對用戶數據的存取速度。
2)將用戶編號排序,將一定范圍內的用戶數據集中存放到同一個目錄內。在該目錄內存取用戶數據信息。
上述存取方式至少存在如下缺陷:在用戶增長的過程中,對用戶數據的存取依然集中在同一個目錄內,只有在超過預設的范圍后才能起到作用。其次,上述范圍大小難以確定,太小,則難以支撐大數量級的用戶存取需求,太大,則導致同級目錄太多而影響對用戶數據的存取速度。再有,上述范圍大小值一旦確定就很難變更,使得整個應用系統對文件系統的使用也顯得不靈活,難以擴展和改變部署。
3)根據用戶編號,將相同的首幾位或者尾幾位的用戶數據集中存放到一個目錄內。
上述存取方式至少存在如下缺陷:依然不能將用戶數據均衡的分布到各個目錄下進行存取。而且,一旦確定取首幾位或者尾幾位的位數,就不能再改變,同樣難以擴展。同樣存在同級目錄太多,用戶數據定位太慢,影響對用戶數據的存取速度。此外,對于一些應用系統,用戶編號不是平均分布,而是集中在某些特殊編號上的情況,此方式依然不能解決對用戶數據的存儲和讀取過于集中的問題。
發明內容
本發明實施例提供一種對海量文件進行存取的方法及裝置,使用戶數據可以在不同的目錄下均勻分布,以解決海量文件快速存取的問題。
本發明實施例提供了一種對海量文件進行存取的方法,包括:
獲取用戶名稱,對所述用戶名稱進行編碼計算,獲得與所述用戶名稱對應的整數序列;
將所述整數序列分為兩部分,一部分作為一級目錄,另一部分作為所述一級目錄的二級目錄,將所述用戶名稱作為所述二級目錄下的三級目錄;
在所述三級目錄下存取所述用戶名稱所對應的用戶數據。
其中,對所述用戶名稱進行編碼計算所采用的算法為:HASH算法、或MD5算法,或壓縮算法。
其中,獲得與所述用戶名稱對應的整數序列的步驟包括:
將對所述用戶名稱進行編碼計算后的值除以一個預設的數取模,將所述取模后的數作為所述用戶名稱對應的整數序列。
其中,所述對所述用戶名稱進行編碼計算所采用的算法為HASH算法,所述預設的數為65536,所述整數序列為16位。
其中,將所述整數序列分為兩部分,一部分作為一級目錄,另一部分作為所述一級目錄的二級目錄具體包括:
將所述整數序列分為高位字節和低位字節兩部分;
將所述高位字節作為所述一級目錄,將所述低位字節作為所述一級目錄的二級目錄,或者,將所述低位字節作為所述一級目錄,將所述高位字節作為所述一級目錄的二級目錄。
本發明實施例還提供了一種對海量文件進行存取的裝置,包括:
整數序列獲取模塊,用于獲取用戶名稱,對所述用戶名稱進行編碼計算,獲得與所述用戶名稱對應的整數序列;
目錄劃分模塊,用于將所述整數序列分為兩部分,一部分作為一級目錄,另一部分作為所述一級目錄的二級目錄,將所述用戶名稱作為所述二級目錄下的三級目錄;
存取模塊,用于在所述三級目錄下存取所述用戶名稱所對應的用戶數據。
其中,對所述用戶名稱進行編碼計算所采用的算法為:HASH算法、或MD5算法,或壓縮算法。
其中,所述整數序列獲取模塊包括:
編碼計算模塊,用于獲取用戶名稱,對所述用戶名稱進行編碼計算;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京無限立通通訊技術有限責任公司,未經北京無限立通通訊技術有限責任公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201010163051.8/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:傾向性分析的蟻群文本組合的處理方法
- 下一篇:聯絡人管理系統及方法





