0
Tải bản đầy đủ (.pdf) (78 trang)

Dịch vụ tích hợp dữ liệu

Một phần của tài liệu NGHIÊN CỨU GIẢI PHÁP KHO DỮ LIỆU TRONG SQL SERVER 2008 VÀ ÁP DỤNG TRONG THƯƠNG MẠI (Trang 27 -27 )

SSIS là nền tảng cho việc tích hợp dữ liệu, cung cấp các chức năng giúp cho việc phát triển qui trình tích hợp dữ liệu khi xây dựng kho dữ liệu được nhanh và hiệu quả hơn. SSIS cung cấp một giao diện phát triển bằng đồ họa, người dùng có thể kéo và thả các đối tượng của SSIS hay cũng có thể kết hợp lập trình bằng mã lệnh trong giao diện soạn thảo.

Kiến trúc của dịch vụ tích hợp SSIS như Hình 2.2 sau đây.

Kiến trúc của SSIS chứa bốn thành phần cơ bản: Dịch vụ SSIS;

Lõi thời gian chạy và các thực thi thời gian chạy của SSIS; Luồng dữ liệu và các thành phần của luồng dữ liệu;

Người sử dụng đầu cuối SSIS.

Dịch vụ SSIS là một dịch vụ của Windows được cài đặt khi tiến hành cài đặt thành phần SSIS của SQL Server 2008, nó theo dõi việc thực thi của các gói.

Lõi thời gian chạy và các chương trình hỗ trợ cho nó sẽ thực thi các gói tích hợp SSIS. Chúng sẽ quản lý, ghi nhật ký, gỡ rối, cấu hình kết nối và thực hiện các thao tác của gói. Hơn nữa nó còn quản lý các sự kiện sinh ra trong thời gian chạy và thực hiện việc gửi thư điện tử hoặc ghi nhật ký.

Gói: gói là thành phần lõi của SSIS. Một gói có thể xem như một chương trình thực thi của hệ điều hành Windows. Về cơ bản, gói là tập các nhiệm vụ được thực hiện

theo một cách có trật tự. Một gói có thể được ghi vào CSDL MSDB, một CSDL hệ

thống mặc định của SQL Server, hoặc là ghi ra dưới dạng một tập tin có đuôi là .dtsx.

Tác vụ: một tác vụ là đơn vị công việc. Tác vụ trong một gói cũng giống như một phương thức thực hiện trong ngôn ngữ lập trình. Có thể là việc di chuyển tập tin, nạp nội dung tập tin và CSDL, gửi một thư điện tử... Tác vụ thường được cung cấp sẵn bởi SSIS nhưng cũng có thể tạo ra các tác vụ riêng bằng cách sử dụng ngôn ngữ lập trình

C# hoặc VB.net dựa trên mô hình đối tượng của SSIS. Một số tác vụ phổ biến được

cung cấp sẵn trong SSIS như sau:

Bulk Insert Task: nạp dữ liệu vào một bảng sử dụng câu lệnh BULK INSERT SQL.

Data Flow Task: đây là tác vụ đặc biệt dùng để lấy dữ liệu từ nguồn, biến đổi và nạp vào đích.

Execute Package Task: cho phép thưc thi một gói trong gói hiện hành, tạo cho gói SSIS có tính mô đun hóa.

Execute Process Task: cho phép thực thi một chương trình bên ngoài cho một nhiệm vụ nào đấy. Ví dụ: thực hiện chia nhỏ một một tập tin thành nhiều tập tin con, trước khi xử lý từng tập tin con.

Execute SQL Task: thực thi một câu lệnh SQL hoặc một thủ tục lưu trữ.

File System Task: tác vụ này cho phép thao tác với tập tin và thư mục. Các thao tác như tạo mới, đổi tên, sao chép hoặc xóa.

FTP Task: gửi nhận tập tin thông qua một dịch vụ truyền tập tin.

Script Task: chạy một đoạn mã nguồn bằng VB.NET hoặc C#.

Send Mail Task: thực hiện gửi thư điện tử.

Analysis Services Processing Task: thực hiện các thao tác cho các khối dữ liệu.

Web Service Task: thực hiện một phương thức nào đấy của một dịch vụ web.

XML Task: thực thi một tác vụ nào đấy cho tập tin XML. Nó thực hiện phân tích hoặc xử lý một tập tin XML. Nó cũng có thể ghép, chia tách hoặc định dạng lại tập tin XML.

