簡體   English   中英

從Apache Hive插入表

[英]Insert into table from Apache Hive

我是Apache Hive的新手。 我已經以偽分布式模式安裝了Hadoop,然后安裝了Hive。 然后,我試圖創建一個表,然后使用查詢向其中插入一些值。 創建表沒有問題,但是在向表中插入值時,過程陷入了困境。

這是查詢:

hive> create table Students
    > (StudentID INT,
    > firstname VARCHAR(50),
    > LastName VARCHAR(50),
    > Gender Char(1),
    > Email VARCHAR(100));
OK
Time taken: 0.364 seconds

但是在插入值時:

hive> INSERT INTO Students
    > VALUES
    > (1,'Janani','Ravi','F','Janani@loonycorn.com'),
    > (2,'Swetha','Kollalapudi','F','Swetha@loonycorn'),
    > (3,'Navdeep','Singh','M','navdeep@loonycorn.com'),
    > (4,'Vitthal','Srinivasan','M','vitthal@loonycorn.com');
WARNING: Hive-on-MR is deprecated in Hive 2 and may not be available in the future versions. Consider using a different execution engine (i.e. spark, tez) or using Hive 1.X releases.
Query ID = neron_20180515174044_74a1eaaa-5d42-4267-9261-ff66bd20e215
Total jobs = 3
Launching Job 1 out of 3
Number of reduce tasks is set to 0 since there's no reduce operator
Starting Job = job_1526382077653_0002, Tracking URL = http://neron-Latitude-3580:8088/proxy/application_1526382077653_0002/
Kill Command = /home/neron/ProgramFiles/Hadoop/hadoop-3.1.0/bin/hadoop job  -kill job_1526382077653_0002

我得到了這個結果,這個過程卡在那里。

這是跟蹤結果: 圖片

我做錯了什么嗎?這是什么問題?

您不能像這樣直接插入數據。 您還需要其他幾種選擇才能在配置單元中實現相同的目標。 請參考: 這篇文章

首先,我認為您應該更正啟動Hive時出現的警告。 該警告的原因是因為您沒有正確配置Hive。 在/ hive / conf目錄中,您需要編輯hive-site.xml以與不推薦使用的hive.execution.engine一起運行。

就我而言,我使用了Spark引擎,並將此行添加到文件hive-site.xml中。

hive-site.xml

<property> <name>hive.execution.engine</name> <value>spark</value> </property>

Hive 2.x使用SPARK或TEZ引擎執行“復雜”查詢,例如插入。 “簡單”查詢(如創建表)不會使用此引擎來運行,因此在運行此查詢時不會出現錯誤。

我不知道此步驟是否可以解決您的問題,但是您將來需要對查詢進行更正。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM