Graafimallinnus

Graafimalli jo mallintamiesi taulujen päälle

Kuvaa ominaisuusgraafi (labelled property graph) loogisen mallisi pohjalta: entiteeteistä ja avaimista tulee solmutyyppejä, viiteavaimista ja kaaritauluista kaarityyppejä. Vie sama suunnitelma Microsoft Fabriciin, Neo4j:hin tai ominaisuusgraafeja tukevaan SQL-tietokantaan.

Graafimalli Order Network: solmutyypit Customer, Address, Country, SalesOrder, Product, Shipment ja Invoice ympyröinä, niiden välillä nimetyt kaarityypit ja graafin tietopaneeli avoinna
Yleiskuva

Graafi on toinen näkymä samaan malliin

Se tallentaa sidokset loogiseen malliin, ei kopiota siitä.

Relaatiodataan perustuva graafi palautuu aina avaimiin ja viiteavaimiin, joten Model One rakentaa graafit niistä. Solmutyyppi on entiteetti, yksi sen yksilöivistä avaimista ja ominaisuuksiksi valitsemasi attribuutit. Kaarityypin taustalla on viiteavain, liitosentiteetti, josta tulee omat ominaisuutensa sisältävä kaaritaulu, tai — kun datalle ei ole määritelty viiteavaimia — sarakkeet, jotka nimeät suoraan.

Koska graafi tallentaa sidokset eikä kopiota, entiteetin uudelleennimeäminen näkyy suoraan sen solmutyypissä, ja entiteetin poistosta ilmoitetaan sen sijaan, että määrittämäsi nimiöt ja suunnat katoaisivat huomaamatta. Graafit ovat Logical-välilehdellä, jakavat sen kumoamishistorian ja sisältyvät jokaiseen versioon.

Suunnitelma ei ole sidottu yhteen graafituotteeseen. Vienti kirjoittaa sen GraphML-muotoon, SQL/PGQ:n CREATE PROPERTY GRAPH -lauseeksi, Neo4j Cypher -skriptiksi tai Microsoft Fabricin graafimalliksi. Jokainen vienti sisältää skeeman ja mäppäyksen tauluihisi, ei rivejäsi: Model One ei säilytä rivejä, ja niiden lataaminen, jos kohde sitä edellyttää, jää tiimisi tehtäväksi.

Mäpätyt kaaret ovat pois käytöstä, kunnes otat ne käyttöön graafikohtaisesti. Kun ne eivät ole käytössä, jokaisen kaaren taustalla on määritelty viiteavain. Kun ne ovat käytössä, vakuutat, että kahden sarakkeen arvot vastaavat toisiaan: Model One tarkistaa, että sarakkeet ovat olemassa ja niiden tietotyypit täsmäävät, mutta arvoja se ei voi tarkistaa.

Läpikäynti

Johdetusta graafista vientivalmiiksi skeemaksi

Kolme näkymää order-to-cash-esimerkkiprojektin Order Network -graafista.

Vaihe 1

Aloita mallista, joka sinulla jo on

Derive from model -toiminto rakentaa graafin koko mallille tai yhdelle alimallille ja kysyy ensin, mitä otetaan mukaan: entiteeteistä tulee solmutyyppejä, suhteista kaaria ja liitostauluista kaaritauluja. Voit myös aloittaa tyhjästä ja piirtää graafin itse. Sijainnit otetaan loogisen mallin kaaviosta, joten johdettu graafi avautuu tutussa asettelussa.

  • Valintalistat solmutyypeille, kaarille ja kaaritauluille ennen kuin mitään rakennetaan
  • Liitostaulut tunnistetaan avaimistaan; väärän arvauksen voi korjata käsittelemällä taulun solmutyyppinä
  • Focus rajaa näkymän yhden solmutyypin lähiympäristöön tai usean solmutyypin välisiin reitteihin
  • Yksi-moneen-suhteiden kautta kulkevat reitit merkitään, koska ne voivat monistaa rivejä
  • Diagnostiikkapalkki GRAPH_-sääntökoodeineen; havaintoa napsauttamalla sen objekti valitaan
Graafimalli Order Network: solmutyypit ympyröinä, niiden välillä nimetyt kaarityypit kuten PLACED, BILL_TO, SHIP_TO ja ORDERED sekä graafin tietopaneeli avoinna
Vaihe 2

Sido solmutyyppi entiteettiin ja sen avaimeen

