Chạy vnTokenizer trên môi trường Apache Spark

vnTokenizer là công cụ chuyên dùng tách từ, gán nhãn từ loại cho tiếng Việt, của tác giả Lê Hồng Phương. vnTokenizer được viết bằng Java, có thể sử dụng như Tools Command Line hoặc Programming.

Nay vnTokenizer vừa ra mắt phiên bản 5.0 (tên là Vitk) hỗ trợ chạy trên Apache Spark, cho những ai xử lý Big Data hoặc cần xử lý một lượng lớn input.

Chuẩn bị

Yêu cần Ubuntu, cài đặt sẵn

  • Java Development Kit (JDK), version 7.0 hoặc mới hơn.
  • Apache Maven version 3.0 hoặc mới hơn.

Download Apache Spark bản prebuilt. Giải nén bỏ và đặt tại ~/spark

cd ~ && wget http://d3kbcqa49mib13.cloudfront.net/spark-1.6.1-bin-hadoop2.6.tgz
tar xzvf spark-1.6.1-bin-hadoop2.6.tgz
mv spark-1.6.1-bin-hadoop2.6/ spark/

Clone project Vitk và build bằng Maven

git clone https://github.com/phuonglh/vn.vitk.git
cd vn.vitk
mvn compile package

Sau khi build thành công, file vn.vitk-2.0.jar được đặt trong thư mục target

Tách từ, gán nhãn từ loại

Vitk có chạy ở chế độ stand-alone cluster hoặc cluster thật. Ở chế độ cluster, mỗi máy cần truy cập đến thư mục chung chứa dữ liệu trong thư mục /dat của Vitk.

Sử dụng chức năng network file system (NFS) của Unix để mount thư mục /vi.vitk/dat và /export/dat Ở chế độ stand-alone chỉ cần làm như sau

sudo mkdir -p /export/dat
sudo mount --bind ~/vn.vitk/dat /export/dat

Submit lên Spark để tiến hành tách từ

~/spark/bin/spark-submit --class=vn.vitk.Vitk ~/vn.vitk/target/vn.vitk-2.0.jar -i <input file> -o <output-file>

Danh sách tham số tham khảo tại đây.

Source code: https://github.com/phuonglh/vn.vitk