0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Redash8.0のMetadata

Last updated at Posted at 2024-10-09

ER図

一覧

データベーステーブルの概要

テーブル一覧

  • access_permissions: アクセス権の管理テーブル。オブジェクトタイプ、オブジェクトID、アクセス権種別、付与者ID、受取者IDなどを管理。
  • alembic_version: マイグレーションのバージョン管理テーブル。
  • alert_subscriptions: アラートの購読情報を管理。アラートID、ユーザーID、通知先IDなど。
  • alerts: アラートの設定を管理。アラート名、クエリID、ユーザーID、状態、リトリガー設定など。
  • api_keys: APIキーの管理。オブジェクトタイプ、オブジェクトID、APIキー、組織IDなど。
  • changes: 変更履歴を管理。変更内容、ユーザーID、オブジェクトタイプ、オブジェクトIDなど。
  • dashboards: ダッシュボードの情報を管理。名前、スラッグ、バージョン、フィルター機能の有無、アーカイブフラグなど。
  • data_source_groups: データソースとグループの関連付けを管理。データソースID、グループID、閲覧専用かどうかを記録。
  • data_sources: データソースの設定を管理。名前、タイプ、オプション、作成日など。
  • events: イベントのログ。アクション、オブジェクトタイプ、ユーザーID、作成日など。
  • favorites: お気に入り機能の管理。オブジェクトタイプ、オブジェクトID、ユーザーIDなど。
  • groups: グループの情報を管理。名前、タイプ、権限など。
  • notification_destinations: 通知先の情報を管理。名前、タイプ、オプションなど。
  • organizations: 組織の情報を管理。名前、スラッグ、設定など。
  • queries: クエリの情報を管理。名前、説明、クエリ内容、APIキー、スケジュールなど。
  • query_results: クエリの実行結果を保存。データ、実行時間、取得日時など。
  • query_snippets: クエリのスニペット(共通コード)。トリガー、スニペット内容など。
  • users: ユーザー情報を管理。名前、メールアドレス、グループ、APIキーなど。
  • visualizations: 可視化(グラフなど)の設定を管理。名前、タイプ、オプションなど。
  • widgets: ウィジェット(ダッシュボード上のコンポーネント)。ダッシュボードID、幅、オプションなど。

各テーブルには、主キーや外部キーが設定され、データの一貫性が保たれています。また、特定の条件でユニークなインデックスが作られています。

テーブル詳細

access_permissions

説明: アクセス権の管理テーブル。

カラム:

  • object_type (character varying(255), NOT NULL)
  • object_id (integer, NOT NULL)
  • id (integer, NOT NULL, デフォルト: nextval('access_permissions_id_seq'::regclass))
  • access_type (character varying(255), NOT NULL)
  • grantor_id (integer, NOT NULL)
  • grantee_id (integer, NOT NULL)

インデックス:

  • access_permissions_pkey PRIMARY KEY, btree (id)

外部キー制約:

  • grantor_idusers(id)
  • grantee_idusers(id)

alembic_version

説明: マイグレーションのバージョン管理テーブル。

カラム:

  • version_num (character varying(32), NOT NULL)

インデックス:

  • alembic_version_pkc PRIMARY KEY, btree (version_num)

alert_subscriptions

説明: アラートの購読情報を管理。

カラム:

  • updated_at (timestamp with time zone, NOT NULL)
  • created_at (timestamp with time zone, NOT NULL)
  • id (integer, NOT NULL, デフォルト: nextval('alert_subscriptions_id_seq'::regclass))
  • user_id (integer, NOT NULL)
  • destination_id (integer)
  • alert_id (integer, NOT NULL)

インデックス:

  • alert_subscriptions_pkey PRIMARY KEY, btree (id)
  • alert_subscriptions_destination_id_alert_id UNIQUE, btree (destination_id, alert_id)

外部キー制約:

  • alert_idalerts(id)
  • destination_idnotification_destinations(id)
  • user_idusers(id)

alerts

説明: アラートの設定を管理。

