mapreduce有哪些缺点?

Dil*_*anG 10 hadoop mapreduce

mapreduce有哪些缺点?mapreduce有很多优点.但我也想知道mapreduce的缺点.

Tar*_*riq 14

我想宁愿问mapreduce不是一个合适的选择吗?如果您按预期使用它,我认为您不会看到任何不利之处.话虽如此,有些情况下mapreduce不是一个合适的选择:

  • 实时处理.
  • 作为MR程序实现每个和所有内容并不总是很容易.
  • 当您的中间流程需要相互通信时(工作单独运行).
  • 当您的处理需要大量数据通过网络进行洗牌时.
  • 当您需要处理流数据时.MR最适合批量处理您已经拥有的大量数据.
  • 当您可以使用独立系统获得所需结果时.与分布式系统相比,配置和管理独立系统显然不那么痛苦.
  • 当你有OLTP需求时.MR不适合大量的短线上交易.

可能还有其他一些案例.但重要的是你使用它有多好.例如,您不能指望MR作业在几毫秒内给出结果.你不能把它算作它的劣势.只是你在错误的地方使用它.它适用于任何技术,恕我直言.长话短说,在你行动之前好好想想.

如果你还想要,你可以把以上几点作为mapreduce的缺点:)

HTH


sri*_*era 5

以下是一些 MapReduce 不能很好工作的用例。

  1. 当您需要快速响应时。例如说 < 几秒钟(改用流处理、CEP 等)
  2. 处理图表
  3. 复杂算法,例如一些机器学习算法,如 SVM,以及 13 drawfs (The Landscape of Parallel Computing Research: A View From Berkeley)
  4. 迭代 - 当您需要一次又一次地处理数据时。例如 KMeans - 使用 Spark
  5. 当映射阶段生成太多键时。然后排序需要永远。
  6. 加入具有复杂条件的两个大型数据集(可以通过散列等处理相等的情况)
  7. 有状态的操作——例如评估一个一个接一个的状态机级联任务——使用 Hive,Big 可能会有所帮助,但重读和解析数据的开销很大。