sql >> Databáze >  >> RDS >> Database

Návrh databáze S Vertabelo

Návrh databáze přesahuje pouhé kreslení čar a rámečků. V tomto článku se zamýšlím nad procesem datového modelování s důrazem na osvědčené postupy a také nad tím, jak používat nástroje k implementaci těchto osvědčených postupů k vytvoření dobrého návrhu databáze.

Návrh databáze je proces vytváření podrobného modelu databáze. Začátek databázového modelování zahrnuje pochopení obchodní oblasti a vyvíjené funkce.

Pokud si trochu nejste jisti kroky v procesu návrhu databáze, odkázal bych vás na tento popis kroků návrhu databáze.

Začněte modelovat:Promluvte si s firmou

To je klíčový princip v informačních technologiích. Řešíme obchodní problém z datové stránky tak, aby požadovaná data byla dostupná. Musíme mluvit s obchodníky, abychom pochopili jejich potřeby.

Musíme si klást otázky jako:

  • „Co je to doména?“
  • „Jaké jsou problémy v této oblasti?“
  • „Jaké problémy je třeba vyřešit?“
  • „Jaké informace potřebujeme uchovávat?“

Když mluvíme s firmou, můžeme zvážit kompromisy, které by mohly ovlivnit databázový model. Položíme také základy pro modelování.

Použijme konkrétní příklad. Vezměte si účetní aplikaci pro společnost:budete muset modelovat zákazníky, dodavatele, faktury, platby, účty, zůstatky atd. Musíte se s těmito pojmy a účetnictvím seznámit. Můžete to udělat pouze mluvením podnikatelům.

Uvedení konceptů do pořádku

Tato počáteční práce s byznysem vás zavede do modelu toho, jaké „koncepty“ musí být uloženy v databázi (přečtěte si toto vysvětlení různých úrovní modelů). Od konceptu toho, co potřebujeme uložit do databáze, tedy našeho konceptuálního modelu, přecházíme k logickému. Logický model dokumentuje obchodní koncepty a pravidla, na kterých vrstvíme detaily (možná vás bude zajímat tato diskuse o tom, zda je logické datové modelování zastaralé).

Pokud si nejste jisti různými typy datových modelů, přečtěte si náš článek o tom, jak implementovat koncepční, logické a fyzické datové modely pomocí Vertabelo.

Logický datový model přidává další informace ke konceptům, které jsme již zdokumentovali. Popisuje, jak jsou data strukturována a jak spolu entity souvisí. Kromě toho obsahuje informace o typech dat, která spravujeme.

Ve Vertabelo můžeme vytvořit logický datový model prostřednictvím logického diagramu entit a vztahů (ERD). Podívejte se na podrobnosti o tom, jak provádět modelování logických dat pomocí Vertabelo.

Zde je jednoduchý a dosud ne úplný logický datový model zákazníků, dodavatelů, faktur, plateb a účtů.

Další výhodou, kterou při práci s Vertabelem vidím, je to, že se nemusím příliš starat o přesný zápis. Modelovací nástroj vám umožní starat se o návrh a ne o specifika zápisů a symbolů diagramu entit a vztahů (ERD), což by vás samozřejmě mělo během procesu návrhu databáze zajímat nejméně.

Pojďme na fyzičku

Abychom mohli s databází skutečně pracovat, musíme přejít od našeho logického modelu k fyzickému. Nástroj Vertabelo nám umožňuje snadno vygenerovat fyzický datový model z logického. Nejprve vytvoříte logický datový model, poté můžete „auto-magicky " vygenerujte fyzický model výběrem logického modelu a kliknutím na "Generovat fyzický datový model" (přesné kroky naleznete v tomto podrobném průvodci).

Je zřejmé, že vygenerovaný fyzický datový model bude podobný logickému modelu; logické datové typy však budou převedeny na datové typy, které jsou povoleny pro konkrétní systém správy databází (DBMS), pro který generujete fyzický model. Fyzický model také ukáže, které atributy jsou cizí klíče mezi tabulkami. Můžete také chtít provést další modelování související s fyzickými aspekty databáze – například indexy a pohledy.

Navíc je možné přímo vytvořit fyzický datový model; nemusíte nejprve vytvořit logickou jedničku. Přechod přímo k fyzickému modelu bude mít smysl pro menší, více zaměřené modelovací aktivity, kde je obchodní doména lépe definovaná. Proces modelování fyzické databáze je přímočarý a neměl by představovat příliš mnoho problémů. Logický datový model se ukáže jako užitečný pro větší projekty, ale mít alespoň fyzický je lepší než nemít žádný.

Evoluce návrhu vaší databáze

