5

Ho uno script Apache Spark in esecuzione su Google Compute Engine che ha come output un Google Cloud Storage. Ho più di 300 file part-00XXX nella mia cartella di archiviazione cloud. Mi piacerebbe unirliUnisci più di 32 file in Google Cloud Storage

ho provato:

[email protected]:~$ gsutil compose gs://mybucket/data/* gs://mybucket/myfile.csv 

ma ho ottenuto questo errore:

CommandException: "compose" called with too many component objects. Limit is 32. 

Tutte le idee di una soluzione per unire tutti i file tesi di parte?

+1

Partiziona i tuoi file in blocchi con 32 file al suo interno. Unisci ciascuno individualmente. Dato che hai iniziato con N file, ora avrai file N/32. ripetere. Se hai abbastanza memoria, puoi farlo con linee di comando secondarie e non devi leggere/scrivere su disco ogni volta –

risposta

5

È possibile comporre solo 32 oggetti in una singola richiesta, ma un oggetto composito può avere fino a 1024 componenti. In particolare, puoi comporre oggetti 0-31 in qualche oggetto 0 ', 32-63 in 1', ecc. - allora ognuno di questi oggetti compositi può essere composto di nuovo componendo (0 ', 1', ..., piano (300/32) ').

+0

Non esitare a farmelo sapere se qualcuno scrive script per farlo. – poiuytrez

Problemi correlati