Agent trong ODI là gì?
Agent là 1 ứng dụng Java thường được cài đặt trên máy chủ để lắng nghe các yêu cầu và xử lý các yêu cầu này.
Theo hình, khi có 1 tác vụ xử lý dữ liệu được gửi từ ODI Studio, Agent sẽ nhận yêu cầu này, lấy các thông tin từ Master và Work Repository kết hợp chúng lại tạo thành 1 tác vụ chạy hoàn chỉnh. Tác vụ này sẽ được chuyển xuống các dữ liệu nguồn (Source) để xử lý, kết quả sau đó sẽ được chuyển qua lưu tại dữ liệu đích (Target); và cuối cùng là cập nhật các log xử lý về lại Work Repository.
Các loại Agent trong ODI 12c
Phiên bản ODI 12c hỗ trợ 3 chế độ triển khai Agent: JEE, Colocated và Standalone. Bài viết này sẽ lần lượt giới thiệu từng môi trường triển khai để giúp cho các nhà phát triển có thể lựa chọn 1 môi trường triển khai phù hợp.
Loại ODI Agent
|
Tùy chọn khi cài
đặt
|
Standalone Agent
|
Standalone Installation
|
JEE Agent
|
|
Colocated Agent
|
Enterprise Installation
|
Bảng tóm lượt các loại Agent tương ứng khi cài đặt ODI 12c
Môi trường Standalone Agent
Môi trường Standalone là môi trường đầu tiên của ODI và vẫn được Oracle duy trì cho đến ngày nay. Ích lợi đầu tiên có thể kể đến của môi trường này đó là yêu cầu tài nguyên rất thấp – không đòi hỏi phải có 1 máy chủ ứng dụng riêng biệt để triển khai vì chương trình ứng dụng chạy trên môi trường này là 1 ứng dụng Java độc lập. Ứng dụng này bao gồm tất cả các tính năng cần thiết để thực hiện các tác vụ tích hợp dữ liệu bao gồm luôn cả việc hỗ trợ tạo Web-service từ các tác vụ này. Agent được cài đặt trong môi trường này có các điểm lợi sau:
- Agent được cài đặt trực tiếp trên cùng máy chủ Cơ sở dữ liệu (CSDL) do vậy giảm thiểu được thời gian truyền tải dữ liệu qua môi trường mạng khi thực hiện các tác vụ tích hợp dữ liệu.
- Với các yêu cầu tích hợp dữ liệu là các tập tin dữ liệu (flat file) thì các đoạn script tích hợp dữ liệu không thể truy xuất được các tập tin này qua môi trường mạng được. Chính vì vậy việc cài đặt Agent trên máy chủ chứa file này là 1 lựa chọn phù hợp cho các đoạn script tích hợp có thể thực thi được.
Môi trường JEE Agent
Môi trường Standalone chỉ phù hợp với các mô hình tích hợp dữ liệu nhỏ và đơn giản. Với các mô hình tích hợp dữ liệu lớn và phức tạp, mô hình Standalone này tỏ ra không đáp ứng được. Chính vì vậy Oracle giới thiệu mô hình JEE Agent (JEE Agent có thể được cài đặt cùng với WebLogic Server) để giải quyết các giới hạn của mô hình Standalone gồm:
- Tính sẵn sàng cao (High Availability): trong môi trường doanh nghiệp, việc đảm bảo các Agent luôn sẵn sàng và chạy liên tục là 1 yêu cầu quan trọng. Điều này càng quan trọng hơn nếu như các Agent này được thiết lập lịch để chạy tự động bởi vì dữ liệu tích hợp sẽ bị thiếu nếu như tại thời điểm lịch chạy tự động các Agent này không hoạt động. Để giải quyết việc này, Oracle đưa ra mô hình Cluster – trong mô hình này các Agent được cài đặt trên nhiều máy chủ trong cùng 1 cụm chạy trên WebLogic Server. Mô hình này đảm bảo được khi 1 Agent trong cụm Cluster không hoạt động khi đến lịch chạy thì vẫn có Agent trên máy chủ khác thực thi tác vụ.
- Linh hoạt trong việc cấu hình kho dự trữ kết nối (Connection Pooling): so với mô hình Standalone sử dụng kho dữ trữ kết nối ở dạng UCP (Universal Connection Pool) nhưng không linh hoạt trong việc cấu hình các tham số kết nối thì mô hình JEE Agent lại linh hoạt hơn trong việc cho phép cấu hình các tham số này thông qua WebLogic Server. Việc thay đổi các tham số cho Connection Pooling sẽ giúp cho các tác vụ thực hiện tích hợp hệ thống giữ được các kết nối liên tục với CSDL do vậy sẽ tác vụ tích hợp sẽ chạy nhanh hơn và hiệu quả hơn.
- Quản trị, giám sát và cảnh báo tập trung: thông qua Oracle Enterprise Manager Cloud (OEM), giờ đây các ODI JEE Agent có thể được tập trung quản lý và giám sát dễ dãng hơn.
Môi trường Colocated Agent
Đây là loại Agent mới ở phiên bản ODI 12c. Colocated Agent là sự kết hợp của Standalone Agent và JEE Agent. Cụ thể: các tính năng của Standalone Agent đều có ở Colocated Agent và kết hợp thêm 1 tính năng khác của JEE Agent là có chức năng quản lý thông qua WebLogic Server.
Tổng kết
Về tính năng
|
Standalone
|
Colocated
|
JEE
|
Nhỏ
gọn
|
√
|
√
|
|
Chạy
được trên Exadata
|
√
|
√
|
|
Agent
được phát triển bằng Java
|
√
|
√
|
√
|
Có
thể lập lịch chạy tự động
|
√
|
√
|
√
|
Quản
lý Workflow
|
√
|
√
|
√
|
Cung
cấp Web Services
|
√
|
√
|
√
|
Quản
lý kết nối
|
√
|
√
|
√
|
Tích
hợp LDAP
|
√
|
√
|
√
|
Tính
năng cảnh báo
|
|
√*#
|
√#
|
Thay
đổi cấu hình tham số Connection Pool
|
|
|
√
|
HA
|
|
|
√
|
Khả
năng Scale-Out
|
|
|
√
|
(*): Chỉ hoạt
động khi Node Manager được cài đặt và đang ở chế độ hoạt động
(#): Tính
năng của Oracle Enterprise Manager (không phải tính năng của Agent)