MCPcopy Create free account
hub / github.com/apache/arrow / write_metadata

Function write_metadata

python/pyarrow/parquet/core.py:2297–2366  ·  view source on GitHub ↗

Write metadata-only Parquet file from schema. This can be used with `write_to_dataset` to generate `_common_metadata` and `_metadata` sidecar files. Parameters ---------- schema : pyarrow.Schema where : string or pyarrow.NativeFile metadata_collector : list

(schema, where, metadata_collector=None, filesystem=None,
                   **kwargs)

Source from the content-addressed store, hash-verified

2295
2296
2297def write_metadata(schema, where, metadata_collector=None, filesystem=None,
2298 **kwargs):
2299 """
2300 Write metadata-only Parquet file from schema. This can be used with
2301 `write_to_dataset` to generate `_common_metadata` and `_metadata` sidecar
2302 files.
2303
2304 Parameters
2305 ----------
2306 schema : pyarrow.Schema
2307 where : string or pyarrow.NativeFile
2308 metadata_collector : list
2309 where to collect metadata information.
2310 filesystem : FileSystem, default None
2311 If nothing passed, will be inferred from `where` if path-like, else
2312 `where` is already a file-like object so no filesystem is needed.
2313 **kwargs : dict,
2314 Additional kwargs for ParquetWriter class. See docstring for
2315 `ParquetWriter` for more information.
2316
2317 Examples
2318 --------
2319 Generate example data:
2320
2321 >>> import pyarrow as pa
2322 >>> table = pa.table({'n_legs': [2, 2, 4, 4, 5, 100],
2323 ... 'animal': ["Flamingo", "Parrot", "Dog", "Horse",
2324 ... "Brittle stars", "Centipede"]})
2325
2326 Write a dataset and collect metadata information.
2327
2328 >>> metadata_collector = []
2329 >>> import pyarrow.parquet as pq
2330 >>> pq.write_to_dataset(
2331 ... table, 'dataset_metadata',
2332 ... metadata_collector=metadata_collector)
2333
2334 Write the `_common_metadata` parquet file without row groups statistics.
2335
2336 >>> pq.write_metadata(
2337 ... table.schema, 'dataset_metadata/_common_metadata')
2338
2339 Write the `_metadata` parquet file with row groups statistics.
2340
2341 >>> pq.write_metadata(
2342 ... table.schema, 'dataset_metadata/_metadata',
2343 ... metadata_collector=metadata_collector)
2344 """
2345 filesystem, where = _resolve_filesystem_and_path(where, filesystem)
2346
2347 if hasattr(where, "seek"): # file-like
2348 cursor_position = where.tell()
2349
2350 writer = ParquetWriter(where, schema, filesystem, **kwargs)
2351 writer.close()
2352
2353 if metadata_collector is not None:
2354 # ParquetWriter doesn't expose the metadata until it's written. Write

Callers

nothing calls this directly

Calls 6

closeMethod · 0.95
ParquetWriterClass · 0.85
read_metadataFunction · 0.85
seekMethod · 0.80
open_output_streamMethod · 0.45

Tested by

no test coverage detected