Apache Arrow 0.2.0 (2017年2月18日)
下載
變更日誌
貢獻者
$ git shortlog -sn apache-arrow-0.1.0..apache-arrow-0.2.0
73 Wes McKinney
55 Uwe L. Korn
16 Julien Le Dem
4 Bryan Cutler
4 Nong Li
2 Christopher C. Aycock
2 Jingyuan Wang
2 Kouhei Sutou
2 Laurent Goujon
2 Leif Walsh
1 Emilio Lahr-Vivaz
1 Holden Karau
1 Li Jin
1 Mohamed Zenadi
1 Peter Hoffmann
1 Steven Phillips
1 adeneche
1 ahnj
1 vkorukanti
新功能與改進
- ARROW-108 - [C++] 為 union types 新增 IPC 往返行程
- ARROW-189 - C++: 使用 ExternalProject 建置第三方相依性
- ARROW-191 - Python: 為 manylinux1 wheels 提供基礎架構
- ARROW-221 - 新增用於寫入 Parquet 1.0 相容邏輯類型的開關
- ARROW-227 - [C++/Python] 將 arrow_io 通用讀取器 / 寫入器介面掛鉤到 arrow_parquet
- ARROW-228 - [Python] 建立與 Arrow-cpp 相容的介面,用於從 Python 類檔案物件讀取位元組
- ARROW-243 - [C++] 在 HdfsClient 中新增 “driver” 選項,以在執行時於 libhdfs 和 libhdfs3 之間選擇
- ARROW-268 - [C++] 充實 union 實作,使其具有 IPC 所需的所有方法
- ARROW-303 - [C++] 也為 leaf 程式庫建置靜態程式庫
- ARROW-312 - [Python] 提供 Python API 以讀取/寫入 Arrow IPC 檔案格式
- ARROW-317 - [C++] 在 arrow::Buffer 上實作零複製 Slice 方法,該方法保留對父項的參考
- ARROW-327 - [Python] 從 Travis CI 流程中移除 conda 建置
- ARROW-328 - [C++] 傳回 shared_ptr 值而非 const-ref?
- ARROW-33 - C++: 實作零複製陣列切片
- ARROW-330 - [C++] CMake 函式以簡化共用 / 靜態程式庫組態
- ARROW-332 - [Python] 新增 helper 函式以將 RecordBatch 轉換為 pandas.DataFrame
- ARROW-333 - 使寫入器即使在未寫入任何資料時也能更新其內部結構描述。
- ARROW-335 - 透過更好地封裝 flatbuffers 來改進 Type apis 和 toString()
- ARROW-336 - 在 Travis 建置中執行 Apache Rat
- ARROW-338 - [C++] 重構 IPC 向量 “loading” 和 “unloading”,使其基於更乾淨的 visitor 模式
- ARROW-350 - 將 Kerberos 支援新增至 HDFS shim
- ARROW-353 - Arrow 版本 0.2
- ARROW-355 - 為序列化空字串陣列至 Parquet 新增測試
- ARROW-356 - 新增關於讀取 Parquet 的文件
- ARROW-359 - 需要記錄 ARROW_LIBHDFS_DIR
- ARROW-360 - C++: 新增方法以使用 realloc 縮減 PoolBuffer
- ARROW-361 - Python: 支援從 Parquet 檔案讀取欄位選擇
- ARROW-363 - 設定 Java/C++ 整合測試 harness
- ARROW-365 - Python: 提供 Array.to_pandas()
- ARROW-366 - [java] 實作 Dictionary 向量
- ARROW-367 - [java] 轉換器 csv/json <=> Arrow 檔案格式以進行整合測試
- ARROW-368 - 記錄使用 Python 時 LD_LIBRARY_PATH 的用法
- ARROW-369 - [Python] 新增一次將多個 record batches 轉換為 pandas 的能力
- ARROW-372 - 建立 JSON arrow 檔案格式以進行整合測試
- ARROW-373 - [C++] 實作 C++ 版本的 JSON 檔案格式以進行測試
- ARROW-374 - Python: 釐清 API 中的 unicode 與 binary
- ARROW-377 - Python: 新增對 Pandas.Categorical 轉換的支援
- ARROW-379 - Python: 使用 setuptools_scm/setuptools_scm_git_archive 提供版本號碼
- ARROW-380 - [Java] 在序列化向量時最佳化 null 計數。
- ARROW-381 - [C++] 簡化原始陣列類型建構器以使用預設類型 singleton
- ARROW-382 - Python: 擴充 API 文件
- ARROW-383 - [C++] 實作 C++ 版本的 ARROW-367 整合測試驗證器
- ARROW-389 - Python: 將 Parquet 檔案寫入 pyarrow.io.NativeFile 物件
- ARROW-394 - 為 boolean、list、struct 和其他基本類型新增整合測試
- ARROW-396 - Python: 新增 pyarrow.schema.Schema.equals
- ARROW-409 - Python: 變更 pyarrow.Table.dataframe_from_batches API 以建立 Table
- ARROW-410 - [C++] 將 Flush 方法新增至 arrow::io::OutputStream
- ARROW-411 - [Java] 將 Intergration.compare 和 Intergration.compareSchemas 移至公用 utils 類別
- ARROW-415 - C++: 新增 Equals 實作以比較 Tables
- ARROW-416 - C++: 新增 Equals 實作以比較 Columns
- ARROW-417 - C++: 新增 Equals 實作以比較 ChunkedArrays
- ARROW-418 - [C++] 合併陣列容器和建構器程式碼,移除 arrow/types
- ARROW-419 - [C++] 將 util/{status.h, buffer.h, memory-pool.h} 提升至 arrow/ 原始碼目錄的頂層
- ARROW-423 - C++: 在外部專案中定義 BUILD_BYPRODUCTS 以支援非 make CMake 產生器
- ARROW-425 - Python: 公開 C 函式以將 arrow::Table 轉換為 pyarrow.Table
- ARROW-426 - Python: 從 pyarrow.Array 轉換為 Python list
- ARROW-427 - [C++] 實作 dictionary 編碼的陣列容器
- ARROW-428 - [Python] 使用執行緒池平行從 Arrow record batches 還原序列化為 pandas
- ARROW-430 - Python: 更好的版本處理
- ARROW-432 - [Python] 透過使用低階 pandas 內部 API,避免在 to_pandas 轉換中進行不必要的記憶體複製
- ARROW-438 - [Python] 串連具有相等結構描述的 Table 實例
- ARROW-440 - [C++] 支援 pkg-config
- ARROW-441 - [Python] 將 Arrow 的檔案和記憶體對應類別公開為 NativeFile 子類別
- ARROW-442 - [Python] 新增公用 Python API 以檢查 Parquet 檔案中繼資料
- ARROW-444 - [Python] 避免因使用 PyBytes_* C API 造成不必要的記憶體複製
- ARROW-449 - Python: 從 pyarrow.{Table,RecordBatch} 轉換為 Python dict
- ARROW-450 - Python: PARQUET-818 的修正
- ARROW-456 - C++: 新增基於 jemalloc 的 MemoryPool
- ARROW-457 - Python: 更好地控制記憶體池
- ARROW-458 - Python: 公開 jemalloc MemoryPool
- ARROW-461 - [Python] 實作 arrow::DictionaryArray 和 pandas.Categorical 之間的轉換
- ARROW-463 - C++: 支援 jemalloc 4.x
- ARROW-466 - C++: jemalloc 的 ExternalProject
- ARROW-467 - [Python] 在 Travis CI 中執行 parquet-cpp 單元測試
- ARROW-468 - Python: 在 pd.DataFrames 中巢狀資料與 Arrow 結構之間的轉換
- ARROW-470 - [Python] 新增 “FileSystem” 抽象概念,以統一方式存取檔案目錄
- ARROW-471 - [Python] 啟用 ParquetFile 以向下傳遞單獨取得的檔案中繼資料
- ARROW-472 - [Python] 公開 parquet::{SchemaDescriptor, ColumnDescriptor}::Equals
- ARROW-474 - 建立 Arrow 串流檔案格式
- ARROW-475 - [Python] 從支援的檔案系統介面高階支援讀取 Parquet 檔案目錄(作為單一 Arrow 表格)
- ARROW-476 - [Integration] 為 Binary / Varbytes 類型新增整合測試
- ARROW-477 - [Java] 在記憶體中以及在 IPC/JSON 層中新增對 second/microsecond/nanosecond 時間戳記的支援
- ARROW-478 - [Python] 在 pyarrow.io.BufferReader ctor 中接受 PyBytes 物件
- ARROW-479 - Python: 測試 Pandas 轉換中預期的結構描述
- ARROW-484 - 在 README 中新增更多關於 Arrow 實作中可以找到哪些技術的詳細資訊
- ARROW-485 - [Java] 使用者需要先初始化 VariableLengthVectors.offsetVector,然後才能呼叫 VariableLengthVectors.mutator.getSafe
- ARROW-490 - Python: 更新 manylinux1 建置指令碼
- ARROW-495 - [C++] 新增串流序列化格式的 C++ 實作
- ARROW-497 - [Java] 串流格式的整合測試 harness
- ARROW-498 - [C++] 串流格式的整合測試 harness
- ARROW-503 - [Python] 串流二進位格式的介面
- ARROW-506 - 實作 Arrow Echo 伺服器以進行整合測試
- ARROW-508 - [C++] 使檔案/記憶體對應檔案介面成為執行緒安全
- ARROW-509 - [Python] 新增對 PARQUET-835(平行欄位讀取)的支援
- ARROW-512 - C++: 新增方法以檢查原始類型
- ARROW-514 - [Python] 接受 pyarrow.io.Buffer 作為 StreamReader、FileReader 類別的輸入
- ARROW-515 - [Python] 新增 StreamReader/FileReader 方法,將所有 record batches 讀取為 Table
- ARROW-521 - [C++/Python] 追蹤預設 MemoryPool 中的峰值記憶體使用量
- ARROW-524 - [java] 提供 API 以存取巢狀向量和緩衝區
- ARROW-525 - Python: 為套件新增更多文件
- ARROW-527 - 清理 drill-module.conf 檔案
- ARROW-529 - Python: 將 jemalloc 和 Python 3.6 新增至 manylinux1 建置
- ARROW-531 - Python: 記錄 jemalloc、擴充 Pandas 區段、新增參與方式
- ARROW-538 - [C++] 設定 AddressSanitizer (ASAN) 建置
- ARROW-546 - Python: 說明 PARQUET-867 中的變更
- ARROW-547 - [Python] 公開 Array::Slice 和 RecordBatch::Slice
- ARROW-553 - C++: 更快的有效位元圖建置
- ARROW-558 - 新增 KEYS 檔案
- ARROW-81 - [Format] 新增 Category 邏輯類型(與 dictionary 編碼不同)
- ARROW-96 - C++: 使用 Doxygen 的 API 文件
- ARROW-97 - Python: 透過 sphinx-apidoc 的 API 文件
錯誤修正
- ARROW-112 - [C++] 常數/列舉的樣式修正
- ARROW-202 - [C++] 與 appveyor ci 整合以支援 windows 並取得在 windows 上建置的 arrow
- ARROW-220 - [C++] 在具有更好跨 linux ABI 相容性的建置環境中建置 conda artifacts
- ARROW-224 - [C++] 解決 boost 相依性的靜態連結問題
- ARROW-230 - Python: 不要像原生模組一樣命名模組(即重新命名 pyarrow.io)
- ARROW-239 - [Python] 呼叫不帶引數的 HdfsFile.read 應讀取檔案的剩餘部分
- ARROW-261 - [C++] 重構 BinaryArray/StringArray 類別,使其不繼承自 ListArray
- ARROW-275 - 在 Arrow File 中為 UnionVector 新增測試
- ARROW-294 - [C++] 不要對記憶體對應檔案實作使用 fopen / fclose / 等方法
- ARROW-322 - [C++] 不要選擇性地建置 HDFS IO 介面
- ARROW-323 - [Python] 選擇加入 PyArrow parquet 建置,而不是在失敗時靜默跳過
- ARROW-334 - [Python] 某些組態上的 OS X rpath 問題
- ARROW-337 - UnionListWriter.list() 做的事情超出應有的範圍,這可能會導致資料損壞
- ARROW-339 - 使 merge_arrow_pr 指令碼與 Python 3 搭配使用
- ARROW-340 - [C++] 開啟磁碟上已存在的寫入檔案不會截斷為零
- ARROW-342 - 在版本發布時設定 Python 版本
- ARROW-345 - libhdfs 整合不適用於 Mac
- ARROW-346 - Python API 文件
- ARROW-348 - [Python] CMake 建置類型應可在命令列上設定
- ARROW-349 - Six 在 python setup.py 中遺失作為需求
- ARROW-351 - 時間類型沒有單位
- ARROW-354 - 無法將空字串陣列與另一個陣列進行比較
- ARROW-357 - 預設 Parquet chunk_size 64k 太小
- ARROW-358 - [C++] libhdfs 可能位於某些 Hadoop 發行版本的非標準位置
- ARROW-362 - Python: 在從 Parquet 讀取的表格上呼叫 to_pandas 會洩漏記憶體
- ARROW-371 - Python: 具有 null 時間戳記的表格在 pandas 中變成 float
- ARROW-375 - parquet.read_table() 中的 columns 參數針對有效的欄位引發 KeyError
- ARROW-384 - 對齊 Java 和 C++ RecordBatch 資料和中繼資料版面配置
- ARROW-386 - [Java] 尊重 struct / map 欄位名稱的大小寫
- ARROW-387 - [C++] arrow::io::BufferReader 不允許在零複製讀取中進行共用記憶體擁有權
- ARROW-390 - C++: 在 ARROW_BUILD_TESTS=OFF 的情況下,CMake 在 json-integration-test 上失敗
- ARROW-392 - 修正字串/二進位整合測試
- ARROW-393 - [JAVA] JSON 檔案讀取器無法在 String 資料向量上設定緩衝區大小
- ARROW-395 - Arrow 檔案格式以相反的順序寫入 record batches。
- ARROW-398 - [Java] 當沒有 null 時,Java 檔案格式需要寫入所有 1 的位元圖
- ARROW-399 - [Java] ListVector.loadFieldBuffers 忽略 ArrowFieldNode 長度中繼資料
- ARROW-400 - [Java] ArrowWriter 為 Struct 類型寫入長度 0
- ARROW-401 - [Java] 浮點向量應在整合測試中進行近似比較
- ARROW-402 - [Java] 整合測試中的 “refCnt gone negative” 錯誤
- ARROW-403 - [JAVA] UnionVector:建立傳輸配對不會將結構描述傳輸到目的地向量
- ARROW-404 - [Python] 在仍有開啟的檔案控制代碼時關閉 HdfsClient 會導致當機
- ARROW-405 - [C++] 在 HADOOP_HOME 中尋找 include/hdfs.h 時不要太嚴格
- ARROW-406 - [C++] 大型 HDFS 讀取在進行 RPC 時必須使用設定的檔案緩衝區大小
- ARROW-408 - [C++/Python] 移除已停用的 conda recipes
- ARROW-414 - [Java] “Buffer too large to resize to …” 錯誤
- ARROW-420 - 對齊 Java 和 C++ 之間的 Date 實作
- ARROW-421 - [Python] pyarrow::PyBytesReader 讀取的零複製緩衝區必須保留對父 PyBytes 的參考,以避免過早的垃圾收集問題
- ARROW-422 - C++: 如果 RapidJSON 已 vendor,則 IPC 應相依於 rapidjson_ep
- ARROW-429 - git-archive SHA-256 總和檢查碼正在變更
- ARROW-433 - [Python] Date 轉換與地區設定相關
- ARROW-434 - Python Parquet 讀取中的區段錯誤和編碼問題
- ARROW-435 - C++: if(RAPIDJSON_VENDORED) 中的拼字錯誤
- ARROW-437 - [C++] 來自身分覆寫虛擬函式的 clang 編譯器警告
- ARROW-445 - C++: arrow_ipc 在產生 arrow/ipc/Message_generated.h 之前建置
- ARROW-447 - Python: 使純量/pylist 字串編碼與 pandas 的字串編碼對齊。
- ARROW-455 - [C++] BufferOutputStream dtor 未呼叫 Close()
- ARROW-469 - C++: 新增選項,以便 resize 不會減少容量
- ARROW-481 - [Python] 修正 PARQUET-472 的修補程式中的 Python 2.7 迴歸
- ARROW-486 - [C++] arrow::io::MemoryMappedFile 無法轉換為 arrow::io::FileInterface
- ARROW-487 - Python: 如果 ObjectBlock::Write 失敗,ConvertTableToPandas 會區段錯誤
- ARROW-494 - [C++] 當 MemoryMappedFile 被解構時,即使緩衝區參考仍然存在,記憶體也會被取消對應
- ARROW-499 - 更新檔案序列化以使用串流序列化格式
- ARROW-505 - [C++] 修正發行模式中的編譯器警告
- ARROW-511 - [Python] List[T] 轉換未針對單一陣列實作
- ARROW-513 - [C++] 修正 Appveyor 建置
- ARROW-519 - [C++] Xcode 6.4 上 libarrow.dylib 中遺失 vtable
- ARROW-523 - Python: 說明 PARQUET-834 中的變更
- ARROW-533 - [C++] arrow::TimestampArray / TimeArray 具有損壞的建構函式
- ARROW-535 - [Python] 為 NPY_LONGLONG 新增類型對應
- ARROW-537 - [C++] 當具有非零長度的值為 null 時,StringArray/BinaryArray 比較可能不正確
- ARROW-540 - [C++] 修正在 ARROW-33 之後的建置
- ARROW-543 - C++: 延遲計算的 null_counts 會計算非 null 條目的數量
- ARROW-544 - [C++] ArrayLoader::LoadBinary 針對長度為 0 的陣列失敗
- ARROW-545 - [Python] 在讀取檔案目錄時忽略沒有 .parq 或 .parquet 字首的檔案
- ARROW-548 - [Python] 將 nthreads 選項新增至 pyarrow.Filesystem.read_parquet
- ARROW-551 - C++: 使用 nullptr Array 建構 Column 會區段錯誤
- ARROW-556 - [Integration] 如果 cpp 建置路徑不同,則無法執行整合測試
- ARROW-561 - 更新 java & python 相依性以改善下游封裝體驗