【问题标题】:how to convert a relational database to one Bigtable如何将关系数据库转换为一个 Bigtable
【发布时间】:2013-04-18 15:42:47
【问题描述】:

我想创建一个包含数据库中所有表的所有数据的大表,然后将此表导出到 csv 文件中,然后将此文件导入到 Hbase 中? 我的问题是第一步,即如何从所有数据库表中创建大表? 我会感谢任何帮助。 提前致谢。

【问题讨论】:

  • 只要加入他们,当然假设他们都可以明智地加入......
  • 我有数千张桌子
  • 好吧,除非它们都具有相同的结构,否则您需要退后一步。想想你将如何重新开始,然后看看你如何将现有数据放入其中。

标签: hadoop nosql hbase bigtable sqoop


【解决方案1】:

如果您希望将所有数据转储到 HBase 或 HDFS,您可以使用 sqoop 将所有表和数据传输到 HBase。将所有数据转换为一张大表可能效率不高或不可行。请注意,CLOB/BLOB 数据不能导出到 CVS 文件。

【讨论】:

  • 好点。你可以使用“sqoop import-all-tables”工具来做到这一点。但是你需要记住这些事情:(1)每个表必须有一个单列主键。 (2)您必须打算导入每个表的所有列。 (3)不得使用非默认拆分列,也不得通过 WHERE 子句强加任何条件。
【解决方案2】:

看看sqoop,可能会有帮助。

我们使用它将数据从 RDBMS 存储到 Hive 表中。至于 hive,它可以自动创建具有适当列名和类型的表。 它还需要split_by 选项用于自定义查询,该选项指定如何将数据拆分为块。

【讨论】:

    【解决方案3】:

    你为什么要这样做?编写 MapReduce 作业并将输出注入 HBase 表。

    【讨论】:

      猜你喜欢
      • 2015-11-15
      • 1970-01-01
      • 1970-01-01
      • 2010-10-26
      • 1970-01-01
      • 2022-01-24
      • 1970-01-01
      • 1970-01-01
      • 2010-10-21
      相关资源
      最近更新 更多