Presto をインストールし、Docker で Hive を接続する詳細なプロセス

Presto をインストールし、Docker で Hive を接続する詳細なプロセス

1. はじめに

Presto は、ギガバイトからペタバイトに及ぶデータ ソースに対してインタラクティブな分析クエリを実行するためのオープン ソースの分散 SQL クエリ エンジンです。 Presto を使用すると、Hive、Cassandra、リレーショナル データベース、さらには独自のデータ ストアなど、データがどこにあってもクエリを実行できます。単一の Presto クエリで複数のソースからのデータを組み合わせることができるため、組織全体にわたる分析が可能になります。

2.ダウンロードしてインストールする

1) 画像をダウンロードする

docker pull starburstdata/presto

2) クライアントjarをダウンロードする

プルされたイメージはサーバーであり、presto-cli コマンドがないため、presto-cli-0.260.1-executable.jar をダウンロードし、ダウンロードした jar パッケージを Linux システムにプルする必要があります。

ダウンロードが完了したら、コンテナを実行します。

#ポート番号は8080です。ご自身で変更してください。名前はprestoです。
docker run -d -p 8080:8080 --name presto starburstdata/presto

クライアント jar パッケージをコンテナ内の bin ディレクトリにコピーします。

docker cp [クライアントjarパッケージが配置されているLinuxパス] [コンテナ名]:/bin

hadoop構成ファイルディレクトリに移動し、core-site.xmlとhdfs-site.xmlをコンテナにコピーします。

${HADOOP_HOME}/etc/hadoop をコピーします。
docker cp core-site.xml presto:/usr/lib/presto/etc/
docker cp core-site.xml presto:/usr/lib/presto/etc/

コンテナに入ります (マークされていない次の操作はすべてコンテナ内で実行されます)。

# 不正なファイル操作を防ぐために、コンテナに root ユーザーとして入ります docker exec --user=root -it presto /bin/bash

クライアント jar パッケージの名前を変更し、実行権限を付与します。

CD ビン
mv presto-cli-0.260.1-executable.jar プレスト cli
chmod a+x プレスト-cli

3. 設定ファイル

構成ファイル ディレクトリに入り、Hive 構成ファイルを作成します。

/usr/lib/presto/etc/catalog をコピーします。
vi hive.properties

hive.properties:

#接続名、固定 connector.name=hive-hadoop2
#hive メタデータ URI は hive-site.xml にあります。IP とポートを自分で変更してください。hive.metastore.uri=thrift://192.168.10.51:9083
#Hive 構成リソース core-site.xml および hdfs-site.xml は、クラスター内の構成ファイル パスに従って、カンマで区切って変更してください。hive.config.resources=/usr/lib/presto/etc/core-site.xml、/usr/lib/presto/etc/hdfs-site.xml

保存して終了

コンテナを再起動します (Linux コマンドラインで):

docker 再起動 presto

4. 接続をテストする

コンテナを入力します:

# 不正なファイル操作を防ぐために、コンテナに root ユーザーとして入ります docker exec --user=root -it presto /bin/bash
#binディレクトリに入る cd bin
#コマンドラインスクリプトを実行してHive接続をテストし、Hive構成ファイルに接続します。データベースはデフォルトです。
./presto-cli --server localhost:8080 --catalog hive --schema default
presto>テーブルを表示;

これで、Hive に接続するために Docker に Presto をインストールする詳細なプロセスに関するこの記事は終了です。Docker に Presto をインストールする方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • DockerはClickHouseをインストールし、データテストを初期化します
  • Kali に docker と portainer をインストールする方法
  • Docker Desktop をインストールすると、エラー メッセージが表示されます: WSL 2 のインストールが完了していません (エラー メッセージを解決してください)
  • Docker で onlyoffice をインストールして展開する詳細なプロセス
  • 初心者向けに Docker に Jenkins をインストールする方法を詳しく説明したチュートリアル

<<:  MySQL のファントムリード問題を解決する方法

>>:  JavaScript の絶妙なスネーク実装プロセス

推薦する

Nginx でバージョン番号と Web ページのキャッシュ時間を非表示にする方法

Nginx の最適化 - バージョン番号と Web ページのキャッシュ時間を非表示にするバージョン番...

MySQL からエクスポートされた scv ファイル内の文字化けやジャンプ行の問題をすばやく解決します

仕事上の理由により、完全なオンライン化(​​つまり、すべてのデータがオンラインで完了し、インポートや...

MySql ログイン パスワードを忘れた場合とパスワードを忘れた場合の解決策

方法1: MySQL では、次のコマンド ラインで MySQL サーバーを起動することにより、アクセ...

タブバーのいくつかの実装方法(推奨)

タブ: カテゴリ + 説明タグバー: カテゴリ => ユーザーに現在地と目的地を知らせる1. ...

NginxにおけるRewriteのリダイレクト設定と実践の詳しい解説

1: アドレス書き換えとア​​ドレス転送の意味を理解する。アドレス書き換えとア​​ドレス転送は異なる...

TypeScript名前空間の説明

目次1. 定義と使用1.1 定義1.2 使用2. 複数のファイルに分割する3. エイリアス序文: T...

IDEA が MySQL データベースに接続できない問題の 6 つの解決策

この記事では、IDEA が MySQL データベースに接続できない問題に対する 6 つの解決策を主に...

CSS 評価効果の星の例

何?何のスターコートですか?さて、もっとわかりやすくするために写真を見てみましょう。 よく見ると、パ...

JavaScript で判決文をエレガントに記述する例

目次序文1. モナドの判断1.1 例1.2 オブジェクトに入れる1.3 マップに載せる2. 複数の判...

Vue3でアイコンを使用する2つの例

目次1. SVGを使用する2. fontAwesomeを使用する3 ソース4 結論テクノロジースタッ...

Vue が価格カレンダー効果を実現

この記事では、価格カレンダー効果を実現するためのVueの具体的なコードを例として紹介します。具体的な...

MySQLデータベースの増分バックアップのアイデアと方法

MySQL データベースの増分バックアップを実行するには、データベース構成ファイル /etc/my....

MySQL でシンプルな検索エンジンを実装するためのサンプルコード

目次序文導入ngram全文パーサー全文インデックスを作成する検索方法1. 自然言語検索(自然言語モー...