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

Jak se stát návrhářem databáze

Databázové modelování má určitou vědu, umění, spoustu technik a docela dost obecné moudrosti. Všichni dobří databázoví modeláři hodně studují, hodně cvičí, pěstují kreativitu a rozvíjejí mezilidské dovednosti.

Cesta stát se návrhářem databází se může zdát náročná. Pokud ale rádi pracujete s daty, dáváte strukturu tam, kde zdánlivě žádná není, a pomáháte lidem najít skryté pravdy v přílivech informací, bude pro vás tato cesta rozhodně příjemná.

Co je datové modelování?

Pěkně popořádku. Ujasněme si, co je datové modelování. Datové modelování je proces vytváření konceptuální reprezentace informací, které mají být obsaženy v databázi. Výsledkem tohoto procesu je datový model s datovými objekty (entitami, pro které mají být informace uloženy), asociacemi nebo vztahy mezi nimi a pravidly nebo omezeními, kterými se řídí informace v databázi.

Osoba odpovědná za datové modelování je návrhář databáze, i když modelování často patří mezi povinnosti databázového inženýra nebo architekta. Práce návrháře databáze není omezena na pouhé kreslení diagramů, ale zahrnuje kontrolu požadavků – buď čtením dokumentace nebo dotazováním uživatelů – a poté vytvořením datového modelu, který těmto požadavkům vyhovuje. To je důvod, proč potřebujete datové modelování.

Jakmile je datový model vytvořen, musí návrhář tento model podpořit a projít jeho vývojem a životním cyklem. To znamená úzkou spolupráci s programátory, analytiky a kýmkoli dalším, kdo potřebuje model používat. Znamená to také přijímat požadavky na změny modelu, přijímat návrhy na jeho vylepšení nebo jej přizpůsobovat novým potřebám.

Kroky ke kariéře návrháře databází

Řím nebyl postaven za den a návrhářem databází se nestanete přes noc. Abyste se dostali do cíle, musíte provést řadu kroků. Začíná to získáním titulu, pak prohloubením některých specifických znalostí, naučením se používat nástroje, získáním certifikace, stanete se expertem na určité specifické dovednosti a nakonec se naučíte dovednosti nepřímo související s činností, kterou chcete vykonávat – tzv. „soft“ dovednosti. Ale pojďme je vzít krok za krokem.

1. Získání titulu

Prvním důležitým milníkem v kariéře každého návrháře databází je získání titulu. Přidružené a bakalářské programy jsou nejlepší cestou pro ty, kteří chtějí získat úvodní znalosti o návrhu databází a vývoji softwaru. Přidružené studijní programy pokrývají specifické aspekty návrhu databází a softwaru a zároveň nabízejí obecnější vzdělávací a obchodní kurzy. Bakalářské studijní programy nabízejí ještě více kurzů souvisejících s podnikáním a mohou připravit absolventy na vyšší pozice v oblasti informatiky nebo vývoje softwaru.

Nejzřetelnějším rozdílem mezi těmito dvěma typy titulů (kromě nákladů) je čas potřebný k získání každého z nich. U prezenčního studenta trvá přidružený studijní program obvykle dva roky. Na druhou stranu bakalářský studijní program trvá u prezenčního studenta obvykle čtyři roky. Je zřejmé, že čtyři roky bakalářského studijního programu vám umožní naučit se mnohem více, než byste se naučili v přidruženém studijním programu.

Můžete absolvovat krátký kurz návrhu databáze. Ale krátké kurzy obvykle vyžadují, abyste měli nějaké předchozí znalosti v různých aspektech informatiky. Existují také kurzy určené pro lidi, kteří nejsou počítačově gramotní. Vertabelo Academy má širokou škálu takových kurzů speciálně navržených pro lidi bez IT.

Máte také možnost, pokud jste dostatečně disciplinovaní, učit se sami, aniž byste absolvovali nějaký titul nebo kurz. V knihách o návrhu databází, které si můžete přečíst, je mnoho možností. Jen mějte na paměti, že pokud jde o přípravu životopisu, nepomůže vám zmínit se, že jste četli tu či onu knihu o designu. Naproti tomu pomáhá mít titul nebo alespoň certifikát, že jste absolvovali kurz.

2. Prohloubte své znalosti

Jakmile získáte potřebné znalosti o návrhu databází, konsolidujte je a posilujte je skutečnou praxí. Teorie, kterou se naučíte v kurzu nebo diplomu, i spolu s cvičeními, která máte vyřešit, vám pouze poskytne představu o problémech, se kterými se ve své práci návrháře databází potýkáte. Tyto dodatečné znalosti vás mimochodem lépe připraví na to, když budete muset jít na pracovní pohovor na pozici návrháře databází. Níže jsou uvedeny dovednosti, které musíte zvládnout, abyste se stali návrhářem databází.

