如何在本地Windows机器上使用python将csv文件加载到hive表中

问题描述 投票:0回答:1

我们在我们组织的 Linux 服务器上安装了企业 hadoop 集群。我正在尝试将 csv 文件插入到我们的配置单元表之一中。我的本地 Windows 机器中有 csv 文件。我正在使用 python 并使用 jaydebeapi 包通过 jdbc 连接到 hive。当我在代码中使用“LOAD DATA LOCAL...”命令时,它会抛出与路径不是合法文件路径相关的错误。如何解决这个问题?以下是我收到的错误。

注意: 我不会手动使用 hdfs 命令将 csv 文件复制到 hdfs,然后加载数据。我想将它直接从我的 Windows 机器加载到 Hive 表。

com.cloudera.hiveserver2.support.exceptions.ErrorException

编译语句时出错:FAILED: SemanticException [Error 10028]: Line 1:23 Path is not legal

我正在使用下面的代码来加载数据。

query="""LOAD DATA LOCAL INPATH 'C:/Users/Docs/file.csv' INTO TABLE default.logstable"""
conn = getConnection()
curr = conn.cursor()
curr.execute(query)

连接已设置,选择查询工作正常。

python hadoop hive cloudera jaydebeapi
1个回答
0
投票

C:/
不是合法的 Unix 文件路径。

你必须使用

file://c:/Users/Docs/file.csv

否则,可以,将 CSV 直接上传到 HDFS,然后在其上定义

EXTERNAL TABLE

© www.soinside.com 2019 - 2024. All rights reserved.