カラム:

  • updated_at (timestamp with time zone, NOT NULL)
  • created_at (timestamp with time zone, NOT NULL)
  • id (integer, NOT NULL, デフォルト: nextval('alerts_id_seq'::regclass))
  • name (character varying(255), NOT NULL)
  • query_id (integer, NOT NULL)
  • user_id (integer, NOT NULL)
  • options (text, NOT NULL)
  • state (character varying(255), NOT NULL)
  • last_triggered_at (timestamp with time zone)
  • rearm (integer)

インデックス:

  • alerts_pkey PRIMARY KEY, btree (id)

外部キー制約:

  • query_idqueries(id)
  • user_idusers(id)

api_keys

説明: APIキーの管理。

カラム:

  • object_type (character varying(255), NOT NULL)
  • object_id (integer, NOT NULL)
  • updated_at (timestamp with time zone, NOT NULL)
  • created_at (timestamp with time zone, NOT NULL)
  • id (integer, NOT NULL, デフォルト: nextval('api_keys_id_seq'::regclass))
  • org_id (integer, NOT NULL)
  • api_key (character varying(255), NOT NULL)
  • active (boolean, NOT NULL)
  • created_by_id (integer)

インデックス:

  • api_keys_pkey PRIMARY KEY, btree (id)
  • api_keys_object_type_object_id btree (object_type, object_id)
  • ix_api_keys_api_key btree (api_key)

外部キー制約:

  • created_by_idusers(id)
  • org_idorganizations(id)

changes

説明: 変更履歴を管理。

カラム:

  • object_type (character varying(255), NOT NULL)
  • object_id (integer, NOT NULL)
  • id (integer, NOT NULL, デフォルト: nextval('changes_id_seq'::regclass))
  • object_version (integer, NOT NULL)
  • user_id (integer, NOT NULL)
  • change (text, NOT NULL)
  • created_at (timestamp with time zone, NOT NULL)

インデックス:

  • changes_pkey PRIMARY KEY, btree (id)

外部キー制約:

  • user_idusers(id)

dashboards

説明: ダッシュボードの情報を管理。

カラム:

  • updated_at (timestamp with time zone, NOT NULL)
  • created_at (timestamp with time zone, NOT NULL)
  • id (integer, NOT NULL, デフォルト: nextval('dashboards_id_seq'::regclass))
  • version (integer, NOT NULL)
  • org_id (integer, NOT NULL)
  • slug (character varying(140), NOT NULL)
  • name (character varying(100), NOT NULL)
  • user_id (integer, NOT NULL)
  • layout (text, NOT NULL)
  • dashboard_filters_enabled (boolean, NOT NULL)
  • is_archived (boolean, NOT NULL)
  • is_draft (boolean, NOT NULL)
  • tags (character varying[])

インデックス:

  • dashboards_pkey PRIMARY KEY, btree (id)
  • ix_dashboards_is_archived btree (is_archived)
  • ix_dashboards_is_draft btree (is_draft)
  • ix_dashboards_slug btree (slug)

外部キー制約:

  • org_idorganizations(id)
  • user_idusers(id)

data_source_groups

説明: データソースとグループの関連付けを管理。

カラム:

  • id (integer, NOT NULL, デフォルト: nextval('data_source_groups_id_seq'::regclass))
  • data_source_id (integer, NOT NULL)
  • group_id (integer, NOT NULL)
  • view_only (boolean, NOT NULL)

インデックス:

  • data_source_groups_pkey PRIMARY KEY, btree (id)

外部キー制約:

  • data_source_iddata_sources(id)
  • group_idgroups(id)

data_sources

説明: データソースの設定を管理。

カラム:

  • id (integer, NOT NULL, デフォルト: nextval('data_sources_id_seq'::regclass))
  • org_id (integer, NOT NULL)
  • name (character varying(255), NOT NULL)
  • type (character varying(255), NOT NULL)
  • encrypted_options (bytea, NOT NULL)
  • queue_name (character varying(255), NOT NULL)
  • scheduled_queue_name (character varying(255), NOT NULL)
  • created_at (timestamp with time zone, NOT NULL)

インデックス:

  • data_sources_pkey PRIMARY KEY, btree (id)
  • data_sources_org_id_name btree (org_id, name)

外部キー制約:

  • org_idorganizations(id)

events

説明: イベントのログを管理。

