互聯網的出現使人們第一次能夠訪問大量的數據。比如,社交網絡Facebook中的友誼圖和互聯網網站之間的鏈接圖。這兩幅圖都包含超過10億個節(jié)點,代表巨大的數據集。如果要使用這些數據集,就必須對其進行處理和分析。然而,僅僅是它們的大小就使得這種處理非常具有挑戰(zhàn)性。特別是,為處理中等規(guī)模的數據集而開發(fā)的經典算法和技術,在面對如此大的數據集時往往需要超出常規(guī)的時間和空間。此外,在某些情況下,存儲整個數據集甚至是不可行的,因此,必須在數據集的各個部分對其進行處理,然后很快丟棄每部分。上述挑戰(zhàn)推動了加工處理“大數據”(海量數據)的新工具和新技術的發(fā)展。在本書中,我們對這項工作采取了計算機科學理論的觀點。特別是,我們將研究旨在捕捉“大數據”計算帶來的挑戰(zhàn)的計算模型,以及為應對這些挑戰(zhàn)而開發(fā)的實際解決方案的特性。我們將通過調查一些經典的算法結果,包括許多最先進的結果,來了解這些計算模型中的每一個模型。本書的設計有兩個相互矛盾的目標,如下所示:(1)試圖在大數據背景下,給出計算機科學理論工作的一個大概的工作原理。(2)力求做到有足夠的細節(jié),使讀者能夠參與所涵蓋主題的研究工作。