Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Hva er datamodellering, og hvorfor driver vi med det?

  • Forskjellige typer/varianter av datamodellering

    • Database

      • Normalisert – “vanlige“ systemer (“operational systems“/”OLTP”)

        • Rettet mot

          • Hyppige, mindre oppdateringer i parallell

          • Enkel rapportering

        • Notasjoner

          • Entity-Relationship (“kråkeføtter“)

          • NIAM/ORM (utgangspunkt for FS og SODA)

        • Nivåer

          • Konseptuell

          • Logisk

          • Fysisk

      • Stjerne – datavarehus/analyse (“OLAP“)Dokument

        • Rettet mot

          • Tunge spørringer

          • Batch-oppdateringer

        • Begreper

          • Faktatabeller

          • Dimensjonstabeller

      • Dokumentdatabaser

      • Graf-databaser (Facebook, …)

    • Tekstbasert

      • XML, JSON…

      • GraphQL

  • Perspektiver på datamodellering

    • Dataintegritet

    • Gjenbrukbarhet

    • Ytelse

    • Enkelt å utvikle mot

    • Enkelt å forstå for forretningssiden

    • Enkelt å utvide

    • Top-down/bottom-up

    • Datamodellering er en egen greie – ikke bare fasilitering av utvikling

  • Historikk

    • To systemer som har overlevd i 30 år

  • Prinsipper

    • Generelle

      • Normalisering (atomiske verdier, én ting på ett sted)

      • Unngå sykler

    • Våre

      • Naturlige nøkler

      • Forretningsregler for dataintegritet i databasen

        • Deklarativt (constraints) der man kan

        • Imperativt (triggere) der man må

      • Generalisering/abstraksjon (semantiske forretningsregler i data fremfor i kode)

      • Kodetabeller (istf. f.eks. ENUMs)

...