Seminar / Training
Das Aufbauseminar vertieft Ecto für komplexe Datenzugriffe und transaktionale Geschäftsprozesse. Dynamische Queries, Preloads, Aggregationen, Ecto.Multi, Constraints, konkurrierende Änderungen und datenbanknahe Optimierung werden systematisch angewendet.
Inhaltsübersicht
- Seminarprofil, Zielgruppe und Voraussetzungen
- Lernziele
- Schrittweise Seminarinhalte
- Praxisprojekt
- Methodik
Zielgruppe
Erfahrene Phoenix- und Elixir-Entwickler, Backend-Entwickler und technische Datenverantwortliche
Voraussetzungen
Sichere Kenntnisse in Ecto-Schemas, Changesets, Repositories, Migrationen und grundlegenden Queries
Lernziele
- Komplexe und dynamische Queries lesbar komponieren
- Transaktionen und konkurrierende Änderungen korrekt behandeln
- Constraints, Upserts und Bulk-Operationen gezielt einsetzen
- Datenbankzugriffe messen und systematisch optimieren
Seminarinhalte
1. Query-Komposition
- Schritt 1: Abfragen in kleine, wiederverwendbare Funktionen zerlegen.
- Schritt 2: Dynamische Filter und optionale Kriterien typsicher zusammensetzen.
- Schritt 3: Benannte Bindings und Subqueries für komplexe Strukturen einsetzen.
2. Joins, Preloads und Aggregationen
- Schritt 1: Join- und Preload-Strategien anhand des Zugriffsmusters auswählen.
- Schritt 2: N+1-Abfragen erkennen und kontrolliert beseitigen.
- Schritt 3: Gruppierungen, Fenster und Aggregationen nachvollziehbar modellieren.
3. Transaktionen und Ecto.Multi
- Schritt 1: Geschäftsschritte als benannte Operationen komponieren.
- Schritt 2: Validierung und Datenbankoperationen in einem konsistenten Ablauf verbinden.
- Schritt 3: Fehlerursachen anhand des fehlgeschlagenen Schritts präzise behandeln.
4. Constraints, Upserts und Konflikte
- Schritt 1: Datenbank-Constraints als letzte Integritätsgrenze nutzen.
- Schritt 2: Upserts und Konfliktziele für idempotente Verarbeitung einsetzen.
- Schritt 3: Optimistische und pessimistische Sperrstrategien bewerten.
5. Bulk- und Streaming-Operationen
- Schritt 1: Mehrfachänderungen mit geeigneten Repo-Funktionen ausführen.
- Schritt 2: Große Ergebnismengen speicherschonend verarbeiten.
- Schritt 3: Callbacks und Validierungsverhalten bei Bulk-Operationen bewusst berücksichtigen.
6. Performanceanalyse
- Schritt 1: Query-Zeiten und Häufigkeiten mit Telemetrie erfassen.
- Schritt 2: Ausführungspläne lesen und Engpässe lokalisieren.
- Schritt 3: Indexe aus realen Filter-, Join- und Sortiermustern ableiten.
7. Datenzugriffsarchitektur
- Schritt 1: Query-Details innerhalb fachlicher Contexts kapseln.
- Schritt 2: Lesemodelle und Schreibmodelle bei Bedarf unterschiedlich gestalten.
- Schritt 3: Repository-Aufrufe aus Controller und LiveView entfernen.
8. Tests für komplexe Datenlogik
- Schritt 1: Transaktionsfehler und Constraint-Fälle reproduzierbar testen.
- Schritt 2: Dynamische Queries gegen Grenz- und Kombinationsfälle prüfen.
- Schritt 3: Performancekritische Abfragestrukturen mit Regressionstests schützen.
Praxisprojekt
Implementierung eines transaktionalen Bestell- und Reservierungsprozesses mit dynamischer Suche, Aggregationen, Sperrstrategie, Upserts, Bulk-Verarbeitung, Query-Analyse und gezielten Tests.
Methodik
Kurze fachliche Einführungen wechseln mit Live-Demonstrationen, geführten Implementierungsschritten, eigenständigen Übungen, Code-Reviews, Fehlerszenarien und überprüfbaren Zwischenständen. Sämtliche Übungen bauen auf einem konsistenten Referenzprojekt auf.
Fachbereichsleitung und Trainerteam
-

Lucas Beich
Telefon: + 49 (221) 74740055
E-Mail: lucas.beich@seminar-experts.de
Seminardetails
| Dauer: | 2 Tage ca. 6 h/Tag, Beginn 1. Tag: 10:00 Uhr, weiterer Tag 09:00 Uhr |
| Preis: |
Öffentlich oder Live Stream: € 1.198 zzgl. MwSt. Inhaus: € 3.400 zzgl. MwSt. |
| Teilnehmeranzahl: | min. 2 - max. 8 |
| Teilnehmer: | Erfahrene Phoenix- und Elixir-Entwickler, Backend-Entwickler und technische Datenverantwortliche |
| Voraussetzungen: | Sichere Kenntnisse in Ecto-Schemas, Changesets, Repositories, Migrationen und grundlegenden Queries |
| Standorte: | Stream Live, Inhaus/Firmenseminar, Berlin, Bremen, Darmstadt, Dresden, Erfurt, Essen, Flensburg, Frankfurt, Freiburg, Friedrichshafen, Hamburg, Hamm, Hannover, Jena, Kassel, Köln, Konstanz, Leipzig, Luxemburg, Magdeburg, Mainz, München, Münster, Nürnberg, Paderborn, Potsdam, Regensburg, Rostock, Stuttgart, Trier, Ulm, Wuppertal, Würzburg |
| Methoden: | Vortrag, Demonstrationen, praktische Übungen am System |
| Seminararten: | Öffentlich, Webinar, Inhaus, Workshop - Alle Seminare mit Trainer vor Ort, Webinar nur wenn ausdrücklich gewünscht |
| Durchführungsgarantie: | ja, ab 2 Teilnehmern |
| Sprache: | Deutsch - bei Firmenseminaren ist auch Englisch möglich |
| Seminarunterlage: | Dokumentation auf Datenträger oder als Download |
| Teilnahmezertifikat: | ja, selbstverständlich |
| Verpflegung: | Kalt- / Warmgetränke, Mittagessen (wahlweise vegetarisch) |
| Support: | 3 Anrufe im Seminarpreis enthalten |
| Barrierefreier Zugang: | an den meisten Standorten verfügbar |
| Weitere Informationen unter + 49 (221) 74740055 |
Seminartermine
Die Ergebnissliste kann durch Anklicken der Überschrift neu sortiert werden.
