Erweiterte Datenbankkonzepte [geschlossen]

7

Ich habe zugestimmt, in einem Datenbankkurs Lehrerassistent zu werden, und wurde auch gebeten, Änderungen zu prüfen, die für den Kurs gemacht werden können.

Der Kurs heißt "Advanced Databases", aber der Name ist ein wenig trügerisch. Die Studenten sind keine Informatik-Majors, sondern irgendeine Art von "IT-Management" -Studenten und daher fehlt es an den grundlegenden Konzepten, die die Informatik benötigt (höhere Mathematik, etc.).

Sie hatten bereits einen Einführungskurs in Datenbanken und sollten bereits Folgendes wissen:

  • ER-Modellierung
  • Normalisierung
  • SQL

Also, meine Frage an euch alle lautet: Welche zusätzlichen Konzepte könnte dieser Kurs vermitteln?

Der Kurs ist in erster Linie auf den "fortgeschrittenen Gebrauch" von Datenbanken ausgerichtet, daher akzeptiere ich gerne Antworten mit Konzepten, die nicht gerade fortgeschrittene Datenbankkonzepte sind, sondern sich auf eine Art "fortgeschrittener Nutzung von Datenbanken" beziehen. Als mögliche Themen wurden einfaches Data Mining oder die Nutzung externer Webdienste wie Amazon diskutiert.

Der Kurs wird ein Projekt enthalten, bei dem der Schüler eine Art Frontend (in PHP oder was auch immer) für seine Datenbank (MySQL) erstellen muss, damit er etwas programmieren muss.

Bearbeiten: Denken Sie daran, dass die Studenten keine Informatikstudenten sind, also Dinge, die sehr High-Tech oder Low-Level wie Abfragepläne, Abfrageoptimierungen usw. sind, sind nicht in diesem Bereich Natürlich.

    
Hannes Ovrén 29.09.2008, 12:42
quelle

20 Antworten

11
  • Korrekte Verwendung von Indizes (Schwerpunkt auf nicht zu viel Verwendung).
  • Auslöser
  • Gespeicherte Prozeduren
Bill the Lizard 29.09.2008, 12:48
quelle
14

Bringen Sie ihnen Set-based Thinking bei. Dies ist die wichtigste Sache zu lernen, wenn Sie irgendeine Art von Arbeit mit Datenbanken.

    
Mladen 29.09.2008 12:48
quelle
10

Sicherheit. das ist was wir wirklich brauchen. Wir brauchen neue Leute, um keine infektionsfreundlichen Anwendungen zu machen

Leistung müssen Sie ihnen über die Kosten von Operationen erklären, und wenn einige Dinge, die nützlich scheinen, Ihre App zu einem Crawl wie bestimmten Joining-Operationen bringen (Sie sollten auch erklären, warum es schwer ist, gute Algorithmen für diese zu machen Operationen, aber keine Notwendigkeit, in die Mathematik zu bringen, verwenden Sie einfach Sachen wie Bienen und Blumen)

    
Robert Gould 29.09.2008 12:45
quelle
6

Abfragepläne lesen / verstehen

Wenn sie bereits mit Modellierung, Normalisierung und SQL vertraut sind, dann ist das Verständnis der Grundlagen der Optimierung der beste nächste Schritt. Ohne das sind alle anderen Fähigkeiten nutzlos. Nach diesen ersten drei Themen treffen die Reifen auf die Straße.

    
Cade Roux 29.09.2008 12:44
quelle
3

Indexierungsstrategien zur Optimierung von Abfragen.

    
Darren 29.09.2008 12:50
quelle
3

Mögliche Bereiche, die abgedeckt werden können, sind:

  1. Verschiedene Schematypen (Sternschema usw.), wenn sie nicht alle im Basiskurs behandelt wurden
  2. Data Warehousing, Würfel usw.
  3. ETL, Daten zusammenführen, Replikation
  4. Unternehmensarchitektur von a Datenbankperspektive
Tom H 29.09.2008 14:31
quelle
3

Parallelität, Sperren und Lesekonsistenz

    
David Aldridge 29.09.2008 15:32
quelle
3

Optimierung von Abfragen. Das ist so ziemlich alles, was das Management in Bezug auf unser DBMS hier beschäftigt. Entweder arbeitet die DB gut oder sie arbeitet aufgrund einer Abfrage, die an einer nicht indizierten Spalte teilnimmt, langsam. Oder unsere nicht standardmäßigen Datenbankeinstellungen bewirken, dass der Ausführungsplan einen fehlerfreien Index ignoriert. Das sind die Dinge, die Manager wirklich dazu bringen, den Schlaf zu verlieren (weil ihre Manager sie um 3 Uhr morgens anrufen) und dann die DBAs anruft, was sie dazu bringt, Schlaf zu verlieren.

Bearbeiten: Auch, wie man Risiko vermeidet. Müssen Sie einen Index für eine Tabelle mit vielen I / O neu erstellen? Ist es ein Produktionsserver? Mach es während eines Wartungsfensters. Ändern einer TCP-Stack-Einstellung auf Betriebssystemebene? Tun Sie es nicht auf einem Produktionsserver. Testen Sie es auf einer wertlosen Maschine und führen Sie es während der Produktion während eines Wartungsfensters durch. Der andere Teil der Risikovermeidung ist ein laufendes Backup. Sichern Sie Ihre Datendateien ist gut, aber Redundanz ist besser. Wir haben Dataguard (Oracle) auf einem lokalen Computer und einem externen Computer laufen, so dass wir sofort auf einen wechseln können, wenn dieser ausfällt. Und es geht runter, und es wird in Zukunft wieder untergehen. Wenn es ausfällt, drängen sich zuerst mein Manager, sein Manager und der Manager seines Managers um den DBA-Würfel und fragen, wann die Seite wieder verfügbar sein wird. Mit unserem Dataguard-Setup bittet er den Manager um einen Wechsel und voila, fertig. Die Site ist gesichert.

    
Bob Gettys 29.09.2008 12:49
quelle
2

OLTP vs OLAP

    
cagcowboy 29.09.2008 12:45
quelle
2

Wie Indizes funktionieren und wann sie funktionieren + hilft nicht

    
cagcowboy 29.09.2008 12:47
quelle
2

Wie wäre es mit Informationen zum Aufbau eines Data Warehouse wie Denormalisierung (intentional), Faktentabellen und allgemeinen Dimensionen?

    
Ben Hoffstein 29.09.2008 12:51
quelle
2
  • Data Mining

  • Replikation

  • Werden Transaktionen bereits abgedeckt? v. wichtig

cagcowboy 29.09.2008 12:51
quelle
1

XML-Datenbanken waren ein Merkmal des fortgeschrittenen Datenbankkurses, den ich gemacht habe. Kann jetzt aber geschmacklos sein?

    
GavinCattell 29.09.2008 12:48
quelle
1

Gespeicherte Prozeduren.

    
ThatBloke 29.09.2008 12:48
quelle
1

Ich mag dein Konzept, sie zu lehren, ein Front-End zu bauen. Das ist offensichtlich der Schlüssel. Wie wäre es mit einer Abdeckung des objektrelationalen Mappings: was es ist, warum es verwendet wird und ein oder mehrere gängige Frameworks.

    
Ben Hoffstein 29.09.2008 13:02
quelle
1
  • Hauptunterschiede von bekannten RDBMS (Oracle, Sybase, DB2, SQL Server, Open-Source, ...)
  • Kosten für die RDBMS-Verwaltung
Panos 29.09.2008 13:04
quelle
1

Wenn es Menschen gibt, mit denen ich in der Zukunft arbeiten würde, würde ich mir wünschen, dass sie Respekt vor dem relationalen Datenmodell haben und wie es Geschäftsregeln und Geschäftsbedingungen richtig modellieren kann.

Versuchen Sie, den Kurs mit der festen Überzeugung zu verlassen, dass ein gutes Datenmodell und strenge Einschränkungen entscheidend sind, um die Vorteile eines dbms zu nutzen.

Zu viele Leute betrachten die Datenbank als nur eine weitere Flatfile-API für die Datenpersistenz.

    
John Nilsson 05.10.2008 11:30
quelle
0

Primär / Fremdschlüssel definieren, um die referentielle Integrität zu erhalten. Kaskadieren löscht usw.

    
hunterjrj 29.09.2008 13:22
quelle
0
  • Sicherung
  • Clustering
  • Co-Standort
  • Lastenausgleich
  • Refactoring
Aaron Fischer 29.09.2008 14:39
quelle
0

Viele der DBAs, mit denen ich konfrontiert bin, haben wenig Ahnung von der Anwendungsentwicklung. Daher übersehen sie Probleme wie Schemaversionskontrolle, Testdaten und Datenversionierung. Sie können auch die Datenmodellierung diskutieren (z. B. Ссылка ). Wie wäre es mit hierarchischen Modellen (dh Eltern-Kind-Beziehungen), Business Intelligence Data Mining oder Data Warehousing? Wie wäre es mit dem Erstellen von virtuellen Maschinen, um mehr Tests zu ermöglichen?

    
David Medinets 29.09.2008 15:26
quelle

Tags und Links