Skip to content

Latest commit

 

History

History
33 lines (19 loc) · 1.02 KB

1_概述.md

File metadata and controls

33 lines (19 loc) · 1.02 KB

概述

海量数据处理是指基于海量数据的存储、处理、和操作。

正因为数据量太大,所以导致要么无法在较短时间内迅速解决,要么无法一次性装入内存。

  • 对于时间问题,可以采用巧妙的算法搭配合适的数据结构(如布隆过滤器、哈希、位图、堆、 数据库、倒排索引、Trie 树)来解决;
  • 对于空间问题,可以采取分而治之(哈希映射)的方法,也就是说,把规模大的数据转化为规模小的,从而各个击破。

此外,针对常说的单机及集群问题:

  • 单机就是指处理装载数据的机器有限(只要考虑 CPU、 内存、和硬盘之间的数据交互)
  • 集群的意思是指机器有多台,适合分布式处理或并行计算,更多考虑节点与节点之间的数据交互。

处理海量数据问题,有 10 种典型方法:

  • 哈希分治

  • simhash 算法

  • 外排序

  • MapReduce

  • 多层划分

  • 位图

  • 布隆过滤器

  • Trie 树

  • 数据库

  • 倒排索引