其他数据结构#
我们的 Flatbuffers 协议定义文件 定义了一些其他数据结构的元数据,允许其他类型的应用程序利用常见的进程间通信机制。这些数据结构不被视为列式格式的一部分。
Arrow 列式实现不需要实现这些类型。
张量(多维数组)#
Tensor
消息类型提供了一种写入固定大小值的数组(例如 NumPy ndarray)的方法。
在写入独立封装的张量消息时,我们使用在 列式规范 中定义的封装 IPC 格式,但额外将张量体的起始偏移量对齐到 64 字节的倍数。
<metadata prefix and metadata>
<PADDING>
<tensor body>
稀疏张量#
SparseTensor
表示一个多维数组,其中元素通常几乎都是零。
在写入独立封装的稀疏张量消息时,我们使用在 列式规范 中定义的封装 IPC 格式,但额外将稀疏索引的起始偏移量和稀疏张量体(如果写入共享内存区域)对齐到 64 字节的倍数。
<metadata prefix and metadata>
<PADDING>
<sparse index>
<PADDING>
<sparse tensor body>
稀疏张量索引的内容取决于使用哪种稀疏格式。