Arrow Skyhook 範例#
檔案 cpp/examples/arrow/dataset_skyhook_scan_example.cc
位於原始碼樹狀結構中,包含使用 Skyhook 將篩選器和投影卸載到 Ceph 叢集的範例。
說明#
注意
以下說明適用於 Ubuntu 20.04 或更高版本。
安裝 Ceph 和 Skyhook 相依性。
apt update apt install -y cmake \ libradospp-dev \ rados-objclass-dev \ ceph \ ceph-common \ ceph-osd \ ceph-mon \ ceph-mgr \ ceph-mds \ rbd-mirror \ ceph-fuse \ rapidjson-dev \ libboost-all-dev \ python3-pip
建置並安裝 Skyhook。
git clone https://github.com/apache/arrow cd arrow/ mkdir -p cpp/release cd cpp/release cmake -DARROW_SKYHOOK=ON \ -DARROW_PARQUET=ON \ -DARROW_WITH_SNAPPY=ON \ -DARROW_BUILD_EXAMPLES=ON \ -DARROW_DATASET=ON \ -DARROW_CSV=ON \ -DARROW_WITH_LZ4=ON \ .. make -j install cp release/libcls_skyhook.so /usr/lib/x86_64-linux-gnu/rados-classes/
使用 此 腳本部署具有單一記憶體內 OSD 的 Ceph 叢集。
./micro-osd.sh /tmp/skyhook
產生範例資料集。
pip install pandas pyarrow python3 ../../ci/scripts/generate_dataset.py cp -r nyc /mnt/cephfs/
執行範例。
LD_LIBRARY_PATH=/usr/local/lib release/dataset-skyhook-scan-example file:///mnt/cephfs/nyc