我在本地使用hdinsight hadoop,並在hdfs上成功運行mapreduce作業後,我嘗試使用配置單元,不幸的是,當創建表時運行配置單元查詢時出現錯誤。hdinsight新hiveconnection不工作
我從另一個棧解決方案下面的代碼,因爲我只運行在本地,而不是用天藍色:
var db = new HiveConnection(
webHCatUri: new Uri("http://localhost:50111"),
userName: (string)"hadoop", password: (string)null);
// also tried command with no ; inside quotes
string command = "CREATE TABLE log4jLogs(t1 string, t2 string, t3 string," +
"t4 string, t5 string, t6 string, t7 string)" +
"ROW FORMAT DELIMITED FIELDS TERMINATED BY ' ';";
db.ExecuteHiveQuery(command).Wait();
這總是拋出一個,而處理後的異常。例外是:
System.AggregateException:發生了一個或多個錯誤。 ---> System.NullReferenc eException:對象引用未設置爲對象的一個實例的 。在在 Microsoft.Hadoop.Hive.HiveConnection.d__2.MoveNext()< System.Threading.Tasks.TaskAwaiter
1.GetResult() at Microsoft.Hadoop.Hive.HiveConnection.<ExecuteHiveQuery>d__2.MoveNext() --- End of inner exception stack trace --- at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationTo ken cancellationToken) at System.Threading.Tasks.Task.Wait() at ConsoleApplication1.Program.CreateActorsTable() in c:\Users\Administrator\ Documents\Visual Studio 2012\Projects\ConsoleApplication1\ConsoleApplication1\Pr ogram.cs:line 90 ---> (Inner Exception #0) System.NullReferenceException: Object reference not se t to an instance of an object. at System.Threading.Tasks.TaskAwaiter
1.GetResult()---
我從hadoop的檢查日誌中,我得到如下:
java.io.IOException異常:無效的狀態DIR URI在 org.apache.hcatalog.templeton.tool.TempletonControllerJob $ LaunchMapper.run(TempletonControllerJob.java:155) 在org.apache。 hadoop.mapred.MapTask.runNewMapper(MapTask.java:762) at org.apache.hadoop .mapred.MapTask.run(MapTask.java:364)at org.apache.hadoop.mapred.Child $ 4.run(Child.java:266)at java.security.AccessController.doPrivileged(Native Method)at javax .security.auth.Subject.doAs(Subject.java:396)at org.apache.hadoop.mapred.Child.main org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1136) (Child .java:260)原因: java.net.URISyntaxException:索引中的非法字符在索引 6:asv:// {0} @ {1}/6f8d3bc9-89a2-4e1d-9749-2805d31f05f0 at java.net .URI $ Parser.fail(URI.java:2810)at java.net.URI $ Parser.parseAuthority(URI.java:3148)at java.net.URI $ Parser.parseHierarchical(URI.java:3059)at jav a.net.URI $ Parser.parse(URI.java:3015)at java.net.URI。(URI.java:577)at org.apache.hcatalog.templeton.tool.TempletonUtils.addUserHomeDirectoryIfApplicable(TempletonUtils.java :227) 在 org.apache.hcatalog.templeton.tool.TempletonControllerJob $ LaunchMapper.run(TempletonControllerJob.java:152) ... 7個
我會很喜歡,如果任何人都可以在點我正確的方向,因爲我無法解決爲什麼這是失敗。
您是否找到解決方案?我有同樣的情況。 – Jules