Skip to content

Commit ffff2dc

Browse files
committed
S3 Out - Add ZSTD compression when writing Parquet files
1 parent b739cb6 commit ffff2dc

1 file changed

Lines changed: 12 additions & 1 deletion

File tree

src/aws/compression/arrow/compress.c

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -174,6 +174,7 @@ static GArrowResizableBuffer* table_to_parquet_buffer(GArrowTable *table)
174174
{
175175
GArrowResizableBuffer *buffer;
176176
GArrowBufferOutputStream *sink;
177+
GParquetWriterProperties *builder;
177178
GParquetArrowFileWriter *writer;
178179
GArrowSchema *schema;
179180
GError *error = NULL;
@@ -199,12 +200,22 @@ static GArrowResizableBuffer* table_to_parquet_buffer(GArrowTable *table)
199200
return NULL;
200201
}
201202

203+
builder = gparquet_writer_properties_new();
204+
if (builder == NULL) {
205+
g_object_unref(buffer);
206+
g_object_unref(sink);
207+
g_object_unref(schema);
208+
return NULL;
209+
}
210+
gparquet_writer_properties_set_compression(builder, GARROW_COMPRESSION_TYPE_ZSTD, NULL);
211+
202212
/* Create a new Parquet file writer */
203213
writer = gparquet_arrow_file_writer_new_arrow(schema,
204214
GARROW_OUTPUT_STREAM(sink),
205-
NULL, /* Arrow writer properties */
215+
builder, /* Arrow writer properties */
206216
&error);
207217
g_object_unref(schema);
218+
g_object_unref(builder);
208219
if (writer == NULL) {
209220
flb_error("[aws][compress] Failed to create parquet writer: %s", error->message);
210221
g_error_free(error);

0 commit comments

Comments
 (0)