TW201837750A - 電腦化方法及使用元合併及/或元分組的索引的電腦化系統 - Google Patents
電腦化方法及使用元合併及/或元分組的索引的電腦化系統 Download PDFInfo
- Publication number
- TW201837750A TW201837750A TW106145557A TW106145557A TW201837750A TW 201837750 A TW201837750 A TW 201837750A TW 106145557 A TW106145557 A TW 106145557A TW 106145557 A TW106145557 A TW 106145557A TW 201837750 A TW201837750 A TW 201837750A
- Authority
- TW
- Taiwan
- Prior art keywords
- aforementioned
- meta
- index
- data sets
- data
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
- G06F16/24534—Query rewriting; Transformation
- G06F16/24537—Query rewriting; Transformation of operators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/221—Column-oriented storage; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2237—Vectors, bitmaps or matrices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24558—Binary matching operations
- G06F16/2456—Join operations
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本發明之實施例藉由除典型地使用的彼等臨時搜索檔案之外產生促進資料集之處理的分離資料結構或組織來改良習知或常規技術。在一個實施例中,替代使用經分類臨時檔案或運行分類演算法,元合併及/或元分組的索引可經產生或創建來對前述資料集中之記錄提供快速存取。此外,本發明之實施例消除在對前述資料集進行查詢之前或期間對分類或預分類資料集之需要。本發明之態樣使用例如前述元合併及/或元分組的索引來預組織前述資料,以使得當針對前述資料集執行查詢時,針對前述元合併及/或元分組的索引來執行前述查詢。
Description
相關申請案之交互參照
此為2016年12月23日申請的臨時申請案序列號第62/438,997號之非臨時申請案。上文提及的臨時申請案之整體揭示內容係以引用方式併入本文。
在資料溢流及資料超載之時代,自裝置產生、接收、處理等等的原始資料之使用者恆定地使用計算裝置來分析此等資料以找出其中的含義或識別以前已被忽略的含義。隨著雲端儲存及計算之巨大增長,資料處理或主機代管提供者持續為使用者增加資料儲存容量。同樣,隨著處理器或微處理器、以及網際網路存取速度之增加的處理能力,基於用戶端的資料處理與基於雲端的資料處理之間的差距已顯著地減小。
對資料儲存及計算能力之恆定增加的關注似乎尤其係針對已負面地影響表格記錄資料組織結構方案及資料結構軟體程式化的問題。此問題係關於隨資料組織及/或結構變化的時間量,其旨在獲得由資料集之查詢產生的所欲資料。計算能力及資料儲存技術(例如,自硬磁碟驅動機(hard drive disk;HDD)至固體狀態驅動機(solid state drive;SSD))之增加試圖減少或減輕資料之搜索、存取、及處理的影響。然而,尤其當需要處理的資料集包括極大集合,諸如具有數百萬或數十億之記錄的資料集時,時間因數係更為顯著的。
本發明之實施例藉由產生除典型地使用來促進資料集之處理的彼等暫時性搜索檔案外的分離資料結構或組織而改良習知或常規技術。在一個實施例中,替代使用分類臨時檔案或運行分類演算法,元合併及/或元分組的索引可產生或創建來提供對資料集中之記錄的快速存取。此外,本發明之實施例消除在對資料集實施查詢之前或期間對分類或預分類資料集的需要。本發明之態樣使用例如元合併及/或元分組的索引來預組織資料,以使得當針對資料集執行查詢時,該查詢係針對元合併及/或元分組的索引來執行。
100‧‧‧表格
102‧‧‧欄位
104‧‧‧欄位
106‧‧‧欄位
200‧‧‧表格
202‧‧‧欄位
204‧‧‧欄位
206‧‧‧欄位
300‧‧‧表格
302‧‧‧列
304‧‧‧列
306‧‧‧列
400‧‧‧表格
402‧‧‧列
404‧‧‧列
500‧‧‧表格
502‧‧‧列
504‧‧‧列
602‧‧‧方塊
604‧‧‧方塊
606‧‧‧方塊
608‧‧‧方塊
610‧‧‧方塊
612‧‧‧方塊
604‧‧‧方塊
700‧‧‧表格
702‧‧‧列
704‧‧‧列
706‧‧‧列
841‧‧‧計算裝置
900‧‧‧表格
1000‧‧‧處理器
1002‧‧‧表格
1005‧‧‧聲音及視訊模組
1010‧‧‧依電性記憶體
1015‧‧‧非依電性記憶體
1020‧‧‧輸入/輸出匯流排
1025‧‧‧資料庫
1100‧‧‧表格
1102‧‧‧欄位
1104‧‧‧欄位
1106‧‧‧欄位
1200‧‧‧表格
1202‧‧‧欄位
1204‧‧‧欄位
1300‧‧‧表格
1400‧‧‧表格
1500‧‧‧表格
1502‧‧‧列
1504‧‧‧列
1506‧‧‧列
1602‧‧‧方塊
1604‧‧‧方塊
1606‧‧‧方塊
1608‧‧‧方塊
1610‧‧‧方塊
1612‧‧‧方塊
1614‧‧‧方塊
1616‧‧‧方塊
1702‧‧‧資料結構
1704‧‧‧欄位
1706-1‧‧‧資料欄位
1706-2‧‧‧資料欄位
1706-3‧‧‧資料欄位
1802‧‧‧資料結構
1804‧‧‧欄位
1806-1‧‧‧資料欄位
1806-2‧‧‧資料欄位
1806-3‧‧‧資料欄位
當結合隨附圖式考慮時,本發明可藉由參考詳細描述來更好地理解。圖式中之組件可能未必按比例繪製,而替代地重點是關注對本發明之原理的例示。在圖式中,相同參考符號在所有不同視圖中指定相應部件。
圖1例示根據本發明之一個實施例的示範性表格,其展示有關於電視節目之消費者觀看的樣本資料集。
圖2例示根據本發明之一個實施例的示範性表格,其展示有關於電視觀眾的樣本資料集。
圖3例示根據本發明之一個實施例的用於使用圖1及圖2之局部唯一識別符(locally unique identifier;LUID)關鍵字合併的元合併索引之示範性表格。
圖4例示根據本發明之一個實施例的用於圖1中之樣本資料集的列值位元映像索引之示範性表格。
圖5例示根據本發明之一個實施例的用於圖2中之樣本資料集的列值位元映像索引之示範性表格。
圖6例示根據本發明之一個實施例的流程圖,其展示用於產生元合併索引之方法。
圖7例示根據本發明之一個實施例的示範性表格,其展示更新的元合併索引。
圖8例示根據本發明之一個實施例的圖表,其展示示範性計算裝置。
圖9例示根據本發明之一個實施例的示範性表格,其展示用於對圖1及圖2之樣本資料集進行樣本查詢的元分組的索引,該等樣本資料集係藉由Network & Series分組且使用LUID關鍵字合併。
圖10例示根據本發明之一個實施例的示範性表格,其展示相異配對的資料集。
圖11例示根據本發明之一個實施例的示範性表格,其展示具有值Discovery-Life(1,4,7,8,11,12,13,15,17)的所有記錄且將此與針對每一合併關鍵字之TV觀眾合併關鍵位置交叉的位元映像位置。
圖12例示根據本發明之一個實施例的示範性表格,其展示具有值ABC-Twisted(2,6,21,22,25)的所有記錄之位元映像位置及與針對每一合併關鍵字之TV觀眾合併關鍵位置的交集。
圖13例示根據本發明之一個實施例的示範性表格,其展示具有兩個分組資料集值的元分組的索引。
圖14例示根據本發明之一個實施例的示範性表格,其展示經過濾記錄清單。
圖15例示根據本發明之一個實施例的示範性表格,其展示基於圖14的經過濾記錄清單。
圖16例示根據本發明之一個實施例的流程圖,其展示用於產生元分組的索引之方法。
圖17例示根據本發明之一個實施例的用於元合併索引之示範性資料結構。
圖18例示根據本發明之一個實施例的用於元分組的索引之示範性資料結構。
一般技藝人士可瞭解的是,圖式中之要素係出於簡單及清晰度起見例示,因此並非已展示所有連接及選項以避免模糊發明態樣。例如,在商業可行實施例中有用或必要的一般但熟知的要素可能常常未做描繪以便有助於本揭示內容之此等各種實施例之較少妨礙視圖。將進一步瞭解,某些動作及/或步驟可以特定發生順序來描述或描繪,而熟 習此項技術者將理解,此種相對於序列而言的特定性並非實際所需的。亦將理解,本文使用的術語及表述可相對於其在調查及研究中之相應各別領域來定義,其中在本文已另外闡述特定含義的情況除外。
現可參考形成本發明之一部分且以說明方式展示本發明可藉以實踐的特定示範性實施例的隨附圖式更完全地描述本發明。可在理解本揭示內容為一或多個發明之原理之例證且可不意欲將發明任一者限制至所說明實施例的情況下來提供此等說明及示範性實施例。本發明可以許多不同的形式體現且不應解釋為限於本文闡述的實施例;實情為,此等實施例係提供來使得本揭示內容將為徹底及完整的,且將為熟習此項技術者完全地傳達本發明之範疇。尤其,本發明可體現為方法、系統、電腦可讀媒體、設備、或裝置。因此,本發明可採取完全硬體實施例、完全軟體實施例、或組合軟體及硬體態樣之實施例的形式。以下詳細描述可因此不以限制意義來進行。
應理解,在科學領域、社會科學研究、製造等等中,所有學科的分析員恆定地面臨過多資料要識別及處理。此等分析之部分將產生來自不同資料集的見解。存在許多方法,但方法之一是識別資料集之間的相關性。在此嘗試中,可執行儲存在資料庫儲存器或結構中之兩個或兩個以 上資料集之合併操作。「合併(join)」操作可為資料庫程式化之部分且此種操作典型地包括語法及一組用於諸如資料庫伺服器的資料庫定向電腦的所需參數以執行並產生結果。當資料集較小時,合併操作不會太久,且典型地即刻提供或產生結果。然而,當資料集之大小開始指數增長時,合併效能顯著受影響。此係因為合併操作需要在產生具有合併結果的輸出資料集之前分類並搜索目標資料集中之相關資料欄位。
作為說明而非作為限制,考慮圖1中展示的實例,其為例示有關於TV節目之消費者觀看的資料集之樣本的表,且考慮圖2中特定TV節目之TV觀眾之樣本資料集的表。應理解,其他類型的資料可在不脫離本發明之實施例之範疇及精神的情況下使用。
為自資料集產生一些見解,例如,考慮以下查詢指令:SELECT PID,AGE,INCOME,NETWORK,SERIES
FROM EXPERIAN,TV
WHERE EXPERIAN.LUID=RV.LUID
AND GENDER=‘F’
AND SHOWDATE BETWEEN 01/04/2016 AND 01/06/2016
AND(NETWORK LIKE‘D*’OR SERIES LIKE ‘L*’)
AND VIEWEDFOR>40
作為另一假設,假設消費者觀看資料集中之記錄數目為2億個記錄,且TV觀眾資料集中之記錄數目為20億個記錄。
上文查詢將藉由大多數當前資料庫解決方案,使用作為實例的以下方法之一來解決:巢套迴路合併(Nested Loop Join)
散列合併(Hash Join)
分類-歸併合併(Sort-Merge Join)
利用引起效能問題的任何傳統合併方法之挑戰為: 記錄尋覓時間(自硬磁碟驅動機或SSD)。
臨時表格產生(用於分類)
可假定資料集可儲存在「雲端」中,但應理解,用於此種大型資料集之基於雲端的解決方案可實際上相交上文所假設者更差。基於雲端的解決方案需要資料之實體儲存,且基於雲端的解決方案實際上在使用者尋覓可實體上儲存或容納在不同位置中的資料集時具有對記錄尋覓時間及臨時表格產生之資料傳輸時間及成本。
作為另一說明,以下實例證明尤其當在合併兩個或兩個以上表格時需要進行多次尋覓時在HDD中之檔案尋覓之負擔。
假設每個檔案塊存在100K記錄,每百萬個記錄可能需要10次尋覓,每十億個記錄需要10000次尋覓=100,000 x 2毫秒=200秒。若使用SSD,則尋覓時間將減少,但其仍將耗費約50秒之估計值或因此僅僅進行針對十億個記錄的檔案尋覓。
例如大約50秒至200秒的上述時間估計值僅僅用於尋覓操作以尋覓資料而甚至不需執行跨資料集的任何種類的合併操作。
同時,藉由資料庫管理及記憶體管理之構建進行的現有實踐將不可避免地創造臨時表格以用於涉及大量記錄之合併,此係歸因於分類記錄以用於計算聚合函數之需要。臨時表格之創建、尋覓用於臨時表格之記憶體儲存、寫入及讀取臨時表格等等進一步增加總體查詢處理時間且實質上進一步減少查詢效能。
根據本發明之一個實施例,「元合併索引(Meta-Join Index)」結構可經創建或產生以消除在運行時間不得不進行合併之需要。此方法尤其適用於查詢執行。在另一實施例中,元合併索引可提供索引識別符,例如對另一資料集之記錄的指標。
現參考圖3,示範性表格展示根據本發明之一個實施例的元合併索引,其利用局部唯一識別符(LUID)關鍵字來合併圖1及圖2中展示的樣本資料集。在一個實施例中,元合併索引可以表格格式提供。應理解,可在不脫離本發明之態樣之範疇或精神的情況下使用其他格式或表格尺寸。
在圖3中例示的實例中,表格300展示合併兩個表格即圖1中之表格100及圖2中之表格200的結果。例如,在圖1中之表格100中,欄位102可識別與局部唯一識別 符(LUID)「L1」相關聯的#1及#2。在表格200中,欄位202可識別與相同的共同合併關鍵字LUID L1相關聯的#1、#6、#10、#13、#19、及#20。在合併兩個表格時,藉由列302中之LUID組織的圖3中之元合併索引表格300可提供對相應表格的索引。例如,在列304中,表格300藉由參考數字102提供對表格100之#1及#2的索引參考(如藉由標籤「消費者觀看」所識別的)。類似地,在列306中,表格300藉由參考數字202提供對表格200之#1、#6、#10、#13、#19及#20的索引參考(如藉由標籤「TV觀眾」所識別的)。
在一個實施例中,元合併索引可儲存具有有效合併條件匹配的每一資料集記錄之記錄位置的關鍵字-值對。在另一實施例中,元合併索引可每個分區被分段且分區關鍵字係可組配的。
在圖3中展示的此實施例中,表格300出於簡化目的使用且並非作為限制。在此實例中,表格300並非藉由分區來劃分。然而,在其他實例中,表格300或元合併索引可經分區,例如以日期(範圍)分區一或多次。例如,元合併索引可針對所有資料集、針對每一日期、每個月、每個季度等等基於資料分區需要來創建。
在另一實施例中且為促進獲得查詢結果之更快方式,可使用列值位元映像索引。在一個實例中,列值位元映像索引可用來允許壓縮尺寸值至就資料記憶體或儲存器而言極小的覆蓋區。此優點可致能記憶體中之輕易加載。此外,此壓縮尺寸可基於指定在針對每一資料集之執行查詢中的WHERE條件而用於濾出任何記錄。在一個實例中,可藉由使用位元之自然定位以與彼列值之記錄位置匹配且消除針對記憶體中之每一位元儲存實際位置值的需要來減少對位元映像索引之儲存空間要求。在一個實例中,圖4例示示範性表格,其展示用於如圖1中所見的消費者觀看資料集之樣本的列值位元映像索引。應理解,並非所有尺寸及其列值位元映像展示於整個消費者觀看資料集之上。僅出於說明目的且並非作為限制,此處僅展示上文查詢實例之執行所需者。例如,如圖1所示,表格100指示欄位104指定以#1識別的使用者為女性,且欄位106指示使用者係50歲。在列值位元映像索引中,104及106中之相同使用者之相同資訊分別反映在表格400中之402及404中。
類似地,圖5例示根據本發明之一個實施例的用於圖2中之樣本資料集的列值位元映像索引之示範性表格。作為說明,表格500表示與分別由502及504中之204及206所表示相同的資訊。如上文所解釋,列值位元映像索引減少對表示相同資訊的記憶體儲存需要且可顯著地縮 短資料處理時間。應理解,並非所有尺寸及其列值位元映像展示於整個消費者觀看資料集之上。僅出於說明目的且並非作為限制,此處僅展示上文查詢實例之執行所需者。
在一個實施例中,利用所構造的元合併索引及列值位元映像索引,可使用兩個資料結構來以較好的效能執行查詢且不需要高的硬體成本,使用其他傳統或常規解決方案會導致高的硬體成本。在另一實施例中,替代直接針對資料集或針對資料集之複本執行查詢,計算裝置可首先在針對資料集執行完整查詢之前自該資料集構造元合併索引及列值位元映像索引。在另一實施例中,用於任何給定資料集之元合併索引及列值位元映像索引可在計算之前或在運行時間之前自動地構造。在另一實施例中,用於任何給定資料集之元合併索引及列值位元映像索引可在接收或執行查詢或合併操作之前根據使用者指令或請求來構造。
參考圖6,流程圖展示根據本發明之一個實施例的用於產生元合併索引之方法。在一個實施例中,元合併索引可用來執行下文的樣本查詢。在此實例中,可使用列值位元映像索引。
SELECT PID,AGE,INCOME,NETWORK,SERIES
FROM EXPERIAN,TV
WHERE EXPERIAN.LUID=RV.LUID
AND GENDER=‘F’
AND SHOWDATE BETWEEN 01/04/2016 AND 01/06/2016
AND(NETWORK LIKE‘D*’OR SERIES LIKE ‘L*’)
AND VIEWEDFOR>40
使用上文作為實例的查詢指令集,在602,識別針對複數個資料集的查詢指令中的用於至少兩個資料集之合併操作。例如,可能存在系統或電腦接收的一組或複數個查詢指令。例如,指令可自使用者直接接收或可自自動化或經排程通道接收。例如,指令可在批次檔案中接收。在所接收指令中,例如,合併操作指令可為該等指令之一且本發明之實施例自複數個指令識別該等合併操作指令。此外,如上文所例示,合併操作指令包括參數、語法規則等等。例如,合併操作指令可包括諸如「WHERE」的參數或條件以作為合併操作之一部分。在604,過濾合併操作 中識別至少兩個資料集中之一者的記錄值的參數。例如,在「WHERE」指令中,例如「GENDER=F」的參數識別圖1中之表格100中的記錄值。另一方面,在此實例中,「WHERE」指令未能包括參數「GENDER=M」。因此,可濾出不與參數「GENDER=F」相關聯的任何記錄值。在606,第一列值位元映像索引可經構造來儲存對應於藉由經過濾參數識別的至少兩個資料集之一者中的記錄值的索引識別符。使用表1作為實例,因為「WHERE」指令需要參數為「Gender=F」,所以與表1相關聯的滿足此種標準的記錄值將為針對:1,2,4,5,7,9之記錄。
在608,將606中之相同方法應用於其他資料集。例如,在WHERE指令中,存在另外的參數:(NETWORK LIKE‘D *’OR SERIES LIKE‘L *’)AND VIEWEDFOR>40,且其中每一者識別藉由參數識別的對應資料值。因此,第二列值位元映像索引可經構造來儲存對應於藉由經過濾參數識別的至少兩個資料集之另一者中的記錄值的索引識別符。當然要理解的是,過濾過程將包括首先識別參數,且隨後在可開始過濾過程之前識別資料集中藉由參數識別的資料值。此外,僅為達簡單目的且不作為限制,上文實例並非以日期來分區。若是,則步驟602至608可在配合WHERE條件之每一分區應用。
在一個實例中,藉由使用針對3個列-Network、Series & VIEWEDFOR的位元映像索引,將獲得以下記錄位置:1,4,7,9,11,12,13,17。
在610,元合併索引係基於在至少兩個資料集中找到的共同合併關鍵字藉由將該至少兩個資料集關聯來構造或產生。例如,如先前圖1至圖3中所描述,元合併索引可藉由識別表格100及表格200中之每一共同合併-關鍵字來構造。在構造之後,在612,元合併索引進一步與來自606之第一列值位元映像索引及來自608之第二列值位元映像索引關聯或交叉。
例如,對LUID L1而言,表格300將列304(來自102)與來自第一列值位元映像索引之1,2,4,5,7,9交叉以在交叉之後得到1,2。類似地,對於共同合併-關鍵字L1而言,表格300將列306(來自202)與來自第二列值位元映像索引之1,4,7,9,11,12,13,17交叉以得到1,13。
在614,在完成合併操作指令之前提供經關聯元合併索引作為結果。例如,在一個實施例中,圖7例示用於根據上文所說明之步驟的經更新或經關聯元合併索引的表格700。在此實例中,擴展需要包括在L1之結果中的所有記錄。換言之,值之置換可藉由審查兩個資料集來創建。
1-1
1-13
2-1
2-13
應理解,可針對所有合併關鍵字執行相同過程或步驟且將基於元合併索引設定之最終結果返回至使用者。
如將在上文實例中易於識別的,本發明之實施例藉助於元合併索引而消除或避免對用於合併操作之任何分類、臨時表格創建或進行檔案尋覓100K次的需要。替代直接對資料集執行合併操作指令-因此需要分類、臨時表格創建或進行檔案尋覓-本發明之態樣對元合併索引執行。藉由消除或不進行資料集之大部分的分類及大量的檔案尋覓,本發明之態樣使用極為經濟的硬體,僅僅藉由利用元合併索引連同位元映像索引而實質改良總體查詢效能。本發明之實施例克服處理合併操作指令之習知及常規方法。
在另一實施例中,元分組的索引可經構造以進一步促進對資料集執行之操作。使用下文的一組示範性資料庫查詢指令作為實例。
SELECT NETWORK,SERIES,COUNT(PID)
FROM EXPERIAN,TV
WHERE EXPERIAN.LUID=RV.LUID
AND GENDER=‘F’
AND VIEWEDFOR>40
GROUP BY NETWORK,SERIES
當前可利用的電腦軟體產品需要進行資料之分類或混排,該資料需要「分組(group-by/group by)」子句。此要求係在具有「分組」子句的查詢執行中執行並引起顯著效能壓縮的顯著高成本的操作。因為資料集大小為大的(例如,數百萬或數十億資料值),所以分類處理再次涉及創建臨時檔案並針對臨時表格資料集執行集合函數,且因此產生緩慢的總體查詢執行。
在一個實施例中,「元分組的索引」消除對針對查詢執行在運行時間不得不進行分類或混排的需要。例如,元分組的索引儲存基於根據列值之相異組的每一資料集記 錄之記錄位置的關鍵字-值對。在一個實例中,元分組的索引可使用上文所述的預創建元合併索引及列值位元映像索引來計算。
圖9展示用於上文樣本查詢的元分組的索引900,其具有藉由Network & Series分組且使用LUID關鍵字合併的資料集。為獲得此種元分組的索引,圖10至圖12及圖16用於例示此種實施例。
在此實例中,分組條件包括GROUP BY NETWORK、SERIES。因此,在圖10中,表格1002例示每一Network-Series對。
另外,圖11例示表格1100,其用於藉由進行適當的列值位元映像索引與TV觀眾合併關鍵位置之交叉來找出匹配TV觀眾分組位置。例如,對於「Discovery-Life」對,基於圖2,記錄為:[1,4,7,8,11,12,13,15,17]。
圖11例示針對具有「Discovery-Life」之值(1,4,7,8,11,12,13,15,17)的所有記錄且將此與針對每一合併關鍵字的1102中之L1的TV觀眾合併關鍵位置交叉的位置。
因此,對於LUID L1而言,在一個實施例中,將為: 1,4,7,8,11,12,13,15,17 ∩ 1,6,10,13,19,20產生如圖11中1104中所識別的1及13。
對於與相同「Discovery-Life」對交叉的LUID L2而言,交叉產生:1,4,7,8,11,12,13,15,17 ∩ 2,7,11,14,18,21=如圖11中1106中所識別的7及11。
在TV觀眾中之關鍵字與TV節目之消費者觀看之間,針對合併關鍵字中之每一者進行上文交叉。在另一實施例中,可針對不同的NETWORK-SERIES分組,諸如「ABC-Twisted」(亦即,「ABC」係NETWORK且「Twisted」係SERIES)分組進行另一交叉,且位置為如圖12所示的[2,6,21,22,25](根據圖2)。
例如,對與「ABC-Twisted」對交叉的LUID L1而言,交叉產生:2,6,21,22,25 ∩ 1,6,10,13,19,20產生如在圖12中之表格1200中的1202中所識別的6。
在另一實例中,對與「ABC-Twisted」對交叉的LUID L2而言,交叉產生:2,6,21,22,25 ∩ 2,7,11,14,18,21產生如圖12中之表格1200中的1204中所識別的2及21。
一旦獲得具有每一合併關鍵字之表格,即可藉由針對每一獨特的Network-Series值進行消費者觀看合併關鍵位置與TV觀眾分組的位置之置換而計算元分組的索引。此可針對用於「Discovery」-「Life」及「ABC」-「Twisted」之分組的正好兩個Network-Series值產生藉由在先前部分中在圖13中的表格1300中的元分組的索引展示的表格。
以下為上文展示的樣本查詢指令及使用元分組的索引執行此查詢的步驟序列之另一實例。
SELECT NETWORK,SERIES,COUNT(PID)
FROM EXPERIAN,TV
WHERE EXPERIAN.LUID=RV.LUID
AND GENDER=‘F’
AND VIEWEDFOR>40
GROUP BY NETWORK,SERIES
使用圖16作為實例來說明示範性方法,在1602,接收用於分組至少兩個資料集中之資料的資料庫查詢指令。例如,存在系統或電腦接收的一組或複數個查詢指令。例如,指令可自使用者直接接收或可自自動化或經排程通道接收。例如,指令可在批次檔案中接收。在所接收指令中,例如,合併操作指令可為該等指令之一且本發明之實施例自複數個指令識別該等合併操作指令。此外,如上文所例示,合併操作指令包括參數、語法規則等等。
在1604,識別所接收資料庫查詢指令中用於分組至少兩個資料集中之資料值的分組條件。另外,在1606識別合併操作指令。在一個實例中,「WHERE」語句或條件可為合併操作指令之實例。因此,在1608,構造第一列值位元映像索引,其儲存對應於至少兩個資料集之一者中的記錄值的索引識別符。例如,合併操作指令可包括諸如「WHERE」的參數或條件,其指示「Gender=F」作為標準之一,因此吾等將需要具有根據圖1中之表格100的消費者觀看資料集中之以下位置的記錄。例如,使用圖 1中之表格100,可過濾的位置可為:#1、#2、#4、#5、#7、及#9。
類似地,回應於過濾TV觀眾資料集之所有記錄位置且僅保持需要使用列值位元映像索引之記錄位置,在1610構造第一列值位元映像索引,其儲存對應於至少兩個資料集之一者中的記錄值的索引識別符。在上文實例中,使用「Discovery-Life」之NETWORK-SERIES實例作為實例,位置為:#1、#2、#4、#6、#7、#9、#10、#11、#12、#13、#16、#17、#18、#19、#23、及#24(基於圖2中之表格200中之資料值)。
在一個實施例中,針對元分組的索引中之Network-Series值中之每一者,應用過濾器來僅包括具有上文位置之記錄。
此外,一旦應用合併操作指令之「WHERE」部分中之「VIEWEDFOR>40」條件且滿足「分組」條件,即可在1614構造圖15中之元分組的索引表格1500從而展示分組結果。在一個實施例中,可在期中使用圖6及圖7中之圖解構造元合併索引。例如,使用圖14中之表格1400作為實例,在1612構造元合併索引,其展示上文關於消費者觀看資料集及「Discover-Life」之Network-Series對的示範性位置。
在另一實施例中,在1616,可針對每一Network-Series值之經過濾記錄清單中之每一者執行聚合函數。在圖15中例示的實例中,聚合函數可展示為「9」的「Discover-Life」對之結果。
如將自1602至1616所瞭解的,基於本發明之實施例,不需要進行任何分類、臨時表格創建或進行檔案尋覓100K次。藉由消除分類資料集之大部分及大量檔案尋覓之問題,本發明之實施例使用極為經濟的硬體,僅僅藉由利用元分組的索引連同元合併索引及如上文所示針對資料集預計算的位元映像索引而實質改良總體查詢效能。
如同提供於本揭示內容中之其他實例一樣,出於簡單性來給出實例且並非作為限制,僅兩個列用於分組,上文邏輯適用於可被包括在分組中的任何數量之列。
圖17例示根據本發明之一個實施例的資料結構1702,其具有用於儲存元合併索引之資料欄位。例如,如上文關於圖3及圖7所述,資料結構1702可包括用於共同合併-關鍵字之欄位1704。例如,使用圖7作為實例,共同合併-關鍵字為LUID列702。因此,第一列中之欄位儲存LUID值。此外,資料結構1702包括一或多個欄位1706-1至1706-n(其中n>0),每一者儲存用於藉由共同 合併-關鍵字識別的資料值之索引值。再次,使用圖7作為實例,兩個列704及706儲存在兩個合併資料集中識別的索引值:消費者觀看及TV觀眾。應理解,可在不脫離本發明之範疇或精神的情況下,其他數量之資料集可由資料結構1702表示。
作為另一說明,圖18提供根據本發明之一個實施例的圖表,其展示資料結構1802,具有用於儲存元分組的索引之資料欄位。使用圖15作為實例,資料結構1802包括用於識別分組條件之欄位1804。例如,列1502包括用於識別特定分組條件之欄位,該特定分組條件諸如「Discovery-Life」之「Network-Series」對。應理解,可在不脫離本發明之實施例之範疇或精神的情況下使用其他分組條件。
此外,資料結構1802包括另外的資料欄位用於1806-1至1806-n(其中n>0),每一者儲存用於作為合併及分組條件之結果而識別的資料值之索引值。再次,使用圖15作為實例,兩個列1504及1506儲存在兩個合併資料集中識別的索引值。應理解,資料欄位1806及1706不儲存實際資料值;其在資料集中儲存識別有關資料值之索引值。如所解釋的,其對於執行合併或分組操作為有益的及經濟的,尤其在大型資料集中如此。
進一步應理解,呈計算裝置或電腦形式的電腦系統可用以執行上文說明的電腦可執行指令。此種電腦系統可在圖8例示為計算裝置841。在高位準下,計算裝置841可包括數位儲存器,諸如磁碟、光碟、快閃儲存器、非依電性儲存器等等。結構化資料可儲存在諸如資料庫之數位儲存器。計算裝置841可具有處理器1000,其根據電腦可執行指令來實體上組配。亦可具有聲音及視訊模組1005,其輔助顯示視訊及聲音,且可在不使用時關閉以保存電力及電池壽命。計算裝置841亦可具有依電性記憶體1010及非依電性記憶體1015。
資料庫1025可儲存在記憶體1010或1015或可為分離的。資料庫1025亦可為計算裝置841之雲端之部分,且可以橫跨複數個計算裝置841的分配方式儲存。亦可存在輸入/輸出匯流排1020,其往返於各種使用者輸入裝置運送資料,該等使用者輸入裝置諸如麥克風、攝影機、諸如輸入墊、顯示器、及揚聲器等等之輸入端。輸入/輸出匯流排1020亦可控制經由無線或有線裝置與網路的通訊。在一些實施例中,應用可在局部計算裝置上且在其他實施例中,應用可為計算裝置841。當然,此僅為計算裝置841之一個實施例且可攜式計算裝置841之數量及類型僅受想像力之限制。
所主張系統及方法可解決若干技術問題及挑戰,其中一些已描述。當前,跨於網路輸入潛在的敏感資料使得使用者緊張程度達到可能損失銷售額或可能接收不到金錢或時間節省的小費或贈券之點。藉由使用諸如支付網路之專有網路來傳輸潛在敏感資料,安全性可更高且使用者可更開放以合併另外的有益的程式。類似地,將資料自一個支付系統移動至另一忠誠系統對一些使用者來說感受到危險,但藉由使用專有、可信賴網路,資料可以更值得信賴之方式傳達。另外,以可藉由各種另外程式理解的方式格式化資料及傳達資料係系統及已解決的技術挑戰或問題。
本文描述的使用者裝置、電腦及伺服器可為通用電腦,其可具有微處理器(諸如來自Intel Corporation、AMD或Motorola);依電性及非依電性記憶體;一或多個大量儲存裝置(亦即,硬碟驅動機);各種使用者輸入裝置,諸如滑鼠、鍵盤、或麥克風;及視訊顯示系統以及其他元件。本文描述的使用者裝置、電腦及伺服器可在許多作業系統中之任一者上運行,該等作業系統包括但不限於WINDOWS、UNIX、LINUX、MAC OS、或Windows(XP、VISTA等等)。然而,涵蓋的是,任何適當作業系統可用於本發明。伺服器可為網頁伺服器之叢集,該等網頁伺服器可各自為基於LINUX的且藉由負載平衡器支援,該負 載平衡器決定網頁伺服器之該叢集中之何者應基於可利用伺服器之當前請求-負載來處理請求。
本文描述的使用者裝置、電腦及伺服器可經由網路通訊,該等網路包括網際網路、WAN、LAN、Wi-Fi、其他電腦網路(現在已知的或將來發明的)、及/或前述者之任何組合。藉由獲得本說明書、圖式、及申請專利範圍之一般技藝人士應理解的,網路可經由有線及無線導管(包括銅)、光纖、微波、及其他形式之無線電頻率、電學及/或光學通訊技術之任何組合來連接各種組件。亦應理解,任何網路可以不同方式連接至任何其他網路。系統中電腦與伺服器之間的互連為實例。本文描述的任何裝置可經由一或多個網路與任何其他裝置通訊。
示例性實施例可包括除所示之彼等者外的另外裝置及網路。另外,描述為藉由一個裝置執行之功能性可藉由兩個或兩個以上裝置分配並執行。多個裝置亦可組合成單一裝置,其可執行組合裝置之功能性。
本文描述的各種參與者及元件可操作一或多個電腦設備以促進本文描述的功能。包括任何伺服器、使用者裝置、或資料庫的上述圖式中的元件中之任何者可使用任何適當數量之子系統來促進本文描述的功能。
本申請案中描述的軟體組件或功能中之任何者可作為軟體代碼或電腦可讀指令來實施,該等指令可藉由至少一個處理器,使用任何適當的電腦語言,使用例如習知或物件導向技術來執行,該等電腦語言諸如例如Java、C++、或Perl。
軟體代碼可儲存為非暫時性電腦可讀媒體上之一系列指令或命令,該非暫時性電腦可讀媒體諸如隨機存取記憶體(random access memory;RAM)、唯讀記憶體(read only memory;ROM)、磁性媒體諸如硬碟機或軟碟、或光學媒體諸如CD-ROM。任何此種電腦可讀媒體可駐留於單一計算設備上或內且可在系統或網路內之不同計算設備上或內存在。
可理解的是,如上文所述的本發明可以控制邏輯形式使用電腦軟體以模組或整合方式實施。基於本文提供的揭示內容及教示內容,一般技藝人士可知曉且瞭解使用硬體、軟體、或硬體及軟體中之組合實施本發明的其他方式及/或方法。
上文描述係說明性的且不為限制性的。在回顧本揭示內容之後,本發明之許多變化將對熟習此項技術者而言顯而易見。因此,本發明之範疇應不參考上文描述而決定, 但替代地應參考待決申請專利範圍連同其完整範疇或等效物決定。
來自任何實施例之一或多個特徵可與任何其他實施例之一或多個特徵組合而不脫離本發明之範疇。除非明確地指示為相反,否則「一」或「該」之敘述意欲指「一或多個」。除非明確地指示為相反,否則「及/或」之敘述意欲表示術語之最具包括性的意義。
本發明系統之元件中之一或多個可作為用於完成特定功能之手段來主張。在此種手段-加-功能元件用於描述所主張系統之某些元件時,獲得本說明書、圖式及申請專利範圍之一般技藝人士將理解的是,對應結構係經程式化以使用在未特殊程式化的任何通用電腦中找到的功能性及/或藉由實施一或多種演算法來達成所敘述功能性來執行特定敘述功能的通用電腦、處理器、或微處理器(視情況而定)。如一般技藝人士將理解的,演算法可在本揭示內容內表示為數學公式、流程圖、敘說、及/或呈為一般技藝人士提供充分結構來實施所敘述過程及其等效物之任何其他方式。
雖然本揭示內容可以許多不同的表格體現,但圖式及論述係在理解本揭示內容為一或多個發明之原理之例證 的情況下提出且不意欲將本發明之任一者限制於所說明的實施例。
本揭示內容提供對上文所述的長期需要之解決方案。詳言之,本文描述的系統及方法可經組配以改良資料酬載執行系統。上文描述的系統及方法之其他優點及修改將易於由熟習此項技術者思及。因此在本揭示內容之較廣態樣中,本揭示內容不限於特定細節、代表性系統及方法、及上文所示及所述的說明性實例。在不脫離本揭示內容之範疇或精神的情況下,可對上文說明書做出各種修改及變化,且本揭示內容意欲覆蓋所有的此種修改及變化,前提是該等修改及變化落入以下申請專利範圍及其等效物之範疇內。
Claims (20)
- 一種電腦化方法,係用於產生複數個表示用於儲存在非暫時性電腦可讀媒體上之元合併索引的資料欄位,前述電腦化方法包含以下步驟:藉由電腦可執行處理器識別用於複數個資料集中之至少兩個資料集的合併操作指令;在不對前述至少兩個資料集執行前述合併操作指令的情況下,藉由前述電腦可執行處理器回應於前述經識別合併操作指令創建元合併索引,前述創建前述元合併索引包含:藉由前述電腦可執行處理器過濾藉由在前述合併操作指令中之參數識別的前述至少兩個資料集中之一者中的記錄值;藉由前述電腦可執行處理器構造第一列值位元映象索引,其儲存對應於藉由前述參數識別的前述至少兩個資料集之一者中的前述經過濾記錄值的索引識別符;藉由前述電腦可執行處理器構造第二列值位元映象索引,其儲存對應於藉由前述參數識別的前述至少兩個資料集之另一者中的前述經過濾記錄值的索引識別符;藉由前述電腦可執行處理器,藉由將前述至少兩個資料集基於在前述至少兩個資料集中找到的共同合併-關鍵字關聯來產生前述元合併索引; 以及藉由前述電腦可執行處理器對前述經創建元合併索引執行前述合併操作指令。
- 如請求項1所記載之電腦化方法,其中前述共同合併-關鍵字包含局部唯一識別符(LUID)。
- 如請求項1所記載之電腦化方法,其中前述元合併索引包含資料結構,其具有用於識別前述共同合併-關鍵字之資料欄位及複數個各自用於儲存索引值之資料欄位。
- 如請求項1所記載之電腦化方法,其中創建前述元合併索引包含創建前述元合併索引而不分類前述至少兩個資料集。
- 如請求項1所記載之電腦化方法,其中創建前述元合併索引包含創建前述元合併索引而不創建用於前述至少兩個資料集之臨時表格。
- 如請求項1所記載之電腦化方法,其中創建前述元合併索引包含創建前述元合併索引而不進行對前述至少兩個資料集之檔案尋覓操作。
- 一種電腦化系統,係用於產生複數個表示用於儲存在非暫時性電腦可讀媒體上之元合併索引的資料欄位,前述電腦化系統包含:用於儲存資料集之記憶體;可存取前述記憶體之電腦可執行處理器,其經組配用於執行電腦可執行指令以供: 自使用者接收用於合併至少兩個資料集中之資料的資料庫查詢指令;識別用於複數個資料集中之至少兩個資料集之合併操作指令;替代對前述記憶體中之前述至少兩個資料集執行前述合併操作指令,回應於前述經識別合併操作指令創建元合併索引,前述創建前述元合併索引包含:過濾藉由在前述合併操作指令中之參數識別的前述至少兩個資料集中之一者中的記錄值;構造第一列值位元映象索引,其儲存對應於藉由前述參數識別的前述至少兩個資料集之一者中的前述經過濾記錄值的索引識別符;構造第二列值位元映象索引,其儲存對應於藉由前述參數識別的前述至少兩個資料集之另一者中的前述經過濾記錄值的索引識別符;藉由將前述至少兩個資料集基於在前述至少兩個資料集中找到的共同合併-關鍵字關聯來產生前述元合併索引;以及對前述經創建元合併索引執行前述合併操作指令。
- 如請求項7所記載之電腦化系統,其中前述共同合併-關鍵字包含局部唯一識別符(LUID)。
- 如請求項7所記載之電腦化系統,其中前述元合併索引包含表格。
- 如請求項7所記載之電腦化系統,其中前述處理器經組配以創建前述元合併索引包含前述處理器經組配以創建前述元合併索引而不首先分類前述至少兩個資料集。
- 如請求項7所記載之電腦化系統,其中前述處理器經組配以創建前述元合併索引包含前述處理器經組配以創建前述元合併索引而不創建用於前述至少兩個資料集之臨時表格。
- 如請求項7所記載之電腦化系統,其中前述處理器經組配以創建前述元合併索引包含前述處理器經組配以創建前述元合併索引而不對前述至少兩個資料集執行檔案尋覓操作。
- 一種電腦化系統,係用於產生複數個表示用於儲存在非暫時性電腦可讀媒體上之元分組的索引的資料欄位,前述電腦化系統包含:用於儲存資料集之記憶體;可存取前述記憶體之電腦可執行處理器,其經組配用於執行電腦可執行指令以供:接收用於分組至少兩個資料集中之資料的資料庫查詢指令;識別前述所接收資料庫查詢指令中用於分組前述至少兩個資料集中之資料值的分組條件; 替代對前述記憶體中之前述至少兩個資料集執行前述分組條件,回應於前述經識別分組條件創建元分組的索引,前述創建前述元分組的索引包含:識別用於前述至少兩個資料集之合併操作指令;過濾藉由在前述合併操作指令中之參數識別的前述至少兩個資料集中之一者中的記錄值;構造第一列值位元映象索引,其儲存對應於藉由前述經識別參數識別的前述至少兩個資料集之一者中的前述記錄值的索引識別符;構造第二列值位元映象索引,其儲存對應於藉由前述經識別參數識別的前述至少兩個資料集之另一者中的前述記錄值的索引識別符;以及藉由前述電腦可執行處理器對前述經創建元分組的索引執行前述分組條件。
- 如請求項13所記載之電腦化系統,其中前述處理器經進一步組配以在構造前述第二列值位元映象索引之後執行以下電腦可執行指令:藉由將前述至少兩個資料集基於在前述至少兩個資料集中找到的共同合併-關鍵字關聯來構造元合併索引;以及將前述元合併索引與前述第一列值位元映像索引及前述第二列值位元映像索引關聯。
- 如請求項13所記載之電腦化系統,其中前述處理器經進一步組配以聚合前述元分組的索引中之資料值之實例。
- 如請求項13所記載之電腦化系統,其中前述共同合併-關鍵字包含局部唯一識別符(LUID)。
- 如請求項13所記載之電腦化系統,其中前述元合併索引包含表格。
- 如請求項13所記載之電腦化系統,其中前述處理器經組配以創建前述元合併索引包含前述處理器經組配以創建前述元合併索引而不首先分類前述至少兩個資料集。
- 如請求項13所記載之電腦化系統,其中前述處理器經組配以創建前述元合併索引包含前述處理器經組配以創建前述元合併索引而不創建用於前述至少兩個資料集之臨時表格。
- 如請求項13所記載之電腦化系統,其中前述處理器經組配以創建前述元合併索引包含前述處理器經組配以創建前述元合併索引而不對前述至少兩個資料集執行檔案尋覓操作。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662438997P | 2016-12-23 | 2016-12-23 | |
US62/438,997 | 2016-12-23 | ||
US15/409,990 US10657126B2 (en) | 2016-12-23 | 2017-01-19 | Meta-join and meta-group-by indexes for big data |
US15/409,990 | 2017-01-19 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201837750A true TW201837750A (zh) | 2018-10-16 |
TWI677795B TWI677795B (zh) | 2019-11-21 |
Family
ID=62627416
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW106145557A TWI677795B (zh) | 2016-12-23 | 2017-12-25 | 電腦化方法及使用元合併及/或元分組的索引的電腦化系統 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10657126B2 (zh) |
EP (1) | EP3559797A4 (zh) |
TW (1) | TWI677795B (zh) |
WO (1) | WO2018119478A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11481799B2 (en) | 2018-12-31 | 2022-10-25 | Kinesso, LLC | Out-of-home campaign intelligence |
US11960488B2 (en) * | 2021-05-24 | 2024-04-16 | Molecula Corp. | Join queries in data virtualization-based architecture |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0437615B1 (en) | 1989-06-14 | 1998-10-21 | Hitachi, Ltd. | Hierarchical presearch-type document retrieval method, apparatus therefor, and magnetic disc device for this apparatus |
US5408654A (en) | 1992-05-27 | 1995-04-18 | Cdb Software, Inc. | Method to reorganize an index file without sorting by changing the physical order of pages to match the logical order determined from the index structure |
US5903888A (en) * | 1997-02-28 | 1999-05-11 | Oracle Corporation | Method and apparatus for using incompatible types of indexes to process a single query |
US5848408A (en) * | 1997-02-28 | 1998-12-08 | Oracle Corporation | Method for executing star queries |
US5899988A (en) * | 1997-02-28 | 1999-05-04 | Oracle Corporation | Bitmapped indexing with high granularity locking |
US6112209A (en) | 1998-06-17 | 2000-08-29 | Gusack; Mark David | Associative database model for electronic-based informational assemblies |
EP1277138B1 (en) | 2000-04-04 | 2018-10-17 | Red Hat, Inc. | A system and method for accessing data in disparate information sources |
WO2002019790A2 (en) | 2000-09-07 | 2002-03-14 | Briere Daniel D | Marketing collateral repository and supporting data management and communication environment |
US7158996B2 (en) * | 2003-01-27 | 2007-01-02 | International Business Machines Corporation | Method, system, and program for managing database operations with respect to a database table |
US20080077570A1 (en) | 2004-10-25 | 2008-03-27 | Infovell, Inc. | Full Text Query and Search Systems and Method of Use |
KR101595637B1 (ko) * | 2011-04-01 | 2016-02-18 | 인텔 코포레이션 | 벡터 친숙형 명령어 형식 및 그의 실행 |
US8516008B1 (en) * | 2012-05-18 | 2013-08-20 | Splunk Inc. | Flexible schema column store |
-
2017
- 2017-01-19 US US15/409,990 patent/US10657126B2/en active Active
- 2017-12-24 EP EP17884343.9A patent/EP3559797A4/en not_active Ceased
- 2017-12-24 WO PCT/US2017/068382 patent/WO2018119478A1/en unknown
- 2017-12-25 TW TW106145557A patent/TWI677795B/zh active
Also Published As
Publication number | Publication date |
---|---|
EP3559797A4 (en) | 2020-05-06 |
TWI677795B (zh) | 2019-11-21 |
WO2018119478A1 (en) | 2018-06-28 |
US20180181616A1 (en) | 2018-06-28 |
EP3559797A1 (en) | 2019-10-30 |
US10657126B2 (en) | 2020-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10685071B2 (en) | Methods, systems, and computer program products for storing graph-oriented data on a column-oriented database | |
JP6553649B2 (ja) | クラスタリング記憶方法および装置 | |
Gao et al. | Answering why-not questions on reverse top-k queries | |
Ribeiro et al. | Data modeling and data analytics: a survey from a big data perspective | |
US20150227521A1 (en) | System and method for analysis and management of data distribution in a distributed database environment | |
US20150006509A1 (en) | Incremental maintenance of range-partitioned statistics for query optimization | |
US20240126817A1 (en) | Graph data query | |
TW201415262A (zh) | 基於Lucene的倒排索引系統構建、資料處理方法及裝置 | |
Xiao et al. | SWEclat: a frequent itemset mining algorithm over streaming data using Spark Streaming | |
US10366081B2 (en) | Declarative partitioning for data collection queries | |
Sogodekar et al. | Big data analytics: hadoop and tools | |
TWI677795B (zh) | 電腦化方法及使用元合併及/或元分組的索引的電腦化系統 | |
US20190050672A1 (en) | INCREMENTAL AUTOMATIC UPDATE OF RANKED NEIGHBOR LISTS BASED ON k-th NEAREST NEIGHBORS | |
US20180285693A1 (en) | Incremental update of a neighbor graph via an orthogonal transform based indexing | |
Jain et al. | Using Mahout for clustering similar Twitter users: Performance evaluation of k-means and its comparison with fuzzy k-means | |
US10229186B1 (en) | Data set discovery engine comprising relativistic retriever | |
CN107430633B (zh) | 用于数据存储的系统及方法和计算机可读介质 | |
Cuzzocrea | Warehousing and protecting big data: state-of-the-art-analysis, methodologies, future challenges | |
Milo et al. | An efficient MapReduce cube algorithm for varied DataDistributions | |
Jain et al. | Categorizing Twitter Users on the basis of their interests using Hadoop/Mahout Platform | |
US11822582B2 (en) | Metadata clustering | |
NR et al. | MapReduce‐based storage and indexing for big health data | |
Gilheany | Processing time of TFIDF and Naive Bayes on Spark 2.0, Hadoop 2.6 and Hadoop 2.7: Which Tool Is More Efficient? | |
Rousidis et al. | Examination of NoSQL transition and data mining capabilities | |
US11500933B2 (en) | Techniques to generate and store graph models from structured and unstructured data in a cloud-based graph database system |