はじめに
本記事では、データベース作成時に自動的に作成されるスキーマについてご紹介いたします。
データベース作成時に自動的に作成されるスキーマ
スキーマ名 | 説明 |
|---|---|
v_internal | すべてのデータコレクターテーブルと、「vs_」で始まる仮想システムビューが含まれます。(※) |
v_catalog | v_catalog.tables、v_catalog.nodesなどのデータベースカタログに関連するシステムテーブルが含まれます。 |
v_monitor | v_monitor.sessions、v_monitor.memory_usageなどのデータベース監視に関連するシステムテーブルが含まれます。 |
public | ユーザーオブジェクトのデフォルトスキーマです。オブジェクト作成時にスキーマ名が指定されていない場合、publicスキーマに作成されます。 |
v_txtindex | テキスト検索および自然言語処理パッケージ用のライブラリが格納されているスキーマです。 |
v_func | Geospatial(地理空間)パッケージ用のライブラリが格納されているスキーマです。 |
(※)データコレクターについては、以下の記事をご参照ください。
システムテーブルの保存条件について
https://www.ashisuto.co.jp/cm/analytics-database/datacollector.html
内部的に利用されるスキーマについて
スキーマ名が「v_」ではじまるスキーマは、データベース内で内部的に利用されるスキーマのため、基本的には意識する必要はありません。
データベースの設定情報等を参照する場合も、「v_」ではじまるスキーマ内に格納されているシステムテーブルを検索することになりますが、本記事で紹介している全てのスキーマはSEARCH_PATHにデフォルトで設定されているため、意識する必要はありません。
(※)SEARCH_PATHの詳細については、以下の記事をご参照ください。
スキーマ修飾を省略する方法
https://www.ashisuto.co.jp/cm/analytics-database/search-path.html
publicスキーマについて
publicスキーマは、ユーザオブジェクトのデフォルトスキーマです。オブジェクト作成時にスキーマを指定しなければpublicスキーマにオブジェクトが作成されます。
ユーザオブジェクト用のスキーマを複数作成することで、ユーザごとに参照できるスキーマを限定してセキュリティレベルを高めたり、アプリケーションごとにスキーマを分けることで管理がしやすくなります。
参考情報
V_CATALOG Schema
https://www.vertica.com/docs/10.1.x/HTML/Content/Authoring/SQLReferenceManual/SystemTables/CATALOG/V_CATALOGSchema.htm
V_MONITOR Schema
https://www.vertica.com/docs/10.1.x/HTML/Content/Authoring/SQLReferenceManual/SystemTables/MONITOR/V_MONITORSchema.htm
検証バージョンについて
この記事の内容はVertica 10.1で確認しています。
更新履歴
2021/07/30 本記事を公開