Các phần tử luồng dữ liệu: khi tạo một tác vụ luồng dữ liệu, thì BIDS sẽ hiện ra các phần tử luồng dữ liệu sử dụng cho việc thiết kế. Thẻ luồng điều khiển chứa các luồng chính của gói, còn thẻ luồng dữ liệu sẽ chứa các bước biến đổi về dữ liệu. Có thể tạo nhiều luồng dữ liệu trong thẻ luồng điều khiển, và khi kích vào một luồng dữ liệu nào đấy dữ liệu thì thẻ luồng điều khiển sẽ hiện ra tất cả các bước biến đổi cho luồng

dữ liệu đấy. Hình 2.3 dưới đây là ví dụ về nội dung của một luồng dữ liệu.

Hình 2.3. Ví dụ về một luồng dữ liệu

Nguồn: nguồn là nơi để chỉ ra vị trí của nguồn dữ liệu sẽ được lấy vào trước khi xử lý. Nguồn thông thường chỉ đến một kết nối của gói SSIS. Sau đây là một số nguồn phổ biến được sử dụng trong SSIS:

OLE DB: kết nối đến một nguồn dữ liệu OLE DB như SQL Server, Access, Oracle, hoặc DB 2.

Excel: chỉ đến một bảng tính Excel. Với nguồn này thì có thể thực hiện câu lênh truy vấn SQL để lấy một số dữ liệu cần thiết trong bảng tính.

Flat File: kết nối đến tập tin mà các các cột dữ liệu được phân cách bởi các dấu phân cách hoặc chiều dài các cột là cố định.

XML: lấy dữ liệu từ một tập tin XML.

ADO.NET: cho phép kết nối đến nguồn dữ liệu thông qua ODBC.

Đích: trong một luồng dữ liệu thì đích có thể từ một nguồn hoặc một phép biến đổi. Một số loại đích hỗ trợ trong SSIS như sau:

Excel: ghi dữ liệu ra một tập tin Excel đã có trước.

Flat file: ghi dữ liệu ra tập tin phẳng, tức có phân cách hoặc chiều dài cố định.

OLE: ghi dữ liệu dữ liệu ra SQL Server, Access, Oracle, hoặc DB2.

SQL Server: Ghi dữ liệu ra một SQL Server, cách này sẽ nhanh và hiệu quả.

Các phép biến đổi: các phép biến đổi là thành phần chính của luồng dữ liệu dùng để thay đổi dữ liệu theo ý của bạn. Ví dụ: bạn muốn dữ liệu được tổng hợp và sắp xếp thì sẽ cần hai phép biến đổi. Các phép biến đổi của SSIS thường được thực hiện trong bộ nhớ nên thường nhanh hơn việc đọc đĩa. Sau đây là một số phép biến đổi cơ bản cung cấp sẵn trong SSIS:

Aggregate: tổng hợp dữu liệu từ phép biến đổi trước hoặc từ nguồn. Thực chất tương tự như câu lệnh GROUP BY trong T-SQL.

Conditional Split: chia dữ liệu dựa trên điều kiện. Phép biến đổi này tương đương câu lệnh CASE trong T-SQL.

Data Conversion: chuyển đổi kiểu cho các cột dữ liệu, tượng tự như câu lệnh CAST trong T-SQL.

Derived Column: thực hiện cập nhật dữ liệu hoặc tạo cột mới bằng công thức. Ví dụ: có thể tính cột lợi nhuận dựa trên cột chi phí và giá bán ra.

Fuzzy Grouping: thực hiện làm sạch hoặc tìm kiếm các hàng mà gần như trùng nhau.

Fuzzy Lookup: tra cứu và chuẩn hóa dữ liệu dựa trên logic mờ. Ví dụ: chuyển tên “xuan” thành “xuân” hoặc “thanhf” sang “thành”.

Lookup: thực hiện việc tra cứu dữ liệu bởi một cột khóa và lấy ra một cột khác tương ứng với dữ liệu khớp. Ví dụ: có thể dùng mã hàng hóa để tra cứu và lấy ra tên hàng hóa.

Row Count: lưu số hàng của luồng dữ liệu bằng một biến để sử dụng cho một số bước khác và công việc giám sát.

Slowly Changing Dimension: đây là phép biến đổi gộp các thao tác thêm mới và cập nhật dữ liệu cho các bảng chiều trong kho dữ liệu.

Sort: sắp xếp dữ liệu theo các cột chỉ ra.

Union All: gộp nhiều tập dữ liệu vào một tập duy nhất.

Một phần của tài liệu NGHIÊN CỨU GIẢI PHÁP KHO DỮ LIỆU TRONG SQL SERVER 2008 VÀ ÁP DỤNG TRONG THƯƠNG MẠI (Trang 27 -27 )

×