Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark 在HDP 3.1中插入覆盖操作后保留旧数据文件的配置单元外部表_Apache Spark_Hive_Hdp - Fatal编程技术网

Apache spark 在HDP 3.1中插入覆盖操作后保留旧数据文件的配置单元外部表

Apache spark 在HDP 3.1中插入覆盖操作后保留旧数据文件的配置单元外部表,apache-spark,hive,hdp,Apache Spark,Hive,Hdp,我正在配置单元(HDP3.1)中执行插入覆盖操作。问题是,它不断添加基本文件和增量文件,其中基本文件包含新插入的数据,增量包含覆盖操作之前的旧数据 在Hive上查询只为我提供了新添加的数据,但当涉及到spark时,它倾向于从驻留在HDFS位置的delta和base文件中输出新旧数据 我需要找到以下问题的解决方案- 1) 是否有任何方法不允许配置单元在使用插入覆盖操作(任何设置)时首先存储增量文件 2) spark为什么要提取旧数据?它是否总是在内部引用表格位置?如何阻止它读取增量文件 注意:我们

我正在配置单元(HDP3.1)中执行插入覆盖操作。问题是,它不断添加基本文件和增量文件,其中基本文件包含新插入的数据,增量包含覆盖操作之前的旧数据

在Hive上查询只为我提供了新添加的数据,但当涉及到spark时,它倾向于从驻留在HDFS位置的delta和base文件中输出新旧数据

我需要找到以下问题的解决方案-

1) 是否有任何方法不允许配置单元在使用插入覆盖操作(任何设置)时首先存储增量文件

2) spark为什么要提取旧数据?它是否总是在内部引用表格位置?如何阻止它读取增量文件

注意:我们的管理员已将配置单元仓库连接器配置为从配置单元中的任何数据库读取数据,如HDP文档中所述。在将数据读入spark之前,我不想使用hadoop fs-rm-r文件手动删除这些文件。有人能提供一些建议吗


谢谢。

覆盖在外部表的情况下不起作用,因为它涉及完全删除以前的数据,这与外部表的“删除元数据但保留数据”属性不一致。直接调用hadoop rm来删除prev.data没有什么错,但是在插入之前必须这样做,并且应该调用“msck repair table”刚好在…之后it@Akshay请共享您正在尝试的查询我可以帮助您覆盖在外部表的情况下不起作用,因为它涉及完全删除以前的数据,这与外部表的“删除元数据但保留数据”属性不一致。直接调用hadoop rm来删除prev.data没有什么错,但是您必须在插入之前这样做,并且应该在插入之后立即调用“msck repair table”it@Akshay请分享你正在尝试的问题,我可以帮你