9.0. Das Karthesische Produkt - ein Spezialfall des JOININGS typunverträglicher Entitytypes history menue Letztmalig dran rumgefummelt: 25.02.17 12:20:33
Jooouuuu - das, was ich hierzu als Logo sozusagen mir gestattet habe zu verwenden, ist schon mal genau das, was man nicht als Kreuzprodukt erhält. Beim Karthesischen- oder Kreuzprodukt handelt es sich um eine formatfreie Verbindung von mindestens zwei Entity-Types.
  1. Was passiert dann eigentlich und warum ist das so schlimm?
 
2. Ursache ...
 
3. ... und Wirkung
 
4. Natural JOIN

Datenbanken

Logo des Karthesischen Produkts

inhaltlich auf korrektem Stand - evtl. partiell unvollständig ;-)

Wissen für Fortgeschrittene der Informatik

Quellen:

1. Was passiert dann eigentlich und warum ist das so schlimm? history menue scroll up
... und genau das passiert, wenn man zwei "typunverträgliche" Attributwerte aus mindestens zwei Entity-Types miteinander verbindet - das Resultat lässt sich dann leicht "hochrechnen" - oder interpolieren, wie der Mathematiker sagt, wenn man mehr als zwei Tables sowie mehr als 4 × 8 Tupel miteinander verbindet :-)
Ansichten sowie Downloadbereich der Karthesischen Produkte von Tabellen Hintegrundinformationen

karthesisches Produkt für das "Skatblatt" im ACCESS-Format

Dowload der Datenbasis

karthesisches Produkt für das "Skatblatt" im FoxPro-Format

  • das Kreuz- oder Karthesische Produkt kann nur bei Entity-Types ohne Primary Key auftreten - nicht zuletzt deshalb wir er ja gefordert (er verschafft durch Eindeutigkeit keine Interpretationsmöglichkeiten)
  • jeder Eintag der einen Tabelle wird mit jedem Eintrag der anderen Tabelle verbunden - bei 4 × 8 Datensätzen sind das 32 Kombinationsmöglichkeiten
  • wirksam wird das Kreuzprodukt erst genau dann, wenn die Tabellen bewusst oder eben auch unbewusst miteinander verbunden werden
  • sehr schnell entstehen nun enorm große Matrizen von Datenbeständen, die im einfachsten Fall nur "gehalten" werden müssen (also im Hauptspeicher des Computers stehen) - dieser aber ist 64 KByte-segmentiert (bedingt durch die INTEL-CPU's (AMD & Co. sind nur geklaute INTEL-CPU's))
  • wichtig ist zumindest für FoxPro, auf "FULL-JOIN" zu setzen

karthesisches Produkt für das 5 Entity-Types mit je 10 Tupeln im ACCESS-Format

Dowload der Datenbasis

 
 


2. Ursache ... history menue scroll up

Ursache ist ganz einfach Unkenntnis sowie Ahnungslosigkeit von den Leuten, welche mit solchen Datenstrukturen umgehen sollen. Das sind weniger professionelle Firmen mit eigener EDV-Abteilung als Vielmehr Privat- und/oder Kleinanwender, die sich selbst einen kleinen Datenbestand halten wollen oder müssen. Ungeschultes Personal strickt dann irgendwelche Datenstrukturen zusammen.

FULL OUTER-JOINs


3. ... und Wirkung history menue scroll up
Wenn Redundanz, dann richtig - hier wird sie nicht vermieden, sondern generiert, dabei ist das Grundprinzip der Datenbankarbeit Redundanzarmut, Freiheit nicht - das kriegen wir aufgrund des Key-Prinzips nicht hin, aber eben arm an mehrfach vorkommenden Informationseinträgen.
FoxPro gehorcht dann schon mal den Gesetzen der MiniMax-Beziehungen - wenn schon Schaden, dann minimal - ACCESS & Co. tappt da voll in die Falle, was ja eigentlich kein Vorwurf ist, sind ja Systeme für den Unbedarften Nutzer - und der macht so etwas!!!
       

MiniMax-Beziehungen

Daten-Integrität

Master-Slave-Beziehungsgefüge

Kardinalitäten


4. Natural JOIN history menue scroll up
Der Natural Join ist eine Erweiterung des Kreuzprodukts, dabei wird automatisch die Ergebnismenge der beiden Tabellen gefiltert. Diese Einschränkung basiert auf gleichen Spaltennamen.


zur Hauptseite
© Samuel-von-Pufendorf-Gymnasium Flöha © Frank Rost am 30. Dezember 2009 um 13.44 Uhr

... dieser Text wurde nach den Regeln irgendeiner Rechtschreibreform verfasst - ich hab' irgendwann einmal beschlossen, an diesem Zirkus nicht mehr teilzunehmen ;-)

„Dieses Land braucht eine Steuerreform, dieses Land braucht eine Rentenreform - wir schreiben Schiffahrt mit drei „f“!“

Diddi Hallervorden, dt. Komiker und Kabarettist

Diese Seite wurde ohne Zusatz irgendwelcher Konversationsstoffe erstellt ;-)