Spark Context オブジェクトを作成し、Hadoop サーバー (ローカルではない) のテキスト ファイルからテキストを取得しようとしましたが、取得できました。
Hive テーブル (スタンドアロン マシン、クラスター上にある) を取得しようとしても実行できませんでした。また、Hive テーブルを作成すると、metastore_db でローカルに作成されます。
objHiveContext.sql("テーブル yahoo_orc_table (date STRING, open_price FLOAT, high_price FLOAT, low_price FLOAT, close_price FLOAT, volume INT, adj_price FLOAT) を orc として保存")
メタストアを設定してみた
objHiveContext.setConf("hive.metastore.warehouse.dir", "hdfs://ServerIP:HiveportNum/apps/hive/warehouse")
&& また objHiveContext.hql("SET hive.metastore.warehouse.dir=hdfs://serverIp:portNumber/apps/hive/warehouse")
hive-site xml を spark マシンの conf フォルダーに配置しました。
hive-site.xml にアクセスしてその xml からメタストア情報を取得するように scala アプリケーションを作成する方法と、Hive-site.xml をどこに配置する必要があるか
ClassPath に追加することが提案されているすべての場所でアプリケーションに配置しました。追加したところ、 mypom.xml ファイルのすぐ上にあることがわかりますが、それでも私の scala アプリはローカル モードです。
テーブル (yahoo_orc_table ) は D:\user\hive\warehouse にローカルに作成されます