Návrh a změna schématu
Jak držet data konzistentní
- Entity a jejich vztahy
- Constrainty a referenční integrita
- Transakce pro související změny
- Dohledatelné migrace
Zkušenosti
Databázi nevnímám jen jako úložiště aplikace. Dobře navržené schéma, integrita dat a předvídatelné dotazy jsou základem stabilního systému.
Při práci s relačními databázemi začínám u vztahů mezi daty, jednoznačných constraintů a transakcí. Až potom přichází ORM, repository nebo konkrétní dotaz — nástroje mají podporovat správný model, ne ho nahrazovat.
Dnes nejčastěji pracuji s PostgreSQL. Dříve jsem používal MySQL a MariaDB, takže při návrhu vnímám i rozdíly platforem a volím řešení podle potřeb aplikace, objemu dat a provozních nároků.
Neznáte některý z pojmů? Přečtěte si stručné vysvětlení ve slovníku.
Co při práci s daty řeším
Model dat
Bezpečná změna
Výkon
Objem dat
Praktický postup
Doctrine používám pro běžnou práci s entitami a konzistentní mapování modelu. Pokud konkrétní dotaz vyžaduje přesnější kontrolu, agregace nebo lepší výkon, je přímo napsané SQL správnou a čitelnou volbou.
Nesnažím se za každou cenu schovat databázi za abstrakci. Důležitější je správnost dat, srozumitelnost a přiměřený výkon.
Návrh a změna schématu
Čtení a zpracování dat
Používané databáze a nástroje
Rád pomohu od návrhu schématu přes migrace až po hledání konkrétního problému v dotazech nebo importech.