Skip to content

docs: add design note on foreign rel tables - #842

Open
adsharma wants to merge 1 commit into
mainfrom
docs-foreign-rel-tables
Open

docs: add design note on foreign rel tables#842
adsharma wants to merge 1 commit into
mainfrom
docs-foreign-rel-tables

Conversation

@adsharma

Copy link
Copy Markdown
Contributor

Adds docs/foreign_rel_table.md, the design reference for representing graphs in foreign SQL databases (DuckDB / PostgreSQL / ADBC):

  • The node_* / rel_* / csr_rel_* naming convention and how catalog extensions classify tables by prefix
  • Two-pass catalog initialization (node tables before rel tables)
  • Alternatives considered: Arrow in-memory scan, shadow NodeTableCatalogEntry + ForeignRelTable (shipped design), SQL join transpilation, attach-time CSR materialization
  • Rowid challenges per backend: DuckDB rowid, PostgreSQL primary key workaround, ADBC delegation

Companion code PR: LadybugDB/extensions#65

Document how foreign SQL databases represent graph elements: the
node_*/rel_*/csr_rel_* naming convention, the two-pass catalog
initialization order, and the alternatives considered (Arrow scan,
shadow entries + ForeignRelTable, SQL transpilation, attach-time CSR
materialization), plus the rowid challenges per backend (DuckDB, Postgres,
ADBC).
@adsharma
adsharma force-pushed the docs-foreign-rel-tables branch from 0fdd58d to 64b38a3 Compare August 27, 2026 16:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant