Sie können die spaltenbasierte AlloyDB-Engine so optimieren, dass Hintergrundjobs zum automatischen Einfügen und Aktualisieren von Spalten im Spaltenspeicher beschleunigt werden und gesteuert wird, wann die automatische Spaltenformatierung ausgeführt wird. Die Einstellungen umfassen die Wartungs-CPU und ‑Worker, den Zeitplan für die automatische Spaltenformatierung und die Heap-Größe für die Spaltenpopulation.
CPU-Ressourcen für Wartungsaufgaben anpassen
Im folgenden Beispiel wird die spaltenbasierte Engine so konfiguriert, dass 50% der CPU-Kerne verwendet werden:
google_job_scheduler.maintenance_cpu_percentage = 50
Die spaltenbasierte Engine verwendet bis zu 20% der CPU-Kerne für Hintergrundwartungsjobs wie das automatische Einfügen, Aktualisieren und Empfehlungen. Wenn Sie die CPU-Ressourcen für Wartungsaufgaben anpassen möchten, legen Sie das Flag google_job_scheduler.maintenance_cpu_percentage auf einen Wert zwischen 0 und 100 fest. Der Standardwert ist 20. Wenn Sie dieses Flag auf 0 setzen, werden Hintergrundwartungsjobs deaktiviert. Für Werte ungleich null beträgt die niedrigste CPU-Auslastung für Hintergrundwartungsaufgaben 1 vCPU.
Worker hinzufügen, um die spaltenbasierte Wartung zu beschleunigen
Im folgenden Beispiel wird gezeigt, wie Sie vier Worker-Prozesse festlegen:
google_job_scheduler.max_parallel_workers_per_job = 4
Die spaltenbasierte Engine verwendet bis zu zwei Worker-Prozesse für Hintergrundjobs zum automatischen Einfügen und Aktualisieren. Um die Geschwindigkeit dieser Vorgänge zu erhöhen, legen Sie das folgende Flag fest, um die Anzahl der Worker-Prozesse für Hintergrundjobs zu erhöhen. Die Standardeinstellung ist 2 Worker-Prozesse. Diese Prozesse werden mit begrenzten CPU-Ressourcen ausgeführt, wie im Flag google_job_scheduler.maintenance_cpu_percentage angegeben. Für dieses Flag ist kein Neustart der Datenbank erforderlich.
Zeitplan für die automatische Spaltenformatierung ändern
Im folgenden Beispiel wird gezeigt, wie Sie den Zeitplan für die automatische Spaltenformatierung auf sechs Stunden festlegen:
google_columnar_engine.auto_columnarization_schedule = 'EVERY 6 HOURS'
Der Zeitplan für die automatische Spaltenformatierung kann im Flag google_columnar_engine.auto_columnarization_schedule basierend auf erwarteten scanlastigen Arbeitslasten festgelegt werden. Geben Sie für dieses Flag eine oder mehrere Stunden an. Das Ändern des Werts dieses Flags erfordert keinen Neustart der Datenbank.
Spaltenbasierte Engine manuell mit Daten füllen
Im folgenden Beispiel wird gezeigt, wie Sie die spaltenbasierte Engine manuell mit Daten füllen:
google_columnar_engine.enable_auto_columnarization = OFF
Wenn Sie die spaltenbasierte Engine nur manuell befüllen möchten, setzen Sie das Flag google_columnar_engine.enable_auto_columnarization auf OFF. Der Standardwert dieses Flags ist ON. Das Ändern des Werts dieses Flags erfordert keinen Neustart der Datenbank.
Weitere Informationen finden Sie unter Spaltenspeicherinhalte manuell verwalten.
Heap-Größe für die spaltenbasierte Engine optimieren
Im folgenden Beispiel wird gezeigt, wie Sie das Flag google_columnar_engine.population_heap_size_in_mb konfigurieren:
google_columnar_engine.population_heap_size_in_mb = 250
Zum Konvertieren von Daten in das Spaltenformat weist die spaltenbasierte Engine die im Flag google_columnar_engine.population_heap_size_in_mb angegebene Arbeitsspeichermenge in Megabyte zu. Sobald die Konvertierung abgeschlossen ist, wird dieser Speicher sofort freigegeben, in der Regel innerhalb von Sekunden.
Die empfohlenen Werte für die Einstellung google_columnar_engine.population_heap_size_in_mb liegen zwischen mindestens 200 MB und maximal 1.000 MB. Die zulässigen Flag-Werte liegen jedoch zwischen 0 und 2.147.483.647 MB.
Der Standardwert von 250 MB für das Flag google_columnar_engine.population_heap_size_in_mb ist für die meisten typischen Datenbanknutzungen gut geeignet. Es kann jedoch vorkommen, dass Sie diesen Wert erhöhen müssen.