カラム:

  • id (integer, NOT NULL, デフォルト: nextval('events_id_seq'::regclass))
  • org_id (integer, NOT NULL)
  • user_id (integer)
  • action (character varying(255), NOT NULL)(login、load_favorites、view、list、create、test、edit、view_source、execute_query、execute、update、edit_name、toggle_published)
  • object_type (character varying(255), NOT NULL) (redash、query、dashboard、page、datasource、query_snippet、data_source、visualization、widget、group、user、settings)
  • object_id (character varying(255))
  • additional_properties (text)
  • created_at (timestamp with time zone, NOT NULL)

インデックス:

  • events_pkey PRIMARY KEY, btree (id)

外部キー制約:

  • org_idorganizations(id)
  • user_idusers(id)

favorites

説明: お気に入り機能の管理。

カラム:

  • updated_at (timestamp with time zone, NOT NULL)
  • created_at (timestamp with time zone, NOT NULL)
  • id (integer, NOT NULL, デフォルト: nextval('favorites_id_seq'::regclass))
  • org_id (integer, NOT NULL)
  • object_type (character varying(255), NOT NULL)
  • object_id (integer, NOT NULL)
  • user_id (integer, NOT NULL)

インデックス:

  • favorites_pkey PRIMARY KEY, btree (id)
  • unique_favorite UNIQUE CONSTRAINT, btree (object_type, object_id, user_id)

外部キー制約:

  • org_idorganizations(id)
  • user_idusers(id)

groups

説明: グループの情報を管理。

カラム:

  • id (integer, NOT NULL, デフォルト: nextval('groups_id_seq'::regclass))
  • org_id (integer, NOT NULL)
  • type (character varying(255), NOT NULL)
  • name (character varying(100), NOT NULL)
  • permissions (character varying(255)[], NOT NULL)
  • created_at (timestamp with time zone, NOT NULL)

インデックス:

  • groups_pkey PRIMARY KEY, btree (id)

外部キー制約:

  • org_idorganizations(id)

notification_destinations

説明: 通知先の情報を管理。

カラム:

  • id (integer, NOT NULL, デフォルト: nextval('notification_destinations_id_seq'::regclass))
  • org_id (integer, NOT NULL)
  • user_id (integer, NOT NULL)
  • name (character varying(255), NOT NULL)
  • type (character varying(255), NOT NULL)
  • options (text, NOT NULL)
  • created_at (timestamp with time zone, NOT NULL)

インデックス:

  • notification_destinations_pkey PRIMARY KEY, btree (id)
  • notification_destinations_org_id_name UNIQUE, btree (org_id, name)

外部キー制約:

  • org_idorganizations(id)
  • user_idusers(id)

organizations

説明: 組織の情報を管理。

カラム:

  • updated_at (timestamp with time zone, NOT NULL)
  • created_at (timestamp with time zone, NOT NULL)
  • id (integer, NOT NULL, デフォルト: nextval('organizations_id_seq'::regclass))
  • name (character varying(255), NOT NULL)
  • slug (character varying(255), NOT NULL)
  • settings (text, NOT NULL)

インデックス:

  • organizations_pkey PRIMARY KEY, btree (id)
  • organizations_slug_key UNIQUE CONSTRAINT, btree (slug)

queries

説明: クエリの情報を管理。

カラム:

  • updated_at (timestamp with time zone, NOT NULL)
  • created_at (timestamp with time zone, NOT NULL)
  • id (integer, NOT NULL, デフォルト: nextval('queries_id_seq'::regclass))
  • version (integer, NOT NULL)
  • org_id (integer, NOT NULL)
  • data_source_id (integer)
  • latest_query_data_id (integer)
  • name (character varying(255), NOT NULL)
  • description (character varying(4096))
  • query (text, NOT NULL)
  • query_hash (character varying(32), NOT NULL)
  • api_key (character varying(40), NOT NULL)
  • user_id (integer, NOT NULL)
  • last_modified_by_id (integer)
  • is_archived (boolean, NOT NULL)
  • is_draft (boolean, NOT NULL)
  • schedule (text)
  • schedule_failures (integer, NOT NULL)
  • options (text, NOT NULL)
  • search_vector (tsvector)
  • tags (character varying[])

