我在本地机器上有一个csv,我通过quboleweb控制台访问hive。我试图上传csv作为一个新的表,但无法解决。我尝试了以下方法:
LOAD DATA LOCAL INPATH <path> INTO TABLE <table>;
我得到的错误是 No files matching path file 我猜csv必须在hive实际运行的某个远程服务器上,而不是在我的本地机器上。我看到的解决方案并不能解释如何处理这个问题。有人能帮帮我吗。这个?
No files matching path file
ocebsuys1#
首先,使用csv文件中的字段名在配置单元上创建一个表。您使用的语法似乎正确。使用以下语法创建表
CREATE TABLE foobar(key string, stats map<string, bigint>) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' COLLECTION ITEMS TERMINATED BY '|' MAP KEYS TERMINATED BY ':' ;
然后使用下面的格式加载数据,然后正确地提到路径名
LOAD DATA LOCAL INPATH '/yourfilepath/foobar.csv' INTO TABLE foobar;
2jcobegt2#
qubole允许您在云存储(s3或azure存储)上的数据上定义配置单元外部/托管表-因此从本地框加载不会起作用。您必须将其上载到云存储上,然后针对其定义一个外部表-
CREATE External TABLE orc1ext( `itinid` string, itinid1 string) stored as ORC LOCATION 's3n://mybucket/def.us.qubole.com/warehouse/testing.db/orc1'; INSERT INTO TABLE orc1ext SELECT itinid, itinid FROM default.default_qubole_airline_origin_destination LIMIT 5;
2条答案
按热度按时间ocebsuys1#
首先,使用csv文件中的字段名在配置单元上创建一个表。您使用的语法似乎正确。使用以下语法创建表
然后使用下面的格式加载数据,然后正确地提到路径名
2jcobegt2#
qubole允许您在云存储(s3或azure存储)上的数据上定义配置单元外部/托管表-因此从本地框加载不会起作用。您必须将其上载到云存储上,然后针对其定义一个外部表-