You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@arrow.apache.org by "Christophe Clienti (Jira)" <ji...@apache.org> on 2020/03/25 10:50:00 UTC
[jira] [Created] (ARROW-8208) [PYTHON] RowGroup filtering with
ParquetDataset
Christophe Clienti created ARROW-8208:
-----------------------------------------
Summary: [PYTHON] RowGroup filtering with ParquetDataset
Key: ARROW-8208
URL: https://issues.apache.org/jira/browse/ARROW-8208
Project: Apache Arrow
Issue Type: New Feature
Reporter: Christophe Clienti
Hello,
I tried to use the row_group filtering at the file level with an instance of ParquetDataset without success.
I've tested the workaround propose here:
[https://github.com/pandas-dev/pandas/issues/26551#issuecomment-497039883]
But I wonder if it can work on a file as I get an exception with the following code:
{code:python}
ParquetDataset('data.parquet',
filters=[('ticker', '=', 'AAPL')]).read().to_pandas()
{code}
{noformat}
AttributeError: 'NoneType' object has no attribute 'filter_accepts_partition'
{noformat}
I read the documentation, and the filtering seems to work only on partitioned dataset. Moreover I read some information in the following JIRA ticket:
https://issues.apache.org/jira/browse/ARROW-1796
So I'm not sure that a ParquetDataset can use row_group statistics to filter specific row_group in a file in a dataset or not?
As mentioned in ARROW-1796, I tried with fastparquet, and after fixing a bug (statistics.min instead of statistics.min_value), I was able to apply the row_group filtering.
Today I'm forced with pyarrow to filter manually the row_groups in each file, which prevents me to use the ParquetDataset partition filtering functionality.
The row groups are really useful because it prevents to fill the filesystem with small files...
--
This message was sent by Atlassian Jira
(v8.3.4#803005)