Úvod
Naučíte se navrhovat a implementovat různé databázové objekty napříč SQL Serverem, Azure SQL Database, službou Azure SQL Managed Instance a SQL Database v Microsoft Fabric. Správný návrh databázových objektů je zásadní pro vytváření vysoce výkonných, škálovatelných a udržovatelných řešení SQL na těchto platformách.
Jako vývojář SQL jste si pravděpodobně všimli, že rozhodnutí o návrhu databázových objektů jsou mnohem trvalejší než kód aplikace. I když můžete refaktorovat třídu jazyka C# nebo přepsat mikroslužbu s minimálním dopadem, změna tabulky z úložiště řádků na úložiště sloupců, přidání sledování časové historie nebo přechod z identitního sloupce na sekvenční objekty vyžaduje migrace, které mohou zamknout tabulky na několik hodin a narušit produkční systémy.
Specializované typy objektů, které se v tomto modulu naučíte, nejsou pouze optimalizace výkonu, které můžete přidat později. V zásadě mění způsob ukládání, dotazování a ověřování dat na úrovni modulu. Výběr standardní tabulky, pokud potřebujete dočasné auditování, znamená ruční sestavování triggerů a tabulek historie. Výběr IDENTITY , kdy vaše architektura potřebuje distribuované sekvence, vynutí alternativní řešení ve vaší aplikační vrstvě.
Když tyto objekty pochopíte předem, můžete navrhovat systémy, které se můžou vyvíjet bez bolestných přepisů, které umožňují ověřování ve stylu blockchainu, ukládání do mezipaměti v milisekundách nebo analýzy v reálném čase, které se nedají snadno změnit, jakmile se zavazujete k jinému základu.
Co se naučíte
Prozkoumáte techniky návrhu databázových objektů, které se týkají azure SQL Database, SQL Database v Microsoft Fabric a Azure SQL Managed Instance:
Návrh a implementace tabulek – Vytváření tabulek s příslušnými datovými typy, velikostmi a strukturami Zjistěte, jak si vybrat mezi indexy rowstore a columnstore pro vaši úlohu, ať už vytváříte transakční aplikaci ve službě Azure SQL Database nebo provozní analytickou databázi v platformě Fabric.
Specializované typy tabulek – Použití tabulek v paměti pro scénáře s vysokou propustností ve službě SQL Managed Instance, dočasné tabulky pro záznamy auditu napříč všemi platformami, externí tabulky pro integraci Fabric Lakehouse, tabulky LEDGER pro aplikace kritické pro dodržování předpisů a tabulky GRAPH pro složité relace.
Omezení a ověřování – Implementace primárních klíčů, cizích klíčů, jedinečných klauzulí, omezení CHECK a výchozích hodnot, které zajišťují integritu dat, ať už vaše databáze obsluhuje mikroslužbu, podnikovou aplikaci nebo napájí analytické kanály.
Pokročilé funkce – Práce se sloupci JSON pro flexibilní schémata v aplikacích nativních pro cloud, implementace indexů optimalizovaných pro dotazovací modul vaší platformy a použití objektů SEQUENCE pro vzory generování distribuovaných ID
Strategie dělení na oddíly – Návrh a implementace dělení tabulek a indexů pro rozsáhlé databáze Základní informace pro databáze Hyperscale ve službě Azure SQL Database, vícetbítové databáze ve službě SQL Managed Instance a data časových řad v provozních databázích Fabric.
Proč na tom záleží
Efektivní návrh databázového objektu přímo ovlivňuje:
- Výkon – dobře navržené tabulky a indexy snižují dobu provádění dotazů.
- Integrita dat – Správná omezení zajišťují konzistenci a přesnost dat.
- Údržba – Návrh uspořádaných objektů zjednodušuje správu databáze.
- Funkce AI – Správné datové struktury umožňují integraci funkcí umělé inteligence
- Škálovatelnost – Dělení umožňuje efektivně zpracovávat velké datové sady
Začněme tím, že prozkoumáme, jak navrhnout a implementovat efektivní struktury tabulek napříč platformami SQL Microsoftu.