{"beispielaufgaben":[{"artefakt_id":"artefakt.freitextantwort","aufgabe":[{"text":"In einer Bibliotheksverwaltung werden mehrere Millionen Ausleihvorgänge in einer Tabelle gespeichert. Häufig wird nach der Mitgliedsnummer gesucht. Beschreiben Sie, wozu auf einer solchen Spalte ein Datenbankindex angelegt wird und welchen Nutzen dies für die Suche nach passenden Datensätzen bietet.","typ":"absatz"}],"beispiel_id":"bsp-datenbankindizes-beschreiben-freitextantwort-01","freigabeart":"maschinell","loesung":[{"text":"Erwartet wird eine Beschreibung, die den Suchzweck des Index herausstellt. (1 P.) Ein Index dient dazu, das Auffinden von Datensätzen zu erleichtern und zu beschleunigen, da die Suche nicht die gesamte Tabelle vollständig durchlaufen muss, sondern gezielt über die indizierte Spalte zugreift. (1 P.) Besonders bei sehr großen Datenmengen ergibt sich dadurch ein deutlicher Geschwindigkeitsvorteil beim Zugriff auf gesuchte Zeilen. Fachlich gleichwertige Formulierungen des Suchnutzens sind anzuerkennen; nicht gefordert und daher nicht als eigener Punkt zu werten sind Aussagen zu Mehraufwand bei Schreiboperationen.","typ":"absatz"}],"operator_id":"operator.beschreiben","pruefungszuordnung":{"berufe":["FIAE"],"teil":"AP2"},"punkte":2,"punkterahmen":{"max":2,"min":2},"quellen":["ap2-fiae-2022-sommer-ae2-a04-a-ac"]},{"artefakt_id":"artefakt.freitextantwort","aufgabe":[{"text":"Ein Onlineshop verwaltet in einer Tabelle sehr viele Bestellpositionen. Die Auswertung filtert regelmäßig nach dem Bestelldatum. Beschreiben Sie, welchen Zweck ein Index auf dieser Spalte erfüllt und welchen Nutzen er gerade bei sehr großen Datenbeständen für Abfragen hat.","typ":"absatz"}],"beispiel_id":"bsp-datenbankindizes-beschreiben-freitextantwort-02","freigabeart":"maschinell","loesung":[{"text":"Erwartet wird eine auf Zweck und Nutzen bezogene Beschreibung. (1 P.) Zweck des Index ist es, den Zugriff auf Datensätze über die indizierte Spalte zu beschleunigen, sodass beim Filtern nach dem Bestelldatum nicht alle Zeilen sequentiell geprüft werden müssen. (1 P.) Gerade bei sehr großen Datenbeständen wirkt sich dies als spürbarer Geschwindigkeitsvorteil bei Abfragen aus. Sinngemäße Darstellungen des Abfragenutzens sind anzuerkennen; ein erhöhter Speicher- oder Pflegeaufwand ist nicht gefragt und darf nicht als gleichwertiger Punkt gewertet werden.","typ":"absatz"}],"operator_id":"operator.beschreiben","pruefungszuordnung":{"berufe":["FIAE"],"teil":"AP2"},"punkte":2,"punkterahmen":{"max":2,"min":2},"quellen":["ap2-fiae-2022-sommer-ae2-a04-a-ac"]},{"artefakt_id":"artefakt.freitextantwort","aufgabe":[{"text":"In einer Praxissoftware sind zahlreiche Patientendatensätze gespeichert. Beim Aufruf eines Patienten wird nach dem Nachnamen gesucht. Beschreiben Sie, wozu die Spalte mit dem Nachnamen indiziert wird und wie sich ein solcher Index auf die Geschwindigkeit der Suchvorgänge auswirkt.","typ":"absatz"}],"beispiel_id":"bsp-datenbankindizes-beschreiben-freitextantwort-03","freigabeart":"maschinell","loesung":[{"text":"Erwartet wird die Beschreibung des Suchzwecks und der Wirkung auf die Suchgeschwindigkeit. (1 P.) Die Spalte wird indiziert, um Datensätze mit einem bestimmten Nachnamen schneller und gezielter auffinden zu können, ohne die gesamte Tabelle durchsuchen zu müssen. (1 P.) Der Index verkürzt dadurch die Dauer der Suchvorgänge; besonders bei umfangreichen Datenbeständen beschleunigt er das Auffinden deutlich. Fachlich gleichwertige Formulierungen der Suchbeschleunigung sind anzuerkennen; ein zusätzlicher Speicher- oder Aktualisierungsaufwand ist nicht gefordert und nicht als eigener Punkt zu bewerten.","typ":"absatz"}],"operator_id":"operator.beschreiben","pruefungszuordnung":{"berufe":["FIAE"],"teil":"AP2"},"punkte":2,"punkterahmen":{"max":2,"min":2},"quellen":["ap2-fiae-2022-sommer-ae2-a04-a-ac"]},{"artefakt_id":"artefakt.quellcode","aufgabe":[{"text":"Eine kommunale Mediathek verwaltet ihre Ausleihvorgänge in der Tabelle Entleihung mit den Feldern EntleihID, MitgliedID, MedienID und Rueckgabedatum. Im Tagesbetrieb suchen die Mitarbeitenden sehr häufig alle Datensätze zu einer bestimmten MitgliedID, während neue Ausleihen laufend im Minutentakt eingefügt werden. Erstellen Sie in MySQL-Syntax eine passende Anweisung, die auf dem Feld MitgliedID einen Index mit der Bezeichnung idx_mitglied anlegt. Ordnen Sie anschließend fachlich ein, welchen Nutzen dieser Index für die genannte häufige Suche bietet und welche Kosten durch ihn beim Einfügen entstehen.","typ":"absatz"}],"beispiel_id":"bsp-datenbankindizes-anwenden-quellcode-01","freigabeart":"maschinell","loesung":[{"text":"CREATE INDEX idx_mitglied ON Entleihung (MitgliedID); (1 P.). Nutzen (1 P.): Bei der häufigen Suche nach einer MitgliedID kann das DBMS die passenden Zeilen gezielt über die Indexstruktur ansteuern, statt die gesamte Tabelle zu durchsuchen; ein spürbarer Vorteil ergibt sich vor allem bei großen Datenmengen. Kosten (1 P.): Der Index belegt zusätzlichen Speicher und muss bei jedem Einfügen mitgepflegt werden, was Schreibvorgänge verlangsamt. Fachlich gleichwertige MySQL-konforme Formulierungen sind anzuerkennen. Nicht zu fordern ist, dass jede Abfrage beschleunigt wird oder das DBMS den Index zwingend verwendet.","typ":"absatz"}],"operator_id":"operator.anwenden","pruefungszuordnung":{"berufe":["FIAE"],"teil":"AP2"},"punkte":3,"punkterahmen":{"max":3,"min":3},"quellen":["ap2-fiae-2022-sommer-ae2-a04-b-ba"]},{"artefakt_id":"artefakt.quellcode","aufgabe":[{"text":"Ein Onlineshop für Bürobedarf speichert Aufträge in der Tabelle Auftrag mit den Spalten AuftragID, KundenID, Bestelldatum und Gesamtsumme. In einem Auswertungswerkzeug werden die Aufträge sehr oft nach dem Bestelldatum aufsteigend sortiert und für einzelne Zeiträume gefiltert; gleichzeitig kommen täglich viele neue Aufträge hinzu und bestehende Summen werden korrigiert. Formulieren Sie in PostgreSQL-Syntax eine Anweisung, die für die Spalte Bestelldatum einen Index mit dem Namen idx_bestelldatum erzeugt. Begründen Sie danach, welchen Vorteil der Index für das Sortieren und Filtern bringt und welchen Nachteil er im Schreibbetrieb hat.","typ":"absatz"}],"beispiel_id":"bsp-datenbankindizes-anwenden-quellcode-02","freigabeart":"maschinell","loesung":[{"text":"CREATE INDEX idx_bestelldatum ON Auftrag (Bestelldatum); (1 P.). Vorteil (1 P.): Die nach Bestelldatum sortierte oder auf Zeiträume eingegrenzte Abfrage kann die bereits geordnete Indexstruktur nutzen, sodass Sortier- und Suchaufwand sinken, besonders bei umfangreichen Auftragsbeständen. Nachteil (1 P.): Jedes Einfügen und jede Datumsänderung muss auch den Index aktualisieren, was zusätzlichen Speicherplatz kostet und Schreibvorgänge verlangsamt. Gleichwertige PostgreSQL-konforme Lösungen gelten. Es darf nicht unterstellt werden, dass der Index jede Abfrage beschleunigt oder vom Planer stets herangezogen wird.","typ":"absatz"}],"operator_id":"operator.anwenden","pruefungszuordnung":{"berufe":["FIAE"],"teil":"AP2"},"punkte":3,"punkterahmen":{"max":3,"min":3},"quellen":["ap2-fiae-2022-sommer-ae2-a04-b-ba"]},{"artefakt_id":"artefakt.quellcode","aufgabe":[{"text":"Ein Kfz-Betrieb dokumentiert Werkstattaufträge in der Tabelle Reparatur, deren Spalte FahrzeugID auf die Tabelle Fahrzeug verweist. Für die monatliche Auswertung werden beide Tabellen sehr häufig über FahrzeugID verknüpft, um zu jedem Fahrzeug die zugehörigen Reparaturen anzuzeigen. Neue Reparaturen werden dagegen nur gelegentlich erfasst. Schreiben Sie in MariaDB-Syntax eine Anweisung, die auf der Spalte FahrzeugID der Tabelle Reparatur einen Index mit der Bezeichnung idx_fahrzeug anlegt. Erläutern Sie zusätzlich, welchen Nutzen der Index für die Verknüpfung beider Tabellen hat und welche Kosten mit ihm verbunden sind.","typ":"absatz"}],"beispiel_id":"bsp-datenbankindizes-anwenden-quellcode-03","freigabeart":"maschinell","loesung":[{"text":"CREATE INDEX idx_fahrzeug ON Reparatur (FahrzeugID); (1 P.). Nutzen (1 P.): Beim häufigen JOIN über FahrzeugID kann das DBMS die passenden Reparaturzeilen gezielt über den Index zuordnen, statt für jede Fahrzeugzeile die gesamte Reparaturtabelle zu durchsuchen; das verkürzt den Verknüpfungsaufwand vor allem bei großen Beständen. Kosten (1 P.): Der Index benötigt zusätzlichen Speicher und muss bei jedem Einfügen gepflegt werden; da hier selten geschrieben wird, überwiegt der Lesenutzen. Gleichwertige MariaDB-konforme Formulierungen sind anzuerkennen. Nicht zu verlangen ist, dass jede Abfrage schneller wird oder der Optimierer den Index zwingend einsetzt.","typ":"absatz"}],"operator_id":"operator.anwenden","pruefungszuordnung":{"berufe":["FIAE"],"teil":"AP2"},"punkte":3,"punkterahmen":{"max":3,"min":3},"quellen":["ap2-fiae-2022-sommer-ae2-a04-b-ba"]}],"konzept_id":"fachkonzept.datenbankindizes","schema_version":3}