詞彙表#
- 陣列#
- 向量#
一個連續的、一維的數值序列,具有已知的長度,其中所有數值都具有相同的類型。一個陣列由零或多個緩衝區、一個非負長度和一個資料類型組成。陣列的緩衝區根據欄狀格式定義的資料類型進行佈局。
陣列的連續性是指,即使陣列可能由多個不相連的緩衝區組成,或者可能由本身跨越多個緩衝區的子陣列組成,迭代陣列的值仍將迭代單一組緩衝區。
陣列是一維的,因為它們是一個槽或單一值的序列,即使對於某些資料類型(如結構或聯集),一個槽可能代表多個值。
由 Arrow 欄狀格式 定義。
- 緩衝區#
一個具有給定長度的連續記憶體區域。緩衝區用於儲存陣列的資料。
緩衝區可能位於 CPU 記憶體、從檔案記憶體映射、位於裝置(例如 GPU)記憶體等,但並非所有 Arrow 實作都支援所有這些可能性。
- 標準擴充類型#
一種由 Arrow 社群標準化的擴充類型,旨在提高實作之間的互操作性。
另請參閱
- 子陣列#
- 父陣列#
在巢狀類型的陣列中,父陣列對應於父類型,而子陣列對應於子類型。例如,
List[Int32]
類型的父陣列具有Int32
類型的子陣列。- 子類型#
- 父類型#
在巢狀類型中,巢狀類型是父類型,而子類型是其參數。例如,在
List[Int32]
中,List
是父類型,而Int32
是子類型。- 分塊陣列#
一個不連續的、一維的數值序列,具有已知的長度,其中所有數值都具有相同的類型。由零或多個陣列組成,即「分塊」。
分塊陣列的不連續性是指,迭代分塊陣列的值可能需要針對不同的索引迭代不同的緩衝區。
不是欄狀格式的一部分;此術語特定於 Arrow 的某些語言實作(主要是 C++ 及其綁定)。
- 複合類型#
- 巢狀類型#
一種資料類型,其結構取決於一個或多個其他子資料類型。例如,
List
是一種巢狀類型,它有一個子類型。兩個巢狀類型相等,當且僅當它們的子類型也相等。
- 資料類型#
- 類型#
值可以採用的類型,例如
Int8
或List[Utf8]
。陣列的類型決定了其值如何根據 Arrow 欄狀格式 在記憶體中佈局。- 字典#
一個值陣列,它伴隨一個字典編碼陣列。
- 字典編碼#
一種陣列,它將其值儲存為索引到字典陣列中,而不是直接儲存值。
另請參閱
- 擴充類型#
- 儲存類型#
擴充類型是一種使用者定義的資料類型,它為現有的資料類型添加了額外的語義。這允許不支援特定擴充類型的實作仍然可以處理底層資料類型(「儲存類型」)。
例如,UUID 可以表示為 16 位元組的固定大小二進位類型。
另請參閱
- 欄位#
- IPC 檔案格式#
- 檔案格式#
- 隨機存取格式#
IPC 串流格式的擴充,可用於將 Arrow 資料序列化到磁碟,然後以隨機存取方式讀回個別的記錄批次。
- IPC 格式#
一種關於如何序列化 Arrow 資料的規範,以便可以在程序/機器之間傳送,或持久儲存在磁碟上。
另請參閱
IPC 檔案格式、IPC 串流格式
- IPC 訊息#
- 訊息#
特定記憶體結構(如記錄批次或綱要)的 IPC 表示形式。始終是 Flatbuffers 協定檔案 中
MessageHeader
的成員之一。- IPC 串流格式#
- 串流格式#
一種用於串流 Arrow 資料或將資料序列化到檔案的協定,由 IPC 訊息 串流組成。
- 實體佈局#
一種關於如何在記憶體中排列數值的規範。
另請參閱
- 原始類型#
一種不具有任何子類型的資料類型。
另請參閱
- 記錄批次#
在 IPC 格式中:資料的原始單位。記錄批次由對應於綱要的緩衝區的有序列表組成。
在某些實作中(主要是 C++ 及其綁定):一個連續的、二維的資料分塊。記錄批次由相同長度的陣列的有序集合組成。
與陣列類似,記錄批次的連續性是指,迭代記錄批次的列將迭代單一組緩衝區。
- 綱要#
- 槽#
陣列中的單一邏輯值,即「列」。
- 表格#
一個不連續的、二維的資料分塊,由分塊陣列的有序集合組成。所有分塊陣列都具有相同的長度,但可能具有不同的類型。不同的資料行可能有不同的分塊方式。
與分塊陣列類似,表格的不連續性是指,迭代表格的列可能需要針對不同的索引迭代不同的緩衝區。
不是欄狀格式的一部分;此術語特定於 Arrow 的某些語言實作(例如 C++ 及其綁定,以及 Go)。