[英]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.