如何从本地机器的 AWS S3 存储桶创建 Hive 表?

问题描述

我正在尝试从 S3 位置创建 hive 表,但出现错误。这是我的查询

hive> create external table if not exists external_sales(invoice_id string,branch string,customer_type string,gender string,product_category string,price int,quantity int,tax float,total float,purchase_date string,ptime string,payment_mode string,cogs float,gross_margin_p float,gross_income float,rating float)
location's3n://rawdata831547/csv_data/supermarket_sales.csv'
tblproperties ("skip.header.line.count"="1");

错误 -

方案“s3n”没有文件系统

也试过S3a://s3n:// 提前致谢!

解决方法

看起来像这个错误:HIVE-13996

尝试将 hadoop 库路径添加到 HADOOP_CLASSPATH(在运行 hive 之前在 shell 中):

export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$HADOOP_HOME/share/hadoop/tools/lib/*

您可以使用以下命令检查 hadoop 类路径:

bin/hadoop classpath