Apache spark 是否可以在不将tar.gz文件带到本地系统的情况下,在HDFS上解压tar.gz文件并将其放在不同的HDFS文件夹中

Apache spark 是否可以在不将tar.gz文件带到本地系统的情况下,在HDFS上解压tar.gz文件并将其放在不同的HDFS文件夹中,apache-spark,unix,hadoop,hdfs,Apache Spark,Unix,Hadoop,Hdfs,我有employee_mumbai.tar.gz文件,我有name.json和salary.json。 tar.gz位于HDFS位置。是否可以解压gzip文件并将json文件放在HFDS文件夹中,而无需将其带到本地文件系统。 注: 请记住,它不是一个文本文件,并且都是json文件的唯一信息 请告诉我是否可以在spark中直接在不同的数据帧中分别读取这两个文件。这对我很有用: hdfs dfs -cat /data/<data.gz> | gzip -d | hdfs dfs -put

我有employee_mumbai.tar.gz文件,我有name.json和salary.json。 tar.gz位于HDFS位置。是否可以解压gzip文件并将json文件放在HFDS文件夹中,而无需将其带到本地文件系统。 注: 请记住,它不是一个文本文件,并且都是json文件的唯一信息

请告诉我是否可以在spark中直接在不同的数据帧中分别读取这两个文件。

这对我很有用:

hdfs dfs -cat /data/<data.gz> | gzip -d | hdfs dfs -put - /data/ 
hdfs-dfs-cat/data/| gzip-d | hdfs-put-/data/

这仍然会在本地下载整个文件,这就是为什么我们不能使用文本文件或JSON文件,如果GZ文件只包含一个JSON文件(如a.JSON),而在本例中tar.GZ包含两个不同的JSON文件,则更多内容只能用于文本文件或JSON文件。A.json和B.jsonLast我检查过了,Spark应该能够读取targz文件中的json如果它是一个文本文件,如果GZ压缩中只有一个文件,那么这将起作用,但在我的例子中是在Tar.GZ中✓我有a.json和b.json。我是通过JavaNo实现的。Spark可以读取归档文件中的所有文件这能回答你的问题吗?