我是Apache Arrow的新手,所以这个问题可能一无所知。Apache Arrow提供了以标准化内存格式存储原始类型/结构/数组等数据结构的能力,我想知道是否有可能使用Apache Arrow存储更复杂的数据结构,如哈希表(或平衡搜索树)?
许多算法依赖于这些数据结构来工作,在这种情况下,Apache Arrow用户是否需要将箭头数据转换为特定于语言的数据结构?
发布于 2019-12-17 00:25:50
您当然可以定义一个由Arrow列格式支持的静态/不可变的哈希表(例如,如果您希望能够对磁盘上的哈希表进行内存映射)。您必须决定哈希表的“模式”是什么,例如,它可以是
is_filled: boolean
key: KeyType
value: ValueType这假设散列函数和比较函数是已知的,并且对于基于键类型的应用程序是恒定的。
如果您希望键和值在内存中相邻,则可以将它们编码为二进制类型
is_filled: boolean
keyvalue: binary哈希表的实际实现取决于您。欢迎您将这些代码贡献给Apache Arrow代码库本身。
https://stackoverflow.com/questions/59349762
复制相似问题