Hologres は PostgreSQL エコシステムと互換性があります。これにより、PostgreSQL をサポートするほとんどの開発ツールやビジネスインテリジェンス (BI) ツールを使用して Hologres に接続できます。使い慣れたツールを使用して、エンタープライズグレードのリアルタイムデータウェアハウスを迅速に構築できます。このトピックでは、PostgreSQL クライアントを使用して Hologres インスタンスに接続し、標準の PostgreSQL ステートメントを使用してデータを開発する方法について説明します。
PSQL クライアントのインストール
PostgreSQL クライアントを使用する前に、公式サイトからダウンロードしてインストールする必要があります。すでにクライアントをインストールしている場合は、このセクションをスキップできます。
-
PostgreSQL クライアントのダウンロード
PostgreSQL の公式サイトにアクセスし、ご利用のオペレーティングシステムに対応する PostgreSQL バージョン 11 以降のインストーラーをダウンロードします。その後、画面の指示に従ってインストールを完了します。
-
環境変数の設定
-
Windows の場合:
-
ウィンドウで、[環境変数] をクリックします。
-
Path 変数に PostgreSQL の
binディレクトリへのパスを追加します。[システム環境変数] セクションで Path 変数を見つけて選択し、[編集...] をクリックします。 -
OK をクリックします。
-
-
macOS の場合、通常は環境変数を設定する必要はありません。必要な場合は、「環境変数の設定」をご参照ください。
-
Hologres への接続とデータ開発
PostgreSQL クライアントをインストールした後、ご利用の Hologres インスタンスに接続してデータ開発を開始できます。
-
Hologres インスタンスへの接続
PostgreSQL クライアントのコマンドラインインターフェイスを開き、接続情報を入力します。構文は、標準の PostgreSQL データベースに接続する場合と同じです。
-
Linux では、次のコマンドを実行します。
psql -h <Endpoint> -p <Port> -U <AccessKey ID> -d <Database>プロンプトが表示されたら、AccessKey Secret を入力します。
[postgres@iZj6cclqj7ttfq2f8stlgpZ ~]$ [postgres@iZj6cclqj7ttfq2f8stlgpZ ~]$ [postgres@iZj6cclqj7ttfq2f8stlgpZ ~]$ psql -h xxx-xxx-xxx-xxx.hologres.aliyuncs.com -p 80 -U LTAIxxx-xxx -d testdb Password for user xxx: psql (12.3, server 11.3) Type "help" for help. testdb=> testdb=> testdb=> testdb=> testdb=> -
macOS では、次のコマンドを実行します。
PGUSER=<AccessKey ID> PGPASSWORD=<AccessKey Secret> psql -p <Port> -h <Endpoint> -d <Database>PGUSER=xxx PGPASSWORD=xxx psql -p 80 -h xxx.hologres.aliyuncs.com -d mydb psql (11.4, server 11.3) Type "help" for help. mydb=# -
Windows では、クライアントが対話形式で接続詳細の入力を求めます。
Server [localhost]: Endpoint Database [postgres]: Database Port [5432]: Port Username [postgres]: <AccessKey ID> Password for user <AccessKey ID>: <AccessKey Secret>Server [localhost]: Endpoint Database [postgres]: Database Port [5432]: 80 Username [postgres]: <AccessKey ID> Password for user <AccessKey ID>: psql (11.8, server 11.3) Type "help" for help. postgres=#
パラメーター
説明
AccessKey ID
-
Alibaba Cloud アカウント:ご利用の Alibaba Cloud アカウントの AccessKey ID。[AccessKey の管理] ページで AccessKey ID を取得できます。
-
カスタムアカウント:カスタムアカウントのユーザー名。例:
BASIC$abc。
AccessKey Secret
-
Alibaba Cloud アカウント:ご利用の Alibaba Cloud アカウントの AccessKey Secret。
-
カスタムアカウント:カスタムアカウントのパスワード。
ポート
Hologres インスタンスのパブリックネットワークまたは VPC のポート。
例:
80。説明パブリックエンドポイントの詳細については、「インスタンスの詳細」をご参照ください。
エンドポイント
Hologres インスタンスのパブリックネットワークまたは VPC のエンドポイント。
例:
xxx-cn-hangzhou.hologres.aliyuncs.com。説明パブリックエンドポイントの詳細については、「インスタンスの詳細」をご参照ください。
データベース
Hologres データベースの名前。
Hologres インスタンスが作成されると、postgres という名前のデータベースが自動的に作成されます。
postgres データベースを使用して Hologres に接続できます。ただし、このデータベースのリソースは限られています。本番ワークロードでは、新しいデータベースを作成することを推奨します。詳細については、「データベースの作成」をご参照ください。
例:
mydb。例
-
Alibaba Cloud アカウントでログインする場合:
PGUSER="xxx" PGPASSWORD="xxx" psql -h hgpostcn-cn-xxx-cn-hangzhou.hologres.aliyuncs.com -p 80 -d demoPGUSER="LTAIxxx" PGPASSWORD="xT6qxxx" psql -h hgpostcn-cn-xxx-cn-hangzhou.hologres.aliyuncs.com -p 80 -d demo psql (14.2, server 11.3) Type "help" for help. demo=# -
カスタムアカウントでログインする場合:
-
カスタムユーザー名が
abcの場合、HoloWeb で作成できます。上部のナビゲーションバーで [セキュリティセンター] を選択します。左側のナビゲーションウィンドウで [ユーザー管理] をクリックします。ターゲットインスタンスを選択すると、ユーザーリストが表示されます。このリストには、メンバー、クラウドアカウント、アカウントタイプ、ロールタイプが含まれます。右上隅の [カスタムユーザーの作成] をクリックして、BASIC アカウントを追加します。アカウント名はBASIC$<user_name>のフォーマットである必要があり、ロールタイプは作成後にデフォルトで SuperUser になります。 -
次のコマンドを実行してログインします:
PGUSER="BASIC\$abc" PGPASSWORD="xxx" psql -h hgpostcn-cn-xxx-cn-hangzhou.hologres.aliyuncs.com -p 80 -d demoPGUSER="BASIC\$abc" PGPASSWORD="1xxx" psql -h hgpostcn-cn-xxx-cn-hangzhou.hologres.aliyuncs.com -p 80 -d demo psql (14.2, server 11.3) Type "help" for help. demo=#
-
説明また、DataWorks や HoloWeb など、使い慣れた他の開発ツールを使用して Hologres に接続することもできます。詳細については、「DataWorks のクイックスタート」または「HoloWeb への接続とクエリの実行」をご参照ください。
-
-
(任意) データベースの作成
Hologres インスタンスが作成されると、postgres という名前のデータベースが自動的に作成されます。このデータベースはリソースが限られており、運用および管理タスクのみを目的としています。開発および本番ワークロードでは、新しいデータベースを作成することを推奨します。
説明ビジネス用にデータベースをすでに作成している場合は、このステップをスキップできます。
-
構文:
CREATE Database <DatabaseName>;DatabaseName は、作成するデータベースの名前です。
-
例:
-- test という名前のデータベースを作成します。 CREATE Database test;
-
-
データ開発
PostgreSQL クライアントで標準の PostgreSQL ステートメントを使用してデータを開発します。
次の例は、データベースにテーブルを作成し、データを挿入する方法を示しています:
BEGIN; CREATE TABLE nation ( n_nationkey bigint NOT NULL, n_name text NOT NULL, n_regionkey bigint NOT NULL, n_comment text NOT NULL, PRIMARY KEY (n_nationkey) ); CALL SET_TABLE_PROPERTY('nation', 'bitmap_columns', 'n_nationkey,n_name,n_regionkey'); CALL SET_TABLE_PROPERTY('nation', 'dictionary_encoding_columns', 'n_name,n_comment'); CALL SET_TABLE_PROPERTY('nation', 'time_to_live_in_seconds', '31536000'); COMMIT; INSERT INTO nation VALUES (11,'zRAQ', 4,'nic deposits boost atop the quickly final requests? quickly regula'), (22,'RUSSIA', 3 ,'requests against the platelets use never according to the quickly regular pint'), (2,'BRAZIL', 1 ,'y alongside of the pending deposits. carefully special packages are about the ironic forges. slyly special '), (5,'ETHIOPIA', 0 ,'ven packages wake quickly. regu'), (9,'INDONESIA', 2 ,'slyly express asymptotes. regular deposits haggle slyly. carefully ironic hockey players sleep blithely. carefull'), (14,'KENYA', 0 ,'pending excuses haggle furiously deposits. pending, express pinto beans wake fluffily past t'), (3,'CANADA', 1 ,'eas hang ironic, silent packages. slyly regular packages are furiously over the tithes. fluffily bold'), (4,'EGYPT', 4 ,'y above the carefully unusual theodolites. final dugouts are quickly across the furiously regular d'), (7,'GERMANY', 3 ,'l platelets. regular accounts x-ray: unusual, regular acco'), (20 ,'SAUDI ARABIA', 4 ,'ts. silent requests haggle. closely express packages sleep across the blithely'); SELECT * FROM nation;ユースケースに基づいてジョブを開発できます。例:
-
MaxCompute データのクエリを高速化します。詳細については、「外部テーブルを使用した MaxCompute クエリの高速化」をご参照ください。
-
Flink を使用して Hologres にリアルタイムでデータを書き込みます。詳細については、「Hologres sink」をご参照ください。
-