はじめに
本記事では、データベース作成時に自動的に作成されるスキーマについてご紹介いたします。データベース作成時に自動的に作成されるスキーマ
スキーマ名 | 説明 |
---|---|
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(地理空間)パッケージ用のライブラリが格納されているスキーマです。 |
(※)データコレクターについては、以下の記事をご参照ください。
システムテーブルの保存条件について
http://vertica-tech.ashisuto.co.jp/datacollector/
内部的に利用されるスキーマについて
スキーマ名が「v_」ではじまるスキーマは、データベース内で内部的に利用されるスキーマのため、基本的には意識する必要はありません。データベースの設定情報等を参照する場合も、「v_」ではじまるスキーマ内に格納されているシステムテーブルを検索することになりますが、本記事で紹介している全てのスキーマはSEARCH_PATHにデフォルトで設定されているため、意識する必要はありません。
(※)SEARCH_PATHの詳細については、以下の記事をご参照ください。
スキーマ修飾を省略する方法
http://vertica-tech.ashisuto.co.jp/search-path/
publicスキーマについて
publicスキーマは、ユーザオブジェクトのデフォルトスキーマです。オブジェクト作成時にスキーマを指定しなければpublicスキーマにオブジェクトが作成されます。ユーザオブジェクト用のスキーマを複数作成することで、ユーザごとに参照できるスキーマを限定してセキュリティレベルを高めたり、アプリケーションごとにスキーマを分けることで管理がしやすくなります。
参考情報
V_CATALOG Schemahttps://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