Vývojáři si obecně myslí, že databázový model by se měl točit kolem skutečného kódu, zatímco datoví modeláři si myslí, že kód by měl být vytvořen na základě relativně statického datového modelu. Datové modelování dnes musí být spolupráce . Kód a datový model se vzájemně ovlivňují tam a zpět.

Potřebujeme tedy nástroj, který podporuje kolaborativní proces návrhu a modelování databáze. Kromě spolupráce s firmou na vytvoření koncepčního návrhu musí datoví modeláři během vývojového cyklu spolupracovat na aktualizaci logických a fyzických datových modelů podle potřeby. Modeláři a vývojáři musí model přizpůsobovat, dokud nebude skutečně podporovat obchodní a nefunkční požadavky systému.

Je zřejmé, že změny mohou vést k chybám. Opět platí, že mít nástroj může pomoci; nástroj, který neustále ověřuje váš datový model, je neocenitelný. Vertabelo má vestavěnou, živou, online validaci pro logické i fyzické datové modely, takže problémy jsou detekovány během modelování, nikoli během implementace. A chyby zůstávají viditelné pro každého, kdo na něm spolupracuje. Podle potřeby můžete také upravit nastavení ověření. Zde je příklad mého neúplného datového modelu s několika chybami a varováními.

Vrátíme-li se k příkladu účetnictví, můžete během vývoje zjistit, že pro faktury a platby nestačí modelovat jedinou měnu, jako jsou eura nebo dolary. Spíše byste museli ukládat částky s jejich příslušnou měnou a převádět je na „základní“ měnu, ve které je vedeno účetnictví společnosti. Možná budete také potřebovat směnné kurzy a historické informace o kurzech, které byly v minulosti použity pro převod měn.

To je místo, kde nástroj pro kolaborativní databázové modelování, jako je Vertabelo, skutečně prokazuje svou hodnotu. Další informace o používání Vertabelo pro kolaborativní modelování naleznete. Stačí kliknout a sdílet svůj model se členy svého týmu.

Fyzicky k implementaci

Jakmile budete mít svou první verzi fyzického modelu, pravděpodobně budete chtít začít pracovat se skutečnou databází. Za tímto účelem Vertabelo vygeneruje skripty SQL DDL (Data Definition Language) pro vytvoření databáze. Nebudu zde psát všechny podrobnosti, protože je můžete najít v článku online znalostní báze, jak vygenerovat SQL skript vytvářející databázi.

Řeknu vám z vlastní zkušenosti – je to taková vítaná funkce. Vyhnete se tomu, že se budete muset potýkat s rozmary různých databázových syntaxí SQL DDL, a můžete se soustředit na svůj návrh .

Verze

Nyní, jak jsem psal výše, se vaše modely budou vyvíjet, ať už během návrhu databáze, během vývoje softwaru nebo následně během skutečného používání vaší databáze. Chci si být jistý, že jste si vědomi dvou skvělých funkcí Vertabelo.

Za prvé, Vertabelo zahrnuje správu verzí. Můžete sledovat úpravy a spravovat verze datových modelů, takže je snadné „vrátit čas“ a v případě potřeby se vrátit k předchozí verzi. Jste-li disciplinovaní, můžete označit různé verze přesnými názvy, ať už to mohou být koncepty nebo skutečné verze databáze.

Další funkcí, o které jsem během modelování databáze snil mnoho let, je schopnost nástroje Vertabelo automaticky generovat migrační skripty mezi verzemi vašeho datového modelu. Ztratil jsem počet, kolikrát jsem musel opakovaně ručně psát a opravovat migrační skripty. Zde je příklad generování migračních skriptů mezi dvěma verzemi databáze pro online průzkum.

Jakým přínosem pro datové modeláře je, že mají nástroj, který efektivně spravuje verze a zjišťuje dopad změn mezi verzemi!

Velké modely

Za prvé, dovolte mi být upřímný. Ne vždy pracuji s velkými modely, ale někdy je musím vytvořit. Zde nám opět Vertabelo nabízí řešení pro uspořádání našich modelů.

Můžeme vizuálně seskupovat tabulky s obory; pokud byste chtěli vidět, jak to udělat, můžete se také podívat na video o správě velkých datových modelů ve Vertabelo.

Tuto techniku ​​můžete také použít při reverzním inženýrství ze skriptu SQL DDL do datového modelu.

Začněte s návrhem databáze

Pokud hledáte nějaké osvědčené postupy návrhu databáze, doporučuji vám podívat se na tento článek. Tipy pro lepší návrh databáze nemusíte hledat dále než v tomto článku. A podívejte se na tento, kde najdete rady, jak začít používat Vertabelo pro návrh databáze.


  1. Instalace SQL Server 2017 krok za krokem -1

  2. Existuje systém správy verzí pro změny struktury databáze?

  3. OBJEDNAT BY Alias ​​nefunguje

  4. Je možné spustit textový soubor z SQL dotazu?