我正在尝试创建一个Hive外部表Hbase。
下面是我的简单代码:
hive -hiveconf DB_NAME=bdsma -hiveconf TABLE_NAME=RAW_BBPROCESSINGRESOURCE -f Create External table bdsma.RAW_BBPROCESSINGRESOURCE( hbase_key string,pmRohcCidSum FLOAT) ROW FORMAT SERDE "org.apache.hadoop.hive.hbase.HBaseSerDe" STORED BY "org.apache.hadoop.hive.hbase.HBaseStorageHandler" WITH SERDEPROPERTIES '('hbase.columns.mapping'=':key, \tCF:pmRohcCidSum')' TBLPROPERTIES ("COLUMN_STATS_ACCURATE"="false","hbase.mapred.output.outputtable"="RAW_OPS_ODEB", "hbase.table.name"="RAW_OPS_ODEB")
但其显示以下错误:
-bash: syntax error near unexpected token `('
最佳答案
hive -f
需要一个文件,因此创建一个包含您的脚本的文件,那么它将是hive -f script.sql
如果要在CLI上编写该语句,则需要hive -e "CREATE EXTERNAL TABLE bdsma.RAW_BBPROCESSINGRESOURCE( ... ) ..."
。如果使用这种方式,则可以删除两个-hiveconf
,因为您没有使用它。
关于shell - 创建Hive表的Shell脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50912068/