LoginSignup
2
1

More than 5 years have passed since last update.

Redshiftから外部スキーマを確認する方法

Posted at

Redshiftから外部スキーマを確認する方法を備忘録として残します。

システムカタログテーブル

システムカタログとは、データベースの管理システムがテーブルや列の情報などのスキーマメタデータと内部的な情報を格納する場所です。要するにDBが持つ管理用のテーブルですね、、、

Redshiftでもこのシステムカタログがテーブルとして保持されていて、今回はここから 外部のスキーマを確認することになります。
https://docs.aws.amazon.com/ja_jp/redshift/latest/dg/c_intro_catalog_views.html

※また、RedshiftはPostgreベースなので、Postgreのシステムカタログを使うこともできます。
https://www.postgresql.org/docs/8.0/static/catalogs.html#CATALOGS-OVERVIEW

クエリ

今回はその中のPG_EXTERNAL_SCHEMAというテーブルを使って、外部スキーマを確認します。
中に入っているデータはこんな感じですね、、、

列名 データ型 説明
esoid oid 外部スキーマ ID。
eskind integer 外部スキーマのタイプ。
esdbname text 外部データベース名。
esoptions text 外部スキーマのオプション。

以下は、公式のサンプルクエリです。

select esoid, nspname as schemaname, nspowner, esdbname as external_db, esoptions 
from pg_namespace a,pg_external_schema b where a.oid=b.esoid;

これを実行すると外部スキーマの一覧が確認できます。

PG_EXTERNAL_SCHEMA

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1