Ilmainen työkalu tietokannan suunnitteluun
Data Modeler on Oraclen tekemä tietokantasuunnitteluun tarkoitettu ohjelma. Sen ilmaisuus voi tuntua yllättävältä, sillä valmistaja tunnetaan useista kalliista tuotteista.
Oraclella on aiemmin ollut tietokantojen suunnitteluun Designer-tuote, joka on ollut varsin yleisessä käytössä, mutta jonka ylläpito on loppunut. Data Modeler on kuitenkin tuotteena erilainen. Se ei korvaa Designeriä, mutta on toisaalta laajempi, sillä se tukee Oraclen omien tuotteiden ohella myös tietokannoista Microsoftin valmistamaa SQL Serveriä sekä IBM:n DB2:ta.
Data Modeler ohjaa vaiheittaista tietokannan suunnitteluprosessia, joka alkaa loogisen tason käsitemallinnuksesta, etenee relaatiokannan suunnitteluun ja päätyy tietokannan taulujen luontilauseisiin. Kutakin vaihetta tuetaan graafisilla malleilla ja monipuolisilla lisämäärityksillä.
Olen käyttänyt Data Modeleria itse kuvatessani liiketoiminnan keskeisiä käsitteitä, niiden riippuvuuksia ja käsitemäärityksiä. Tietokantaa ei tällä liiketoiminnan tasolla ole vielä tarkoituskaan luoda. Tähän tuote sopii varsin hyvin. Se tukee niin sanottuja
box-in-box-rakenteita, joissa käsitteen sisälle voidaan piirtää alikäsitteitä.
Tuotantoon menneen SQL Server -tietovarastokannan luonti onnistui myös hyvin. Luontilauseita voi käyttää myös big data -alusta Hadoopin sekä sen päälle toimivan Hive-järjestelmän toteutukseen, jos lauseita muokkaa hieman.
Tuottavuus kasvaa huimasti, kun määritykset voi tehdä Data Modeleriin ja luoda tietokannalle perustusskriptin, joka hoitaa käytännön toimet. Taulujen ja sarakkeiden sanalliset kuvaukset kannattaa tehdä samalla kuntoon.
Tietokannan rakennetta muokataan usein kiireessä suoraan kantaan, jolloin päädytään huonoihin ratkaisuihin ja kannan ylläpitäminen vaikeutuu. Kehitettäessä Data Modelerin kaltaisen työkalun kautta nähdään paremmin se, mihin muutos tulee ja mihin se vaikuttaa, ja samalla dokumentaatio pysyy ajan tasalla. Tuote on hyvä tietokantamuutosten hallinnassa.
Olemassa olevia tietokantoja voi tutkia takaisinmallinnuksen (
reverse engineering) avulla. Näin voidaan kuvata järjestelmien taustalla olevia, usein mustina laatikkoina näyttäytyviä kantoja.
Kokeilussa esimerkiksi Digital Ocean -pilvipalvelussa olevasta kannasta onnistuttiin lukemaan taulurakenteet eli sql-kirjani harjoituskannan. Data Modelerilla voi kytkeytyä myös Hive-rajapinnan kautta big data -alusta Hadoopiin ja lukea taulurakenteet sieltä.
Jos kannassa ei ole ollut viite-eheyksiä, taulujen välisiä riippuvuuksia ei tule näkyviin. Tuote osaa kuitenkin ehdottaa viiteavaimia ja näin päästään eteenpäin.
Ulkoasua voi räätälöidä. Käyttäjä pystyy esimerkiksi määrittelemään, että käsitemallissa näkyy vain käsitteen nimi eikä attribuutteja, mikä tekee mallista helppolukuisemman. Ohjelmalla voi myös tehdä valmiita väri- ja nimeämismäärityksiä.
Data Modelerilla voi suunnitella myös tietovarastokantoja, kuten dimensionaalisia tähtimalleja tai moderneja Data Vault -malleja. Vaikka nosql-kantojen puolestapuhujat hehkuttavat nimenomaan skeemattomuuden eli taulujen ja taulujen sarakkeiden puuttumisen etuja, käsitteiden määrittelystä voi olla myös näille hankkeille suurta hyötyä.
Oraclen kantaa pidetään yleisesti hyvänä, mutta muut tuotteet ovat usein jossain määrin kömpelöitä. Osittain tämä pätee myös Data Modeleriin. Käyttöliittymiä olisi hyvin voinut tehdä suoraviivaisemmaksi ja vähemmän klikkauksia edellyttäväksi.
Muita samankaltaisia tuotteita ovat esimerkiksi Erwin, PowerDesigner ja ER Studio. Ne tukevat vielä useampia kantoja ja sisältävät osin laajempia ominaisuuksia, mutta niiden hintalappu saattaa olla korkea.
Data Modelerin kaltaisen tuotteen järjestelmällisellä käytöllä syntyy osaavissa käsissä paremmin suunniteltuja ja dokumentoituja tietokantoja entistä tuottavammin ja voidaan myös tutkia ja kuvata olemassa olevia tietokantoja. Tuotteen avulla pääsee ainakin nopeasti alkuun, kun hinta ei ole este.
Mallinnus on tärkeää
Data Modeler on väline tietokannan suunnitteluun, mutta työssä tarvitaan myös liiketoiminnan ymmärrystä ja suunnittelumenetelmien osaamista.
Sovelluksen käyttöliittymä näkyy käyttäjille, mutta taustalla oleva tietokanta on yrityksen arvokkaan dataomaisuuden tärkeä kotipesä. Käsite- ja tietomallinnukseen kannattaa tämän takia satsata.
Käsitemallinnus on erinomainen menetelmä tietohallinnon ja liiketoiminnan välisessä keskustelussa ja määrittelyssä kohti tietokantaa. Hyvin suunniteltu kanta kestää hyvin aikaa ja kehittämistä ja sen elinkaari voi olla pitempi kuin sovelluksen.
Hyvin suunniteltu tietokanta vastaa liiketoiminnan tarpeita, on suorituskykyinen ja sen perusteella on helppo laatia raportteja ja kyselyjä. Huonon tietokannan kantarakenne taas aiheuttaa jatkuvia ongelmia.