SlotKeeper
設計と品質
実行結果
設計書
DB探索
要件
設計を検索
データベース探索
読取り専用 · 論理参照はアプリが保証し、物理FKとは区別します。
表示名
和名・物理名
和名
物理名
テーブル・列を検索
拡大
縮小
全体表示
選択位置へ
予約作成要求の成功記録を表す / idempotency_records
要求した利用者の認証subject / principal_id
PK · VARCHAR(200) NOT NULL
Idempotency-Keyヘッダの値 / idempotency_key
PK · VARCHAR(128) NOT NULL
正規化した要求本文のSHA-256 / request_hash
VARCHAR(64) NOT NULL
元の成功応答のJSON / response_payload
TEXT NOT NULL
成功記録の有効期限 / expires_at
TIMESTAMPTZ NOT NULL
予約の作成と取消の履歴を表す / reservation_events
履歴ID / event_id
PK · VARCHAR(36) NOT NULL
対象の予約ID / reservation_id
VARCHAR(36) NOT NULL
操作した利用者の認証subject / actor_principal_id
VARCHAR(200) NOT NULL
操作種別 / action
VARCHAR(20) NOT NULL
操作日時 / occurred_at
TIMESTAMPTZ NOT NULL
資源の予約を表す / reservations
予約ID / reservation_id
PK · VARCHAR(36) NOT NULL
予約対象の資源ID / resource_id
VARCHAR(36) NOT NULL
予約者の認証subject / owner_principal_id
VARCHAR(200) NOT NULL
予約開始日時 / start_at
TIMESTAMPTZ NOT NULL
予約終了日時 / end_at
TIMESTAMPTZ NOT NULL
予約目的 / purpose
VARCHAR(200) NOT NULL
予約状態 / status
VARCHAR(20) NOT NULL
楽観ロック用の行バージョン / row_version
INT NOT NULL
予約対象となる会議室または備品を表す / resources
資源ID / resource_id
PK · VARCHAR(36) NOT NULL
資源名 / name
VARCHAR(100) NOT NULL
資源の説明 / description
VARCHAR(1000) NOT NULL
資源種別 / kind
VARCHAR(20) NOT NULL
新規予約を受け付けるかどうか / active
BOOLEAN NOT NULL
利用者に公開する楽観ロック用の行バージョン / row_version
INT NOT NULL
同一資源の予約作成・取消・無効化を競合させる内部制御版 / control_version
BIGINT NOT NULL
予約を作成した利用者を表す / users
認証基盤のsubject / principal_id
PK · VARCHAR(200) NOT NULL
初めて予約した日時 / first_seen_at
TIMESTAMPTZ NOT NULL
論理参照
reservation_events.reservation_id → reservations.reservation_id
DSQLに物理FKがないため、参照先の存在と整合はアプリが同一transactionで保証する(アプリ保証)
reservations.resource_id → resources.resource_id
DSQLに物理FKがないため、参照先の存在と整合はアプリが同一transactionで保証する(アプリ保証)
reservations.owner_principal_id → users.principal_id
DSQLに物理FKがないため、参照先の存在と整合はアプリが同一transactionで保証する(アプリ保証)
閉じる(Escape)