Chữ ký dưới đây khớp với src/pyapi/*.rs. Các hàm trả về Table hoặc RecordBatch đi qua ranh giới PyO3 bằng Arrow C Data Interface; các hàm khác trả về scalar, tuple hoặc dictionary như liệt kê bên dưới.
(pyarrow.Table, pyarrow.Table), tách clean/trash theo ngưỡng tĩnh trên batch đầu tiên
Lệnh slice trả về khoảng dòng được yêu cầu; slice_cols trả cột theo thứ tự selected_cols. Parquet, Arrow IPC/Feather và ORC chuyển phép chiếu cột xuống reader. Delimited trên đường mapped project cột khi parse nhưng vẫn đọc byte của từng record được chọn; Avro, MsgPack, họ JSON và XLSX có thể chiếu sau khi decode các dòng được chọn. Khi không có locator Lake Map phù hợp, fallback có thể stream rồi bỏ qua từ đầu. Đọc trực tiếp một file có thể sniff một số file không có extension hoặc extension lạ; discovery thư mục của map và Lake Doctor dựa trên extension và chỉ gồm extension có handler đang hoạt động.
basaltic_red.filter
Hàm
Trả về
process_batch(batch: pyarrow.RecordBatch)
(RecordBatch, RecordBatch), clean/trash ngưỡng tĩnh cho một batch trong RAM
dict với khóa total_files, pruned_dirs, total_rows, clean_rows, trash_rows
filter_files_parallel chỉ cắt tỉa phân vùng khi path_pattern là thư mục. Đích là một tệp hoặc glob được liệt kê trực tiếp; partition_filter không thu hẹp các đích đó.
checkpoint_stride_rows phải lớn hơn 0 và điều khiển checkpoint cho định dạng theo dòng; row group Parquet, stripe ORC, block Avro, batch Arrow và block logic XLSX vẫn theo ranh giới riêng của định dạng. fingerprint nhận "metadata" (mặc định) hoặc "blake3". stats_columns=None tính mọi thống kê hiện được hỗ trợ, [] tắt thống kê, còn danh sách tên giới hạn cột được thống kê. Tắt thống kê vẫn cần đọc tệp để đếm dòng và tạo locator.
locate_row phân giải từ map đã lưu và không kiểm tra độ mới của file nguồn. Hãy chạy doctor sau khi thêm, xóa hoặc sửa file; với BLAKE3, Doctor có thể phát hiện nội dung đổi nhưng giữ nguyên dung lượng và mtime. create_map và doctor discovery theo extension được hỗ trợ; file không có extension nhưng đọc trực tiếp được nằm ngoài phạm vi thư mục này. Extension động phải được đăng ký trong mỗi process chạy tạo hoặc kiểm tra map. Map schema 3 lưu các tùy chọn này và hash BLAKE3 tùy chọn cho từng file; map 5 cột cũ và schema 2 được nạp với mặc định trước đây. Slice vẫn chỉ kiểm size/mtime để không hash lại toàn file ở mỗi range.