インデックス:

  • queries_pkey PRIMARY KEY, btree (id)
  • ix_queries_is_archived btree (is_archived)
  • ix_queries_is_draft btree (is_draft)
  • ix_queries_search_vector gin (search_vector)

外部キー制約:

  • data_source_iddata_sources(id)
  • latest_query_data_idquery_results(id)
  • org_idorganizations(id)
  • user_idusers(id)
  • last_modified_by_idusers(id)

query_results

説明: クエリの実行結果を保存。

カラム:

  • id (integer, NOT NULL, デフォルト: nextval('query_results_id_seq'::regclass))
  • org_id (integer, NOT NULL)
  • data_source_id (integer, NOT NULL)
  • query_hash (character varying(32), NOT NULL)
  • query (text, NOT NULL)
  • data (text, NOT NULL)
  • runtime (double precision, NOT NULL)
  • retrieved_at (timestamp with time zone, NOT NULL)

インデックス:

  • query_results_pkey PRIMARY KEY, btree (id)
  • ix_query_results_query_hash btree (query_hash)

外部キー制約:

  • data_source_iddata_sources(id)
  • org_idorganizations(id)

query_snippets

説明: クエリのスニペット(共通コード)。

カラム:

  • updated_at (timestamp with time zone, NOT NULL)
  • created_at (timestamp with time zone, NOT NULL)
  • id (integer, NOT NULL, デフォルト: nextval('query_snippets_id_seq'::regclass))
  • org_id (integer, NOT NULL)
  • trigger (character varying(255), NOT NULL)
  • description (text, NOT NULL)
  • user_id (integer, NOT NULL)
  • snippet (text, NOT NULL)

インデックス:

  • query_snippets_pkey PRIMARY KEY, btree (id)
  • query_snippets_trigger_key UNIQUE CONSTRAINT, btree (trigger)

外部キー制約:

  • org_idorganizations(id)
  • user_idusers(id)

users

説明: ユーザー情報を管理。

カラム:

  • updated_at (timestamp with time zone, NOT NULL)
  • created_at (timestamp with time zone, NOT NULL)
  • id (integer, NOT NULL, デフォルト: nextval('users_id_seq'::regclass))
  • org_id (integer, NOT NULL)
  • name (character varying(320), NOT NULL)
  • email (character varying(255), NOT NULL)
  • profile_image_url (character varying(320))
  • password_hash (character varying(128))
  • groups (integer[])
  • api_key (character varying(40), NOT NULL)
  • disabled_at (timestamp with time zone)
  • details (json, デフォルト: '{}'::json)

インデックス:

  • users_pkey PRIMARY KEY, btree (id)
  • users_api_key_key UNIQUE CONSTRAINT, btree (api_key)
  • users_org_id_email UNIQUE, btree (org_id, email)

外部キー制約:

  • org_idorganizations(id)

visualizations

説明: 可視化(グラフなど)の設定を管理。

カラム:

  • updated_at (timestamp with time zone, NOT NULL)
  • created_at (timestamp with time zone, NOT NULL)
  • id (integer, NOT NULL, デフォルト: nextval('visualizations_id_seq'::regclass))
  • type (character varying(100), NOT NULL)
  • query_id (integer, NOT NULL)
  • name (character varying(255), NOT NULL)
  • description (character varying(4096))
  • options (text, NOT NULL)

インデックス:

  • visualizations_pkey PRIMARY KEY, btree (id)

外部キー制約:

  • query_idqueries(id)

widgets

説明: ウィジェット(ダッシュボード上のコンポーネント)。

カラム:

  • updated_at (timestamp with time zone, NOT NULL)
  • created_at (timestamp with time zone, NOT NULL)
  • id (integer, NOT NULL, デフォルト: nextval('widgets_id_seq'::regclass))
  • visualization_id (integer)
  • text (text)
  • width (integer, NOT NULL)
  • options (text, NOT NULL)
  • dashboard_id (integer, NOT NULL)

インデックス:

  • widgets_pkey PRIMARY KEY, btree (id)
  • ix_widgets_dashboard_id btree (dashboard_id)

外部キー制約:

  • dashboard_iddashboards(id)
  • visualization_idvisualizations(id)
0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?