hadoop比较擅长的是数据密集的并行计算。它主要是对不同的数据做相同的事情,最后再整合。
- wordCount ;
- 文档倒排索引;
- PageRank;
- K-Means 算法;
hadoop主要应用于数据量大的离线场景。特征为:
1、数据量大。一般真正线上用Hadoop的,集群规模都在上百台到几千台的机器。这种情况下,T级别的数据也是很小的。Coursera上一门课了有句话觉得很不错:Don’t use hadoop, your data isn’t that big
2、离线。Mapreduce框架下,很难处理实时计算,作业都以日志分析这样的线下作业为主。另外,集群中一般都会有大量作业等待被调度,保证资源充分利用。
3、数据块大。由于HDFS设计的特点,Hadoop适合处理文件块大的文件。大量的小文件使用Hadoop来处理效率会很低。
海量数据、一次写入多次读取、非高实时性要求的场景,都适合用hadoop处理