apache / apache/parquet-java

Is big Decimal in Parquet big endian?

未關閉
#3,246 4 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
主要語言
Java
星號
3.1k
分支
1.6k
平均合併
3 天 12 小時
30 天內合併 PR
33

描述

### Describe the usage question you have. Please include as many useful details as possible.

It's not clear from description https://parquet.apache.org/docs/file-format/data-pages/encodings/ how are big Decimals (precision >= 18) placed. As I could understand they can be encoded as BYTE_ARRAY or FIXED_LEN_BYTE_ARRAY. But there're two ways to place "the bytes contained in the array" from memory: big endian and little endian. I.e. they are in LE in int128 in memory. Could I place the bytes into FIXED_LEN_BYTE_ARRAY as is?

It's also not clean if there's some encoding over these decimal's bytes, should the data be swapped to correct endianness before of after the encoding?

### Component(s)

_No response_

貢獻指南

這個儲存庫沒有索引到貢獻指南

研究方向

從 issue 中連結的 Parquet 資料頁編碼文件開始,驗證 BYTE_ARRAY 和 FIXED_LEN_BYTE_ARRAY 十進位值的位元組順序與編碼規則。完成標準是記錄大型十進位數使用 big-endian 還是 little-endian 位元組,以及何時會進行編碼或位元組交換。

由索引模型根據 Issue 內容生成。

評估

領域
data-engineering
Issue 類型
文件
難度
4/5
預估耗時
3-5 天
活躍度
停滯
描述清晰度
基本清楚
新手友好度
35/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。