我错误地从hadoop中删除了数据。我在druid中有这些数据,现在我想将这些数据从druid恢复到hadoop,以避免进一步的数据恢复问题。
sdnqo3pr1#
使用Hive创建一个由现有数据源支持的外部配置单元表,这将为您提供hdfs位置上配置单元中的所有数据。
CREATE EXTERNAL TABLE druid_table_1 STORED BY 'org.apache.hadoop.hive.druid.DruidStorageHandler' TBLPROPERTIES ("druid.datasource" = "<datasource_name>");
如果要将其存储为任何特定格式,还可以将其指定为ddl的“存储为”属性。你可以在这里找到更多关于DruidHive融合的细节:https://cwiki.apache.org/confluence/display/hive/druid+integration使用转储段如果您想转储段的元数据/数据,那么dump segment实用程序在这里很有用。
java org.apache.druid.cli.Main tools dump-segment \ --directory /home/druid/path/to/segment/ \ --out /home/druid/output.txt
更多详情请参见:http://druid.io/docs/latest/operations/dump-segment.html第二种方法适用于单个段,因此如果要转储整个表或多个段,则需要编写一个小脚本在该目录上递归地运行此命令。
gfttwv5a2#
由于您可能有类似的元存储,请尝试在hive中创建cta,从druid中提取数据并将其存储在hadoop位置。
2条答案
按热度按时间sdnqo3pr1#
使用Hive
创建一个由现有数据源支持的外部配置单元表,这将为您提供hdfs位置上配置单元中的所有数据。
如果要将其存储为任何特定格式,还可以将其指定为ddl的“存储为”属性。
你可以在这里找到更多关于DruidHive融合的细节:https://cwiki.apache.org/confluence/display/hive/druid+integration
使用转储段
如果您想转储段的元数据/数据,那么dump segment实用程序在这里很有用。
更多详情请参见:http://druid.io/docs/latest/operations/dump-segment.html
第二种方法适用于单个段,因此如果要转储整个表或多个段,则需要编写一个小脚本在该目录上递归地运行此命令。
gfttwv5a2#
由于您可能有类似的元存储,请尝试在hive中创建cta,从druid中提取数据并将其存储在hadoop位置。