私はHiveでSparkSQLを実行するためのJavaコードを書いています。私はプログラムに私のハイブのmetastoreの道を与えようとしていますが、まったく働いていません。
は、プログラムを参照してください:Javaを使ってApache SparkプログラムでHiveのメタストアを指定する方法は?
String warehouseLocation = "file:${system:user.dir}/spark-warehouse";
SparkSession spark = SparkSession
.builder()
.appName("Java Spark Hive Example")
.master("local[*]")
.config("spark.sql.warehouse.dir", warehouseLocation)
.enableHiveSupport()
.getOrCreate();
try
{
spark.sql("select count(*) from health1 ").show();
}
catch (Exception AnalysisException)
{
System.out.print("\nTable is not found\n");
}
私metastore_dbは場所にあります。/home/aims/hadoop/hadoop/hive/var/lib/metastore_db
私はSparkSQLを使用してやろうとしています任意の操作はHIVEでのHadoopに反映されるべきであるとします。そのためには、metastore_dbをMavenプログラムに接続する必要があります。
どうすればいいですか? configを使って私のhive-site.xml
パスをプログラムに与える方法はありますか?
を知らせてください。あなたが「thrift:// localhost:9083」 'の結論に達したところから私が知っているかもしれませんか?私はこれを取得しません。 –
メタストアサーバーを実行すると、コンソールで詳細が表示されます。 "INFO metastore.HiveMetaStoreのようなもの:ポート9090で新しいメタサーバを開始しました" – abaghel
ありがとうございました。あなたは私にとって大きな問題をたくさん解決しました。: –