Hologres は PostgreSQL と互換性があり、PostgreSQL でサポートされているほとんどの開発ツールまたはビジネスインテリジェンス(BI)ツールを使用して接続できます。使い慣れたツールを使用して、企業向けのリアルタイム データウェアハウスを構築できます。このトピックでは、PostgreSQL クライアントを使用して Hologres インスタンスに接続し、標準の PostgreSQL 文を使用してデータ開発を行う方法について説明します。
PostgreSQL クライアントをインストールする
PostgreSQL クライアントを使用する前に、PostgreSQL の公式 Web サイトからクライアントをダウンロードする必要があります。 PostgreSQL クライアントをインストール済みの場合は、このセクションで説明されている手順をスキップしてください。 PostgreSQL クライアントをインストールするには、次の手順を実行します。
PostgreSQL クライアントをダウンロードします。
PostgreSQL の公式 Web サイトにアクセスし、オペレーティングシステムに基づいてバージョン 11 以降のインストール パッケージをダウンロードし、プロンプトに従ってクライアントをインストールします。
環境変数を設定します。
Windows オペレーティングシステムを使用している場合は、次の操作を実行します。
ダイアログボックスに移動します。 [詳細設定] タブで、右下隅にある [環境変数] をクリックします。
Path 変数をインストールディレクトリの bin サブディレクトリに設定します。
[OK] をクリックします。
macOS オペレーティングシステムを使用している場合は、ほとんどの場合、環境変数を設定する必要はありません。環境変数を設定する必要がある場合は、Setting Up Your Environment を参照してください。
データ開発のために Hologres インスタンスに接続する
PostgreSQL クライアントをダウンロードしてインストールしたら、クライアントを使用して Hologres インスタンスに接続し、データ開発を行うことができます。
Hologres に接続します。
PostgreSQL クライアントを開き、オペレーティングシステムに基づいて必要な SQL 文を実行して、Hologres に接続します。 SQL 文の構文は、PostgreSQL データベースへの接続に使用される構文と同じです。
Linux オペレーティングシステムを使用している場合は、次の SQL 文を実行します。
psql -h <Endpoint> -p <Port> -U <AccessKey ID> -d <Database>プロンプトが表示されたら、Alibaba Cloud アカウントの AccessKey シークレットを入力します。

macOS オペレーティングシステムを使用している場合は、次の SQL 文を実行します。
PGUSER=<AccessKey ID> PGPASSWORD=<AccessKey Secret> psql -p <Port> -h <Endpoint> -d <Database>
Windows オペレーティングシステムを使用している場合は、次の SQL 文を実行します。
Server [localhost]: Endpoint Database [postgres]: Database Port [5432]: Port Username [postgres]: <AccessKey ID> Password of the <AccessKey ID> user: <AccessKey Secret>
パラメータ
説明
AccessKey ID
Alibaba Cloud アカウント:Alibaba Cloud アカウントの AccessKey ID。AccessKey ページから AccessKey ID を取得できます。
カスタムアカウント:カスタムアカウントのユーザー名。例:BASIC$abc。
AccessKey Secret
Alibaba Cloud アカウント:Alibaba Cloud アカウントの AccessKey シークレット。
カスタムアカウント:カスタムアカウントのパスワード。
ポート
インターネットまたは VPC(Virtual Private Cloud)経由で接続する Hologres インスタンスのポート番号。
例:
80。説明詳細については、「インスタンス構成」をご参照ください。
エンドポイント
接続する Hologres インスタンスのパブリックエンドポイントまたは VPC エンドポイント。
例:
xxx-cn-hangzhou.hologres.aliyuncs.com。説明詳細については、「インスタンス構成」をご参照ください。
データベース
Hologres データベースの名前。
Hologres インスタンスを購入すると、postgres という名前のデータベースが自動的に作成されます。
postgres データベースに接続できます。ただし、このデータベースに割り当てられるリソースは限られています。 Hologres コンソールにアクセスして、ビジネス目的のデータベースを作成することをお勧めします。詳細については、このトピックのデータベースを作成するセクションを参照してください。
例:
mydb。例
Alibaba Cloud アカウントを使用して Hologres コンソールにログインする場合は、次の文を実行して PostgreSQL クライアントを使用して Hologres インスタンスに接続します。
PGUSER="xxx" PGPASSWORD="xxx" psql -h hgpostcn-cn-xxx-cn-hangzhou.hologres.aliyuncs.com -p 80 -d demo
カスタムアカウントで Hologres コンソールにログインする
次の図に示すように、カスタムアカウントのユーザー名が abc であるとします。

次の文を実行して PostgreSQL クライアントを使用して Hologres インスタンスに接続します。
PGUSER="BASIC\$abc" PGPASSWORD="xxx" psql -h hgpostcn-cn-xxx-cn-hangzhou.hologres.aliyuncs.com -p 80 -d demo
説明使い慣れた開発ツール(DataWorks や HoloWeb など)を使用して Hologres に接続し、データ開発を行うこともできます。詳細については、「DataWorks を使い始める」または「HoloWeb に接続してクエリを実行する」をご参照ください。
(オプション)データベースを作成します。
Hologres インスタンスを購入すると、postgres という名前のデータベースが自動的に作成されます。ただし、このデータベースに割り当てられるリソースは限られています。このデータベースは O&M 管理に使用し、ビジネス目的で別のデータベースを作成することをお勧めします。
説明Hologres インスタンスにビジネスデータ用のデータベースをすでに作成している場合は、この手順をスキップしてください。
構文:
CREATE Database <DatabaseName>;DatabaseName を、作成するデータベースの名前に置き換えます。
例:
-- test という名前のデータベースを作成します。 CREATE Database test;
データを開発します。
PostgreSQL クライアントを使用して、標準の PostgreSQL 文を実行してデータを開発できます。
たとえば、次の SQL 文を実行してデータベースにテーブルを作成し、テーブルにデータを書き込むことができます。
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 データのクエリを高速化する。詳細については、「Hologres の外部テーブルを使用して MaxCompute データのクエリを高速化する」をご参照ください。
Realtime Compute for Apache Flink を使用して、リアルタイムで Hologres にデータを書き込む。詳細については、「Hologres 結果テーブル」をご参照ください。