GitHub verwendet überhaupt keine Foreign Keys (2016)
(github.com)FKs
-
erschweren Sharding
-
verschlechtern die Performance und
-
verursachen auch Probleme bei Online-Schema-Migrationen.
Deshalb verwenden wir keine FKs. Nirgendwo.
= In diesem Repo geht es um gh-ost, ein Schema-Migrationstool für MySQL, daher trifft das womöglich nicht auf andere Datenbanken zu. (Es ist zwar ein Issue von vor 3 Jahren, aber in einem neueren Kommentar wird erwähnt, dass PostgreSQL 11 auch FK-Sharding unterstützt, woraufhin der Autor erneut kommentiert hat.)
= Gemeint ist, dass zwar per ID zwischen Tabellen referenziert wird, aber keine FOREIGN KEY-Constraints verwendet werden.
1 Kommentare
Entscheidend wird wohl sein, wie die Integritätsprüfungen durchgeführt werden.