海量資料處理面試題

2022-06-21 23:57:08 字數 643 閱讀 1389

什麼是海量資料處理?

所謂海量資料處理,無非就是基於海量資料上的儲存、處理、操作。何謂海量,就是資料量太大,所以導致要麼是無法在較短時間內迅速解決,要麼是資料太大,導致無法一次性裝入記憶體。

那解決辦法呢?針對時間,我們可以採用巧妙的演算法搭配合適的資料結構,如bloom filter/hash/bit-map/堆/資料庫或倒排索引/trie樹,針對空間,無非就乙個辦法:大而化小,分而治之(hash對映),你不是說規模太大嘛,那簡單啊,就把規模大化為規模小的,各個擊破不就完了嘛。

至於所謂的單機及集群問題,通俗點來講,單機就是處理裝載資料的機器有限(只要考慮cpu,記憶體,硬碟的資料互動),而集群,機器有多輛,適合分布式處理,平行計算(更多考慮節點和節點間的資料互動)。

再者,通過本blog內的有關海量資料處理的文章:big data processing,我們已經大致知道,處理海量資料問題,無非就是:

分而治之/hash對映 + hash統計 + 堆/快速/歸併排序;

雙層桶劃分;

bloom filter/bitmap;

trie樹/資料庫/倒排索引;

外排序;

分布式處理之hadoop/mapreduce。

**v_july_v

海量資料處理面試題

海量資料處理面試題

海量資料處理思路分析題 1.給乙個超過100g大小的log file,log中存著ip位址,設計演算法找到出現次數最多的ip位址?解決方法 雜湊切割topk。將100g的大檔案分成1000份,根據同乙個雜湊函式hashfunc將ip對映到向對應的檔案 每個檔案的大小可以在記憶體中處理 中,相同的ip...

海量資料處理之面試題

給定a b兩個檔案,各存放50億個url,每個url各佔64位元組,記憶體限制是4g,讓你找出a b檔案共同的url?方案1 可以估計每個檔案安的大小為50g 64 320g,遠遠大於記憶體限制的4g。所以不可能將其完全載入到記憶體中處理。考慮採取分而治之的方法。遍歷檔案a,對每個url求取,然後根...

面試題 海量資料處理題

問題一 給你a,b兩個檔案,各存放50億條url,每條url占用64位元組,記憶體限制是4g,讓你找出a,b檔案共同的url。如果是三個乃至n個檔案呢?方案 先算一下4g有多少位 bit 4g 2 32 8 bit 320億 bit,n才50億,可以用位圖法。將其中乙個檔案中的url使用bloom ...