Khi lần trước nói về Big Data, chúng ta thảo luận về các kỹ thuật phân tích Big Data. Trước đó đã nói về nhiều khía cạnh khác của Big Data. Trong một bài viết, tôi đã mô tả "Chức năng của các lớp Kiến trúc tham chiếu Big Data". Như đã nói, tiếp tục theo cùng hướng, bài này sẽ thảo luận về "Top 10 công cụ trích xuất dữ liệu nguồn mở".
Các công cụ trích xuất dữ liệu Big Data giúp thu thập dữ liệu từ mọi nguồn khác nhau và chuyển đổi thành dạng có cấu trúc. Thuật ngữ phổ biến hơn cho các công cụ này là "ETL – Extract Transform and Load" (Trích xuất, Chuyển đổi và Tải). Chức năng của các công cụ này chia thành 3 giai đoạn:
- Trích xuất dữ liệu từ nguồn dữ liệu đồng nhất hoặc dị chất
- Chuyển đổi dữ liệu để lưu trữ ở định dạng/cấu trúc phù hợp cho mục đích truy vấn và phân tích
- Tải vào đích cuối cùng (cơ sở dữ liệu, cụ thể hơn là kho dữ liệu vận hành, data mart, hoặc kho dữ liệu).

Thông thường trong công cụ ETL, cả ba giai đoạn thực thi song song vì trích xuất dữ liệu tốn thời gian, nên trong khi dữ liệu đang được kéo về, quá trình chuyển đổi khác đã xử lý dữ liệu đã nhận được và chuẩn bị cho việc tải. Ngay khi có dữ liệu sẵn sàng tải vào đích, việc tải dữ liệu bắt đầu mà không cần đợi các giai đoạn trước hoàn tất.
Dưới đây là top 10 công cụ trích xuất dữ liệu (ETL) nguồn mở:
1. Talend Open Studio:

Talend Open Studio là một trong những công cụ tích hợp dữ liệu ETL mạnh nhất trên thị trường. Talend Open Studio là bộ sản phẩm nguồn mở đa năng để phát triển, kiểm tra, triển khai và quản trị dự án quản lý dữ liệu và tích hợp ứng dụng.
Đối với dự án ETL, Talend Open Studio for Data Integration cung cấp nhiều giải pháp tích hợp dữ liệu, cả bản nguồn mở và thương mại. Talend cung cấp bộ tính năng phong phú bao gồm môi trường phát triển tích hợp đồ họa với giao diện dựa trên Eclipse trực quan. Thiết kế kéo-thả (drag-and-drop) và kết nối rộng rãi với hơn 400 bộ kết nối ứng dụng được cấu hình sẵn để nối giữa cơ sở dữ liệu, mainframe, hệ thống tệp, dịch vụ web, ứng dụng doanh nghiệp đóng gói, kho dữ liệu, ứng dụng OLAP, SaaS, ứng dụng dựa trên đám mây, và nhiều hơn nữa.
2. Scriptella:
Scriptella là công cụ ETL nguồn mở do Apache phát hành, ngoài chức năng trích xuất, chuyển đổi, tải còn dùng để thực thi script Java. Đây là công cụ rất đơn giản, dễ dùng và phổ biến nhờ tính dễ sử dụng. Tính năng bao gồm thực thi script viết bằng SQL, JavaScript, JEXL, Velocity. Di chuyển cơ sở dữ liệu, tương tác với LDAP, JDBC, XML và các nguồn dữ liệu khác. Hoạt động ETL cross-database, import/export từ/đến CSV, văn bản, XML và các định dạng khác.
3. KETL:
KETL là một trong những công cụ nguồn mở tốt nhất cho kho dữ liệu. Nó được xây dựng từ cấu trúc hướng Java kết hợp với XML và các ngôn ngữ khác. Engine được xây dựng trên kiến trúc mở, đa luồng, dựa trên XML. Tính năng chính của KETL bao gồm hỗ trợ tích hợp công cụ bảo mật và quản lý dữ liệu, khả năng mở rộng chứng minh trên nhiều server và CPU và bất kỳ lượng dữ liệu nào, không cần công cụ lịch trình, phụ thuộc, thông báo của bên thứ ba.
4. Pentaho Data Integrator – Kettle:

Theo Pentaho, họ là nhà cung cấp BI cung cấp công cụ ETL như một khả năng tích hợp dữ liệu. Các khả năng ETL này dựa trên dự án Kettle. Đây là ứng dụng và thư viện Java. Kettle là trình thông dịch các thủ tục viết bằng định dạng XML. Kettle cung cấp engine JavaScript để tinh chỉnh quy trình thao tác dữ liệu. Kettle cũng là công cụ tốt, có mọi thứ cần thiết để xây dựng cả quy trình ETL phức tạp. Kettle là trình thông dịch các thủ tục ETL viết bằng định dạng XML.
Kettle (PDI) là công cụ mặc định trong Pentaho Business Intelligence Suite. Các thủ tục cũng có thể thực thi bên ngoài nền tảng Pentaho, miễn là tất cả thư viện Kettle và trình thông dịch Java được cài đặt.
5. Jaspersoft ETL:

