Các bảng ngoại, hàm bảng, cơ chế đường ống và lệnh MERGE

Một phần của tài liệu Kho dữ liệu và ứng dụng xây dựng hệ thống dữ liệu trợ giúp quyết định về chính sách tiền tệ quốc gia (Trang 31)

Tính năng bảng ngoại cho phép chúng ta nhúng tệp điều khiển SQL*Loader trong một DDL script; tệp đó có thể tận dụng lợi thế của cơ chế xử lý song song, có thể được nối và có thể dùng làm đầu vào cho một lênh MERGE, để có thể thêm hay cập nhật dữ liệu sang một bảng khác trong cùng một câu lênh DML duy nhất. Ngoài việc không phải chạy nhiều tiến trình SQL*Loader khác nhau, bảng ngoại giúp chúng ta đỡ phải tải dữ liệu vào các bảng trung gian trong quá trình xử lý.

Các hàm bảng (Table function) có thể dùng trong quá trình làm sạch và chuyển đổi dữ liệu trong các thủ tục PL/SQL hay Java. Các hàm đó có thể xử lý dữ liệu riêng lẻ hay dữ liệu từ các bảng và trả về các bảng dữ liệu. Điều thú vị là các bảng đầu vào có thể là bảng ngoại hay các bảng dữ liệu nguồn bị thay đổi, nhờ đó chúng ta có thể chuyển dạng dữ liệu theo thời gian thực.

Ngoài ra, chúng ta có thể “đường ống hóa” các hàm bảng (cơ chế đường ống của Oracle cho phép trả về các bản ghi ngay từ đầu, trước khi quá trình xử lý kết thúc) để kết nối các hàm với nhau, buộc chúng chuyển tiếp các bản ghi cho tiến trình tiếp theo, không chờ một tiến trình kết thúc mới khởi động tiến trình kế tiếp.

Sau khi đã làm sạch và chuyển hóa dữ liệu, bước tiếp theo là cập nhật các bảng đa chiều. Trước đây, điều này được thực hiện bằng một tập hợp các lệnh INSERT và UPDATE. Với Oracle 9i, chúng ta có thể thực hiện điều này trong một bước duy nhất với lệnh MERGE. Hơn thế, chúng ta có thể gộp toàn bộ quá trình chuyển hóa dữ liệu vào lệnh MERGE đó bằng cách tham chiếu tới các bảng ngoại và hàm bảng.

Ba tính năng trên của Oracle 9i giúp chúng ta giảm đáng kể thời gian cần để tải dữ liệu vào kho dữ liệu cũng như giảm độ trễ giữa bước nhận dữ liệu nguồn với bước cập nhật các bảng đa chiều.

Một phần của tài liệu Kho dữ liệu và ứng dụng xây dựng hệ thống dữ liệu trợ giúp quyết định về chính sách tiền tệ quốc gia (Trang 31)