1

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 を持っているかどうか知りたいです。もしそうなら、私は何が欠けていますか?

4

1 に答える 1

1

Apache JDBC ドライバーは、ほとんどの機能について「メソッドがサポートされていません」と報告します。これ、Apache コミッターが単純なAPI 呼び出しのリストをわざわざ処理しなかったためです。当たり前。 自分で確認したい場合は、DBVisualizer Freeをダウンロードし、Apache Hive ドライバーを構成し、接続を開き、 [データベース情報] タブを確認してください。yes/no

現在、DBVis は不完全なドライバーに対して非常に寛容ですが、LibreOffice はそうではないようです。

代わりにCloudera Hive JDBC ドライバーを試すことができます。ダウンロード URL にアクセスするには、「登録」する必要があります。つまり、電子メール アドレスを残すだけです。Apache よりも展開が簡単で(Simba SDK に基づいており、すべての Hive 固有の JAR がバンドルされています)、ほぼすべての BI ツールで動作します。LibreThing でも動作することを願っています。

免責事項: Apache ディストリビューションに適切な JDBC ドライバーがあり、「無料」の商用ソフトウェアに頼るのではなく、誰もがそれを使用できることを願っています。しかし、今のところそれはただの願いです。

于 2016-07-11T14:50:19.527 に答える