12

Hadoop的新手。从概念上讲,它很容易理解,然而,真正的挑战之一是如何对要在 map-reduce 架构中解决的问题进行建模。假设我的数据包含两部分(全部在 oracle 中): 1. 变化不大的静态数据 2. 每天收集的新鲜数据。

而目前的数据处理基本上是读取新鲜数据,找到并使用相应的静态数据(或元数据)并对其应用一些算法并将其转储回Oracle。

我如何为这样的应用程序范式建模?我是否将静态数据保存/存储为分布式缓存的一部分?如果数据很大怎么办?

基本上我正在寻找更多如下示例: http ://stevekrenzel.com/finding-friends-with-mapreduce

谢谢,

4

3 回答 3

4

基本上要求是对两个数据集进行连接。MapReduce 编程需要与普通编程不同的思维方式。以下是 MapReduce 之上的一些 join 参考和其他一些模式

  1. 使用 MapReduce 进行数据密集型文本处理

  2. MapReduce 设计模式

  3. Hadoop中的第 8.3 节- 权威指南

回来加入,它可以根据数据量和数据的方式有多种方式。上述参考文献有更多相同之处。

于 2013-01-26T12:18:19.787 回答
2

我们在这里收集现实生活中的用例:http: //hadoopilluminated.com/hadoop_book/Hadoop_Use_Cases.html

我们已经很好地覆盖了多个域,并将继续添加。

(免责声明:我是这本免费 hadoop 书的合著者)

于 2013-03-11T05:59:32.200 回答
1

我会看下面关于 Map/Reduce 模式的文章,它应该让您对常见算法及其在 Map/Reduce 世界中的翻译有一个很好的了解。

更一般地说,我不认为有一个神奇的公式可以将问题转换为一组 Map/Reduce,你必须问自己不同数据集的问题,查看现有示例是一件好事,你绝对应该尝试在一个小玩具问题上实现一些东西。

此外,如果您在将问题抽象为一组 Map/Reduce 作业时遇到问题,您还可以使用例如 Hive,它像一个经过一些调整的关系数据库一样工作,并为您生成 Map/Reduce 作业,而不必担心太多怎么了。

于 2013-01-25T20:34:42.337 回答