My understanding is that the intent in Arrow is that intervals are signed
([1] has the discussion on the types).  IIUC, this aligns with most SQL
type systems.  I don't have context on  Parquet (and I think Avro) chose to
make them unsigned.

Also, note that because of this there is no canonical way of mapping Arrow
Interval's directly to parquet intervals.  In the past there have been some
proposals to add a new logical type to parquet but nobody has followed
through on them.

Thanks,
Micah

[1] https://lists.apache.org/thread/pqs6qnjvw1gxfkxz02bntvvyqxvw34mm

On Fri, Oct 13, 2023 at 4:40 PM Curt Hagenlocher <c...@hagenlocher.org>
wrote:

> The Parquet specification clearly states that the components of a Parquet
> interval are unsigned integers. I couldn't find an equivalent statement for
> Arrow, and the C++ implementation has these as signed. Is it correct to
> assume that the intent for Arrow intervals is that they should be
> non-negative?
>
> Thanks,
> -Curt
>

Reply via email to