Files
query-orchestration/database/diagram.mmd
T
Michael McGuinness 62886dbba8 Merged in feature/removejob (pull request #95)
Remove Job

* removejob

* rmjob

* sync

* cleanup

* precommit

* startslow

* startslow

* startslow

* openapi

* clean

* test

* scripts

* littlecleanercmds

* mermaid
2025-03-10 11:03:00 +00:00

146 lines
3.0 KiB
Plaintext

erDiagram
clients ||--o{ clientCanSync : "has"
clients ||--o{ documents : "contains"
clients ||--o{ collectorVersions : "has"
clients ||--o{ collectorActiveVersions : "has current"
clients ||--o{ collectorMinCleanVersions : "has"
clients ||--o{ collectorMinTextVersions : "has"
clients ||--o{ collectorQueries : "maps to"
documents ||--o{ documentEntries : "has"
documents ||--o{ documentCleans : "has clean version"
documentCleans ||--o{ documentTextExtractions : "has text extraction"
documentTextExtractions ||--o{ results : "produces"
queries ||--o{ queryVersions : "has"
queries ||--o{ queryActiveVersions : "has current"
queries ||--o{ requiredQueries : "requires"
queries ||--o{ queryConfigs : "configured by"
queries ||--o{ collectorQueries : "used in"
queries ||--o{ results : "generates"
results ||--o{ resultDependencies : "depends on"
clients {
uuid id PK
TEXT name
}
clientCanSync {
uuid id PK
uuid clientId FK
boolean canSync
}
documents {
uuid id PK
uuid clientId FK
text hash
}
documentEntries {
uuid id PK
uuid documentId FK
text bucket
text key
}
documentCleans {
uuid id PK
uuid documentId FK
int version
text bucket
text key
}
documentTextExtractions {
uuid id PK
uuid cleanEntryId FK
int version
text bucket
text key
}
queries {
uuid id PK
queryType type
}
queryVersions {
uuid queryId FK
int id
timestamp addedAt
}
queryActiveVersions {
uuid id PK
uuid queryId FK
int versionId FK
}
requiredQueries {
uuid id PK
uuid queryId FK
uuid requiredQueryId FK
int addedVersion FK
int removedVersion FK
}
queryConfigs {
uuid id PK
uuid queryId FK
jsonb config
int addedVersion FK
int removedVersion FK
}
collectorVersions {
uuid clientId FK
int id
timestamp addedAt
}
collectorActiveVersions {
uuid id PK
uuid clientId FK
int versionId FK
}
collectorMinCleanVersions {
uuid id PK
uuid clientId FK
int versionId
int addedVersion FK
int removedVersion FK
}
collectorMinTextVersions {
uuid id PK
uuid clientId FK
int versionId
int addedVersion FK
int removedVersion FK
}
collectorQueries {
uuid id PK
uuid clientId FK
varchar name
uuid queryId FK
int addedVersion FK
int removedVersion FK
}
results {
uuid id PK
uuid textEntryId FK
uuid queryId FK
TEXT value
int queryVersion
}
resultDependencies {
uuid resultId FK
uuid requiredResultId FK
}