ja partycjonowanie DataFrame następująco:Prevent DataFrame.partitionBy() od usuwania kolumn podzielonych na partycje od schematu
df.write.partitionBy("type", "category").parquet(config.outpath)
Kod daje oczekiwanych rezultatów (czyli danych podzielono według rodzaju & kategorii). Jednak kolumny "typ" i "kategoria" są usuwane z danych/schematu. Czy istnieje sposób, aby temu zapobiec?
Czy to nie jest punkt? Wszystkie wymagane dane są nadal zakodowane w strukturze katalogów, więc nie ma utraty danych. Jeśli chcesz mieć jakieś wartości na plik, możesz wypróbować 'df.repartition (" type "," category "). Napisz (...)' ale nie uzyskasz ładnej struktury. – zero323
@ zero323: tak, zgadzam się, że nie ma utraty danych. Jednak odzyskiwanie kolumn używanych do partycjonowania nie jest trywialne w niektórych przypadkach użycia. Na przykład, jeśli chcę załadować dane w świni, w jaki sposób odzyskać kolumny typu i kategorii? – Michael
Nie używam świni przez jakiś czas. Czy "ParquetLoader" nie rozumie struktury z pudełka? – zero323