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 の絶妙なスネーク実装プロセス

推薦する

docker version es、milvus、minio 起動コマンドの詳細な説明

1. es起動コマンド: docker run -itd -e TAKE_FILE_OWNERSHI...

Vue で $props、$attrs、$listeners を使用する方法の詳細な説明

目次背景1. 文書の説明2. 特定の用途結論背景ここで、状況について説明しましょう。親コンポーネント...

LeetCode の SQL 実装 (177. 給与が N 番目に高い)

[LeetCode] 177. 最も高い給与従業員テーブルからn番目に高い給与を取得する SQL ...

Linux/CentOS システムでネットワーク時間を同期する 2 つの方法の詳細な説明

ハードウェア上の理由により、機械は標準時間にある程度追いつけない場合があり、その誤差は 1 か月で数...

クロスブラウザローカルストレージⅠ

原文: http://www.planabc.net/2008/08/05/userdata_beh...

リンクAの意味論、書き方、ベストプラクティス

リンク A のセマンティクス、ライティング スタイル、およびベスト プラクティス。私は JavaEy...

トップ 10 Js 画像処理ライブラリ

目次導入1. 異食症2. レナ3. コンプレッサー4. ファブリック5. ぼかす6. 画像を結合する...

MySQLの認証コマンドgrantの使い方

この記事の例は MySQL 5.0 以降で実行されます。ユーザー権限を付与するための MySQL コ...

Linux/Mac MySQL パスワードを忘れた場合のパスワード変更コマンドラインメソッド

すべての前提条件にはルート権限が必要です1. MySQLプロセスを終了する //Linux sudo...

WeChatミニプログラムで検索キーワードを強調表示するサンプルコード

1. はじめにプロジェクトで要件に遭遇したら、データを検索してキーワードを強調表示します。要件を受け...

Vueの使用に関する深い理解

目次Vueのコアコンセプトを理解するVueの双方向バインディングの原理と実装を探るVue 双方向バイ...

Vmwareでディスクを追加する方法:ディスクを拡張する

この記事では、ディスクを追加または拡張して、Vmare で有効にする方法について説明します。シナリオ...

JS における ES6 継承と ES5 継承の違い

目次継承ES5 プロトタイプ継承ES6 クラス継承両者の違いES5プロトタイプ継承の内部実装ES6 ...

メンテナンス可能なJSコードの書き方を教えます

目次保守可能なコードとは何ですか?コード規約1. 読みやすさ2. 変数と関数の命名3. 透過的な変数...

Navicat がデータベース データ構造をインポートする際に発生するエラー datetime(0) の SQL レポートの問題を解決します。

エラー発生: MySQL 5.7 から SQL にデータベースをエクスポートし、それを MySQL ...