JDBC経由でHive v1.2.1データベースに接続するために、Ubuntu v16.04で実行されているLibreOfficeのベースv5.1.4.2を取得しようとしています。Maven Central からダウンロードした次の jar を LibreOffice のクラスパス (「ツール -> LibreOffice -> Advanced -> Class Path」) に追加しました。
hive-common-1.2.1.jar
hive-jdbc-1.2.1.jar
hive-metastore-1.2.1.jar
hive-service-1.2.1.jar
hadoop-common-2.6.2.jar
httpclient-4.4.jar
httpcore-4.4.jar
libthrift-0.9.2.jar
commons-logging-1.1.3.jar
slf4j-api-1.7.5.jar
次に、LibreOffice を再起動し、Base を開き、[既存のデータベースに接続] -> [JDBC] を選択して、次のプロパティを設定しました。
資格情報を入力して [接続のテスト] ボタンをクリックすると、「接続が正常に確立されました」というメッセージが返されました。すごい!
LibreOffice Base UI で、[テーブル] パネルの下のオプションがグレー表示されていました。クエリ タブのオプションがなかったので、Hive に接続してみました。
[ウィザードを使用してクエリを作成する] オプションを選択すると、パスワードの入力が求められ、「'airline.on_time_performance' からのフィールド名を取得できませんでした」というメッセージが返されます。
JDBC 接続は、Hive に接続してテーブルを一覧表示できますが、列の取得に問題があるようです。単純な select ステートメントを実行しようとすると、[SQL ビューでクエリを作成] オプションがやや不可解な「メソッドはサポートされていません」というメッセージを返します。
エラーメッセージは少しあいまいです。JDBC を使用して Java から Hive に接続できるため、依存関係が欠落している可能性があると思われます。
コミュニティの誰かが Hive で動作する LibreOffice Base を持っているかどうか知りたいです。もしそうなら、私は何が欠けていますか?