Ich benutze Impala JDBC-Treiber zum Batch-Einfügen von Daten in Impala. Ich habe derzeit eine Stapelgröße von 1000 und verwenden Sie INSERT INTO VALUES-Klausel von PreparedStatement Batch-Abfragen auszuführen. Impala Daemon läuft auf 3 Maschinen und Impala Catalog Server, State Store läuft auf der 4. Maschine.Batch einfügen in Impala zu viel Zeit in Anspruch nehmen
Die Masseneinfügemodus Abfrage-Plan auf Impala sieht wie folgt aus:
Query Timeline: 35s398ms
- Query submitted: 0.000ns (0.000ns)
- Planning finished: 34s822ms (34s822ms)
- Submit for admission: 34s886ms (63.997ms)
- Completed admission: 34s886ms (0.000ns)
- Ready to start 1 fragment instances: 34s886ms (0.000ns)
- All 1 fragment instances started: 34s958ms (71.997ms)
- DML data written: 35s082ms (123.996ms)
- DML Metastore update finished: 35s286ms (203.993ms)
- Request finished: 35s298ms (11.999ms)
- Unregister query: 35s374ms (75.997ms)
- ComputeScanRangeAssignmentTimer: 0.000ns
Wie wir sehen können, Planung abgeschlossen die ganze Zeit nimmt. Wir haben versucht, in beiden Formaten, PARQUET als auch normal zu erstellen. Aber jedesmal ist der Planning-Fertigteil zu hoch.
Gibt es irgendeine Konfigurationsänderung, die ich tun muss? Oder mache ich etwas falsch?