Jaspersoft ETL dễ triển khai và vượt trội hơn nhiều hệ thống ETL độc quyền và nguồn mở. Được dùng để trích xuất dữ liệu từ hệ thống giao dịch để tạo kho dữ liệu hoặc data mart hợp nhất cho báo cáo và phân tích. Tính năng bao gồm business modeler để xem quy trình thông tin phi kỹ thuật, hiển thị và chỉnh sửa quy trình ETL với Job Designer - công cụ chỉnh sửa đồ họa, định nghĩa mapping và chuyển đổi phức tạp với Transformation Mapper và các thành phần chuyển đổi khác.
Nó thậm chí có khả năng theo dõi thống kê ETL từ đầu đến cuối với gỡ lỗi real-time, cho phép đầu ra/đầu vào đồng thời từ/đến nhiều nguồn bao gồm tệp phẳng, XML, database, dịch vụ web, server POP và FTP với hàng trăm bộ kết nối có sẵn, và sử dụng console giám sát hoạt động để theo dõi sự kiện job, thời gian thực thi và volume dữ liệu.
6. GeoKettle:
GeoKettle là phiên bản hỗ trợ không gian của công cụ ETL chung Kettle (Pentaho Data Integration). GeoKettle là công cụ ETL không gian mạnh mẽ, dựa trên metadata, dành riêng cho tích hợp các nguồn dữ liệu không gian khác nhau để xây dựng và cập nhật kho dữ liệu địa không gian.
Nó cho phép trích xuất dữ liệu từ nguồn, chuyển đổi dữ liệu để sửa lỗi, làm sạch dữ liệu, thay đổi cấu trúc dữ liệu, làm cho tuân thủ các tiêu chuẩn đã định, và tải dữ liệu đã chuyển đổi vào hệ thống quản lý cơ sở dữ liệu (DBMS) mục tiêu ở chế độ OLTP hoặc OLAP/SOLAP, tệp GIS hoặc dịch vụ web địa không gian.
7. Clover ETL:
Dự án này do OpenSys điều hành, công ty tại Cộng hòa Séc. Nó dựa trên Java, giấy phép kép nguồn mở mà phiên bản thương mại cung cấp bảo hành và hỗ trợ. Trong ưu đãi có footprint nhỏ giúp dễ dàng nhúng bởi system integrators và ISVs. Nó nhằm tạo thư viện hàm cơ bản, bao gồm mapping và chuyển đổi. Phiên bản enterprise server là ưu đãi thương mại.
8. HPCC Systems:
HPCC Systems là nền tảng nguồn mở cho phân tích Big Data với engine Data Refinery tên Thor. Thor làm sạch, liên kết, chuyển đổi và phân tích Big Data. Thor hỗ trợ các chức năng ETL (Trích xuất, Chuyển đổi, Tải) như ingest dữ liệu phi cấu trúc/cấu trúc, profiling dữ liệu, vệ sinh dữ liệu, liên kết dữ liệu ngay từ đầu. Dữ liệu đã xử lý bởi Thor có thể được truy cập bởi nhiều người dùng đồng thời theo thời gian thực bằng Roxie - engine phân phối dữ liệu. Roxie cung cấp khả năng truy vấn real-time độ trễ thấp, đồng thời cao.
9. Jedox:

Jedox là công cụ BI nguồn mở. Công cụ này dành cho quản lý hiệu suất, kế hoạch chiến lược, điều tra, báo cáo và các quy trình liên quan đến khái niệm ETL. Open Core bao gồm OLAP Server in-memory, ETL Server và thư viện client OLAP. Hỗ trợ mạnh mẽ Jedox OLAP server làm nguồn và hệ thống đích, công cụ được trang bị khả năng vượt qua các phức tạp trong điều tra OLAP. Mọi mô hình truyền thống đều có thể chuyển đổi thành mô hình OLAP bằng công cụ ETL này.
Làm việc với cubes và dimensions không thể dễ dàng hơn. Linh hoạt tạo các hierarchy thời gian thường dùng và chuyển đổi hiệu quả mô hình quan hệ của hệ thống nguồn thành mô hình OLAP – với JEDOX ETL.
10. Apatar ETL:

Apatar ETL mang lại bộ khả năng độc đáo trong gói nguồn mở. Tính năng bao gồm kết nối với Oracle, MS SQL, MySQL, Sybase DB2, MS Access, PostgreSQL, XML, InstantDB, Paradox, BorlandJDataStore, CSV, MS Excel, Qed, HSQL, SalesForce.Com, v.v. Có giao diện đơn nhất để quản lý tất cả dự án tích hợp, tùy chọn triển khai linh hoạt, tích hợp hai chiều, độc lập nền tảng, chạy trên Windows, Linux, Mac; 100% Java-based, không cần code, visual job designer và mapping cho phép non-developer thiết kế và thực hiện chuyển đổi.
Công cụ nguồn mở luôn có một số hạn chế, dù là hạn chế về tính năng nâng cao, cơ sở lưu trữ, tính năng phân tích nâng cao, v.v. Vì vậy, khuyến nghị sử dụng công cụ có giấy phép. Bài viết tiếp theo sẽ thảo luận về các công cụ trích xuất dữ liệu có giấy phép.