一種瀏覽云端海量數(shù)據(jù)的方法及裝置制造方法
【專利摘要】本申請公開了一種瀏覽云端海量數(shù)據(jù)的方法及裝置,其中所述方法包括:由云端存儲的完整數(shù)據(jù)中預采樣一指定大小的數(shù)據(jù)段放置到本地內存;根據(jù)用戶的輸入設置所述數(shù)據(jù)段的數(shù)據(jù)格式,使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段,根據(jù)解析所得到的效果檢測所述數(shù)據(jù)格式的合法性;在所述數(shù)據(jù)格式合法時,根據(jù)所選擇的意圖瀏覽的數(shù)據(jù)范圍由云端存儲的完整數(shù)據(jù)中截取相應大小的數(shù)據(jù)段放置到本地內存;使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段并展現(xiàn)。本申請通過對一小段采樣數(shù)據(jù)的處理就可以獲知數(shù)據(jù)格式的設定是否合理,進而可以將合理的數(shù)據(jù)格式推廣至云端存儲的完整數(shù)據(jù);同時在進行原始數(shù)據(jù)快速預覽時,快速地讀取指定位置的數(shù)據(jù)內容。
【專利說明】一種瀏覽云端海量數(shù)據(jù)的方法及裝置
【技術領域】
[0001]本申請涉及數(shù)據(jù)處理領域,具體涉及一種瀏覽云端海量數(shù)據(jù)的方法及裝置。
【背景技術】
[0002]隨著云計算的發(fā)展,海量數(shù)據(jù)中數(shù)據(jù)表的概念已經不再是傳統(tǒng)意義上的單個數(shù)據(jù)文件,在很多情況下,一個目錄下的所有數(shù)據(jù)文件都屬于一張數(shù)據(jù)表,且每張數(shù)據(jù)表的總字節(jié)數(shù)已經達到了 TB級別(Terabyte太字節(jié))。同時數(shù)據(jù)庫里面也不再只是十幾張數(shù)據(jù)表,通常在數(shù)百張甚至到幾千張,且每張數(shù)據(jù)表中的字段數(shù)也在數(shù)十個以上,而且經常隨著業(yè)務發(fā)展在變化。
[0003]在這樣的海量數(shù)據(jù)庫中進行數(shù)據(jù)統(tǒng)計分析,必須具備快捷的數(shù)據(jù)格式定義和編輯功能,同時還必須具備對原始數(shù)據(jù)進行靈活快速預覽的功能。而現(xiàn)有技術中修改云端數(shù)據(jù)對應的數(shù)據(jù)格式,需要將云端數(shù)據(jù)全部下載后使用數(shù)據(jù)格式對全部云端數(shù)據(jù)進行加載才能夠生成預覽;對于達到TB級別的完整數(shù)據(jù)在網絡上下載所耗費的時間和資源都是驚人的,下載數(shù)據(jù)、進行一次數(shù)據(jù)格式加載并展現(xiàn)數(shù)據(jù)所占用的時間往往可達到5分鐘甚至更長。因此,現(xiàn)有技術的缺陷主要在于,現(xiàn)有操作需要將海量的完整數(shù)據(jù)通過網絡下載到本地,這導致了數(shù)據(jù)呈現(xiàn)的速度和效率必然受到極大影響,并且由于需要下載存儲海量數(shù)據(jù)本地硬盤的存儲空間也要相應增加,這也將成為一種額外的負擔。
[0004]再者,對于原始數(shù)據(jù)表的預覽,現(xiàn)有技術默認只能從首行開始預覽,如果需要預覽數(shù)據(jù)表中某一行數(shù)據(jù)時,則需要下載該表對應的數(shù)據(jù)文件首到指定行之間的完整數(shù)據(jù)后方能開始展現(xiàn)。因此,現(xiàn)有技術的缺陷還在于,需要消耗較大內存且需要等待較長的磁盤讀寫時間,對于網絡下載完整數(shù)據(jù)本身所消耗的時間和資源也會極大降低用戶體驗;同時也缺乏讓用戶可以對數(shù)據(jù)表中某個指定位置的數(shù)據(jù)進行瀏覽的功能,缺乏靈活性。
[0005]同時,現(xiàn)有技術的缺陷還在于,編輯數(shù)據(jù)文件的數(shù)據(jù)格式時,用戶需要進行數(shù)據(jù)格式中的多個參數(shù)進行修改,但是現(xiàn)有技術缺乏編輯與預覽同時進行的功能,無法在進行每一個參數(shù)修改后就實時獲取到數(shù)據(jù)格式修改后的數(shù)據(jù),必須要等到對數(shù)據(jù)格式中的所有參數(shù)都完成編輯后才能看到數(shù)據(jù)格式最終的修改效果,這就導致數(shù)據(jù)格式修改后所得到的數(shù)據(jù)的呈現(xiàn)效果不能被及時獲知,無法直觀地判斷數(shù)據(jù)格式的修改是否為期望的目標,只要出現(xiàn)一處錯錯誤,就得回退到之前編輯界面重新調整數(shù)據(jù)結構,這一缺陷勢必會造成整個編輯過程的效率低下,甚至造成用戶通常需要多次修正才能找到適合的數(shù)據(jù)結構,從而帶來大量的無用的額外操作。
[0006]此外,現(xiàn)有技術的缺陷還在于,編輯數(shù)據(jù)文件的數(shù)據(jù)格式時,用戶需要進行數(shù)據(jù)格式中的多個參數(shù)進行修改,現(xiàn)有技術不能實時地在每一個參數(shù)修改后就自動檢測修改的合法性,必須等到對數(shù)據(jù)格式中的所有參數(shù)都完成編輯后才能夠獲知數(shù)據(jù)格式修改的合法性,這一缺陷顯然也會引起編輯過程的效率低下,尤其對于數(shù)據(jù)格式的設置經驗不足的用戶來說。
[0007]最后,現(xiàn)有技術的缺陷還在于,對數(shù)據(jù)格式進行多次修改后,現(xiàn)有技術不能保存完整的修改記錄,使得用戶無法查看詳細的修改歷史,同時在當前數(shù)據(jù)格式修改發(fā)生異常時也不能進行回溯,無法保證數(shù)據(jù)格式修改的安全性。
【發(fā)明內容】
[0008]本申請所要解決的技術問題在于提供一種瀏覽云端海量數(shù)據(jù)的方法及裝置,通過對一小段采樣數(shù)據(jù)的處理就可以獲知數(shù)據(jù)格式的設定是否合理,進而可以將合理的數(shù)據(jù)格式推廣至云端存儲的完整數(shù)據(jù),從而解決了需要將海量的完整數(shù)據(jù)全部下載下來之后才能驗證數(shù)據(jù)格式的弊端,這種方式避免了海量數(shù)據(jù)全部下載到本地所消耗的時間和資源;同時在進行原始數(shù)據(jù)快速預覽時,引入了讓用戶指定預覽位置的方式,快速地讀取指定位置的數(shù)據(jù)內容,提高查詢效率的同時增加了數(shù)據(jù)預覽的用戶體驗的靈活性,通過以上兩種方式在讀取、編輯數(shù)據(jù)格式時大大減少了重復性操作,處理效率顯著提升,在應對海量數(shù)據(jù)分析和統(tǒng)計過程中處理效率的提升尤為明顯。
[0009]為了解決上述問題,本申請揭示了一種瀏覽云端海量數(shù)據(jù)的方法,包括:由云端存儲的完整數(shù)據(jù)中預采樣一指定大小的數(shù)據(jù)段放置到本地內存;根據(jù)用戶的輸入設置所述數(shù)據(jù)段的數(shù)據(jù)格式,使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段,根據(jù)解析所得到的效果檢測所述數(shù)據(jù)格式的合法性;在所述數(shù)據(jù)格式合法時,根據(jù)所選擇的意圖瀏覽的數(shù)據(jù)范圍由云端存儲的完整數(shù)據(jù)中截取相應大小的數(shù)據(jù)段放置到本地內存;使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段并展現(xiàn)。
[0010]進一步地,所述數(shù)據(jù)格式,包括以下一種或多種的組合:數(shù)據(jù)編碼類型、行分隔符、列分隔符、各列的列名及列數(shù)據(jù)類型。
[0011]進一步地,根據(jù)用戶的輸入設置所述數(shù)據(jù)段的數(shù)據(jù)格式,包括:將所述數(shù)據(jù)格式的設置內容保存為歷史內容并提供入口供查看;依據(jù)所述數(shù)據(jù)格式的設置內容保存回溯點,依據(jù)所述回溯點生成若干對應的數(shù)據(jù)格式的版本供選擇回溯。
[0012]進一步地,使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段,根據(jù)解析所得到的效果檢測所述數(shù)據(jù)格式的合法性,包括:設置所述數(shù)據(jù)格式中的列名和列數(shù)據(jù)類型時,依據(jù)所述列名和列數(shù)據(jù)類型實時解析所述數(shù)據(jù)段并預覽所述數(shù)據(jù)段中任意行的各列數(shù)據(jù)供用戶判斷所述列名和列數(shù)據(jù)類型的合法性。
[0013]進一步地,使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段,根據(jù)解析所得到的效果檢測所述數(shù)據(jù)格式的合法性,包括:設置所述數(shù)據(jù)格式中的行分隔符和/或列分隔符時,如果檢測到當前行分隔符使得所述數(shù)據(jù)段的行數(shù)小于等于1,或檢測到當前列分隔符使得所述數(shù)據(jù)段的列數(shù)小于等于1,或檢測到當前行分隔符和/或列分隔符使得所述數(shù)據(jù)段中列數(shù)不同的行數(shù)大于等于一門限,判定所述數(shù)據(jù)格式不合法。
[0014]進一步地,在所述數(shù)據(jù)格式不合法時,給出錯誤提示,生成檢測報告并展示,所述檢測報告包括以下一種或多種的組合:數(shù)據(jù)段的行數(shù)、各行所含的列數(shù)、數(shù)據(jù)編碼類型、行分隔符、列分隔符、各列的列名及列數(shù)據(jù)類型。
[0015]進一步地,使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段,根據(jù)解析所得到的效果檢測所述數(shù)據(jù)格式的合法性,包括:設置所述數(shù)據(jù)格式中的行分隔符和/或列分隔符時,展現(xiàn)使用所述行分隔符和/或列分隔符解析的所述數(shù)據(jù)段供用戶判斷所述數(shù)據(jù)格式的合法性。
[0016]進一步地,根據(jù)所選擇的意圖瀏覽的數(shù)據(jù)范圍由云端存儲的完整數(shù)據(jù)中截取相應大小的數(shù)據(jù)段放置到本地內存,包括:獲取云端存儲的完整數(shù)據(jù)的大小,所述完整數(shù)據(jù)的數(shù)據(jù)表基于行保存整理;根據(jù)所選擇的瀏覽位置及所選擇的數(shù)據(jù)量由完整數(shù)據(jù)中逐行截取以所述瀏覽位置為起點的相應數(shù)據(jù)量的數(shù)據(jù)段放置到本地內存,所述瀏覽位置為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量中的偏移。
[0017]進一步地,所述數(shù)據(jù)段的起點未處于數(shù)據(jù)表中的數(shù)據(jù)行首位和/或數(shù)據(jù)的終點未處于數(shù)據(jù)表中的數(shù)據(jù)行末位時,截取所述數(shù)據(jù)段的起點和/或終點所在的整行數(shù)據(jù)。
[0018]進一步地,所述偏移為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量大小的比例位置或行數(shù)。
[0019]進一步地,根據(jù)所選擇的意圖瀏覽的數(shù)據(jù)范圍由云端存儲的完整數(shù)據(jù)中截取相應大小的數(shù)據(jù)段放置到本地內存,包括:獲取云端存儲的完整數(shù)據(jù)的大小,所述完整數(shù)據(jù)的數(shù)據(jù)表基于列保存整理;根據(jù)所選擇的瀏覽位置及所選擇的數(shù)據(jù)量由完整數(shù)據(jù)中逐列截取以所述瀏覽位置為起點的相應數(shù)據(jù)量的數(shù)據(jù)段放置到本地內存,所述瀏覽位置為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量中的偏移。
[0020]進一步地,所述數(shù)據(jù)段的起點未處于數(shù)據(jù)表中的數(shù)據(jù)列首位和/或數(shù)據(jù)的終點未處于數(shù)據(jù)表中的數(shù)據(jù)列末位時,截取所述數(shù)據(jù)段的起點和/或終點所在的整列數(shù)據(jù)。
[0021]進一步地,所述偏移為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量大小的比例位置或列數(shù)。
[0022]進一步地,云端存儲的完整數(shù)據(jù)基于行保存整理時,對所述完整數(shù)據(jù)中各行分別設置數(shù)據(jù)格式,所述每行的全部數(shù)據(jù)僅依據(jù)所在行的數(shù)據(jù)格式存儲。
[0023]進一步地,云端存儲的完整數(shù)據(jù)基于列保存整理時,對所述完整數(shù)據(jù)中各列分別設置數(shù)據(jù)格式,所述每列的全部數(shù)據(jù)僅依據(jù)所在列的數(shù)據(jù)格式存儲。
[0024]進一步地,設置數(shù)據(jù)格式的操作,包括以下一種或多種的組合的方式實現(xiàn):采用系統(tǒng)默認的數(shù)據(jù)格式進行設置、采用自定義的數(shù)據(jù)格式進行設置并檢測合法性、參照一已設置過數(shù)據(jù)格式的數(shù)據(jù)表設置當前數(shù)據(jù)表的數(shù)據(jù)格式。
[0025]為了解決上述問題,本申請揭示了一種瀏覽云端海量數(shù)據(jù)的裝置,包括:預采樣模塊,用于由云端存儲的完整數(shù)據(jù)中預采樣一指定大小的數(shù)據(jù)段放置到本地內存;數(shù)據(jù)格式設置模塊,根據(jù)用戶的輸入設置所述數(shù)據(jù)段的數(shù)據(jù)格式,使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段,根據(jù)解析所得到的效果檢測所述數(shù)據(jù)格式的合法性;數(shù)據(jù)截取模塊,在所述數(shù)據(jù)格式合法時,根據(jù)所選擇的意圖瀏覽的數(shù)據(jù)范圍由云端存儲的完整數(shù)據(jù)中截取相應大小的數(shù)據(jù)段放置到本地內存;數(shù)據(jù)展現(xiàn)模塊,使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段并展現(xiàn)。
[0026]進一步地,所述數(shù)據(jù)格式,包括以下一種或多種的組合:數(shù)據(jù)編碼類型、行分隔符、列分隔符、各列的列名及列數(shù)據(jù)類型。
[0027]進一步地,所述數(shù)據(jù)格式設置模塊,還用于在所述數(shù)據(jù)格式不合法時,給出錯誤提示,生成檢測報告并展示,所述檢測報告包括以下一種或多種的組合:數(shù)據(jù)段的行數(shù)、各行所含的列數(shù)、數(shù)據(jù)編碼類型、行分隔符、列分隔符、各列的列名及列數(shù)據(jù)類型。
[0028]進一步地,所述數(shù)據(jù)格式設置模塊,還用于將所述數(shù)據(jù)格式的設置內容保存為歷史內容并提供入口供查看;依據(jù)所述數(shù)據(jù)格式的設置內容保存回溯點,依據(jù)所述回溯點生成若干對應的數(shù)據(jù)格式的版本供選擇回溯。
[0029]進一步地,所述數(shù)據(jù)格式設置模塊,設置所述數(shù)據(jù)格式中的列名和列數(shù)據(jù)類型時,用于依據(jù)所述列名和列數(shù)據(jù)類型實時解析所述數(shù)據(jù)段并預覽所述數(shù)據(jù)段中任意行的各列數(shù)據(jù)供用戶判斷所述列名和列數(shù)據(jù)類型的合法性。
[0030]進一步地,所述數(shù)據(jù)格式設置模塊,設置所述數(shù)據(jù)格式中的行分隔符和/或列分隔符時,用于檢測到當前行分隔符使得所述數(shù)據(jù)段的行數(shù)小于等于I時,或檢測到當前列分隔符使得所述數(shù)據(jù)段的列數(shù)小于等于I時,或檢測到當前行分隔符和/或列分隔符使得所述數(shù)據(jù)段中列數(shù)不同的行數(shù)大于等于一門限時,判定所述數(shù)據(jù)格式不合法。
[0031]進一步地,所述數(shù)據(jù)格式設置模塊,設置所述數(shù)據(jù)格式中的行分隔符和/或列分隔符時,用于展現(xiàn)使用所述行分隔符和/或列分隔符解析的所述數(shù)據(jù)段供用戶判斷所述數(shù)據(jù)格式的合法性。
[0032]進一步地,所述數(shù)據(jù)截取模塊,用于獲取云端存儲的完整數(shù)據(jù)的大小,所述完整數(shù)據(jù)的數(shù)據(jù)表基于行保存整理;根據(jù)所選擇的瀏覽位置及所選擇的數(shù)據(jù)量由完整數(shù)據(jù)中逐行截取以所述瀏覽位置為起點的相應數(shù)據(jù)量的數(shù)據(jù)段放置到本地內存,所述瀏覽位置為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量中的偏移,所述數(shù)據(jù)段的起點未處于數(shù)據(jù)表中的數(shù)據(jù)行首位和/或數(shù)據(jù)的終點未處于數(shù)據(jù)表中的數(shù)據(jù)行末位時,截取所述數(shù)據(jù)段的起點和/或終點所在的整行數(shù)據(jù);其中,所述偏移為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量大小的比例位置或行數(shù)。
[0033]進一步地,所述數(shù)據(jù)截取模塊,用于獲取云端存儲的完整數(shù)據(jù)的大小,所述完整數(shù)據(jù)的數(shù)據(jù)表基于列保存整理;根據(jù)所選擇的瀏覽位置及所選擇的數(shù)據(jù)量由完整數(shù)據(jù)中逐列截取以所述瀏覽位置為起點的相應數(shù)據(jù)量的數(shù)據(jù)段放置到本地內存,所述瀏覽位置為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量中的偏移,所述數(shù)據(jù)段的起點未處于數(shù)據(jù)表中的數(shù)據(jù)列首位和/或數(shù)據(jù)的終點未處于數(shù)據(jù)表中的數(shù)據(jù)列末位時,截取所述數(shù)據(jù)段的起點和/或終點所在的整列數(shù)據(jù);其中,所述偏移為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量大小的比例位置或列數(shù)。
[0034]與現(xiàn)有技術相比,本申請可以獲得包括以下技術效果:
[0035]I)通過對一小段采樣數(shù)據(jù)的處理就可以獲知數(shù)據(jù)格式的設定是否合理,進而可以將合理的數(shù)據(jù)格式推廣至云端存儲的完整數(shù)據(jù),從而解決了需要將海量的完整數(shù)據(jù)全部下載下來之后才能驗證數(shù)據(jù)格式的弊端,這種方式可以保證極高的處理效率,避免了海量數(shù)據(jù)全部下載到本地所消耗的時間和資源。
[0036]2)在設置列分隔符和/或行分隔符時,實時對被分隔數(shù)據(jù)進行檢測以判斷行分隔符或者列分隔符的改變是否合法,使得用戶能夠迅速地找到合適的行/列分隔符,可以減少編輯的操作次數(shù),顯著提高工作效率。
[0037]3)當用戶編輯數(shù)據(jù)格式中的列名和列數(shù)據(jù)類型時,依據(jù)修改后的數(shù)據(jù)格式實時解析數(shù)據(jù)并實時預覽某一列中任意行的實例數(shù)據(jù),可以同時編輯數(shù)據(jù)格式同時預覽,使得定義列名和編輯列數(shù)據(jù)類型變得更加方便直觀,提高格式定義編輯過程的效率。
[0038]4)在對數(shù)據(jù)格式進行編輯之后,會自動將此次修改的內容詳細完整地存入數(shù)據(jù)庫,供用戶查看詳細的修改歷史;同時依據(jù)所述數(shù)據(jù)格式的修改內容保存回溯點,并依據(jù)回溯點生成若干對應的數(shù)據(jù)格式的版本供用戶選擇從而進行回溯。
[0039]5)引入數(shù)據(jù)快速預覽功能,用戶指定瀏覽位置的偏移量,通過計算字節(jié)位移量,直接快速截取指定位置的原始數(shù)據(jù)內容進行下載并展現(xiàn)給用戶預覽,這樣不需要下載云端的完整數(shù)據(jù),減少了內存使用量,且降低了磁盤讀寫次數(shù),提高了查詢效率;在用戶體驗的設計上,可以輸入百分比,也可以通過鼠標在滾動條刻度尺上選擇位移量的百分比,提高了預覽的靈活性;同時還可以按照事先定義的數(shù)據(jù)格式讓用戶選擇由位移量開始向后展現(xiàn)多少行數(shù)據(jù),這進一步降低了內存使用量且提高了查詢效率,并能進一步提高用戶體驗的靈活性。
[0040]當然,實施本申請的任一產品必不一定需要同時達到以上所述的所有技術效果。
【專利附圖】
【附圖說明】
[0041]此處所說明的附圖用來提供對本申請的進一步理解,構成本申請的一部分,本申請的示意性實施例及其說明用于解釋本申請,并不構成對本申請的不當限定。在附圖中:
[0042]圖1是本申請實施例的方法流程圖;
[0043]圖2是本申請實施例的第一應用實例的示意圖;
[0044]圖3是本申請實施例的第二應用實例的示意圖;
[0045]圖4是本申請實施例的第三應用實例的示意圖;
[0046]圖5是本申請實施例的裝置結構圖。
【具體實施方式】
[0047]以下將配合附圖及實施例來詳細說明本申請的實施方式,藉此對本申請如何應用技術手段來解決技術問題并達成技術功效的實現(xiàn)過程能充分理解并據(jù)以實施。
[0048]本申請的豐要思想
[0049]由云端存儲的完整數(shù)據(jù)中預采樣一指定大小的數(shù)據(jù)段放置到本地內存;根據(jù)用戶的輸入設置所述數(shù)據(jù)段的數(shù)據(jù)格式,使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段,根據(jù)解析所得到的效果檢測所述數(shù)據(jù)格式的合法性;在所述數(shù)據(jù)格式合法時,根據(jù)所選擇的意圖瀏覽的數(shù)據(jù)范圍由云端存儲的完整數(shù)據(jù)中截取相應大小的數(shù)據(jù)段放置到本地內存;使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段并展現(xiàn)。
[0050]本串請的應用場景
[0051]支付寶的數(shù)據(jù)分析人員向個人用戶或單位用戶提供年終賬單時進行帳目分析時,賬單數(shù)據(jù)是使用數(shù)據(jù)表的形式存儲整理,在進行賬單數(shù)據(jù)瀏覽時適用于本申請的方案;
[0052]銀行或者淘寶對申請貸款的客戶進行客戶審批信息的分析時,客戶審批信息往往包括用戶的信用記錄和交易記錄,一般是使用數(shù)據(jù)表的形式存儲整理,進行分析時必然涉及海量數(shù)據(jù)瀏覽,適用于本申請的方案;
[0053]證券分析員對大盤進行市值匯總分析及對個股進行業(yè)績等績優(yōu)股評定時,股市信息往往是使用數(shù)據(jù)表的形式存儲整理,進行股市分析時必然涉及海量數(shù)據(jù)瀏覽,適用于本申請的方案。
[0054]當然,本申請并不限于以上應用場景,還存在其他適用于涉及海量數(shù)據(jù)瀏覽及數(shù)據(jù)格式編輯的場景。
[0055]實施例描沭
[0056]下面以一實施例對本申請方法的實現(xiàn)作進一步說明。如圖1所示,為本申請實施例的方法流程圖,包括:[0057]步驟S10,由云端存儲的完整數(shù)據(jù)中預采樣一指定大小的數(shù)據(jù)段放置到本地內存;
[0058]云端所存儲的完整數(shù)據(jù)已達到TB級別,對如此海量的完整數(shù)據(jù)在本地進行操作是很困難的,將海量數(shù)據(jù)全部下載再執(zhí)行操作勢必會造成效率的低下;
[0059]此處考慮,預先下載指定大小的數(shù)據(jù)段作為采樣,一般將完整數(shù)據(jù)的前5-10KBytes下載到本地內存作為采樣數(shù)據(jù)就可以了。相比現(xiàn)有技術一次下載數(shù)據(jù)再預覽需要將近5分鐘的響應時間,應用本申請方式的預覽幾乎是實時的。
[0060]步驟S11,根據(jù)用戶的輸入設置所述數(shù)據(jù)段的數(shù)據(jù)格式,使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段,根據(jù)解析所得到的效果檢測所述數(shù)據(jù)格式的合法性;
[0061]數(shù)據(jù)格式(data format)是數(shù)據(jù)保存在數(shù)據(jù)文件或記錄中的編排格式,包括以下一種或多種的組合:數(shù)據(jù)編碼類型、行分隔符、列分隔符、各列的列名及列數(shù)據(jù)類型;期望對數(shù)據(jù)表內的數(shù)據(jù)文件執(zhí)行某些操作或運算,首先需要讀取對應的數(shù)據(jù)格式才能夠進行解析完成操作或運算。數(shù)據(jù)格式說明(schema)可以用于描述待處理的數(shù)據(jù)文件的數(shù)據(jù)結構。本申請中的數(shù)據(jù)結構即以數(shù)據(jù)結構說明為載體存在,當然,本申請并不限于以數(shù)據(jù)結構說明為載體,還存在其他可以承載數(shù)據(jù)格式說明的方式,符合本申請構思的其他方式均屬于本申請的保護范圍。
[0062]在設置數(shù)據(jù)格式時,可以將所述數(shù)據(jù)格式的設置內容保存為歷史內容并提供入口供查看;依據(jù)所述數(shù)據(jù)格式的設置內容保存回溯點,依據(jù)所述回溯點生成若干對應的數(shù)據(jù)格式的版本供選擇回溯。
[0063]使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段,根據(jù)解析所得到的效果檢測所述數(shù)據(jù)格式的合法性,一般可以使用以下方式:
[0064]I)設置所述數(shù)據(jù)格式中的列名和列數(shù)據(jù)類型時,依據(jù)所述列名和列數(shù)據(jù)類型實時解析所述數(shù)據(jù)段并預覽所述數(shù)據(jù)段中任意行的各列數(shù)據(jù)供用戶判斷所述列名和列數(shù)據(jù)類型的合法性;使得用戶修改列名和列數(shù)據(jù)類型時更加方便直觀,提高編輯效率。
[0065]如圖2所示,為第一應用實例的示意圖,圖中,我們可以看到當用戶定義并編輯好【列名】和【列數(shù)據(jù)類型】后,用戶可以在右側上方的方框內輸入需要預覽的某一行的實例數(shù)據(jù)(比如輸入1,代表第I行),然后在方框下方的數(shù)據(jù)欄中將顯示該行數(shù)據(jù)對應的各列數(shù)據(jù)內容,這樣有利于用戶更好地理解數(shù)據(jù),同時也便于他校對自己對各字段的格式定義是否正確。
[0066]2)設置所述數(shù)據(jù)格式中的行分隔符和/或列分隔符時,如果檢測到當前行分隔符使得所述數(shù)據(jù)段的行數(shù)小于等于1,或檢測到當前列分隔符使得所述數(shù)據(jù)段的列數(shù)小于等于1,或檢測到當前行分隔符和/或列分隔符使得所述數(shù)據(jù)段中列數(shù)不同的行數(shù)大于等于一門限,判定所述數(shù)據(jù)格式不合法;如上所述在修改行分隔符和/或列分隔符時對所述數(shù)據(jù)段進行檢測以判斷分隔符和/ 或列分隔符是否合法,使得用戶能夠迅速地找到合適的行/列分隔符,顯著提高工作效率。
[0067]如圖3所示,為第二應用實例的示意圖,在圖中,用戶可定義數(shù)據(jù)編碼類型、行分隔符和列分隔符,在數(shù)據(jù)預覽窗口中按當前格式來展現(xiàn)采樣的數(shù)據(jù)段(數(shù)據(jù)預覽窗口最多顯示500行數(shù)據(jù))。第一次展現(xiàn)數(shù)據(jù)或用戶改變行分隔符和/或列分隔符時,會啟用智能判斷自動對數(shù)據(jù)進行檢測,即判斷當前的行或列分隔符是否合理。例如:當采用當前的行分隔符,使得數(shù)據(jù)段的行數(shù)小于等于I時;或者當采用當前的列分隔符,使得數(shù)據(jù)的列數(shù)小于等于I時;或者當前行分隔符和/或列分隔符使得前500行數(shù)據(jù)的各行中列數(shù)非常不一致時,一般是檢測所述數(shù)據(jù)段中列數(shù)不同的行數(shù)大于等于一門限(統(tǒng)計出各行的列數(shù)放到集合A中,假設A= {1,2,3,4,5,I, 5},然后求出集合A中一共有5種列數(shù),即{1,2,3,4,5},如果列數(shù)大于等于5種,則認為列數(shù)非常不一致;在圖3的提示框中會給出“行或者列分隔符不合理,建議用戶修改”的提示;
[0068]3)設置所述數(shù)據(jù)格式中的行分隔符和/或列分隔符時,展現(xiàn)使用所述行分隔符和/或列分隔符解析的所述數(shù)據(jù)段供用戶直接通過所展現(xiàn)的數(shù)據(jù)來判斷所述數(shù)據(jù)格式的合法性;這種方式可以作為方式I和2的有益補充。
[0069]另外,對于以上方式I和2,在判定所述數(shù)據(jù)格式不合法時,除了給出錯誤提示,還可以生成檢測報告并展示以便用戶進行深層次判斷,所述檢測報告包括以下一種或多種的組合:數(shù)據(jù)段的行數(shù)、各行所含的列數(shù)、數(shù)據(jù)編碼類型、行分隔符、列分隔符、各列的列名及列數(shù)據(jù)類型。
[0070]通過步驟SlO-Sll對一小段采樣數(shù)據(jù)的處理就可以獲知數(shù)據(jù)格式的設定是否合理,進而通過下面步驟S12-S13可以將合理的數(shù)據(jù)格式推廣至云端存儲的完整數(shù)據(jù),從而解決了需要將海量的完整數(shù)據(jù)全部下載下來之后才能驗證數(shù)據(jù)格式的弊端,這種方式可以保證極高的處理效率,避免了海量數(shù)據(jù)全部下載到本地所消耗的時間和資源。
[0071]步驟S12,在所述數(shù)據(jù)格式合法時,根據(jù)所選擇的意圖瀏覽的數(shù)據(jù)范圍由云端存儲的完整數(shù)據(jù)中截取相應大小的數(shù)據(jù)段放置到本地內存;
[0072]在用戶瀏覽數(shù)據(jù)時,真正對于呈現(xiàn)有意義的數(shù)據(jù)其實只是用戶所意圖瀏覽的那部分,此時如現(xiàn)有技術將海量數(shù)據(jù)全部下載到本地則顯得沒有必要,而且也會造成效率降低及資源浪費。因此考慮實時截取用戶所意圖瀏覽的小塊數(shù)據(jù)下載到本地并呈現(xiàn),所有操作在本地內存中完成,速度和效率都得到進一步提高,而且相比于下載整個海量數(shù)據(jù),只在網絡中下載所需的小塊數(shù)據(jù),可以極大避免網絡對于數(shù)據(jù)呈現(xiàn)所造成的速度和效率上的影響,而且也避免了因需要存儲海量數(shù)據(jù)而對于本地硬盤的存儲空間的要求。相比現(xiàn)有技術30秒的響應時間,應用本申請方式瀏覽所占用的時間可以忽略不計,用戶基本上感覺不出,瀏覽效率極高。
[0073]在實際操作中,截取相應大小的數(shù)據(jù)段的操作要考慮數(shù)據(jù)表的保存方式:1)獲取云端存儲的完整數(shù)據(jù)的大小,所述完整數(shù)據(jù)的數(shù)據(jù)表基于行保存整理,例如淘寶數(shù)據(jù)表中每行對應一個用戶,每行內各列對應存儲所述用戶的各項數(shù)據(jù);根據(jù)所選擇的瀏覽位置及所選擇的數(shù)據(jù)量由完整數(shù)據(jù)中逐行截取以所述瀏覽位置為起點的相應數(shù)據(jù)量的數(shù)據(jù)段放置到本地內存,所述瀏覽位置為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量中的偏移,所述偏移為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量大小的比例位置,當然也可以將比例位置換算成行數(shù);
[0074]所述數(shù)據(jù)段的起點未處于數(shù)據(jù)表中的數(shù)據(jù)行首位和/或數(shù)據(jù)的終點未處于數(shù)據(jù)表中的數(shù)據(jù)行末位時,截取所述數(shù)據(jù)段的起點和/或終點所在的整行數(shù)據(jù),從而保證了向用戶呈現(xiàn)數(shù)據(jù)的完整性;云端存儲的完整數(shù)據(jù)基于行保存整理時,對所述完整數(shù)據(jù)中各行分別設置數(shù)據(jù)格式,所述每行的全部數(shù)據(jù)僅依據(jù)所在行的數(shù)據(jù)格式存儲。
[0075]如圖4所示,為第三應用實例的示意圖,在圖中,用戶可以在數(shù)據(jù)預覽頁的下方的“【】% ”方框內,輸入希望預覽的指定位置的字節(jié)百分比,或者通過鼠標在位置滾動刻度條上進行快速的百分比選擇,同時通過在“顯示【】行”的方框內,輸入在指定位置需要顯示多少行數(shù)據(jù),然后點擊“Go”按鈕來實現(xiàn)快速靈活地預覽指定位置指定數(shù)據(jù)量的數(shù)據(jù)。
[0076]2)獲取云端存儲的完整數(shù)據(jù)的大小,所述完整數(shù)據(jù)的數(shù)據(jù)表基于列保存整理,例如淘寶數(shù)據(jù)表中每列對應一個用戶,每列內各行對應存儲所述用戶的各項數(shù)據(jù);根據(jù)所選擇的瀏覽位置及所選擇的數(shù)據(jù)量由完整數(shù)據(jù)中逐列截取以所述瀏覽位置為起點的相應數(shù)據(jù)量的數(shù)據(jù)段放置到本地內存,所述瀏覽位置為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量中的偏移,所述偏移為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量大小的比例位置,當然也可以將比例位置換算成列數(shù);
[0077]所述數(shù)據(jù)段的起點未處于數(shù)據(jù)表中的數(shù)據(jù)列首位和/或數(shù)據(jù)的終點未處于數(shù)據(jù)表中的數(shù)據(jù)列末位時,截取所述數(shù)據(jù)段的起點和/或終點所在的整列數(shù)據(jù),從而保證了向用戶呈現(xiàn)數(shù)據(jù)的完整性;云端存儲的完整數(shù)據(jù)基于行保存整理時,對所述完整數(shù)據(jù)中各行分別設置數(shù)據(jù)格式,所述每行的全部數(shù)據(jù)僅依據(jù)所在行的數(shù)據(jù)格式存儲。
[0078]步驟S13,使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段并展現(xiàn)。
[0079]數(shù)據(jù)格式的設置
[0080]云端存儲的完整數(shù)據(jù)基于行保存整理時,對所述完整數(shù)據(jù)中各行分別設置數(shù)據(jù)格式,所述每行的全部數(shù)據(jù)僅依據(jù)所在行的數(shù)據(jù)格式存儲;云端存儲的完整數(shù)據(jù)基于列保存整理時,對所述完整數(shù)據(jù)中各列分別設置數(shù)據(jù)格式,所述每列的全部數(shù)據(jù)僅依據(jù)所在列的數(shù)據(jù)格式存儲。將數(shù)據(jù)表中數(shù)據(jù)本身和數(shù)據(jù)格式分離存儲,某行內或者某列內的多個數(shù)據(jù)依據(jù)統(tǒng)一數(shù)據(jù)格式存儲即可,在讀取、編輯數(shù)據(jù)格式時大大減少了重復性操作,處理效率顯著提升,在應對海量數(shù)據(jù)分析和統(tǒng)計過程中處理效率的提升尤為明顯。
[0081]設置數(shù)據(jù)格式的UI界面可以采用交互式幫助實用程序(wizard)方式進行設計,支持用戶隨意調整選擇。設置數(shù)據(jù)格式`的操作,包括以下一種或多種的組合的方式實現(xiàn):采用系統(tǒng)默認的數(shù)據(jù)格式進行設置、采用自定義的數(shù)據(jù)格式進行設置并檢測合法性、參照一已設置過數(shù)據(jù)格式的數(shù)據(jù)表設置當前數(shù)據(jù)表的數(shù)據(jù)格式:
[0082]I)選擇“默認方式”,采用系統(tǒng)預先設置的數(shù)據(jù)格式,如編碼方式UTF-8、行分隔符Vu列分隔符\t、數(shù)據(jù)列的列名Col_$、各數(shù)據(jù)列的數(shù)據(jù)類型String ;需要說明的是,以上數(shù)據(jù)格式為描述方案所列舉的范例,并不對本申請作出限制。
[0083]2)選擇“自定義方式”,其中用戶可定義數(shù)據(jù)編碼類型、行分隔符、列分隔符、列名、列數(shù)據(jù)類型等各數(shù)據(jù)格式,并異步地從云端預取部分(IOK Bytes)數(shù)據(jù),在數(shù)據(jù)預覽窗口中按當前自定義的數(shù)據(jù)格式來解析并展現(xiàn)數(shù)據(jù);如果解析失敗,會給出用戶提示。當用戶改變行分隔符或者列分隔符時,會自動對數(shù)據(jù)進行檢測(用戶可控制此功能的開啟)以確認行分隔符或者列分隔符的改變是否合法:不合法時會提示“行分隔符或者列分隔符設置不合法,建議用戶修改”,且生成詳細檢測報告便于用戶進行深層次判斷。
[0084]3)選擇“參照其他數(shù)據(jù)表方式”,用戶選擇一已設置過數(shù)據(jù)格式的數(shù)據(jù)段,系統(tǒng)按照所述數(shù)據(jù)段的數(shù)據(jù)格式作為當前數(shù)據(jù)表的數(shù)據(jù)格式。
[0085]通過上述方式2)迅速找到采樣數(shù)據(jù)合適的數(shù)據(jù)格式,再通過上述方式3)將數(shù)據(jù)格式推廣到完整數(shù)據(jù),非常易于集合本申請的方式來實現(xiàn)。
[0086]如圖5所示,是本申請實施例的裝置結構圖。瀏覽云端海量數(shù)據(jù)的裝置,包括:[0087]預采樣模塊1,用于由云端存儲的完整數(shù)據(jù)中預采樣一指定大小的數(shù)據(jù)段放置到本地內存;
[0088]數(shù)據(jù)格式設置模塊2,與預采樣模塊I相連,用于根據(jù)用戶的輸入設置所述數(shù)據(jù)段的數(shù)據(jù)格式,使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段,根據(jù)解析所得到的效果檢測所述數(shù)據(jù)格式的合法性;
[0089]數(shù)據(jù)截取模塊3,與數(shù)據(jù)格式設置模塊2相連,在所述數(shù)據(jù)格式合法時,用于根據(jù)所選擇的意圖瀏覽的數(shù)據(jù)范圍由云端存儲的完整數(shù)據(jù)中截取相應大小的數(shù)據(jù)段放置到本地內存;
[0090]數(shù)據(jù)展現(xiàn)模塊4,與數(shù)據(jù)截取模塊3相連,用于使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段并展現(xiàn)。
[0091]數(shù)據(jù)格式設置模塊2,還用于在所述數(shù)據(jù)格式不合法時,給出錯誤提示,生成檢測報告并展示,所述檢測報告包括以下一種或多種的組合:數(shù)據(jù)段的行數(shù)、各行所含的列數(shù)、數(shù)據(jù)編碼類型、行分隔符、列分隔符、各列的列名及列數(shù)據(jù)類型;還用于將所述數(shù)據(jù)格式的設置內容保存為歷史內容并提供入口供查看;依據(jù)所述數(shù)據(jù)格式的設置內容保存回溯點,依據(jù)所述回溯點生成若干對應的數(shù)據(jù)格式的版本供選擇回溯。
[0092]數(shù)據(jù)格式設置模塊2,設置所述數(shù)據(jù)格式中的列名和列數(shù)據(jù)類型時,進一步用于依據(jù)所述列名和列數(shù)據(jù)類型實時解析所述數(shù)據(jù)段并預覽所述數(shù)據(jù)段中任意行的各列數(shù)據(jù)供用戶判斷所述列名和列數(shù)據(jù)類型的合法性;設置所述數(shù)據(jù)格式中的行分隔符和/或列分隔符時,進一步用于檢測到當 前行分隔符使得所述數(shù)據(jù)段的行數(shù)小于等于I時,或檢測到當前列分隔符使得所述數(shù)據(jù)段的列數(shù)小于等于I時,或檢測到當前行分隔符和/或列分隔符使得所述數(shù)據(jù)段中列數(shù)不同的行數(shù)大于等于一門限時,判定所述數(shù)據(jù)格式不合法;設置所述數(shù)據(jù)格式中的行分隔符和/或列分隔符時,進一步用于展現(xiàn)使用所述行分隔符和/或列分隔符解析的所述數(shù)據(jù)段供用戶判斷所述數(shù)據(jù)格式的合法性。
[0093]數(shù)據(jù)截取模塊3,進一步用于獲取云端存儲的完整數(shù)據(jù)的大小,所述完整數(shù)據(jù)的數(shù)據(jù)表基于行保存整理;根據(jù)所選擇的瀏覽位置及所選擇的數(shù)據(jù)量由完整數(shù)據(jù)中逐行截取以所述瀏覽位置為起點的相應數(shù)據(jù)量的數(shù)據(jù)段放置到本地內存,所述瀏覽位置為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量中的偏移,所述數(shù)據(jù)段的起點未處于數(shù)據(jù)表中的數(shù)據(jù)行首位和/或數(shù)據(jù)的終點未處于數(shù)據(jù)表中的數(shù)據(jù)行末位時,截取所述數(shù)據(jù)段的起點和/或終點所在的整行數(shù)據(jù);其中,所述偏移為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量大小的比例位置或行數(shù);
[0094]或者,數(shù)據(jù)截取模塊3,進一步用于獲取云端存儲的完整數(shù)據(jù)的大小,所述完整數(shù)據(jù)的數(shù)據(jù)表基于列保存整理;根據(jù)所選擇的瀏覽位置及所選擇的數(shù)據(jù)量由完整數(shù)據(jù)中逐列截取以所述瀏覽位置為起點的相應數(shù)據(jù)量的數(shù)據(jù)段放置到本地內存,所述瀏覽位置為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量中的偏移,所述數(shù)據(jù)段的起點未處于數(shù)據(jù)表中的數(shù)據(jù)列首位和/或數(shù)據(jù)的終點未處于數(shù)據(jù)表中的數(shù)據(jù)列末位時,截取所述數(shù)據(jù)段的起點和/或終點所在的整列數(shù)據(jù);其中,所述偏移為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量大小的比例位置或列數(shù)。
[0095]所述裝置與前述的方法流程描述對應,不足之處參考上述方法流程的敘述,不再
--贅述。[0096]本領域內的技術人員應明白,本申請的實施例可提供為方法、系統(tǒng)、或計算機程序產品。因此,本申請可采用完全硬件實施例、完全軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本申請可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限于磁盤存儲器、CD-ROM、光學存儲器等)上實施的計算機程序產品的形式。
[0097]上述說明示出并描述了本申請的若干優(yōu)選實施例,但如前所述,應當理解本申請并非局限于本文所披露的形式,不應看作是對其他實施例的排除,而可用于各種其他組合、修改和環(huán)境,并能夠在本文所述發(fā)明構想范圍內,通過上述教導或相關領域的技術或知識進行改動。而本領域人員所進行的改動和變化不脫離本申請的精神和范圍,則都應在本申請所附權利要求的保護范圍內。
【權利要求】
1.一種瀏覽云端海量數(shù)據(jù)的方法,其特征在于,包括: 由云端存儲的完整數(shù)據(jù)中預采樣一指定大小的數(shù)據(jù)段放置到本地內存; 根據(jù)用戶的輸入設置所述數(shù)據(jù)段的數(shù)據(jù)格式,使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段,根據(jù)解析所得到的效果檢測所述數(shù)據(jù)格式的合法性; 在所述數(shù)據(jù)格式合法時,根據(jù)所選擇的意圖瀏覽的數(shù)據(jù)范圍由云端存儲的完整數(shù)據(jù)中截取相應大小的數(shù)據(jù)段放置到本地內存; 使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段并展現(xiàn)。
2. 如權利要求1所述的方法,其特征在于, 所述數(shù)據(jù)格式,包括以下一種或多種的組合:數(shù)據(jù)編碼類型、行分隔符、列分隔符、各列的列名及列數(shù)據(jù)類型。
3.如權利要求1所述的方法,其特征在于,根據(jù)用戶的輸入設置所述數(shù)據(jù)段的數(shù)據(jù)格式,進一步包括: 將所述數(shù)據(jù)格式的設置內容保存為歷史內容并提供入口供查看; 依據(jù)所述數(shù)據(jù)格式的設置內容保存回溯點,依據(jù)所述回溯點生成若干對應的數(shù)據(jù)格式的版本供選擇回溯。
4.如權利要求1所述的方法,其特征在于,使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段,根據(jù)解析所得到的效果檢測所述數(shù)據(jù)格式的合法性,進一步包括: 設置所述數(shù)據(jù)格式中的列名和列數(shù)據(jù)類型時,依據(jù)所述列名和列數(shù)據(jù)類型實時解析所述數(shù)據(jù)段并預覽所述數(shù)據(jù)段中任意行的各列數(shù)據(jù)供用戶判斷所述列名和列數(shù)據(jù)類型的合法性。
5.如權利要求1所述的方法,其特征在于,使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段,根據(jù)解析所得到的效果檢測所述數(shù)據(jù)格式的合法性,進一步包括: 設置所述數(shù)據(jù)格式中的行分隔符和/或列分隔符時,如果檢測到當前行分隔符使得所述數(shù)據(jù)段的行數(shù)小于等于1,或檢測到當前列分隔符使得所述數(shù)據(jù)段的列數(shù)小于等于1,或檢測到當前行分隔符和/或列分隔符使得所述數(shù)據(jù)段中列數(shù)不同的行數(shù)大于等于一門限,判定所述數(shù)據(jù)格式不合法。
6.如權利要求1或5所述的方法,其特征在于, 在所述數(shù)據(jù)格式不合法時,給出錯誤提示,生成檢測報告并展示,所述檢測報告包括以下一種或多種的組合:數(shù)據(jù)段的行數(shù)、各行所含的列數(shù)、數(shù)據(jù)編碼類型、行分隔符、列分隔符、各列的列名及列數(shù)據(jù)類型。
7.如權利要求1所述的方法,其特征在于,使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段,根據(jù)解析所得到的效果檢測所述數(shù)據(jù)格式的合法性,進一步包括: 設置所述數(shù)據(jù)格式中的行分隔符和/或列分隔符時,展現(xiàn)使用所述行分隔符和/或列分隔符解析的所述數(shù)據(jù)段供用戶判斷所述數(shù)據(jù)格式的合法性。
8.如權利要求1所述的方法,其特征在于,根據(jù)所選擇的意圖瀏覽的數(shù)據(jù)范圍由云端存儲的完整數(shù)據(jù)中截取相應大小的數(shù)據(jù)段放置到本地內存,進一步包括: 獲取云端存儲的完整數(shù)據(jù)的大小,所述完整數(shù)據(jù)的數(shù)據(jù)表基于行保存整理; 根據(jù)所選擇的瀏覽位置及所選擇的數(shù)據(jù)量由完整數(shù)據(jù)中逐行截取以所述瀏覽位置為起點的相應數(shù)據(jù)量的數(shù)據(jù)段放置到本地內存,所述瀏覽位置為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量中的偏移。
9.如權利要求8所述的方法,其特征在于, 所述數(shù)據(jù)段的起點未處于數(shù)據(jù)表中的數(shù)據(jù)行首位和/或數(shù)據(jù)的終點未處于數(shù)據(jù)表中的數(shù)據(jù)行末位時,截取所述數(shù)據(jù)段的起點和/或終點所在的整行數(shù)據(jù)。
10.如權利要求8所述的方法,其特征在于, 所述偏移為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量大小的比例位置或行數(shù)。
11.如權利要求1所述的方法,其特征在于,根據(jù)所選擇的意圖瀏覽的數(shù)據(jù)范圍由云端存儲的完整數(shù)據(jù)中截取相應大小的數(shù)據(jù)段放置到本地內存,進一步包括: 獲取云端存儲的完整數(shù)據(jù)的大小,所述完整數(shù)據(jù)的數(shù)據(jù)表基于列保存整理; 根據(jù)所選擇的瀏覽位置及所選擇的數(shù)據(jù)量由完整數(shù)據(jù)中逐列截取以所述瀏覽位置為起點的相應數(shù)據(jù)量的數(shù)據(jù)段放置到本地內存,所述瀏覽位置為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量中的偏移。
12.如權利要求11所述的方法,其特征在于, 所述數(shù)據(jù)段的起點未處于數(shù)據(jù)表中的數(shù)據(jù)列首位和/或數(shù)據(jù)的終點未處于數(shù)據(jù)表中的數(shù)據(jù)列末位時,截取所述數(shù)據(jù)段的起點和/或終點所在的整列數(shù)據(jù)。
13.如權利要求11所述的方法,其特征在于, 所述偏移為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量大小的比例位置或列數(shù)。
14.如權利要求8所述的方法,其特征在于, 云端存儲的完整數(shù)據(jù)基于行保存整理時,對所述完整數(shù)據(jù)中各行分別設置數(shù)據(jù)格式,所述每行的全部數(shù)據(jù)僅依據(jù)所在行的數(shù)據(jù)格式存儲。
15.如權利要求11所述的方法,其特征在于, 云端存儲的完整數(shù)據(jù)基于列保存整理時,對所述完整數(shù)據(jù)中各列分別設置數(shù)據(jù)格式,所述每列的全部數(shù)據(jù)僅依據(jù)所在列的數(shù)據(jù)格式存儲。
16.如權利要求14或15所述的方法,其特征在于, 設置數(shù)據(jù)格式的操作,包括以下一種或多種的組合的方式實現(xiàn):采用系統(tǒng)默認的數(shù)據(jù)格式進行設置、采用自定義的數(shù)據(jù)格式進行設置并檢測合法性、參照一已設置過數(shù)據(jù)格式的數(shù)據(jù)表設置當前數(shù)據(jù)表的數(shù)據(jù)格式。
17.—種瀏覽云端海量數(shù)據(jù)的裝置,其特征在于,包括: 預采樣模塊,用于由云端存儲的完整數(shù)據(jù)中預采樣一指定大小的數(shù)據(jù)段放置到本地內存; 數(shù)據(jù)格式設置模塊,根據(jù)用戶的輸入設置所述數(shù)據(jù)段的數(shù)據(jù)格式,使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段,根據(jù)解析所得到的效果檢測所述數(shù)據(jù)格式的合法性; 數(shù)據(jù)截取模塊,在所述數(shù)據(jù)格式合法時,根據(jù)所選擇的意圖瀏覽的數(shù)據(jù)范圍由云端存儲的完整數(shù)據(jù)中截取相應大小的數(shù)據(jù)段放置到本地內存; 數(shù)據(jù)展現(xiàn)模塊,使用所述數(shù)據(jù)格式解析所述數(shù)據(jù)段并展現(xiàn)。
18.如權利要求17所述的裝置,其特征在于, 所述數(shù)據(jù)格式,包括以下一種或多種的組合:數(shù)據(jù)編碼類型、行分隔符、列分隔符、各列的列名及列數(shù)據(jù)類型。
19.如權利要求17所述的裝置,其特征在于,所述數(shù)據(jù)格式設置模塊,還用于在所述數(shù)據(jù)格式不合法時,給出錯誤提示,生成檢測報告并展示,所述檢測報告包括以下一種或多種的組合:數(shù)據(jù)段的行數(shù)、各行所含的列數(shù)、數(shù)據(jù)編碼類型、行分隔符、列分隔符、各列的列名及列數(shù)據(jù)類型。
20.如權利要求17所述的裝置,其特征在于, 所述數(shù)據(jù)格式設置模塊,還用于將所述數(shù)據(jù)格式的設置內容保存為歷史內容并提供入口供查看;依據(jù)所述數(shù)據(jù)格式的設置內容保存回溯點,依據(jù)所述回溯點生成若干對應的數(shù)據(jù)格式的版本供選擇回溯。
21.如權利要求17所述的裝置,其特征在于, 所述數(shù)據(jù)格式設置模塊,設置所述數(shù)據(jù)格式中的列名和列數(shù)據(jù)類型時,進一步用于依據(jù)所述列名和列數(shù)據(jù)類型實時解析所述數(shù)據(jù)段并預覽所述數(shù)據(jù)段中任意行的各列數(shù)據(jù)供用戶判斷所述列名和列數(shù)據(jù)類型的合法性。
22.如權利要求17所述的裝置,其特征在于, 所述數(shù)據(jù)格式設置模塊,設置所述數(shù)據(jù)格式中的行分隔符和/或列分隔符時,進一步用于檢測到當前行分隔符使得所述數(shù)據(jù)段的行數(shù)小于等于I時,或檢測到當前列分隔符使得所述數(shù)據(jù)段的列數(shù)小于等于I時,或檢測到當前行分隔符和/或列分隔符使得所述數(shù)據(jù)段中列數(shù)不同的行數(shù)大于等于一門限時,判定所述數(shù)據(jù)格式不合法。
23.如權利要求17所述的裝置,其特征在于, 所述數(shù)據(jù)格式設置模塊,設置所述數(shù)據(jù)格式中的行分隔符和/或列分隔符時,進一步用于展現(xiàn)使用所述行分隔符和/或列分隔符解析的所述數(shù)據(jù)段供用戶判斷所述數(shù)據(jù)格式的合法性。
24.如權利要求17所述的裝置,其特征在于, 所述數(shù)據(jù)截取模塊,進一步用于獲取云端存儲的完整數(shù)據(jù)的大小,所述完整數(shù)據(jù)的數(shù)據(jù)表基于行保存整理;根據(jù)所選擇的瀏覽位置及所選擇的數(shù)據(jù)量由完整數(shù)據(jù)中逐行截取以所述瀏覽位置為起點的相應數(shù)據(jù)量的數(shù)據(jù)段放置到本地內存,所述瀏覽位置為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量中的偏移,所述數(shù)據(jù)段的起點未處于數(shù)據(jù)表中的數(shù)據(jù)行首位和/或數(shù)據(jù)的終點未處于數(shù)據(jù)表中的數(shù)據(jù)行末位時,截取所述數(shù)據(jù)段的起點和/或終點所在的整行數(shù)據(jù);其中,所述偏移為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量大小的比例位置或行數(shù)。
25.如權利要求17所述的裝置,其特征在于, 所述數(shù)據(jù)截取模塊,進一步用于獲取云端存儲的完整數(shù)據(jù)的大小,所述完整數(shù)據(jù)的數(shù)據(jù)表基于列保存整理;根據(jù)所選擇的瀏覽位置及所選擇的數(shù)據(jù)量由完整數(shù)據(jù)中逐列截取以所述瀏覽位置為起點的相應數(shù)據(jù)量的數(shù)據(jù)段放置到本地內存,所述瀏覽位置為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量中的偏移,所述數(shù)據(jù)段的起點未處于數(shù)據(jù)表中的數(shù)據(jù)列首位和/或數(shù)據(jù)的終點未處于數(shù)據(jù)表中的數(shù)據(jù)列末位時,截取所述數(shù)據(jù)段的起點和/或終點所在的整列數(shù)據(jù);其中,所述偏移為所述數(shù)據(jù)段處于所述完整數(shù)據(jù)的數(shù)據(jù)量大小的比例位置或列數(shù)。
【文檔編號】G06F17/30GK103488643SQ201210193194
【公開日】2014年1月1日 申請日期:2012年6月12日 優(yōu)先權日:2012年6月12日
【發(fā)明者】周俊, 蔣耘, 代斌, 初敏, 劉時光, 鄧鐘強, 蔡寧, 楊旭 申請人:阿里巴巴集團控股有限公司