繁体   English   中英

使用Scala / Python将大量SQL表中的产品数据合并并提取到Hadoop键值存储中

[英]Merge and extract product data from numerous SQL tables to Hadoop key-value store with Scala / Python

在以下任务上需要建议:从大量SQL表中合并和提取产品数据。 这些表中的记录包含产品ID和该产品的不同属性。 结果数据应存储在HDFS表中,其中任何给定记录都代表与给定产品相关的所有属性。 结果记录可能具有可变数量的属性。 例如:

Input SQL records:
    Table 1
        Rec 1: |ProdId|x11|x12|x13|...|x1N|
        Rec 2: |ProdId|x21|x22|x23|...|x2N|
        ....
        Rec M: |ProdId|xM1|xM2|xM3|...|xMN|

    Table 2
        Rec 1: |ProdId|y11|y12|y13|...|y1K|
        Rec 2: |ProdId|y21|y22|y23|...|y2K|
        ....
        Rec L: |ProdId|yL1|yL2|yL3|...|xLK|
    ....
    ....
    ....
    Table Z
        Rec 1: |ProdId|z11|z12|z13|...|z1Q|
        Rec 2: |ProdId|z21|z22|z23|...|z2Q|
        ....
        Rec P: |ProdId|zL1|zL2|zL3|...|zPQ|

Output HDFS Table:
        Rec 1: |ProdId|x11|x12|x13|...|x1N|y11|y12|y13|...|y1K|z11|z12|z13|...|z1Q|
        Rec 2: |ProdId|x21|x22|x23|...|x2N|y21|y22|y23|...|y2K|z21|z22|z23|...|z2Q|
        ....
        Rec R: |ProdId|xI1|xI2|xI3|...|xMN|yJ1|yJ2|yJ3|...|xLK|zF1|zF2|zF3|...|zFQ|

结果记录应具有命名字段并存储在HDFS中,因此可以轻松地用Scala / Java / Python编写的map / reduce作业使用。

我是Hadoop的新手,可能是错误的。 在我看来,使用Hive进行此任务显得有些尴尬。 Map-reduce很好用,但是我看不到如何使用勺将输入的SQL数据导入到具有命名字段的其他Hive表中。 有什么方法可以将SQL表导出到HBASE,该表将自动重建字段名称? 是否有其他适合支持命名字段的任务的键值存储? 理想情况下,将是找到可以在Scala或Python中完成此工作的框架。

AFAIK,此任务通常由独家工具执行。 它打算从cmd中使用 ,但是用Scala扩展它是完全可能的,因为它是用Java编写的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM