Python 3.7でhadoop / hiveデータベース(認証が必要)に接続し、簡単なSQLクエリを実行するにはどうすればよいですか?

アルベルト

ユーザー/パスワードによる認証が必要なhadoop(apache hive)データベースに接続する必要があります。通常はDBeaver(JDBCドライバーがインストールされている)でアクセスしますが、Python 3.7(Python 2.xではない)のスクリプトを使用した単純なクエリを使用してデータを取得する必要があります。私はいくつかの方法を試しましたが成功しませんでした。誰かがうまくいく解決策を持っていますか?

pyhive、presto、pyhs2、impala、ibisを試しました

アジェイ・カラデ

Windowsマシン上のODBCドライバーによってPythonからハイブを接続するための以下の手順に従うことができます。

  1. Hiveに必要なドライバーをインストールします。Cloudera / Hortonworksを使用している場合は、それぞれのドライバーをWebサイトで見つけることができます。
  2. インストールが完了したら、スタートメニューまたはコントロールパネルから64ビットODBCアドミニストレーターに移動します。
  3. 必要なサーバーの詳細と接続ユーザーIDおよびパスワードを入力します。以下は同じもののスクリーンショットです。

ここに画像の説明を入力してください

  1. それが完了したら、[テスト]ボタンをクリックしてテスト接続を確認し、成功したかどうかを確認します。
  2. Pythonからハイブに接続するときに同じDSNを使用できます。以下は、同じDSNのコードスニペットです。
    import pyodbc
    
    import pandas as pd
    
    with pyodbc.connect("DSN=<replace DSN name>", autocommit=True) as conn:
        df = pd.read_sql("<Hive Query>", conn)

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

Related 関連記事

ホットタグ

アーカイブ