1

Hive、MapReduce、Hadoop は初めてです。Putty を使用してハイブ テーブルに接続し、テーブル内のレコードにアクセスしています。そこで私がしたことは、Putty を開いてホスト名を入力し、[. vip.name.com] をクリックしたことOpenです。次に、ユーザー名とパスワードを入力し、Hive sql にアクセスするためのいくつかのコマンドを入力しました。以下は私がやったことのリストです

$ bash
bash-3.00$ hive
Hive history file=/tmp/rkost/hive_job_log_rkost_201207010451_1212680168.txt
hive> set mapred.job.queue.name=mdhi-technology;
hive> select * from table LIMIT 1;

だから私の質問は-

コマンドプロンプトから実行する代わりに、Sql DeveloperやSquirel SQL ClientなどのSqlクライアントで同じことを実行できる他の方法はありますか. vip.name.comそして、そこにある場合、 Putty からログインしている私の例を考慮して、これを行うための段階的なプロセスは何ですか。

また、Windows マシンで JDBC プログラムを使用して行う必要がある場合も、同じことができます。JDBC プログラムを使用して、Hive テーブルにアクセスして結果を取得する方法を意味します。オラクルテーブルでこれを行う方法を知っているので。しかし、私が持っている唯一の混乱は、このホスト名vip.name.comを使用して Putty にログインしているためです。質問が明確であることを願っています。任意の提案をいただければ幸いです。

つまり、私の質問は、Putty からログを記録する代わりに、任意の SQLClient で同じことを実行できますか?

アップデート-

マークが私に提案した方法を試してみました。しかし、私はいつも得ています-Hive: Could not establish connection to vip.host.com:10000/default: java.net.ConnectionException: Connection timed out: connect

4

1 に答える 1

1

Puttyで何をしているのかは、HiveがインストールおよびセットアップされたマシンにSSHで接続することです。次に、HiveコマンドラインからHiveクエリを発行します。これは、Hiveクエリを発行する1つの方法です。SSHを必要としない方法は他にもありますが、おそらく必要なのはJDBCを介した接続です。

これは、JDBCを介してSQuirreLを使用してAmazonのEMRクラスター上のHiveインストールに接続する方法を説明する記事です。この記事はAmazon固有のように見えるかもしれませんが、そうではありません。クラスタのノードの1つでHiveサーバーが実行されていて、クライアントマシンとHiveを実行しているノード間の接続を妨げるファイアウォールがない限り、接続できるはずです。

上記のリンクに関連して覚えておきたいことがいくつかあります。

  • EMRを使用していない限り、SSHトンネルを作成するように求められるステップ3は無視してかまいません。
  • 接続URIに入力するポートは、場合によって異なる場合があります。localhostを、Hiveが実行されているマシンの完全修飾ドメイン名に置き換えます。Hiveサーバーがリッスンしているポートを確認するには、ログディレクトリ(インストールによって場所が異なります)にあるHiveサーバーのnannyログファイルを調べるか、簡単なnetstat -aコマンドを実行します。10000がデフォルトのポート番号だと思うので、10000を直接試してみるのが理にかなっているかもしれません。
于 2012-07-01T16:19:31.697 に答える