Planen Sie Ihren Intake Runner
Um eine optimale Leistung und Kosteneffizienz zu gewährleisten, ist es ratsam, Ihre STACKIT Intake-Konfiguration im Voraus zu planen. Der Schlüssel zu dieser Planung liegt im Verständnis der Merkmale Ihres Datenstroms.
Planen Sie Ihren Bedarf
Abschnitt betitelt „Planen Sie Ihren Bedarf“Bevor Sie einen Intake Runner erstellen, müssen Sie die Muster und Anforderungen Ihres Datenstroms analysieren:
- Datenvolumen-Analyse: Schätzen Sie das Datenvolumen, das Sie voraussichtlich aufnehmen werden. Die Kapazität eines Intake Runner wird durch zwei Kennzahlen definiert: maximale Anzahl von Nachrichten pro Stunde und maximale Nachrichtengröße in KiB. Berücksichtigen Sie dabei unbedingt Ihre Spitzenraten bei der Aufnahme und die Nachrichtengrößen, nicht nur den Durchschnitt.
- Aufnahmemuster: Überlegen Sie, ob Ihre Arbeitslast bei der Aufnahme gleichmäßig oder sprunghaft verteilt ist. Die Pufferkapazität des Intake Runner kann vorübergehende Spitzen und nachgelagerte Ausfälle für bis zu 24 Stunden bewältigen, aber Ihre definierte Kapazität sollte ausreichen, um die dauerhafte Arbeitslast zu verarbeiten.
Best Practices
Abschnitt betitelt „Best Practices“- Starten Sie mit einer realistischen Kapazität: Beginnen Sie mit einer Kapazität, die Ihren erwarteten maximalen stündlichen Durchsatz abdeckt. Sie können das System überwachen und die Kapazität bei Bedarf erhöhen. Beachten Sie, dass Sie die Kapazität derzeit nicht verringern können. Erwägen Sie stattdessen, den Intake Runner und seine Intakes zu löschen und neu zu erstellen und diese auf die vorhandenen Tabellen zu verweisen.
- Nutzen Sie die Pufferung: Wenn Sie keine nachgelagerten Unterbrechungen von bis zu 24 Stunden erwarten und damit leben können, dass es länger als fünf Minuten dauert, bis Nachrichten in Dremio sichtbar werden, kann die Pufferung Ihnen auch dabei helfen, Spitzen im Nachrichtenvolumen abzufangen, die über den spezifizierten maximalen stündlichen Durchsatz hinausgehen. Ein Intake Runner blockiert Nachrichten nur dann, wenn der vorreservierte Pufferspeicher voll ist.
- Partitionierung: Verwenden Sie Partitionierung in Ihrem Intake, um die Datenverarbeitung und die Abfrageleistung in Dremio zu optimieren. Es ist ratsam, ein Datum oder ein anderes grobkörniges Zeitfeld als Partitionierungsfeld zu wählen. Dies ermöglicht es Ihnen, eine Iceberg-Tabellenkomprimierung für eine verbesserte Dremio-Abfrageleistung auf älteren Partitionen durchzuführen, während Intake noch in die aktuelle Partition schreibt. Die Verwendung der automatischen, auf der Aufnahmezeit basierenden Partitionierung mit der automatisch hinzugefügten Zeitstempel-Spalte __intake_ts ist ebenfalls eine einfache Methode, um eine zeitbasierte Partitionierung hinzuzufügen.