Normalizace, klíče a instinkt návrháře

Ať už jste absolvovali titul nebo kurz nebo jste jen četli knihu, nepochybně jste se naučili něco o první, druhé a třetí normální formě. Ale abyste posílili své znalosti, podívejte se na různé diagramy vztahů mezi entitami (předpokládám, že již víte, co jsou ERD a k čemu se používají) a analyzujte je, abyste zjistili, zda jsou normalizované. Měli byste být schopni určit, v jaké normální formě jsou.

V tomto diagramu jsou stejné entity znázorněny dvěma různými způsoby. Dokážete na první pohled zjistit, v jaké normální formě je tabulka vlevo a v jaké je schéma vpravo?

Doporučuji také prostudovat problémy, které může schéma bez normalizace způsobit. Můžete porovnat prostor, který zabírá nenormalizované schéma a normalizované schéma stejných dat, abyste viděli rozdíly – samozřejmě s tabulkami naplněnými přiměřeným množstvím dat. Nebo můžete zkusit spustit dotazy na nenormalizovaných tabulkách, abyste viděli nekonzistence, které se objeví.

Existuje několik věcí, které se naučíte praxí. Za prvé, nikdy byste neměli opouštět stůl bez primárního klíče. Za druhé, když spolu dvě tabulky souvisejí, měli byste definovat cizí klíč, který spojuje zúčastněná pole obou tabulek. Pokud tyto tipy zapomenete, připomene vám to, když najdete duplicitní řádky v tabulce nebo osiřelé prvky ve vztazích master-detail, a to vám způsobí noční můry.

Když už mluvíme o klíčích, pravděpodobně jste slyšeli o přirozených klíčích a náhradních klíčích. Dokud nebudete mít spoustu zkušeností, musíte si udělat čas na přemýšlení o tom, jaký typ klíče dáte každé tabulce, kterou vytvoříte. Jakmile uděláte několik desítek ERD, vyvinete si instinkt návrháře vytvořit schémata ve třetí normální formě bez námahy, se správnými vztahy a nejlepším klíčem pro každou tabulku.

Datové sklady:dimenze, míry, modely schémat a další koncepty

Koncepty návrhu databáze se obvykle vyučují s ohledem na transakční zpracování. Dnes se však návrháři stále častěji zabývají databázemi pro analytické zpracování. Tyto databáze jsou známé jako datové sklady a mají některé nápady a techniky návrhu, které se liší od konvenčních databází.

Datové sklady jsou budovány pomocí tradičního relačního modelu, ale s několika novými dodatečnými koncepty. Některá pole například představují rozměry, zatímco některá představují míry. Některé tabulky shromažďují fakta, zatímco jiné seskupují dimenze. Nyní existují specifické modely návrhu pro schémata datových skladů, jako je hvězda, sněhová vločka a galaxie.

Nakonec datové sklady zavádějí techniku ​​zvanou denormalizace. Na rozdíl od toho, co si možná myslíte, denormalizace neznamená zvrácení jakýchkoli předchozích pokusů o normalizaci. Abyste pochopili, k čemu se denormalizace používá, představte si ji jako techniku ​​pro zavedení redundance do návrhů tabulek pro zjednodušení dotazů a vizualizace dat.

3. Zvolte vaše nástroje

Kromě teoretických znalostí, které vám dává studium, a praktických znalostí, které vám dávají vaše zkušenosti, musíte ovládat nástroje pro návrh databází. Nástroje databázového návrháře jsou ty, které vám pomohou s úkolem vytvářet datové modely.

Pravdou je, že dobří návrháři mohou dělat svou práci bez jakéhokoli jiného nástroje než tužky a papíru. Ale aby byli efektivní a splnili své úkoly v co nejkratším čase, musí používat nástroje, které jim pomohou být efektivnější.

Nástroje, které návrháři databází šetří nejvíce času, jsou návrhové nástroje ERD, jako je platforma Vertabelo.com. Tyto nástroje zjednodušují práci návrháře databází při kreslení diagramů, automatizují vytváření SQL skriptů a generují diagramy ze stávajících databází.

Dalším základním nástrojem každého návrháře databází je jazyk SQL. K vytváření nebo úpravě schémat je vyžadován jazyk DDL (data definition language), ale chcete-li být návrhářem databází, musíte také vědět, jak psát dotazy SQL, abyste získali informace z databáze.

Existují další užitečné nástroje pro návrháře databází, jako jsou nástroje pro monitorování a profilování a programovací jazyky pro analýzu dat a správce databází. Pokud tyto nástroje znáte, jejich uvedením přidáte hodnotu k vašemu životopisu.

4. Získejte certifikaci

