通过Impala分区跟踪时间差异

时间:2017-08-31 16:10:16

标签: hadoop hive cloudera data-warehouse impala

按日期划分是否可以成为跟踪大数据环境中数据时间差异的可行方法?我希望能够实现类似于RDBMS中缓慢变化的维度的概念。让我们假设以下场景保持简单:

方案

我有一个hadoop集群,我们的数据驻留在hdfs中,目前在.csv文件中。我还想使用Apache Impala作为查询引擎。 我们有一些这样的客户数据:

  

Nr。,性别,标题,名字,姓名,生日,街道,PLZ,城市,电话
  1,Frau,Dr。,Jenny,Hutch,23.03.1924,Abcstr。 79,97230,Duggenfeld,093/38700

每天,新数据将通过.csv到达(让我们每天都说新的完整版客户数据已经发布)。新数据必须集成到我们的存储系统中。

计划

我的想法是,我可以通过交付的时间戳来丰富客户数据:

  

Nr。,性别,标题,名字,姓名,生日,街道,PLZ,城市,电话, deliverydate
  1,Frau,Dr。,Jenny,Hutch,23.03.1924,Abcstr。 79,97230,Duggenfeld,093/38700, 20170814

然后,在创建相应的impala表时,我只会使用传递的时间戳来对表进行分区。 从理论上讲,这将为我们提供我们可以在未来查询的数据的每日完整快照 这不会创建与我们有效时间跨度的SCD2中相同的表结构,但通过查询不同的日期,我们可以看到,例如,名称发生了变化。

你认为这是一个很好的分区使用,还是我的思想中有一个我现在看不到的缺陷?
 未来可能还会有交付,每天出现的新数据只是变化/新值的增量。这可以通过将来自最后一天的数据的新数据加入到发现变更和新条目来处理。

我已经在这里阅读了一些有趣的帖子:

我还看过Cloudera的 EDW 101 for Hadoop Professionals 网络研讨会,但是他们没有提到partitiong作为处理时间差异的方法。
我对hadoop和Impala的实践经验很少,所以我很感激每一个答案。

0 个答案:

没有答案