Solmutyypille määritetään nimiöt, taustalla oleva entiteetti, kunkin solmun yksilöivä avain sekä attribuutit, joista tulee sen ominaisuuksia. Tarjolla on vain pääavaimia ja vaihtoehtoisia avaimia, koska ei-yksilöivä indeksi ei voi yksilöidä mitään. Solmutyyppi voi myös olla pelkistä nimiöistä koostuvan (label only) ylätyypin alatyyppi ja periä sen nimiöt ja ominaisuudet.

  • Nimiöt, sidottu entiteetti ja yksilöivä avain sivupaneelissa tai laajassa ikkunassa
  • Ominaisuustaulukko, johon Add all tuo sidotun entiteetin kaikki attribuutit
  • Ylätyypit perittyine ominaisuuksineen, piirrettyinä ontolla kolmiolla päättyvällä viivalla
  • Valinnainen rivisuodatin, joka välitetään kohteelle sellaisenaan
SalesOrder-solmutyyppi: ikkunan Properties-välilehdellä neljä ominaisuutta, ja vieressä olevassa paneelissa nimiö, sidottu Sales Order -entiteetti ja sen pääavain
Vaihe 3

Anna kaarelle omaa dataa kaaritaulun avulla

Kaari, jolla on omaa dataa, kuten määrä tai hinta, tarvitsee oman taulunsa. Sido se liitosentiteettiin, jolla on viiteavain kumpaankin päähän, niin sen muista attribuuteista tulee kaaren ominaisuuksia. Kun viiteavainta ei ole määritelty, mäpätty kaari nimeää päätepisteiden sarakkeet suoraan.

  • Taustalla viiteavain, kaaritaulu, mäpätyt sarakkeet tai luonnosvaiheessa ei vielä mitään
  • Omaa dataa sisältävät kaaret merkitään piirtoalueella pienellä taulukkosymbolilla
  • Mäpätyistä kaarista tarkistetaan sarakemäärä ja tietotyypit
  • Kaaren suunnan valitset itse, ja Reverse vaihtaa päät keskenään
ORDERED-kaarityypin Binding-välilehti: taustalla Sales Order Line -taulu kahden viiteavaimen kautta, ominaisuuksina quantity, unit price ja line number
Kohokohdat

Käyttökelpoinen myös todellisissa malleissa

Asiat, joilla on merkitystä, kun graafi kasvaa demoa suuremmaksi.

Ensin luonnos, sitten Materialize

Piirrä työpajassa solmu- ja kaarityyppien luonnokset. Materialize muuntaa ne erissä entiteeteiksi, viiteavaimiksi ja kaaritauluiksi. Jokaisesta erästä näet ensin esikatselun, ja mallista otetaan tilannevedos ennen muutosta.

Neljä vientikohdetta

GraphML, SQL/PGQ, Neo4j Cypher ja Microsoft Fabricin graafimalli. Valitse fyysinen malli, niin taulujen ja sarakkeiden nimet vastaavat sen generoitua DDL:ää.

Lakehouse-data ilman viiteavaimia

Mäpätyt kaaret nimeävät kummankin pään liitossarakkeet datalle, jonka tallennusmuoto ei tue viiteavaimia. Ne otetaan käyttöön graafikohtaisesti.

Focus suurille graafeille

Himmennä kaikki paitsi yhden solmutyypin lähiympäristö tai usean solmutyypin väliset reitit. Focus on henkilökohtainen, sitä ei tallenneta, ja myös katselijat voivat käyttää sitä.

Avaimet ja tietotyypit tarkistetaan

Diagnostiikka ilmoittaa puuttuvista avaimista, viiteavaimista, jotka viittaavat eri avaimeen kuin solmun avain, sekä kaaren päiden tietotyyppien ristiriidoista, jotka ovat yleisin syy siihen, ettei kaareen lataudu mitään.

Yhteinen muokkaus ja versiointi

Solmu- tai kaarityypin valinta lukitsee vain kyseisen objektin. Graafit sisältyvät jokaiseen versioon, ja ne voi linkittää työkohteisiin.

Jatka tutustumista

Mihin graafi kytkeytyy

Graafi lukee loogista mallia, ja viennissä se voi käyttää fyysisen mallin nimiä.

Rakenna graafi tietovarastomallisi pohjalta

Tuo malli tai SQL DDL -skripti. Johdamme siitä graafin ja viemme sen käyttämääsi kohteeseen: Fabric, Neo4j, SQL/PGQ tai GraphML.