Tài liệu Nghiên cứu quy trình etl trong xây dựng kho dữ liệu

  • Số trang: 24 |
  • Loại file: PDF |
  • Lượt xem: 1014 |
  • Lượt tải: 6
nganguyen

Đã đăng 34345 tài liệu

Mô tả:

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG --------------------------------------- QUẢN ĐÌNH THĂNG NGHIÊN CỨU QUY TRÌNH ETL TRONG XÂY DỰNG KHO DỮ LIỆU Chuyên ngành: Khoa học máy tính Mã số: 60.48.01 TÓM TẮT LUẬN VĂN THẠC SĨ HÀ NỘI -2013 1 Luận văn được hoàn thành tại: HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG Người hướng dẫn khoa học: TS VŨ VĂN THỎA Phản biện 1: ………………………………………………………………………… Phản biện 2: ………………………………………………………………………….. Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Công nghệ Bưu chính Viễn thông Vào lúc: ....... giờ ....... ngày ....... tháng ....... .. năm ............... Có thể tìm hiểu luận văn tại: - Thư viện của Học viện Công nghệ Bưu chính Viễn thông 2 MỞ ĐẦU 1. Lý do chọn đề tài Tại Việt Nam, các tập đoàn kinh tế hiện đang có rất nhiều dữ liệu cần khai thác và cũng đang từng bước xây dựng và hoàn thiện hệ thống dữ liệu để phục vụ công tác khai thác nguồn tài nguyên. Trong các hệ thống lưu trữ dữ liệu tập trung lớn (Data warehouse), tạm gọi là kho dữ liệu bao gồm nhiều thành phần, mỗi thành phần có một chức năng riêng trong đó thành phần chịu trách nhiệm cho việc trích xuất, chuyển đổi và tải dữ liệu (Extract, Transform, Load hay gọi tắt là ETL) đóng vai trò then chốt. Cụ thể hơn, hệ thống ETL đảm nhiệm việc trích rút các dữ liệu từ nhiều nguồn khác nhau, làm sạch, tùy chỉnh theo khuôn dạng nhất định và tải dữ liệu vào trong kho dữ liệu. Việc xây dựng ETL chiếm phần lớn trong thời gian xây dựng hệ thống kho dữ liệu. Vì vậy, việc đánh giá đúng vai trò và đầu tư đúng hướng cho việc xây dựng ETL sẽ giúp cho việc xây dựng kho dữ liệu được tốt nhất. Với những lý do nêu trên, luận văn chọn đề tài nghiên cứu về thiết kế, cài đặt và phát triển quá trinh ETL trong xây dựng kho dữ liệu. Đồng thời, trong luận văn sẽ xây dựng ứng dụng ETL phục vụ cho hệ thống dữ liệu của doanh nghiệp viễn thông. 1. Mục đích của đề tài: Nghiên cứu mô hình một quá trình ETL, phương pháp xây dựng một chương trình ETL và áp dụng để xây dựng module ETL. 2.Đối tượng và phạm vi nghiên cứu:Lý thuyết xây dựng một hệ thống ETL, tìm hiểu một số hệ thống ETL trên thế giới, xây dựng mô hình một module ETL. 3. Phương pháp nghiên cứu: Tìm hiểu các tài liệu xây dựng ETL trong kho dữ liệu, một tài liệu của các hệ thống ETL trên thế giới. 4. Kết cấu của luận văn Luận văn gồm 3 chương Chương 1: Tổng quan về ETL trong kho dữ liệu Trình bày tóm lượt một số kiến thức quả kho dữ liệu và vị trí vai trò của ETL trong kho dữ liệu. Chương 2: Kiến trúc và các thành phần ETL Kiến trúc của một hệ thống ETL, cách thức hoạt động và xây dựng một hệ thống ETL. Một số những khó khăn gặp phải khi xây dựng hệ thống. Chương 3: Xây dựng module ETL Tìm hiểu về một số hệ thống ETL trên thế giới, xây dựng một module ETL. Áp dụng cho doanh nghiệp viễn thông. 3 CHƯƠNG 1. TỔNG QUAN VỀ ETL TRONG KHO DỮ LIỆU 1.1. Kho dữ liệu 1.1.1 Khái niệm kho dữ liệu Định nghĩa kho dữ liệu do W.H.Inmon [3] đưa ra : Kho dữ liệu (Data Warehouse) là tập hợp dữ liệu tích hợp theo hướng chủ đề từ nhiều nguồn khác nhau, tương đối ổn định trong khoảng thời gian, được cập nhật định kỳ nhằm hỗ trợ quá trình tạo quyết định. 1.1.2. Các đặc trưng của kho dữ liệu - Hướng chủ đề - Tính tích hợp - Tính bền vững. - Dữ liệu theo thời gian - Dữ liệu tổng hợp 1.1.3 Mục tiêu của kho dữ liệu Mục tiêu chính của kho dữ liệu là nhằm đáp ứng các tiêu chuẩn cơ bản sau: - Truy cập dễ dàng. - Thông tin nhất quán. - Bảo mật. - Hỗ trợ ra quyết định. 1.1.4. Kiến trúc kho dữ liệu Mô hình kiến trúc của hệ thống kho dữ liệu cơ bản gồm có ba thành phần: Dữ liệu nguồn, vùng dữ liệu trung gian và kho dữ liệu . 4 Hình 1.1. Kiến trúc kho dữ liệu 1.1.3.1. Kho dữ liệu chủ đề Kho dữ liệu chủ đề (Datamart - DM) là CSDL có những đặc điểm giống với kho dữ liệu nhưng với quy mô nhỏ hơn và lưu trữ dữ liệu về một lĩnh vực, một chủ đề. Các Datamart có thể được hình thành từ một tập con dữ liệu của kho dữ liệu hoặc cũng có thể được xây dựng độc lập và sau khi xây dựng xong các Datamart có thể được kết nối, tích hợp lại với nhau tạo thành kho dữ liệu Có thể chia Datamart ra làm 2 loại: Datamart độc lập và Datamart phụ thuộc 1.1.3.2. Siêu dữ liệu Trong việc tổ chức kho dữ liệu, không chỉ những người dùng đầu cuối mà ngay cả những nhân viên quản trị đều cần truy nhập toàn bộ thông tin trong bảng gồm các đối tượng cũng như các thuộc tính. Do đó họ muốn biết một số vấn đề: • Có thể tìm thấy dữ liệu ở đâu? • Tồn tại những loại thông tin, dữ liệu nào? • Dữ liệu thuộc loại nào, có dạng ra sao? • Trong các cơ sở dữ liệu khác nhau thì dữ liệu có liên quan với nhau như thế nào? • Dữ liệu được lấy từ đâu và thuộc ai quản lý? Vì vậy hình thành một dạng cơ sở dữ liệu khác được gọi là siêu dữ liệu nhằm mô tả cấu trúc nội dung của cơ sở dữ liệu chính. 1.1.3.3. Cơ sở dữ liệu kho dữ liệu Cơ sở dữ liệu kho dữ liệu hầu hết được cài đặt dựa trên công nghệ của Hệ thống quản trị cơ sở dữ liệu quan hệ (RDBMS). 5 1.1.4. Xây dựng CSDL cho kho dữ liệu Những dự án dùng phương pháp kho dữ liệu buộc phải lựa chọn giữa một mô hình dữ liệu và một giản đồ dữ liệu liên quan trực quan cho việc phân tích nhưng không phong phú về thể hiện. Khi phương pháp kho dữ liệu được tiếp tục phát triển thì những cách tiếp cận mới cho việc thiết kế giản đồ dữ liệu phù hợp hơn với việc phân tích được hình thành và đó là điều cốt yếu dẫn đến thành công của phương pháp kho dữ liệu. Có các loại thiết kế giản đồ như sau: - Giản đồ hình sao. - Giản đồ hình tuyết rơi. - Giản đồ kết hợp. 1.2. ETL và vai trò ETL trong kho dữ liệu 1.2.1. Khái niệm ETL Hệ thống ETL (Extract-Transform-Load) là nền tảng của kho dữ liệu. Một hệ thống ETL được thiết kế cho việc trích xuất dữ liệu từ các hệ thống nguồn, chuyển đổi dữ liệu đảm bảo các nguồn độc lập có thể tích hợp, và cuối cùng dữ liệu sau chuyển đổi được đưa vào kho dữ liệu phục vụ mục đích phát triển ứng dụng hay phục vụ các mục đích kho dữ liệu. 1.2.2 Vị trí và vai trò của ETL trong kho dữ liệu Hệ thống ETL phải đóng một vai trò quan trọng trong việc cung cấp cho các ứng dụng người sử dụng một khuôn dạng dữ liệu phù hợp. Quá trình ETL bắt đầu từ các hệ thống nguồn đến khi dữ liệu được đưa vào các bảng chiều, bảng sự kiện tốn kém phần lớn thời gian của việc xây dựng kho dữ liệu. 6 CHƯƠNG 2. KIẾN TRÚC VÀ CÁC THÀNH PHẦN CỦA ETL. 2.1. Kiến trúc của quá trình ETL trong kho dữ liệu 2.1.1. Các thành phần của ETL Hình 2.1. Các thành phần của ETL Trích xuất: Dữ liệu nguồn từ rất nhiều nguồn khác nhau và có thể có rất nhiều cấu trúc dữ liệu khác nhau như nhiều loại cơ sở dữ liệu, từ tệp dữ liệu excel hay từ tệp dữ liệu thô. Vì thế nhiệm vụ chính của bước này là trích xuất dữ liệu từ hệ thống nguồn để xử lý. Chuyển đổi : Đây là quá trình rất phức tạp dùng để chuyển đổi dữ liệu nguồn một mô hình khác phù hợp và chuyển vào cơ sở dữ liệu đích. Ở bước này sẽ phải sử dụng các phép chuyển đổi:  Chọn các cột dữ liệu phù hợp (chỉ chọn các cột cần thiết )  Chuyển đổi dữ liệu.  Tạo ra các trường dữ liệu cần thiết mới.  Lọc dữ liệu theo chủ đề.  Sắp xếp dữ liệu theo các tiêu chí lưu chữ.  Thực hiện các phép tổng hợp dữ liệu từ dữ liệu nguồn.  Tạo ra các giá trị mới.  Tìm kiếm hay so sánh dữ liệu. 7 Có thể nói đây là bước quan trọng nhất trong tiến trình ETL , nó thực hiện hầu hết các nhiệm vụ của tiến trình ETL. Tải dữ liệu: Đây là quá trình đẩy dữ liệu sau khi đã được chuyển đổi vào kho dữ liệu. Dữ liệu sau khi đã được chuyển đổi sẽ được tải vào kho dữ liệu. 2.1.2. Yêu cầu với ETL Danh sách sau đây liệt kê các hoạt động và tác vụ tạo nên quy trình ETL. Danh sách này không hoàn toàn đúng với tất cả các kho dữ liệu, nhưng cho ta cái nhìn về những gì cần được thực hiện để hoàn thành quá trình ETL. ETL Cho bảng sự kiện ETL cho bảng chiều Viết các thủ tục cho tải tất cả dữ liệu Tổ chức vùng xử lý dữ liệu và công cụ kiểm thử Kế hoạch cho các bảng tổng hợp Xác định các dữ liệu chuyển đổi và các luật làm sạch Thiết lập các luật trích xuất dữ liệu Chuẩn bị cho việc ánh xạ giữa các thành phần dữ liệu đích với dữ liệu nguồn Xác định nguồn dữ liệu, cả dữ liệu trong và ngoài Xác định các dữ liệu đích cần thiết trong kho dữ liệu Hình2.1. Các bước chính của một quy trình ETL. - Kết hợp nhiều nguồn dữ liệu có cấu trúc vào bản ghi của cơ sở dữ liệu đích của kho dữ liệu. - Chia nhỏ một dữ liệu nguồn dữ liệu có cấu trúc vào một số bản ghi của cơ sở dữ liệu đích. - Đọc dữ liệu từ các danh mục dữ liệu từ điển của hệ thống nguồn. - Đọc dữ liệu từ nhiều file có cấu trúc bao gồm tệp phẳng, tệp chỉ mục (VASM), và các hệ thống cơ sở dữ liệu cũ. - Tải các chi tiết cho việc tập hợp các bảng sự kiện. - Tổng hợp hoặc tóm tắt cho bảng sự kiện. - Chuyển đổi dữ liệu từ một định dạng nguồn thành định dạng khác trong nền tảng đích. - Lấy giá trị mục tiêu từ các trường đầu vào. 8 - Thay đổi giá trị khó hiểu bằng giá trị có nghĩa cho người dùng. 2.1.3. Các yếu tố quan trọng đối với ETL - Sự phức tạp của các chức năng trích xuất và chuyển đổi có nguyên nhân từ sự đa dạng của hệ thống nguồn. - Chức năng tải dữ liệu khi làm mới kho dữ liêu hoặc tải dữ liệu phải làm việc với lượng lớn dữ liệu vì vậy cần đảm bảo thời gian chạy. 2.1.4. Các khó khăn gặp phải khi xây dựng hệ thống ETL - Trích xuất dữ liệu phụ thuộc vào độ phức tạp của hệ thống nguồn. - Các chức năng chuyển đổi dữ liệu có thể thực hiện hàng loạt các phương thức chuyển đổi khác nhau. - Với chức năng tải dữ liệu. Kích thước dữ liệu ban đầu được tải vào vùng đệm là rất lớn và được cập nhật từ nhiều nguồn khác nhau với nhiều tiến trình chạy. 2.2. Vùng dữ liệu trung gian Trong kiến trúc kho dữ liệu, thường có một vùng chứa dữ liệu gọi là vùng trung gian giành cho việc tiền xử lý dữ liệu. Dữ liệu được chuyển từ nguồn vào vùng xử lí mà không qua (hoặc rất ít) xử lí nào. 2.3. Trích xuất dữ liệu Trích xuất dữ liệu hiệu quả là chìa khóa cho sự thành công của việc xây dựng kho dữ liệu. Trong quá trình xây dựng hệ thống trích xuất ta cần quan tâm đến các vấn đề quan trọng và xây dựng một chiến lược trích xuất cho kho dữ liệu. Đây là các vấn đề quan trọng trong trích xuất dữ liệu 2.3.1. Xác định nguồn dữ liệu Xác định nguồn dữ liệu bao gồm việc xác định tất cả các nguồn dữ liệu thích hợp, các dữ liệu cần thiết để đưa vào kho dữ liệu. 9 Hình 2.3. Các bước xác định nguồn dữ liệu 2.3.2. Các kỹ thuật trích xuất dữ liệu 2.3.2.1. Các loại kỹ thuật trích xuất - Nắm bắt dữ liệu tĩnh - Nắm bắt dữ liệu tăng thêm 2.3.2.2. Các kỹ thuật trích xuất dữ liệu thời gian thực Hình 2.5. Trích xuất dữ liệu theo thời gian thực 10 - Nắm bắt dữ liệu qua bản ghi giao dịch.. - Nắm bắt thông qua trigger cơ sở dữ liệu. - Nắm bắt trong các ứng dụng nguồn. 2.3.2.3. Các kỹ thuật trích xuất dữ liệu chậm Nắm bắt dựa trên ngày tháng và nhãn thời gian. Mỗi khi một bản ghi được tạo ra hoặc cập nhật nó có thẻ được đánh dấu bởi một nhãn biểu diễn bởi ngày và thời gian. Nhãn thời gian cung cấp cơ sở cho việc chọn ra các bản ghi cho việc trích xuất. Trích xuất bằng cách so sánh tập tin. Nếu các kỹ thuật trên không khả thi cho tập tin nguồn cụ thể, khi đó kỹ thuật này được xem như biện pháp cuối cùng. Kỹ thuật này cũng được gọi với tên khác là kỹ thuật so sánh sự khác nhau giữa ảnh chụp bởi vì nó so sánh 2 ảnh chụp của nguồn dữ liệu. 2.3.2.4. Đánh giá các kỹ thuật trích xuất 2.4. Làm sạch và chuyển đổi dữ liệu 2.4.1 Các nhiệm vụ cơ bản của chuyển đổi dữ liệu Trích chọn. Nhiệm vụ này nằm ở phần đầu của toàn bộ quá trình chuyển đổi. Có thể toàn bộ hoặc một số bản ghi từ dữ liệu nguồn Tách/Nhập. Nhiệm vụ này bao gồm các loại thao tác dữ liệu để thực hiện việc chọn các phần dữ liệu nguồn. Chuyển đổi. chuẩn hóa giữa dữ liệu trích xuất từ các nguồn khác nhau và tạo ra các trường mà người dùng thể sử dụng và có thể hiểu được. Tổng hợp.Khi việc lưu trữ dữ liệu tổng hợp được yêu cầu thay vì lưu trữ dữ liệu ở mức thấp. Làm giàu dữ liệu: Nhiệm vụ này sắp xếp và đơn giản hóa các trường riêng biết để làm cho chúng trở nên hữu dụng hơn cho kho dữ liệu. 2.4.2 Các kiểu chuyển đổi dữ liệu - Cơ cấu lại khóa. - Xóa bản ghi trùng. - Sửa lại định dạng. - Giải mã các trường. - Giá trị tính toán và giá trị thứ phát. - Chia nhỏ các trường đơn. - Gộp thông tin. 11 - Chuyển đổi Bộ ký tự. - Chuyển đổi đơn vị đo lường. - Chuyển đổi thời gian. - Tổng hợp. 2.4.3. Tích hợp và hợp nhất dữ liệu 2.4.3.1. Xác định thực thể trong chuyển đổi dữ liệu. Thực thể có thể xuất hiện trong nhiều hệ thống khác nhau, làm thế nào để tổng hơp các nguồn này mà không sợ bị trùng lặp hay bị thiếu. - Bước đầu tiên, tất cả các bản gi, không phân biệt có trùng nhau hay không, được định danh duy nhất. - Bước thứ hai là hợp các bản ghi trùng một cách định kỳ thông qua các giải thuật tự động và kiểm tra thủ công. 2.4.3.2. Tích hợp nhiều nguồn dữ liệu. Vấn đề này là kết quả của việc một phần tử dữ liệu có nhiều hơn một nguồn dữ liệu. Một giải pháp đơn giản là đặt ưu tiên cho các nguồn và chọn nguồn có độ ưu tiên cao 2.4.4. Chuyển đổi các thuộc tính chiều Trong phần này xem xét các loại thay đổi với thuộc tính chiều, các phương pháp để xử lý các loại thay đổi dữ liệu chiều. - Thay đổi loại 1 là sửa lỗi. Các loại này được áp dụng cho kho dữ liệu không cần giữ tính lịch sử. - Loại 2 thay đổi giữ tính lịch sử của kho dữ liệu. - Loại 3 thay đổi là những thay đổi dự kiến nơi người dùng cần có khả năng phân tích các số liệu trong cả 2 cách – có thay đổi, không thay đổi. 2.5. Tải dữ liệu 2.5.1. Các loại tải dữ liệu Tải lần đầu tiên – tập hợp tất cả các bảng kho dữ liệu cho lần đầu tiên. Tải bổ sung – áp dụng trên những thay đổi khi cần thiết một cách định kì Làm mới toàn bộ - xóa hoàn toàn nội dung của 1 hoặc nhiều bảng và tải lại với dữ liệu mới 12 2.5.1. Kỹ thuật và quy trình tải dữ liệu Load.Nếu bảng mục tiêu đã tồn tại và dữ liệu đã tồn tại trong bảng, quá trình tải sẽ xóa dữ liệu đã có và tải dữ liệu từ tập tin đến. Nếu bảng đã rỗng trước khi tải, tiến trình tải đơn giản tải dữ liệu từ file đến. Append. Tải append giống như một mở rộng của Load. Nếu dữ liệu đã tồn tại trong bảng, tiến trình append sẽ thêm vô điều kiện các dữ liệu vào, giữ nguyên dữ liệu hiện có trong các bảng mục tiêu. Khi một bản ghi trùng với một bản ghi đã có, ta có thể xác định cách xử lý dữ liệu đẩy trùng. Các bản ghi đầu vào có thể cho phép thêm vào như là dữ liệu trùng. Trong trường hợp khác, bản ghi trùng ở đầu và bị loại bỏ trong quá trình append. Destructive Merge.Trong mô hình này,ta tải dữ liệu đầu vào vào bảng dữ liệu đích. Nếu khóa chính của bản ghi đầu với giống khóa của một bản ghi đã có, khi đó nó cập nhật bản ghi đích tương ứng. Nếu bản ghi đầu vào là một bản ghi mới không trùng khóa với bản ghi đã có, khi đó bản ghi được thêm vào bảng dữ liệu đích. Constructive Merge.Chế độ này hơi khác so với Destructive Merge. Nếu khóa chính của một bản ghi trùng với khóa của bản ghi đã có, để lại bản ghi này, thêm bản ghi mới và đánh dấu bản ghi thêm mới như bản ghi thay thế cho bản ghi cũ. Cách áp dụng cho 3 loại tải của kho dữ liệu. *)Quy trình tải cho từng loại Tải ban đầu: Với lần chạy đầu tiên của tải ban đầu ta sử dụng kiểu tải Load, sau đó tiếp tục với chế độ Append. Tải gia tăng.Các ứng dụng liên tục thay đổi theo các hệ thống nguồn. Vì vậy, ta cần một phương pháp để nắm bắt được chu kỳ thay đổi. Tải làm tươi toàn bộ. Loại ứng dụng liên quan đến định kỳ ghi lại toàn bộ kho dữ liệu. Đôi khi, ta cần làm mới lại một số bảng cụ thể. Làm tươi một phần rất hiếm bởi vì mọi bảng chiều được gắn với bảng sự kiện. 2.5.2 Làm tươi dữ liệu và cập nhât dữ liệu Sau tải ban đầu, ta có thể duy trì kho dữ liệu và cập nhật nó với 2 phương thức:  Cập nhật - ứng dụng cho dữ liệu thay đổi trong hệ thống nguồn.  Làm tươi – tải lại toàn bộ theo chu kỳ. 2.5.3. Phương pháp tải với các bảng chiều Trong kho dữ liệu, ta sử dụng khóa sinh bởi hệ thống. Bản ghi trong hệ thống nguồn có khóa của chúng. Vì vậy, trước khi dữ liệu nguồn có thể đưa vào bảng chiều, cho dù là tải 13 ban đầu hay tải trên dữ liệu thay đổi, thì khóa của sản phẩm cần chuyển sang khóa của hệ thống trong kho dữ liệu. Ta có thể cần coi chuyển đổi khóa như một phần của chức năng truyển đổi hoặc thực hiện một cách riêng biệt trước khi thực hiện các chức năng tải. 2.5.4. Tải lịch sử và tải gia tăng cho bảng sự kiện Khóa của bảng sự kiện là sự tải kết hợp các khóa của bảng chiều. Do nguyên nhân này, các bản chi cho chiều dữ liệu được tải trước tiên. Sau đó, trước khi tải dữ liệu cho các bảng sự kiện, ta phải tạo khóa kết nối cho các bảng sự kiện tới các khóa tương ứng trong bảng chiều. 14 CHƯƠNG 3. XÂY DỰNG ỨNG DỤNG ETL CHO DOANH NGHIỆP VIỄN THÔNG 3.1. Yêu cầu bài toán 3.1.1. Doanh nghiệp Viễn Thông Mô hình quản lý của doanh nghiệp viễn thông cụ thể với tập đoàn VNPT 3.1.1 Mục tiêu của bài toán Một số yêu cầu đối với ứng dụng: - Đảm bảo tính đúng đắn vè mặt số liệu so với hệ thống dữ liệu nguồn, tuân thủ các luật trong việc trích rút dữ liệu. - Ứng dụng phải đảm bảo tính mềm dẻo và linh động đối với các nguồn dữ liệu khác nhau. - Cho phép theo dõi và cảnh báo về các thay đổi trong hệ thống dữ liệu nguồn cũng như vấn đề xảy ra trong quá trình khai thác. 15 3.1.2. Một số hệ thống hỗ trợ ETL trên thế giới đang sử dụng 3.1.2.1. ETL trong SQL Server Integration Services Microsoft xây dựng SQL Server Integration Services với mục đích cung cấp nền tảng để xây dựng các giải pháp tích hợp dữ liệu với hiệu suất cao bao gồm việc kiết xuất , chuyển đổi và tải dữ liệu (ETL). SSIS cho phép ta tạo các gói tạo thành các nhiệm vụ thực hiện việc chuyển dữ liệu giữa các hệ thống. 3.1.2.2. ELT với Oracle Oracle có 4 sản phẩm hỗ trợ ETL - ODI (Oracle Data Integator), - OWB(Oracle Warehouse Builder ), - ODIEE(Oracle Business Intelligence Enterprise Edition), - OWBEE(bản nâng cấp của OWB) Kiến trúc ODI Các thành phần kiến trúc của ODI như sau:  Repository: Đây là nơi lưu giữ tất cả các thông tin được xử lý bởi ODI,cụ thể là, các chi tiết kết nối, siêu dữ liệu, quy tắc chuyển đổi và các kịch bản,tạo ra mã, các bản ghi thực hiện, và số liệu thống kê.  Studio: Studio là giao diện đồ họa của ODI. Nó được sử dụng bởi quản trị viên, các nhà phát triển, và các nhà khai thác.  Agents: Chứa các Agent  Console: Console là một công cụ web cho phép người dùng duyệt kho lưu trữ ODI, tuy nhiên nó không phải là một công cụ được sử dụng để phát triển các biến đổi mới.  The Oracle Enterprise Manager plugin cho ODI tích hợp giám sát trực tiếp vào OEM để các quản trị viên có thể củng cố giám sát của tất cả các sản phẩm của Oracle của họ trong một giao diện đồ họa duy nhất. 3.1.2.3. Đánh giá tính phù hợp của các công cụ ETL với việc xây dựng kho dữ liệu tại tập đoàn VNPT 3.1.3. Mục tiêu của bài toán 3.1.3.1. Mục tiêu Mục tiêu của bài toán đặt ra trong luận văn này là xây dựng một module ETL phục vụ cho việc trích xuất làm sach và tải dữ liệu từ nhiều nguồn khác nhau vào kho dữ liệu. 16 3.1.3.2. Phạm vi nguồn dữ liệu Dữ liệu được sử dụng từ dữ của hệ thống phát triển thuê bao và quản lý mạng ngoại vi của các đơn vị thành viên của VNPT. Dữ liêu bao gồm : dữ liệu phát triển các dịch vụ, dữ liệu quản lý mạng ngoại vi, dữ liệu cắt mở và hủy dịch vụ. 3.2. Mô hình hóa bài toán 3.2.1. Kiến trúc ứng dụng KHU VỰC XỬ LÝ GHI FILE Dữ liệu ngoại vi FoxPro FTP Đ ỌC Dữ liệu trích xuất Phát triển dịch vụ (Oracle) Đọc Module trích Ghi xuất dữ liệu Phát triển dịch vu (SQL) Làm sạch Đọc Kho dữ liệu Du lieu cắt mở dịch vụ (Oracle) chứa dữ liệu đã làm sạch Hình 3.8. Kiến trúc ứng dụng ETL 3.2.2. Một số công nghệ sử dụng trong việc xây dựng bài toán: Kết nối nguồn dữ liệu - Kết nối dữ liệu Foxpro từ hệ thống nguồn qua FTP đẩy các file dữ liệu lên máy chủ. - Kết nối với dữ liệu Oracle qua kết nối cơ sở dữ liệu (ODBC, OCI). - Kết nối với dữ liệu SQL Server thông qua ODBC. Trích xuất dữ liệu 17 - Phương pháp: Do các bản ghi trong dữ liệu gắn liền với thời gian như vậy ta sử dụng kiểu trích xuất định kỳ. - Nắm bắt thay đổi dữ liệu: Ở đây ta sử dụng phương pháp nắm bắt dữ liệu chậm sử dụng ngày tháng và nhãn thời gian. Tải dữ liệu - Sử dụng SQL Loader để tải dữ liệu vào cơ sở dữ liệu Oracle. - Sử dụng DBLink của Oracle làm cơ sở tải dữ liệu từ các dữ liệu Oracle và SQL Server khác. Làm sạch dữ liệu Công đoạn làm sạch dữ liệu được làm trên vùng đệm và chủ yếu sử dụng câu lệnh SQL và các hàm xử lý của Oracle như định dạng lại ngày tháng, truy vấn tìm bản ghi trùng... 3.2.3. Mô hình hóa module với UML Trích xuất Tải Data Staging Làm sạch Nguồn dữ liệu Chuyển đổi Kho dữ liệu Tải Cơ sở dữ liệu tác nghiệp Nguồn mở rộng Dữ liệu chuyên đề Hình 3.10. Sơ đồ trường hợp sử dụng của module ETL 18 D: Data Source E:Extractor DB: Data staging area C: Cleaner T: Transformer L:Loader DB: Data Warehouse/ Data Mart 1: Set connection() 2: Extract data() Load Data 3: Install data() 4: Read data() 5: Clean data() 6: Trasform data() 7: Get data() 8: Load data() Hình 3.11. Sơ đồ tuần tự của hệ thống ETL 3.3. Triển khai cài đặt 3.3.1. Xây dựng ứng dụng  Công cụ phân tích thiết kế: Microsoft Visio 10.  Môi trường lập trình: Visual Studio 10.  Ngôn ngữ lập trình: Visual C# 3.3.2. Dữ liệu đích: Dữ liệu chuyên đề phát triển dịch vụ 19 Hình 3.12. Lược đồ quan hệ kho dữ liệu chuyên đề phát triển dịch vụ CTR_CONTRACT : Bảng dữ liệu lập hợp đồng đăng ký dịch vụ CTR_CUSTOMER : Bảng dữ liệu khác hàng CTR_SUBSCRIBER : Bảng dữ liệu dịch vụ đăng ký của khác hàng COM_PROVINCE : Bảng dữ liệu danh bạ theo tỉnh thành. Dữ liệu chuyên đề mạng ngoai vi
- Xem thêm -