You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@arrow.apache.org by "Antoine Pitrou (JIRA)" <ji...@apache.org> on 2018/10/29 18:10:10 UTC
[jira] [Created] (ARROW-3646) [Python] Add convenience factories to
create IO streams
Antoine Pitrou created ARROW-3646:
-------------------------------------
Summary: [Python] Add convenience factories to create IO streams
Key: ARROW-3646
URL: https://issues.apache.org/jira/browse/ARROW-3646
Project: Apache Arrow
Issue Type: Improvement
Components: Python
Affects Versions: 0.11.0
Reporter: Antoine Pitrou
Currently, creating IO streams requires invoking various constructors with irregular names. It would be nice to expose a higher-level interface.
For example:
{code:python}
def open_reader(source, compression='detect'):
"""
Create an Arrow input stream.
Parameters
----------
source: str, Path, buffer, file-like object, ...
The source to open for reading
compression: str or None
The compression algorithm to use for on-the-fly decompression.
If 'detect' and source is a file path, then compression will be
chosen based on the file extension.
If None, no compression will be applied.
Otherwise, a well-known algorithm name must be supplied (e.g. "gzip")
"""
def open_writer(source, compression='detect'):
"""
Create an Arrow output stream.
Parameters
----------
source: str, Path, buffer, file-like object, ...
The source to open for writing
compression: str or None
The compression algorithm to use for on-the-fly compression.
If 'detect' and source is a file path, then compression will be
chosen based on the file extension.
If None, no compression will be applied.
Otherwise, a well-known algorithm name must be supplied (e.g. "gzip")
"""
{code}
Thoughts?
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)