Hive:将 gzip 压缩的 CSV 从 hdfs 作为只读加载到 table
Hive: load gziped CSV from hdfs as read-only into a table
我有一个 hdfs 文件夹,里面有很多 csv.gz,都具有相同的架构。我的客户需要通过 Hive 读取这些 table 的内容。
我尝试申请 https://cwiki.apache.org/confluence/display/Hive/CompressedStorage 。但是它移动了文件,而我需要它保留在其初始目录中。
另一个问题是我应该一个一个地加载每个文件,我宁愿从目录创建一个 table 而不是单独管理文件。
我完全不掌握 Hive。他的可能吗?
是的,这可以通过 Hive
实现。您可以创建外部 table 并引用包含 gzip
文件的现有 HDFS
位置。应在 table 创建期间指定数据架构。
hive> CREATE EXTERNAL TABLE my_data
(
column_1 int,
column_2 string
)
LOCATION 'hdfs:///my_data_folder_with_gzip_files';
我有一个 hdfs 文件夹,里面有很多 csv.gz,都具有相同的架构。我的客户需要通过 Hive 读取这些 table 的内容。
我尝试申请 https://cwiki.apache.org/confluence/display/Hive/CompressedStorage 。但是它移动了文件,而我需要它保留在其初始目录中。
另一个问题是我应该一个一个地加载每个文件,我宁愿从目录创建一个 table 而不是单独管理文件。
我完全不掌握 Hive。他的可能吗?
是的,这可以通过 Hive
实现。您可以创建外部 table 并引用包含 gzip
文件的现有 HDFS
位置。应在 table 创建期间指定数据架构。
hive> CREATE EXTERNAL TABLE my_data
(
column_1 int,
column_2 string
)
LOCATION 'hdfs:///my_data_folder_with_gzip_files';