Python module for reading and writing Apache ORC file format.
Project Links
Meta
Author: noirello
Requires Python: <4.0,>=3.6
Classifiers
Development Status
- 3 - Alpha
Intended Audience
- Developers
- System Administrators
Programming Language
- C++
- Python :: 3 :: Only
- Python :: 3.10
- Python :: 3.11
- Python :: 3.12
- Python :: 3.13
- Python :: 3.14
PyORC
Python module for reading and writing Apache ORC file format. It uses the Apache ORC’s Core C++ API under the hood, and provides a similar interface as the csv module in the Python standard library.
Supports only Python 3.10 or newer and ORC 1.7.
Features
Reading ORC files.
Writing ORC files.
While using Python’s stream/file-like object IO interface.
That sums up quite well the purpose of this project.
Example
Minimal example for reading an ORC file:
import pyorc
with open("./data.orc", "rb") as data:
reader = pyorc.Reader(data)
for row in reader:
print(row)
And another for writing one:
import pyorc
with open("./new_data.orc", "wb") as data:
with pyorc.Writer(data, "struct<col0:int,col1:string>") as writer:
writer.write((1, "ORC from Python"))
Contribution
Any contributions are welcome. If you would like to help in development fork or report issue here on Github. You can also help in improving the documentation.
0.11.0
Apr 11, 2026
0.10.0
Feb 18, 2025
0.9.0
Nov 04, 2023
0.8.0
Nov 19, 2022
0.7.0
Jul 16, 2022
0.6.0
Feb 18, 2022
0.5.0
Oct 22, 2021
0.4.0
Jan 11, 2021
0.3.0
May 24, 2020
0.2.0
Jan 01, 2020
0.1.0
Nov 16, 2019
Wheel compatibility matrix
Files in release
pyorc-0.11.0-cp310-cp310-macosx_10_13_universal2.whl (4.0MiB)
pyorc-0.11.0-cp310-cp310-macosx_10_13_x86_64.whl (2.0MiB)
pyorc-0.11.0-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (2.8MiB)
pyorc-0.11.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.9MiB)
pyorc-0.11.0-cp310-cp310-musllinux_1_2_aarch64.whl (3.8MiB)
pyorc-0.11.0-cp310-cp310-musllinux_1_2_x86_64.whl (3.9MiB)
pyorc-0.11.0-cp310-cp310-win_amd64.whl (981.3KiB)
pyorc-0.11.0-cp311-cp311-macosx_10_13_universal2.whl (4.0MiB)
pyorc-0.11.0-cp311-cp311-macosx_10_13_x86_64.whl (2.0MiB)
pyorc-0.11.0-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (2.8MiB)
pyorc-0.11.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.9MiB)
pyorc-0.11.0-cp311-cp311-musllinux_1_2_aarch64.whl (3.8MiB)
pyorc-0.11.0-cp311-cp311-musllinux_1_2_x86_64.whl (3.9MiB)
pyorc-0.11.0-cp311-cp311-win_amd64.whl (982.3KiB)
pyorc-0.11.0-cp312-cp312-macosx_10_13_universal2.whl (4.0MiB)
pyorc-0.11.0-cp312-cp312-macosx_10_13_x86_64.whl (2.0MiB)
pyorc-0.11.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (2.8MiB)
pyorc-0.11.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.9MiB)
pyorc-0.11.0-cp312-cp312-musllinux_1_2_aarch64.whl (3.8MiB)
pyorc-0.11.0-cp312-cp312-musllinux_1_2_x86_64.whl (3.9MiB)
pyorc-0.11.0-cp312-cp312-win_amd64.whl (983.2KiB)
pyorc-0.11.0-cp313-cp313-macosx_10_13_universal2.whl (4.0MiB)
pyorc-0.11.0-cp313-cp313-macosx_10_13_x86_64.whl (2.0MiB)
pyorc-0.11.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (2.8MiB)
pyorc-0.11.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.9MiB)
pyorc-0.11.0-cp313-cp313-musllinux_1_2_aarch64.whl (3.8MiB)
pyorc-0.11.0-cp313-cp313-musllinux_1_2_x86_64.whl (3.9MiB)
pyorc-0.11.0-cp313-cp313-win_amd64.whl (983.3KiB)
pyorc-0.11.0-cp314-cp314-macosx_10_15_universal2.whl (4.0MiB)
pyorc-0.11.0-cp314-cp314-macosx_10_15_x86_64.whl (2.0MiB)
pyorc-0.11.0-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (2.8MiB)
pyorc-0.11.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.9MiB)
pyorc-0.11.0-cp314-cp314-musllinux_1_2_aarch64.whl (3.8MiB)
pyorc-0.11.0-cp314-cp314-musllinux_1_2_x86_64.whl (3.9MiB)
pyorc-0.11.0-cp314-cp314-win_amd64.whl (1012.6KiB)
pyorc-0.11.0-cp314-cp314t-macosx_10_15_universal2.whl (4.0MiB)
pyorc-0.11.0-cp314-cp314t-macosx_10_15_x86_64.whl (2.0MiB)
pyorc-0.11.0-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (2.8MiB)
pyorc-0.11.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.9MiB)
pyorc-0.11.0-cp314-cp314t-musllinux_1_2_aarch64.whl (3.8MiB)
pyorc-0.11.0-cp314-cp314t-musllinux_1_2_x86_64.whl (3.9MiB)
pyorc-0.11.0-cp314-cp314t-win_amd64.whl (1.0MiB)
pyorc-0.11.0-pp311-pypy311_pp73-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl (2.7MiB)
pyorc-0.11.0-pp311-pypy311_pp73-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.8MiB)
pyorc-0.11.0.tar.gz (56.6KiB)