Project này hướng đến việc xử lý oracle, lấy ra các trường, trong đó có trường Clob của oracle
- Thử sử dụng processor ExecuteSQLRecord
Query thử bản ghi oracle thấy kết quả bình thường nhưng với các paragraph lớn hiện được report là kết quả đôi khi không chuẩn xác
- Thử xây dựng một processor dành riêng cho oracle
Đối với clob, vấn đề đặt ra là khi fetch về resultset thì sẽ có dạng byte, như vậy khi convert object để trả về sẽ bị mất trường đó.
Khi mà load về ta sẽ xử lý load kiểm tra trong resultset liệu có chứa trường clob, nếu như xuất hiện trường đó thì xử lý để đưa về dạng String
Hàm này được custom riêng cho clob, giảm đáng kể code check được implement. Vì vậy có thể kì vọng performance tốt.
- Đầu tiên clone code về
git clone git@github.com:dotrungkien3210/clob_oracle.git
- Tiếp theo thực hiện kiểm tra
mvn validate
- Kế tiếp build thành file nar
mvn clean install
Nếu thành công, một file nar sẽ được lưu trong folder nar
Thực hiện copy file nar vào thư mục lib của nifi, sau đó khởi động lại chương trình nifi
Tìm tới Processor ExtractOracleRecord, setup các Properties và Controller Service
Properties
Controller Service (Chú ý rằng mới chỉ thực hiện xử lý câu lệnh select)
Chạy thử và nhận kết quả
Hiện chưa thể đưa về một output có kiểu dữ liệu hoàn chỉnh, ý là chưa thể chọn output là CSV, JSON... Output hiện tại vẫn có dạng String và phải thêm một processor nữa để xử lý
PartitionRecord
Config gợi ý
Kết quả cuối cùng