Multimodal RAG Platform  ·  View 16 of 16

Core Data Model

Nine entities carrying multi-tenancy, multimodal provenance and citation lineage.

Editable source SVG draw.io All views
tenant
tenant_id PK
name
retention_days
region
tenant...
source
source_id PK
tenant_id FK -> tenant
kind
uri
acl_ref
source...
document
document_id PK
source_id FK -> source
title
modality
sha256
version
document...
query_log
query_id PK
tenant_id FK -> tenant
user_id
question
latency_ms
cost_usd
query_log...
chunk
chunk_id PK
document_id FK -> document
parent_chunk_id FK -> chunk
modality
text
page
char_start
char_end
chunk...
asset
asset_id PK
document_id FK -> document
kind
page
bbox
timecode_ms
uri
asset...
citation
citation_id PK
query_id FK -> query_log
chunk_id FK -> chunk
span
score
citation...
embedding
embedding_id PK
chunk_id FK -> chunk
space
model
dim
vector_ref
embedding...
table_fact
table_id PK
asset_id FK -> asset
column_schema
row_count
storage_uri
table_fact...
1 : N
1 : N
1 : N
1 : N
1 : N
1 : N
1 : N
1 : N
1 : N
1 : N
1 : N
1 : N
1 : 1
1 : 1
1 : N
1 : N
1 : N
1 : N
1 : N
1 : N
Core Data Model
Core Data Model
chunk.parent_chunk_id carries small-to-big retrieval. Provenance columns are what make a citation clickable.
chunk.parent_chunk_id carries small-to-big retrieval. Provenance columns are what make a citation clickable.
v 1.0 · owner Data Architecture
v 1.0 · owner Data Architecture
Text is not SVG - cannot display

Provenance chain

  • document to chunk to embedding, and document to asset
  • asset carries page, bounding box and timecode
  • chunk carries page and character offsets

Retrieval structures

  • chunk.parent_chunk_id implements small-to-big retrieval
  • embedding.space distinguishes text from image vectors
  • table_fact points at typed rows for SQL aggregation

Accountability

  • query_log records question, latency and cost per request
  • citation joins an answer span back to the exact chunk
  • tenant_id partitions everything and drives retention