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

Návrh databáze

Agilní databázové techniky praktikuji už asi dvacet let. Moje používání těchto technik nezačalo jako stanovený plán; spíše se to časem vyvíjelo, jak jsem konzultoval různé projekty. Dávalo smysl hledat způsoby, jak pracovat rychleji a s větší interakcí se zákazníky.

Napadají mě alespoň tři druhy agilních databázových technik:

  • Datové modelování
  • Vývoj datového skladu
  • Reverzní inženýrství databáze

Agilní datové modelování

Mnozí považují datové modelování za pracný úkol. Ale nemusí tomu tak být. Datové modelování můžete vzít ze zadní místnosti a udělat to před zákazníkem. Možná si myslíte, že zákazníky odradí technická zátěž, ale není tomu tak. Obchodní zaměstnanci mají vášeň pro svou práci a vizi toho, kam se chtějí dostat. Jsou nadšeni, že mají IT spíše jako facilitátor než překážku na cestě.

Pro agilní datové modelování musí vývojář provést následující:

  • Ovládejte koncepty datového modelování a nástroj pro datové modelování.
  • Získejte si na prvních pár akcí přátelské publikum. Musíte zkoušet své techniky na pečujícím publiku, dokud nezískáte sebevědomí.
  • Mějte v publiku alespoň jednoho obchodního šampiona – někoho, kdo bude přijímat výstupy vaší práce, někoho, kdo podnikání hluboce rozumí a pomůže ostatní přimět ke konsensu.
  • Mějte solidní projekt s jasným cílem a obchodním odůvodněním.

Díky agilnímu datovému modelování pracují vývojáři rychle a dodávají časté revize modelu. Dávám přednost tomu, aby relace datového modelování netrvaly déle než dvě hodiny. Tyto sezení jsou intenzivní, všichni pálí kolem nápadů. Po dvou hodinách budou účastníci potřebovat odpočinek. Budete také potřebovat čas na vyčištění modelu a dohnání dokumentace.

Agilní techniky se vztahují na všechny aspekty datového modelování, včetně každodenních operačních systémů, datových skladů, modelů kmenových dat a podnikových datových modelů.

Agilní techniky vývoje datového skladu

Agilní techniky jsou také důležité při budování datového skladu. Konkrétně existují dvě oblasti, kde tyto techniky aplikujeme na vývoj skladů.

První je staging dat . Je dobrým zvykem používat zprostředkující pracovní tabulky k vyrovnání vlastního skladu z provozních zdrojů. Pracovní tabulky duplikují provozní data a přidávají metadata, jako je zdrojový systém, datum zpracování, účinné časové razítko a časové razítko vypršení platnosti. V současné době většina vývojářů zpracovává pracovní data pomocí vlastního ETL kódu. (ETL je zkratka pro Extrahovat, Transformovat a Načíst.) Existuje alespoň jeden nástroj (A2B Data), který automatizuje vytváření a naplnění schémat pracovní tabulky.

Agilní techniky také používáme ke zlepšení zpracování dat ve skladu . Za tímto účelem upřednostňujeme kombinaci ETL a SQL. ETL se používá pro základní tabulky se složitou logikou, zatímco SQL se používá pro periferní tabulky – a těch je v typickém skladu spousta. Zápis SQL je zhruba 10krát rychlejší než ETL. Kód SQL se také snadněji vyvíjí a testuje. Přiměřeně lze očekávat, že u poloviny tabulek nahradíte ETL SQL; přesná částka závisí na složitosti skladu a vaší dovednosti SQL.

Tato vylepšení snižují množství kódu ETL, který je třeba zapsat, a zároveň jej nasazují tam, kde je to nejcennější:pro velké soubory dat s více zdroji k integraci a zpracování.

Agility v reverzním inženýrství databáze

Agilní techniky využíváme také při reverzním inženýrství. Zpětné inženýrství přebírá existující návrh a pracuje zpětně, aby odvodil základní logický záměr. Reverzní inženýrství databáze může mít různé motivace. Možná převádíte z jedné databázové platformy na jinou. Nebo se možná snažíte lépe porozumět modelu pro účely údržby. Nebo se možná pokoušíte zachránit požadavky implicitní ve schématu, aby je mohl zvážit nový software.

Obvykle začínáme analýzou existujícího schématu. Schéma je často dostupné a je to něco, co můžeme rychle studovat. Můžeme to rozšířit o další zdroje, jako je dokumentace, data a konverzace s vývojáři.

Nástroj pro modelování dat je důležitým zdrojem pro studium schématu. Většina nástrojů dokáže importovat schéma SQL, takže můžete vidět tabulky a jejich propojení. Často to stačí pro analýzu reverzního inženýrství.

Agilní databázové techniky:Takeaway

Agilní vývoj je populární téma, které má několik databázových důsledků. Agilní přístup je užitečný pro datové modelování, vývoj datových skladů a reverzní inženýrství databází.

Michael Blaha je konzultant a školitel, který se specializuje na koncepci, architekturu, modelování, navrhování a ladění databází. Spolupracoval s desítkami organizací po celém světě. Dr. Blaha je autorem sedmi amerických patentů, sedmi knih, mnoha článků a dvou videokurzů. Jeho nejnovější publikací je Agile Data Warehouse Design video kurz od O’Reilly. Doktorát získal na Washington University v St. Louis a je absolventem GE Global Research v Schenectady, New York. Více informací najdete na jeho LinkedIn profilu nebo na superdataguy.com.



  1. Co je @@MAX_PRECISION na serveru SQL Server?

  2. Oracle 12.2.0.1 přichází v roce 2016

  3. Jak získat aktuální datum v SQLite

  4. Jak opravit:Nebyl nalezen vhodný ovladač pro chybu jdbc:mysql://localhost/dbname při používání fondů?