【发布时间】:2017-02-16 15:19:42
【问题描述】:
我对 Hadoop MapReduce/Spark 非常陌生,对于我的目标项目,我想使用 Hadoop MapReduce/Spark 执行数据预处理。我知道 Hadoop MapReduce 的基础知识,但我不知道如何使用这个框架实现预处理算法/方法。对于 Hadoop MapReduce,我必须定义 Map() 和 Reduce() 将 <key, value> 对作为从 Mappers 到 Reducers 的传输类型。但是对于数据库表,我如何处理<key, value> 格式的表条目?应用主键作为键似乎是无稽之谈。 Spark 的情况类似,因为我需要指定密钥。
例如,对于数据库表中的每个数据条目,某些条目的某些字段可能会丢失,因此我想为那些具有插补策略的字段添加默认值。如何以<key, value> 方式处理数据条目?在这里将主键设置为key 是无稽之谈,因为如果是这种情况,每个<key, value> 对将不会与其他对具有相同的键,因此在这种情况下聚合没有帮助。
【问题讨论】:
标签: hadoop apache-spark mapreduce hadoop-streaming