我試圖將一些數據從Hbase移植到ORC以改善寫入性能。在Hbase中,我的數據總共存儲在10個列中,而不是一個rowkey。現在,當我們使用Hbase時,我們不必擔心這些列的稀疏性。即使在大多數行只有兩列非零值的情況下,也是可以的,因爲Hbase只能存儲2列。存儲稀疏數據使用ORC
我移植數據時的第一個直覺就是將上述列限定符轉換爲與地圖的值關係。但是,這對於檢索來說效率不高。我試圖理解ORC是如何解釋空值的 - 如果我將值存儲爲10個單獨的列而不是地圖會更好嗎?在最壞的情況下,這個矩陣非常稀疏。
你能詳細說明爲什麼你說它處理稀疏數據非常好嗎?我目前正在調查ORC的閱讀量大的用例。我正在寫入ORC的對象都包含一個枚舉值列表。我目前的計劃是將每個枚舉值作爲ORC中的單獨列進行編碼,但有點擔心,因爲我找不到有關它如何處理稀疏數據的任何信息。您可以提供的任何信息都非常有價值。謝謝! –
在下面回答了我的問題。謝謝! –