Mluvili jsme o nástrojích pro zvládnutí, ale jak ve svém životopisu prokážete, že umíte psát SQL nebo že umíte používat nějaký návrhový nástroj ERD? Učiníte tak absolvováním konkrétních kurzů, složením zkoušek a získáním certifikace.

V zásadě existují dva typy certifikací:ty, které ukazují, že jste zvládli určitý nástroj, a ty, které ukazují, že máte určitou dovednost. Obě přidávají hodnotu, když se zobrazí ve vašem životopisu.

Společnosti, které vyvíjejí nástroje, často nabízejí školicí programy, a když některý z těchto školicích programů dokončíte, získáte certifikát jako důkaz, že jste nástroj zvládli. Tyto certifikace jsou často zdarma. Mají zájem o certifikaci mnoha profesionálů v používání jejich nástrojů, takže je v jejich nejlepším zájmu, aby vás vyškolili, abyste je používali, aniž byste za to (mnohem) účtovali.

Certifikace v určité dovednosti – jako je například programování SQL, správa databáze NoSQL nebo návrh ETL procesů – jsou často drahé, ale vašemu životopisu přidají velkou hodnotu, hlavně proto, že ušetří tazatelům nutnost hodnotit, zda opravdu vědět, jak dělat svou práci. Postgraduální kurzy jsou vhodnou volbou, pokud již máte titul.

5. Přejít celou cestu

Už jste studovali a naučili se materiály, abyste mohli být návrhářem databází. Prohloubili jste své znalosti. Absolvovali jste kurzy a získali certifikace. Co vám chybí k tomu, abyste se stali návrhářem databází? Vědět, jak dělat klíčové úkoly a být schopen je provádět od začátku do konce.

Modelování databáze

Možná víte, jak nakreslit ERD, ale modelování databáze zahrnuje více než to. Chcete-li být návrhářem databází, musíte být schopni přejít od průzkumu a analýzy požadavků ke generování a spouštění skriptů pro transformaci diagramů na fungující databáze.

Psaní složitých dotazů v SQL

Nejde jen o to, aby dotaz vrátil data, která vracet má, ale aby je vrátil co nejrychleji. Vědět, jak psát dotazy SQL, znamená uvažovat se stejnou logikou jako databázový stroj, shromáždit požadované informace a dodat je s minimálním úsilím.

Optimalizace výkonu

Optimalizace výkonu databáze zahrnuje vytvoření vhodného návrhu a monitorování databázových aktivit pro detekci operací, které snižují výkon. Zahrnuje to také vědět, jak řešit problémy s výkonem, ať už jde o vytváření indexů, přepracování schématu nebo informování DBA o potenciálních problémech s optimalizací databázového stroje.

Zabezpečení databáze

I když přidělování oprávnění a oprávnění k databázovým objektům obvykle není úkolem návrháře databáze, může ve svých návrzích identifikovat oblasti odpovědnosti, které správci usnadňují správné přidělování oprávnění každému uživateli databáze.

6. Získejte měkké dovednosti

Tento poslední krok je v kariéře databázového návrháře často přehlížen, ale nenechávejte jej bez pozornosti. V mnoha situacích jsou níže uvedené měkké dovednosti stejně důležité, ne-li více, než tradiční technické dovednosti a znalosti, známé také jako tvrdé dovednosti.

Obchodní prozíravost

Designéři s obchodním talentem mohou lépe interpretovat a dát správný rozměr každému požadavku, který obdrží, a to se promítá do lepších návrhových rozhodnutí. Něco tak jednoduchého, jako je rozhodnutí, zda pro stůl použít přirozený klíč nebo náhradní klíč, může být pro podnik důležité; sladění vašich rozhodnutí s obchodními cíli je klíčem k úspěchu vaší práce.

Komunikační a mezilidské dovednosti

Vytvoření dobrého designu je jen část práce. Po vytvoření a zdokonalení svého modelu jej musíte umět prezentovat, vysvětlit a pomoci každému, kdo s ním potřebuje pracovat. Musíte také přijmout každý návrh, který lze vylepšit, takže buďte připraveni přijímat návrhy a kritiku. Obecně platí, že jako designér jste součástí týmu. Být užitečnou součástí týmu znamená být týmovým hráčem, který vždy myslí na přínos pro tým.

Cílová čára:Úloha návrháře databáze

Pokud jste udělali všechny tyto věci, pravděpodobně již modelujete databáze jako profesionál a máte mnoho příběhů, které můžete vyprávět. Prostor pro komentáře níže je pro vás, abyste se podělili o užitečné rady a vtipné příběhy a abyste přispěli k obohacení našich životů jako návrhářů databází.


  1. Jak zobrazit data Unicode pomocí PHP

  2. Jak formátovat datum a čas v SQLite

  3. Jak funguje statement_timestamp() v PostgreSQL

  4. Zkoumání dopadu na výkon adhoc zátěže