The goal is that the python library will provide a functional, performant subset of the java library. The initial focus has been on reading table metadata as well as providing the capability to both plan and execute a scan.
|Plan Scan for Snapshot||X||X|
|Update Current Snapshot||X|
|Set Table Properties||X|
Pyarrow is used for reading parquet files, so read support is limited to what is currently supported in the pyarrow.parquet package.
There is a gap in the current implementation that nested fields are only supported if they are:
all repeated all repeated (lists) or all groups (structs) vs. a mix (structs and lists/repeated fields) then we can read and write them(otherwise we cannot)
|ListType of primitives||X||X|
|MapType of primitives||X||X|
|StructType of primitives||X||X|
|ListType of Nested Types||X|
|MapType of Nested Types||X|
The python client does not currently support write capability