如何为hbase表导出ddl?我想导出ddl并在另一个环境中使用它来重新创建表。 谢谢
答案 0 :(得分:2)
hbase外壳
hbase> snapshot 'myTable', 'myTableSnapshot-122112'
hbase> list_snapshots
hbase org.apache.hadoop.hbase.snapshot.ExportSnapshot -snapshot 从复制 hdfs:// {from_cluster_namenode:port} / hbase / data /-复制到 hdfs:// {to_cluster_namenode:port} / hbase / data / -mappers 16
这将触发MR作业来传输快照。
hbase> hbase shell hbase> list_snapshots
hbase> restore_snapshot'snapshotName'
答案 1 :(得分:1)
据我对您的要求的了解,您正在寻找与RBDMS(例如oracle)相似的东西。
在这种情况下,仅导出表结构没有多大意义 在HBase情况下,因为HBase表可以包含非结构化数据。 我的意思是,列限定符(与Oracle列等效)的数量不是 固定。
如果要使用给定的列族和其他参数(如复制因子)创建表,则可以在hbase shell中使用以下命令。
describe TABLE_NAME
这将为您提供必需的信息,您可以从中使用给定的列族等在任何hbase实例上创建表。