wgtmac commented on issue #45638:
URL: https://github.com/apache/arrow/issues/45638#issuecomment-2689516620

   From the footprint above, it seems that metadata of written row groups 
consumes 16.25% of the total memory. Is something else dominating the memory 
consumption? 
   
   Did you write a large number of row groups and columns? For `WriteTable`, 
each call will produce at least one row group. Too many small row groups may 
result in equivalent number of row group metadata: 
https://github.com/apache/arrow/blob/main/cpp/src/parquet/metadata.cc#L2059. In 
the `format::RowGroup` metadata, every column needs to store its column name 
and column statistics. If you have a lot of string typed columns, the memory 
consumption is significant. You may try to set 
`WriterProperties::disable_statistics()` to disable it to see if it helps. I 
still suggest that `FileWriter::NewBufferedRowGroup()` and 
`FileWriter::WriteRecordBatch()` are better APIs for this case.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to