我正在通过ambari使用azure hdinsights、azure data lake和hive。
我正在设置一个测试环境。原始环境的数据存储在azuredatalake上,以通过hive加载的orc文件的形式。我通过数据工厂成功地将原始数据湖中的所有数据复制到测试数据湖中。
当我尝试在测试环境中创建配置单元orc表,然后查询它们时,不会返回任何记录。各个数据湖上的模式/文件夹位置是相同的,我是否缺少与metastore相关的内容,因为它在测试中是不同的?
edit:我想补充一点,我使用polybase在sqldatawarehouse中为测试环境的数据湖设置了一个外部表,它能够很好地读取数据。
1条答案
按热度按时间ukdjmx9f1#
正如chemikadze提到的
MSCK REPAIR TABLE <your-table>
修好了。我的表是分区的,所以metastore不知道在某些子文件夹中查找数据。下面的模式现在可以帮助我完成环境复制:
创建数据工厂管道以从dev->test复制数据湖文件夹。
在测试环境上运行配置单元ddl。
对在测试环境中创建的每个分区表运行repair table命令。