hadoop - 沙发数据库/沙发基地 : Can you derive a Kimball SCD scheme via a MapReduce view?

标签 hadoop mapreduce couchdb cloudant

假设您在 CouchDB 中有一个类似日志的文档集合,如 JSON 文档和属性的表格表示(每行是一个 JSON 文档,每列是一个属性):

PRODUCT_ID START_DATE PRICE
0000000001 2016-01-01 100.00
0000000002 2016-01-01 100.00
0000000003 2016-01-01 100.00
0000000001 2016-01-02 100.00
0000000002 2016-01-02 200.00
0000000003 2016-01-02 100.00
0000000001 2016-01-03 100.00
0000000002 2016-01-03 200.00
0000000003 2016-01-03 100.00

是否可以通过 MapReduce View 生成一个实现 Ralph Kimball 的模式?的渐变维度概念?

例如:

PRODUCT_ID START_DATE PRICE  END_DATE
0000000001 2016-01-01 100.00 2999-12-31
0000000002 2016-01-01 100.00 2016-01-02
0000000003 2016-01-01 100.00 2999-12-31
0000000002 2016-01-02 200.00 2999-12-31

我正在使用 Cloudant,它比基本的 CouchDB 有一些增强。

相关(更广泛)的问题:Data warehousing principles and NoSQL

最佳答案

在 CouchDB 中,/database/_all_docs View 按 id 排序。如果您可以容忍将 View 结果按所需结果分为两行,那么这只是 CouchDB 中的默认设置。

对于您的应用程序来说,将两行合并为一行应该很容易。

如果您需要对文档值进行更多计算,您可以创建一个以相同方式工作的自定义 View ,使用 emit(doc._id) 作为您的键:http://docs.couchdb.org/en/2.0.0/couchapp/views/intro.html

关于hadoop - 沙发数据库/沙发基地 : Can you derive a Kimball SCD scheme via a MapReduce view?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41315864/

相关文章:

serialization - 如何将复杂对象存入hadoop Hbase?

hadoop - 无法在 Cygwin(Windows 10)上的 Apache Hive 3.0.0 中初始化 HiveServer2 的架构

security - 我在 Cloudant 上存储用户私有(private)数据的方法是否安全?

couchdb - 如何确定 CouchDB 中当前的活跃用户?

docker - 在 Marathon 和 Mesos 旁边运行 Hadoop

hadoop - 无法通过凤凰连接到HBase

Hadoop Map-reduce编程语法错误

Hadoop Map-Reduce : what you can tell about a state: mappers: 80%, reducer :20%

mongodb - 具有自由许可的可嵌入开源键值存储

encryption - CouchDB 使用什么加密机制?