Ich benutze bq Befehlszeile und versuche, große Menge von JSON-Dateien mit einer Tabelle pro Tag einzufügen.BigQuery schneller Weg Millionen Zeilen einzufügen
Mein Ansatz:
- Liste aller Datei push (Datum benannt YYYMMDDHHMM.meta1.meta2.json)
- concatenate am selben Tag file => YYYMMDD.ndjson
- Split YYYMMDD sein. ndjson Datei (500 Zeilen Dateien bei jedem) YYYMMDD.ndjson_splittedij
Schleife über YYYMMDD.ndjson_splittedij und führen
bq insert --template_suffix=20160331 --dataset_id=MYDATASET TEMPLATE YYYMMDD.ndjson_splittedij
Dieser Ansatz funktioniert. Ich frage mich nur, ob es möglich ist, es zu verbessern.
Wir müssen 1 Tabelle pro Tag haben :). Es scheint, dass das Kontingent für Ladejobs 1000 pro Tag beträgt. –
Ja, aber stellen Sie sich vor 1000 * 5 TB bedeutet 5 Petabyte. Meinst du, dass du diese Datenmenge am selben Tag willst? – Pentium10
Missverständnis. Jeden Tag generiert System L ungefähr 30 000 Dateien in einem Ordner B. Von B un script S erzeugt so viel wie Dateien, die zu B gehören, in einem Ordner D. D kann Millionen von Dateien enthalten. Ziel ist es, Dateien am Tag zu aggregieren, bevor sie so schnell wie möglich an BQ gesendet werden. –