Seminar / Training
Die Leistungsfähigkeit von Valkey hängt stärker vom Datenmodell als von einzelnen Befehlen ab. Das Seminar entwickelt aus Strings, Hashes, Listen, Sets, Sorted Sets, Bitmaps, HyperLogLogs, Geodaten und Streams belastbare Modelle für Cache, Zähler, Ranglisten, Sitzungen, Warteschlangen und Ereignisdaten.
Inhaltsübersicht
- Lernziele und fachliche Einordnung
- Modellierungsprinzipien und Schlüsselraum
- Strings, Zähler, Bitmaps und Bitfelder
- Hashes für Objekt- und Feldmodelle
- Listen, Sets und Sorted Sets
- HyperLogLog, Geodaten und Spezialstrukturen
- Streams und Ereignisdaten
- Atomarität, Transaktionen und Modelltests
- Praxislabor
- Zielgruppe, Voraussetzungen und Arbeitsweise
Lernziele
Kapitelübersicht: Valkey-Datentypen nach Semantik, Komplexität und Speicherwirkung auswählen; Schlüsselnamen, TTLs und Lebenszyklen konsistent modellieren; Atomare Operationen, Transaktionen und serverseitige Logik korrekt abgrenzen; Große, heiße und schwer löschbare Schlüssel bereits im Design vermeiden.
- Valkey-Datentypen nach Semantik, Komplexität und Speicherwirkung auswählen.
- Schlüsselnamen, TTLs und Lebenszyklen konsistent modellieren.
- Atomare Operationen, Transaktionen und serverseitige Logik korrekt abgrenzen.
- Große, heiße und schwer löschbare Schlüssel bereits im Design vermeiden.
- Ein Datenmodell mit Tests, Kapazitätsannahmen und Betriebsregeln dokumentieren.
Kapitel 1: Modellierungsprinzipien und Schlüsselraum
Kapitelübersicht: Fachobjekte, Zugriffsmuster, Änderungsfrequenz und Lebensdauer vor der Typwahl erfassen; Schlüsselnamen mit Namespace, Mandant, Objekt und Version konsistent strukturieren; TTL, Invalidierung und Eigentümerschaft als Bestandteil des Datenmodells behandeln; Datenschutz, Löschung und Nachvollziehbarkeit in Schlüsselstrukturen berücksichtigen.
- Fachobjekte, Zugriffsmuster, Änderungsfrequenz und Lebensdauer vor der Typwahl erfassen.
- Schlüsselnamen mit Namespace, Mandant, Objekt und Version konsistent strukturieren.
- TTL, Invalidierung und Eigentümerschaft als Bestandteil des Datenmodells behandeln.
- Datenschutz, Löschung und Nachvollziehbarkeit in Schlüsselstrukturen berücksichtigen.
Schritt-für-Schritt-Praxis
- Ausgangslage und Zielkriterien erfassen: Fachobjekte, Zugriffsmuster, Änderungsfrequenz und Lebensdauer vor der Typwahl erfassen.
- Konfiguration oder Implementierung aufbauen: Schlüsselnamen mit Namespace, Mandant, Objekt und Version konsistent strukturieren.
- Normal-, Grenz- und Fehlerfall prüfen: TTL, Invalidierung und Eigentümerschaft als Bestandteil des Datenmodells behandeln.
- Betriebsentscheidung und Prüfnachweis festhalten: Datenschutz, Löschung und Nachvollziehbarkeit in Schlüsselstrukturen berücksichtigen.
Kapitel 2: Strings, Zähler, Bitmaps und Bitfelder
Kapitelübersicht: Strings für Werte, serialisierte Objekte, Zähler und atomare Zustände einsetzen; Inkremente, bedingtes Setzen und Ablaufzeiten ohne Race Conditions kombinieren; Bitmaps und Bitfelder für kompakte Zustands- und Aktivitätsmodelle bewerten; Grenzen durch große Werte, Serialisierung und konkurrierende Aktualisierung prüfen.
- Strings für Werte, serialisierte Objekte, Zähler und atomare Zustände einsetzen.
- Inkremente, bedingtes Setzen und Ablaufzeiten ohne Race Conditions kombinieren.
- Bitmaps und Bitfelder für kompakte Zustands- und Aktivitätsmodelle bewerten.
- Grenzen durch große Werte, Serialisierung und konkurrierende Aktualisierung prüfen.
Schritt-für-Schritt-Praxis
- Ausgangslage und Zielkriterien erfassen: Strings für Werte, serialisierte Objekte, Zähler und atomare Zustände einsetzen.
- Konfiguration oder Implementierung aufbauen: Inkremente, bedingtes Setzen und Ablaufzeiten ohne Race Conditions kombinieren.
- Normal-, Grenz- und Fehlerfall prüfen: Bitmaps und Bitfelder für kompakte Zustands- und Aktivitätsmodelle bewerten.
- Betriebsentscheidung und Prüfnachweis festhalten: Grenzen durch große Werte, Serialisierung und konkurrierende Aktualisierung prüfen.
Kapitel 3: Hashes für Objekt- und Feldmodelle
Kapitelübersicht: Hashes für partiell aktualisierbare Fachobjekte und Profile strukturieren; Feldnamen, optionale Werte und Versionsstrategie einheitlich festlegen; Feldbasierte Aktualisierung, Ablauf und Speicherwirkung praktisch vergleichen; Objektgröße und Zugriffsmuster gegen alternative String-Modelle messen.
- Hashes für partiell aktualisierbare Fachobjekte und Profile strukturieren.
- Feldnamen, optionale Werte und Versionsstrategie einheitlich festlegen.
- Feldbasierte Aktualisierung, Ablauf und Speicherwirkung praktisch vergleichen.
- Objektgröße und Zugriffsmuster gegen alternative String-Modelle messen.
Schritt-für-Schritt-Praxis
- Ausgangslage und Zielkriterien erfassen: Hashes für partiell aktualisierbare Fachobjekte und Profile strukturieren.
- Konfiguration oder Implementierung aufbauen: Feldnamen, optionale Werte und Versionsstrategie einheitlich festlegen.
- Normal-, Grenz- und Fehlerfall prüfen: Feldbasierte Aktualisierung, Ablauf und Speicherwirkung praktisch vergleichen.
- Betriebsentscheidung und Prüfnachweis festhalten: Objektgröße und Zugriffsmuster gegen alternative String-Modelle messen.
Kapitel 4: Listen, Sets und Sorted Sets
Kapitelübersicht: Listen für Reihenfolge, Queue-Muster und begrenzte Verlaufsdaten einsetzen; Sets für Eindeutigkeit, Mitgliedschaft und Mengenoperationen modellieren; Sorted Sets für Ranglisten, Prioritäten, Zeitachsen und Bereichsabfragen nutzen; Blockierende Operationen, Kardinalität und Multi-Key-Grenzen bewerten.
- Listen für Reihenfolge, Queue-Muster und begrenzte Verlaufsdaten einsetzen.
- Sets für Eindeutigkeit, Mitgliedschaft und Mengenoperationen modellieren.
- Sorted Sets für Ranglisten, Prioritäten, Zeitachsen und Bereichsabfragen nutzen.
- Blockierende Operationen, Kardinalität und Multi-Key-Grenzen bewerten.
Schritt-für-Schritt-Praxis
- Ausgangslage und Zielkriterien erfassen: Listen für Reihenfolge, Queue-Muster und begrenzte Verlaufsdaten einsetzen.
- Konfiguration oder Implementierung aufbauen: Sets für Eindeutigkeit, Mitgliedschaft und Mengenoperationen modellieren.
- Normal-, Grenz- und Fehlerfall prüfen: Sorted Sets für Ranglisten, Prioritäten, Zeitachsen und Bereichsabfragen nutzen.
- Betriebsentscheidung und Prüfnachweis festhalten: Blockierende Operationen, Kardinalität und Multi-Key-Grenzen bewerten.
Kapitel 5: HyperLogLog, Geodaten und Spezialstrukturen
Kapitelübersicht: Ungefähre Kardinalität mit HyperLogLog gegen exakte Mengenmodelle abwägen; Geodaten mit Radius-, Distanz- und Bereichsabfragen fachlich korrekt modellieren; Spezialstrukturen anhand Fehlertoleranz, Speicherbedarf und Abfrageziel auswählen; Messfehler, Datengranularität und fachliche Akzeptanz dokumentieren.
- Ungefähre Kardinalität mit HyperLogLog gegen exakte Mengenmodelle abwägen.
- Geodaten mit Radius-, Distanz- und Bereichsabfragen fachlich korrekt modellieren.
- Spezialstrukturen anhand Fehlertoleranz, Speicherbedarf und Abfrageziel auswählen.
- Messfehler, Datengranularität und fachliche Akzeptanz dokumentieren.
Schritt-für-Schritt-Praxis
- Ausgangslage und Zielkriterien erfassen: Ungefähre Kardinalität mit HyperLogLog gegen exakte Mengenmodelle abwägen.
- Konfiguration oder Implementierung aufbauen: Geodaten mit Radius-, Distanz- und Bereichsabfragen fachlich korrekt modellieren.
- Normal-, Grenz- und Fehlerfall prüfen: Spezialstrukturen anhand Fehlertoleranz, Speicherbedarf und Abfrageziel auswählen.
- Betriebsentscheidung und Prüfnachweis festhalten: Messfehler, Datengranularität und fachliche Akzeptanz dokumentieren.
Kapitel 6: Streams und Ereignisdaten
Kapitelübersicht: Stream-Einträge, IDs, Consumer Groups und Zustellzustände strukturieren; Retention, Trimming und Wiederverarbeitung als Teil des Datenlebenszyklus planen; Pending Entries, Acknowledgements und Consumer-Ausfälle im Modell berücksichtigen; Streams gegen Pub/Sub und Listen anhand Persistenz und Zustellanforderung abgrenzen.
- Stream-Einträge, IDs, Consumer Groups und Zustellzustände strukturieren.
- Retention, Trimming und Wiederverarbeitung als Teil des Datenlebenszyklus planen.
- Pending Entries, Acknowledgements und Consumer-Ausfälle im Modell berücksichtigen.
- Streams gegen Pub/Sub und Listen anhand Persistenz und Zustellanforderung abgrenzen.
Schritt-für-Schritt-Praxis
- Ausgangslage und Zielkriterien erfassen: Stream-Einträge, IDs, Consumer Groups und Zustellzustände strukturieren.
- Konfiguration oder Implementierung aufbauen: Retention, Trimming und Wiederverarbeitung als Teil des Datenlebenszyklus planen.
- Normal-, Grenz- und Fehlerfall prüfen: Pending Entries, Acknowledgements und Consumer-Ausfälle im Modell berücksichtigen.
- Betriebsentscheidung und Prüfnachweis festhalten: Streams gegen Pub/Sub und Listen anhand Persistenz und Zustellanforderung abgrenzen.
Kapitel 7: Atomarität, Transaktionen und Modelltests
Kapitelübersicht: Einzelbefehle, Transaktionen, optimistische Sperren und Lua/Functions passend auswählen; Race Conditions und verlorene Aktualisierungen mit Paralleltests sichtbar machen; Speicher-, Latenz- und Löschverhalten mit repräsentativen Datenmengen messen; Datenmodellentscheidung mit Alternativen, Grenzen und Betriebsregeln festhalten.
- Einzelbefehle, Transaktionen, optimistische Sperren und Lua/Functions passend auswählen.
- Race Conditions und verlorene Aktualisierungen mit Paralleltests sichtbar machen.
- Speicher-, Latenz- und Löschverhalten mit repräsentativen Datenmengen messen.
- Datenmodellentscheidung mit Alternativen, Grenzen und Betriebsregeln festhalten.
Schritt-für-Schritt-Praxis
- Ausgangslage und Zielkriterien erfassen: Einzelbefehle, Transaktionen, optimistische Sperren und Lua/Functions passend auswählen.
- Konfiguration oder Implementierung aufbauen: Race Conditions und verlorene Aktualisierungen mit Paralleltests sichtbar machen.
- Normal-, Grenz- und Fehlerfall prüfen: Speicher-, Latenz- und Löschverhalten mit repräsentativen Datenmengen messen.
- Betriebsentscheidung und Prüfnachweis festhalten: Datenmodellentscheidung mit Alternativen, Grenzen und Betriebsregeln festhalten.
Praxislabor
Kapitelübersicht: Ein Sitzungs- und Tokenmodell mit TTL, atomarer Erneuerung und kontrollierter Invalidierung entwerfen; Eine Rangliste mit Sorted Sets und eine Aktivitätsauswertung mit Bitmaps umsetzen und vergleichen; Ein Stream-Modell mit Consumer Group, Pending Entries und Wiederverarbeitung aufbauen; Zwei alternative Objektmodelle hinsichtlich Speicher, Latenz und Änderungsaufwand messen.
- Ein Sitzungs- und Tokenmodell mit TTL, atomarer Erneuerung und kontrollierter Invalidierung entwerfen.
- Eine Rangliste mit Sorted Sets und eine Aktivitätsauswertung mit Bitmaps umsetzen und vergleichen.
- Ein Stream-Modell mit Consumer Group, Pending Entries und Wiederverarbeitung aufbauen.
- Zwei alternative Objektmodelle hinsichtlich Speicher, Latenz und Änderungsaufwand messen.
Zielgruppe, Voraussetzungen und Arbeitsweise
Kapitelübersicht: Zielgruppe: Softwareentwicklung, Datenarchitektur, Lösungsarchitektur, Plattformteams, technische Beratung und Performance Engineering; Voraussetzungen: Grundkenntnisse in Datenmodellierung und Anwendungsentwicklung; erste Erfahrungen mit Key-Value- oder In-Memory-Systemen sind hilfreich; Arbeitsweise: Fachvortrag, Demonstrationen, angeleitete Laboraufgaben, Fehleranalysen und dokumentierte Abnahmen.
Zielgruppe: Softwareentwicklung, Datenarchitektur, Lösungsarchitektur, Plattformteams, technische Beratung und Performance Engineering.
Voraussetzungen: Grundkenntnisse in Datenmodellierung und Anwendungsentwicklung; erste Erfahrungen mit Key-Value- oder In-Memory-Systemen sind hilfreich.
Arbeitsweise: Fachvortrag, technische Demonstrationen, strukturierte Schrittfolgen, praktische Übungen am System, kontrollierte Fehlerfälle und schriftliche Prüfpunkte.
Fachbereichsleiter / Leiter der Trainer / Ihre Ansprechpartner
-

Lucas Beich
Telefon: + 49 (221) 74740055
E-Mail: lucas.beich@seminar-experts.de
Seminardetails
| Dauer: | 3 Tage ca. 6 h/Tag, Beginn 1. Tag: 10:00 Uhr, weitere Tage: 09:00 Uhr |
| Preis: |
Öffentlich oder Live Stream: € 1.797 zzgl. MwSt. Inhaus: € 5.100 zzgl. MwSt. |
| Teilnehmeranzahl: | min. 2 - max. 8 |
| Teilnehmer: | Softwareentwicklung, Datenarchitektur, Lösungsarchitektur, Plattformteams, technische Beratung und Performance Engineering |
| Voraussetzungen: | Grundkenntnisse in Datenmodellierung und Anwendungsentwicklung; erste Erfahrungen mit Key-Value- oder In-Memory-Systemen sind hilfreich |
| 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: | Fachvortrag, Demonstrationen, praktische Übungen und strukturierte Laboraufgaben am System |
| Seminararten: | Öffentlich, Webinar, Inhouse, 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.
