Những yếu tố căn bản cản trở việc sử dụng dữ liệu của các hệ thống OLTP trong việc phân tích dữ liệu là: • Các số liệu ở mức quá chi tiết.. Kho dữ liệu được xây dựng để tiện lợi cho việc
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
TRỊNH HỒNG NAM
NGHIÊN CỨU GIẢI PHÁP KHO DỮ LIỆU TRONG ORACLE DATA WAREHOUSE 10g VÀ ÁP DỤNG TRONG BÀI TOÁN XÂY DỰNG KHO DỮ LIỆU KHÁCH HÀNG,
NGÂN HÀNG TMCP TIÊN PHONG
LUẬN VĂN THẠC SĨ
Hà Nội – 2011
Trang 2TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
TRỊNH HỒNG NAM
NGHIÊN CỨU GIẢI PHÁP KHO DỮ LIỆU TRONG ORACLE DATA WAREHOUSE 10g VÀ ÁP DỤNG TRONG BÀI TOÁN XÂY DỰNG KHO DỮ LIỆU KHÁCH HÀNG,
NGÂN HÀNG TMCP TIÊN PHONG
Ngành: Công nghệ thông tin Chuyên ngành: Hệ thống Thông tin
Mã số: 60 48 05
LUẬN VĂN THẠC SĨ
NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS Đỗ Trung Tuấn
Hà Nội – 2011
Trang 3MỤC LỤC
LỜI CÁM ƠN 4
Danh mục các ký hiệu, chữ viết tắt 5
Danh mục các bảng, hình vẽ và đồ thị 7
PHẦN MỞ ĐẦU 9 U 1 ĐẶT VẤN ĐỀ 9
2 MỤC ĐÍCH NGHIÊN CỨU 10 U 3 KẾT CẤU ĐỀ TÀI 10
CHƯƠNG 1 HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU 11 U 1.1 Khái niệm 11
1.2 Mục tiêu hệ quản trị cơ sở dữ liệu 11
1.3 Quá trình phát triển 11
1.4 Cấu trúc và thành phần của hệ quản trị cơ sở dữ liệu 13
1.5 Hệ quản trị cơ sở dữ liệu Oracle 15
CHƯƠNG 2 LÝ THUYẾT VỀ KHO DỮ LIỆU 17 U 2.1 Định nghĩa 17
2.2 Đặc trưng kho dữ liệu .17
2.2.1 Hướng chủ thể .17
2.2.2 Tích hợp 18
2.2.3 Biến thời gian 18
2.2.4 Tính bền vững 19
2.3 Đặc tính hệ quản trị cơ sở dữ liệu Oracle 20
2.3.1 Sự khác nhau giữa kho dữ liệu và OLTP 20
2.3.2 Ưu, nhược điểm của hệ thống kho dữ liệu 20
2.4 Kiến trúc kho dữ liệu 21
2.4.1 Kiến trúc kho dữ liệu cơ sở 21
2.4.2 Kiến trúc kho dữ liệu với vùng trung gian 21
2.4.3 Kiến trúc kho dữ liệu với vùng trung gian và kho dữ liệu cục bộ 22
2.5 Thiết kế logic 22
2.5.1 Thiết kế logic mức vật lý 22
2.5.2 Tạo một thiết kế logic 23
2.5.3 Lược đồ kho dữ liệu 24
2.5.4 Các đối tượng kho dữ liệu 25
2.5.5 Các bảng sự kiện 25
2.5.6 Các bảng chiều 25
2.5.7 Định danh duy nhất 27
Trang 42.5.8 Mối quan hệ 27
2.5.9 Minh họa đối tượng kho dữ liệu và mối quan hệ 27
2.6 Thiết kế vật lý 28
2.6.1 Chuyển thiết kế logic thành thiết kế vật lý 28
2.6.2 Thiết kế vật lý 28
2.6.3 Cấu trúc thiết kế vật lý 29
2.6.4 Không gian lưu trữ dữ liệu 29
2.6.5 Bảng và phân hoạch bảng 29
2.6.6 Nén bảng 30
2.6.7 Khung nhìn 30
2.6.8 Ràng buộc toàn vẹn 30
2.6.9 Chỉ mục và chỉ mục phân cụm 30
2.6.10 Khung nhìn vật lí 31
2.6.11 Chiều 31
2.7 Công cụ tích hợp dữ liệu, quản lý môi trường kho dữ liệu 31
2.7.1 Tổng quan về ETL 31
2.7.2 Trích xuất dữ liệu 33
2.7.3 Trao đổi dữ liệu 34
2.7.4 Tải dữ liệu 34
2.8 Bảo trì 35
2.9 Thực thi song song 35
CHƯƠNG 3 GIẢI PHÁP VÀ ĐỀ XUẤT XÂY DỰNG KHO DỮ LIỆU KHÁCH HÀNG 40
3.1 Giới thiệu về ngân hàng Tiên Phong 40
3.2 Mục đích kho dữ liệu 45
3.2 Đặc tính của kho dữ liệu 45
3.3 Hỗ trợ tích hợp dữ liệu 46
3.4 Nội dung giải pháp kho dữ liệu, Ngân hàng Tiên Phong 46
3.4.1 Hiện trạng hệ thống Core Banking 48
3.4.2 Hệ thống tác nghiệp 50
3.4.3 Nhu cầu cho hệ thống tác nghiệp đa chiều 51
3.4.4 Nguồn dữ liệu 53
3.4.5 Vùng đệm dữ liệu 54
3.4.6 Kho dữ liệu tác nghiệp tổng hợp 54
3.4.7 Kho dữ liệu tích hợp từ các CSDL chủ đề 54
3.4.8 Các ứng dụng và công cụ khai thác, phân tích dữ liệu phục vụ người sử dụng 56 3.4.9 Kho dữ liệu từ điển 57
3.5 Phân tích, thiết kế xây dựng kho dữ liệu, kho dữ liệu chuyên đề 57
Trang 53.5.1 Mục đích và yêu cầu 57
3.5.2 Mô hình dữ liệu và các lược đồ .58
CHƯƠNG4 CÀI ĐẶT, THỬ NGHIỆM, KẾT QUẢ 67
4.1 Môi trường cài đặt 67
4.2 Dữ liệu thử nghiệm 68
4.3 Kết quả 68
4.3.1 Công cụ xây dựng kho dữ liệu 68
4.3.2 Xây dựng các bảng chiều thông tin 69
4.3.3 Xây dựng một khối thông tin xoay theo các bảng chiều dữ liệu 69
4.3.4 Luồng các tiến trình thực thi 70
4.3.5 Hệ quản trị kinh doanh thông minh 70
KẾT LUẬN 76
TÀI LIỆU THAM KHẢO 77
Tài liệu Tiếng Việt 77
Tài liệu Tiếng Anh 77
Trang 6A watermark is added at the end of each output PDF file.
To remove the watermark, you need to purchase the software from
http://www.anypdftools.com/buy/buy-pdf-splitter.html
Trang 7Danh mục các ký hiệu, chữ viết tắt
Client/Server
OLAP Client/Server Online Analytical Processing Xử lý phân tích trực tuyến khách/chủ
CDC Change Data Capture Sao/chụp thông tin dữ liệu thay đổi
CPU Central Processing Unit Đơn vị xử lý trung tâm
DRM Database Resource Manager Quản lý nguồn tài nguyên dữ liệu
DBMS Database Management System Hệ quản trị cơ sở dữ liệu
DML Data Manipulation Language Ngôn ngữ thao tác dữ liệu
DOLAP Database Online Analytical Processing Xử lý phân tích trực tuyến CSDL
ETL Extraction, Transportation,
EIS Executive Information System Hệ thống thông tin điều hành
HOLAP Hybric Online Analytical Processing Xử lý phân tích trực tuyến kết hợp
MOLAP Multi dimensional Online Analytical Processing Xử lý phân tích trực tuyến đa chiều
ODS Operational Data Store Kho dữ liệu tác nghiệp tổng hợp
OLAP On Line Analytical Processing Xử lý phân tích trực tuyến
OLTP On Line Transaction Processing Xử lý tác nghiệp trực tuyến
Trang 8ORA ORACLE Tập đoàn công nghệ
OWB Oracle Warehouse Builder Công cụ xây dựng kho dữ liệu Oracle RAC Real Application Cluster
ROLAP Relational Online Analytical Processing Xử lý phân tích trực tuyến quan hệ SQL Structured Query Language Ngôn ngữ truy vấn cấu trúc
TB Terabyte (1TB=109 KB) Đơn vị đo lưu trữ dữ liệu
Trang 9Danh mục các bảng, hình vẽ và đồ thị
Trang
Hình 2-1: Mô tả dữ liệu tổ chức theo hướng chủ thể 17
Hình 2-2: Mô tả dữ liệu được tích hợp từ nhiều nguồn 17
Hình 2-4: Mô tả thông tin dữ liệu luôn bền vững, an toàn 18
Hình 2-5: Sự tương phản giữa OLTP và môi trường kho dữ liệu 19
Hình 2-6: Kiến trúc của một kho dữ liệu 20
Hình 2-7: Kiến trúc của một kho dữ liệu với một vùng trung gian 21
Hình 2-8: Kiến trúc của kho dữ liệu với vùng lưu trữ và các kho dữ liệu cục bộ 21
Hình 2-10: Các mức đặc trưng trong một hệ thống phân cấp chiều 26
Hình 2-13: Ví dụ về chiều 31
Hình 2-15: Công cụ Extract, Tranform, Loading của Oracle Warehouse Builder 32
Hình 2-16: Minh họa các buffer tin điện và kết nối giữa servers thực thi song song 38
Hình 3-1: Thông tin về ngân hàng thương mại cổ phần Tiên Phong 40
Hình 3-3: Dịch vụ thanh toán qua điện thoại 43
Hình 3-7: Kiến trúc tổng thể kho dữ liệu 47
Hình 3-8: Mối quan hệ giữa CNTT và Nghiệp vụ 48
Hình 3-9: Mô hình hiện trạng hạ tầng Ngân hàng TMCP Tiên Phong 49
Hình 3-11: Hệ thống tác nghiệp 51 Hình 3-12: Mô hình hệ thống chuyên đề, khai thác thông tin 53
Hình 3-13: Mô hình kiến trúc, giải pháp đề xuất kho dữ liệu 54
Hình 4-1: Công cụ xây dựng kho dữ liệu 68
Trang 10Hình 4-2: Chiều thông tin 69
Hình 4-3: Khối dữ liệu sẽ được xoay theo 2 chiều thông tin 69
Hình 4-5: Quản trị doanh nghiệp 71
Trang 11PHẦN MỞ ĐẦU
1 ĐẶT VẤN ĐỀ
Máy tính từ khi ra đời đã đóng vai trò vô cùng quan trọng trong lịch sử phát triển của nhân loại Các máy tính là những công cụ tính toán mạnh, cho phép con người giải được các bài toán có số lượng tính toán khổng lồ mà trước đó không thể thực hiện được bằng tay như tính toán kết cấu công trình, tính toán xây dựng kế hoạch quốc gia, thống kê điều tra dân số, tuyển sinh , là những bài toán lớn, có thuật toán xác định Góp phần tích cực vào quá trình này là sự xuất hiện của những ngôn ngữ lập trình hướng cấu trúc, phần mềm được coi là một nghề và có quy trình phát triển tuân thủ các quy trình nghiêm ngặt
Hệ quản trị cơ sở dữ liệu (CSDL) quan hệ là hệ quản trị CSDL phổ biến nhất hiện nay và được hỗ trợ bởi nhiều nhà cung cấp phần mềm Tính hiệu quả của các ứng dụng phụ thuộc vào chất lượng của việc tổ chức dữ liệu Những cải tiến trong kỹ thuật
và xử lý CSDL đưa đến các cơ hội sử dụng thông tin một cách linh hoạt và hiệu quả khi dữ liệu được tổ chức và lưu trữ trong các cấu trúc quan hệ Hệ quản trị CSDL là một thành công trong lĩnh vực thương mại
Thông tin là nguồn tài nguyên quý giá của một tổ chức Các phần mềm máy tính
là những công cụ hiệu quả để xử lý thông tin và hệ quản trị CSDL là công cụ phổ biến cho phép lưu trữ và rút trích thông tin một cách hiệu quả
Với sự phát triển của mô hình kho dữ liệu, ngày nay ở Việt nam các tổ chức, doanh nghiệp luôn chú trọng khả năng lưu trữ, xử lý và khai thác thông tin giúp nhà quản trị, lãnh đạo phân tích trên các lớp dữ liệu dự báo được các khuynh hướng phát triển, đưa ra các quyết sách đúng đắn, kịp thời và hiệu quả cho cơ quản, tổ chức của mình Nhằm đáp ứng đầy đủ các yêu cầu trên nhiều công cụ được xây dựng nhằm thỏa mãn các nhu cầu khai thác dữ liệu mức cao đã được các hãng nổi tiếng tập trung nghiên cứu Một trong những công cụ đó là bộ sản phẩm Oracle Dataware House của hãng phần mềm nổi tiếng thế giới Tập đoàn Oracle
Nguồn dữ liệu đối với các tập đoàn công nghệ, tài chính, ngân hàng là vô cùng lớn Xây dựng một kho dữ liệu cho phép rút trích tài nguyên, tính toán theo yêu cầu để cung cấp các báo cáo dựa vào cơ sở dữ liệu hoạt động phục vụ sản xuất, kinh doanh trở nên thông minh hơn, tăng thêm chất lượng và tính linh hoạt của việc phân tích kinh doanh có chất lượng cao và ổn định
Trang 122 MỤC ĐÍCH NGHIÊN CỨU
Luận văn này được thực hiện với mục đích nghiên cứu, xây dựng giải pháp và được đề xuất áp dụng thực tiễn cho bài toán “Xây dựng hệ thống kho dữ liệu khách hàng, Ngân hàng thương mại cổ phần Tiên Phong”
• Thi hành các phân tích dữ liệu phức tạp
• Thực hiện phân tích:
o Phân tích định hướng
o Phân tích chuỗi thời gian
o Phân tích rủi ro
• Thăm dò các hệ hỗ trợ quyết định
• Khám phá và đưa ra các yếu tố ẩn thông qua các kỹ thuật khai phá dữ liệu
Đề tài được nghiên cứu nhằm giải quyết, khắc phục thực trạng, nhược điểm mà
hệ thống báo cáo quản trị hiện nay đang vận hành còn thiếu hiệu quả, khả năng đáp ứng, tính sẵn sàng chưa cao
3 KẾT CẤU ĐỀ TÀI
Luận văn chia thành các chương :
• Chương 1: Hệ quản trị cơ sở dữ liệu
• Chương 2: Lý thuyết Kho dữ liệu
• Chương 3: Giải pháp và đề xuất Kho dữ liệu
• Chương 4: Cài đặt, thử nghiệm, kết quả
Ngoài ra luận văn có phần mở đầu, cho biết mục đích nghiên cứu và phần kết luận, thể hiện kết quả chính của luận văn và một số khuyến nghị, đề xuất
Trang 13CHƯƠNG 1 HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU
1.1 Khái niệm
Hệ quản trị cơ sở dữ liệu là phần mềm hay hệ thống được thiết kế để quản trị một
cơ sở dữ liệu, hỗ trợ khả năng lưu trữ, sửa chữa, xóa và tìm kiếm thông tin trong một
cơ sở dữ liệu Có rất nhiều loại hệ quản trị CSDL khác nhau: từ phần mềm nhỏ chạy trên máy tính cá nhân cho đến những hệ quản trị phức tạp chạy trên một hoặc nhiều siêu máy tính
Tuy nhiên, đa số hệ quản trị CSDL trên thị trường đều có một đặc điểm chung là
sử dụng ngôn ngữ truy vấn theo cấu trúc mà tiếng Anh gọi là Structured Query Language (SQL) Các hệ quản trị CSDL phổ biến được nhiều người biết đến là MySQL, Oracle, PostgreSQL, SQL Server, DB2, Infomix, v.v Phần lớn các hệ quản trị CSDL kể trên hoạt động tốt trên nhiều hệ điều hành khác nhau như Linux, Unix và MacOS ngoại trừ SQL Server của Microsoft chỉ chạy trên hệ điều hành Windows
1.2 Mục tiêu hệ quản trị cơ sở dữ liệu
Một hệ quản trị cơ sở dữ liệu luôn hướng đến các mục tiêu:
• Dữ liệu sẵn dùng: Dữ liệu được tổ chức sao cho mọi người dùng có thể truy cập
dễ dàng theo chức năng và nhiệm vụ của họ
• Tính toàn vẹn dữ liệu: Dữ liệu lưu trữ trong CSDL là đúng đắn, đáng tin cậy
• An toàn dữ liệu: Chỉ có người dùng được phép mới có thể truy cập dữ liệu Nếu nhiều người dùng truy cập chung một mục dữ liệu cùng lúc thì hệ quản trị CSDL không cho phép họ thực hiện những thay đổi gây mâu thuẫn dữ liệu
• Độc lập dữ liệu: Hệ quản trị CSDL phải cho phép tất cả mọi người dùng được phép lưu trữ, cập nhật và rút trích dữ liệu hiệu quả mà không cần nắm chi tiết
về cấu trúc của CSDL được biểu diễn và cài đặt
• Mô hình quan hệ: 1980s - đến nay
• Mô hình hướng đối tượng: 1990s - đến nay
Trang 14Một số CSDL quan hệ được các hãng phát triển phần mềm nổi tiếng xây dựng tích hợp với các hãng phát triển phần cứng được các doanh nghiệp, tổ chức, người dùng đón nhận SYSBASE, ACCESS, FOXPRO, MY SQL, SQL Server , tạo điều kiện vô cùng thuận lợi cho nguời phát triển
Dường như máy tính và những chương trình cũng đã giải quyết được hầu hết các vấn đề trong lĩnh vực quản lý Tuy nhiên thực tế, các tổ chức, doanh nghiệp muốn thành công trên thị trường, ngoài việc tổ chức bán hàng tốt (giao dịch đơn giản, thuận tiện cho người mua và người quản lý bán hàng ), người lãnh đạo công ty phải nắm được thực chất các quá trình diễn ra trong đơn vị mình và trong môi trường nghiệp vụ
mà đơn vị đó hoạt động Để thực hiện các công việc của một công ty, người ta có nhiều hệ chương trình tự động hoá các lĩnh vực quan trọng như kế toán, lập kế hoạch, giao dịch khách hàng, lập hoá đơn Chính vì lý do đó những hệ thống này có một cái tên cổ điển là hệ thống xử lý giao dịch (Online Transaction Process - OLTP)
Hệ thống OLTP cho phép các giao dịch thay đổi dữ liệu trong bảng bằng ngôn ngữ các câu lệnh truy vấn SQL trong quá trình xử lý Hệ thống cho phép nhiều ứng dụng truy cập dữ liệu cùng một thời điểm
Các ứng dụng được sử dụng trên máy trạm phục vụ cho các hoạt động giao dịch như ngân hàng, bán vé trực tuyến, bán vé hàng không, thanh toán cước phí đều sử dụng hệ thống OLTP có các ưu điểm:
• Xử lý các chuyển tác tương tác
• Dễ bảo trì và khống chế dữ liệu thừa
• Thiết lập dữ liệu quan hệ trọn vẹn
• Tính hiệu quả cao
• Giảm thời gian của khách hàng
Các CSDL được cấu hình trong các hệ OLTP thường được thiết kế thoả mãn chuẩn Third Normal Form (3NF) hoặc tốt hơn Đặc điểm của hệ thống OLTP là lưu trữ các dữ liệu "thô", nhưng mức độ tổng quát, trừu tượng của dữ liệu không cao Nói cách khác OLPT chỉ có ích để tìm trả lời những câu truy vấn dạng: Tổng doanh thu toàn hàng đạt được trong 6 tháng đầu năm, chứ chưa có báo cáo xoay theo nhiều chiều, khối thông tin sản phẩm nào đem lại nhiều doanh thu nhất tại chi nhánh, phòng giao dịch trong tháng vừa qua Trong khi đó các nhà quản lý ở mức cao của công ty rất ít khi quan tâm đến những câu hỏi loại đó Điều họ cần chú ý là những câu hỏi trừu tượng hơn như: Tiêu thụ sản phẩm X tại khu vực A đang giảm, nếu thay đổi 3%-5% giá của sản phẩm X tại khu vực A, tình trạng tiêu thụ sẽ thay đổi ra sao trong 6 tháng cuối năm và tại sao?
Trang 15Các hệ thống OLTP hiện nay trả lời rất tốt câu hỏi 1 bằng các công cụ của hệ CSDL quan hệ nhưng để tìm đáp án cho những câu hỏi dạng 2 là không đơn giản Những yếu tố căn bản cản trở việc sử dụng dữ liệu của các hệ thống OLTP trong việc phân tích dữ liệu là:
• Các số liệu ở mức quá chi tiết
• Các số liệu được phân bố ở những hệ thống khác nhau, có các thủ tục truy cập khác nhau và ở những CSDL hoàn toàn khác nhau
• Các số liệu không được cập nhập cùng một chu kỳ dẫn đến sự mất đồng bộ
• Việc tổ chức truy cập từ rất nhiều bảng dữ liệu khác nhau có ảnh hưởng rất xấu tới hiệu suất của các hệ thống vì mục đích của các hệ thống này là nhằm phục
vụ các giao dịch trực tuyến
Trong môi trường dư thừa số liệu, nhà phân tích, quản trị không thể tìm ra cho mình thông tin cần thiết nhằm có được sự hiểu biết thấu đáo về những quá trình xảy ra xung quanh Tình trạng số liệu quá chi tiết và không có được sự liên kết với nhau của các số liệu phản ánh các quá trình tương đối độc lập của một thực thể là lý do trực tiếp dẫn đến sự dư thừa thông tin này
Vì vậy, người ta đã đưa ra giải pháp tích hợp các hệ thống OLTP để tạo ra một hệ thống chứa đầy đủ thông tin Tuy nhiên giải pháp này có hai nhược điểm:
1 Phải liên kết các hệ thống có xuất xứ khác nhau về phần cứng và phần mềm hệ thống Các chương trình cần có sự thống nhất về định nghĩa dữ liệu cũng như phương pháp biểu diễn dữ liệu Vấn đề này rất phức tạp thậm chí đối với các hệ thống có thiết kế phân tích tốt và hoàn toàn không khả thi đối với những hệ thống được mô tả kém
2 Việc truy vấn để tạo báo cáo thường xuyên liên quan tới rất nhiều bảng, hạn chế
sự truy cập và khai thác trong quá trình làm việc hàng ngày, làm ảnh hưởng trực tiếp đến khách hàng
Một cách tiếp cận khác được đề xướng vào những năm 90 của thế kỷ trước là một sự kết hợp của một số giải pháp kỹ thuật và được đặt tên là Data Warehoushing -
kỹ thuật xây dựng các kho dữ liệu
1.4 Cấu trúc và thành phần của hệ quản trị cơ sở dữ liệu
Trang 16- Quản lý tệp tin: Quản lý việc cấp phát không gian trên đĩa, các tệp tin được dùng để chứa các dữ liệu tương tự nhau Hệ quản lý tập tin quản lý các tệp tin độc lập, giúp đỡ nhập và lấy các mẩu tin Thành phần quản lý tệp tin thiết lập
Trang 17và duy trì danh sách các cấu trúc và chỉ mục được định nghĩa trong lược đồ Thành phần quản lý tệp tin có thể:
o Tạo tệp tin
o Xóa tệp tin
o Cập nhật mẩu tin trong tệp tin
o Lấy một mẩu tin từ một tệp tin
- Quản lý vùng đệm: Có trách nhiệm chuyển dữ liệu từ đĩa lưu trữ vào bộ nhớ chính theo yêu cầu của chương trình
2 Bộ quản lý truy vấn: Thực hiện câu truy vấn nhận được từ người dùng qua các giai đoạn phân tích, tối ưu hóa câu hỏi, lập kế hoạch thực hiện và thực hiện tính toán
1.5 Hệ quản trị cơ sở dữ liệu Oracle
Cơ sở dữ liệu oracle là một cơ sở dữ liệu mạnh mẽ nhất thế giới Được thiết kế để triển khai cho mọi môi trường doanh nghiệp Việc cài đặt, quản lý rất dễ dàng, các công cụ để phát triển các ứng dụng một cách hoàn thiện và nhanh chóng Cơ sở dữ liệu Oracle phù hợp cho mọi loại dữ liệu, các ứng dụng và các môi trường khác nhau bao gồm cả windows và linux với chi phí tối thiểu
Hệ quản trị cơ sở dữ liệu oracle 9i/10g/11g Đây có thể nói là một hệ quản trị CSDL hàng đầu trên thế giới Hơn hai phần ba trong số 500 tập đoàn công ty lớn nhất thế giới sử dụng Oracle Ở việt nam hầu hết các đơn vị lớn thuộc các ngành ngân hàng, kho bạc, thuế, bảo hiểm, bưu điện, hàng không, dầu khí,… đều sử dụng hệ quản trị csdl oracle Có được như thế là vì oracle hiện đang dẫn đầu về các tính năng như:
• Độ ổn định và tin cậy cao
• Khả năng xử lý dữ liệu rất lớn, có thể lên đến hàng trăm Terabyte (TB) mà vẫn đảm bảo tốc độ xử lý dữ liệu rất cao
• Khả năng bảo mật rất cao, Oracle đạt độ bảo mật cấp c2 theo tiêu chuẩn bảo mật của bộ quốc phòng Mỹ và công nghệ CSDL Oracle vốn được hình thành từ yêu cầu đặt hàng của các cơ quan an ninh
Ngoài ra Oracle còn là một hệ CSDL độc lập với hệ điều hành Nó cho phép không chỉ chạy trên các hệ điều hành thương mại Windows mà còn có thể chạy trên các hệ điều hành mã nguồn mở miễn phí như Linux rất mạnh và rất phổ biến hiện nay Oracle bao gồm một tập hợp hoàn thiện các sản phẩm xây dựng ứng dụng và người dùng cuối được trang bị các giải pháp kỹ thuật thông tin hoàn hảo Các ứng
Trang 18dụng Oracle tương thích với hầu hết các hệ điều hành từ các máy tính cá nhân đến các
Oracle Database Server là một hệ quản trị CSDL điều khiển:
• Lưu giữ dữ liệu trên các vùng dữ liệu đã thiết kế
• Truy cập dữ liệu cho các ứng dụng, dùng các kỹ thuật tương đối tối ưu
• Bảo mật dữ liệu, cấp quyền khác nhau cho các user
• Liên kết và toàn vẹn dữ liệu khi CSDL được phân bố trên mạng
Oracle giúp cho các doanh nghiệp sử dụng thông tin chất lượng cao để kết hợp,
đo lường các kết quả và truyền một cách chính xác nhất đến tất cả các cổ đông Công
ty cũng cải tiến kĩ thuật trong nhiều năm bằng việc kết hợp tính sáng tạo của những kĩ
sư phần mềm giỏi nhất trong nghành với những phản hồi từ 500 khách hàng của tạp chí fortune – kết quả là sự ra đời của những đổi mới hỗ trự trợ các ngành kinh doanh bị chi phối bởi thông tin trên khắp thế giới
Trang 19CHƯƠNG 2 LÝ THUYẾT VỀ KHO DỮ LIỆU
2.1 Định nghĩa
Kho dữ liệu là tập hợp các cơ sở dữ liệu tích hợp, hướng chủ đề, được thiết kế để
hỗ trợ cho chức năng trợ giúp quyết định Công nghệ kho dữ liệu là tập các phương pháp, kỹ thuật và các công cụ có thể kết hợp, hỗ trợ nhau để cung cấp thông tin cho người sử dụng trên cơ sở tích hợp từ nhiều nguồn dữ liệu, nhiều môi trường khác nhau thiết kế chủ yếu cho truy vấn và phân tích hơn là xử lý các giao tác
Kho dữ liệu thường rất lớn tới hàng trăm Gigabyte (GB) hay thậm chí hàng Terabyte (TB) Kho dữ liệu được xây dựng để tiện lợi cho việc truy cập theo nhiều nguồn, nhiều kiểu dữ liệu khác nhau sao cho có thể kết hợp được cả những ứng dụng của các công nghệ hiện đại và kế thừa được từ những hệ thống đã có sẵn từ trước Ngoài việc chứa đựng một cơ sở dữ liệu quan hệ, kho dữ liệu còn bao gồm sử dụng các pha trong trích xuất, chuyển đổi, tải dữ liệu (Extract,Tranform, Loading - ETL), công nghệ xử lý phân tích trực tuyến (OnLine Analytical Processing – OLAP), các công cụ phân tích, và các ứng dụng cho việc thu thập và cung cấp dữ liệu tới người
Cung cấp một khung nhìn đơn giản và súc tích xung quanh các sự kiện của các chủ thể Ví dụ, để tìm hiểu thêm về dữ liệu bán hàng của công ty, ta có thể xây dựng một kho dữ liệu tập trung trên doanh thu Sử dụng kho dữ liệu có thể trả lời các câu hỏi như "Ai là khách hàng tốt nhất của chúng ta cho mặt hàng này năm ngoái?"
Các chủ thể điển hình
• Các tài khoản khách hàng
• Việc bán hàng
• Tiền tiết kiệm của khách hàng
• Các yêu sách bảo hiểm
• Đặt chỗ hành khách
Trang 20Hình 2-1: Mô tả dữ liệu tổ chức theo hướng chủ thể
Các hệ thống OLTP có thể chứa hàng trăm GB số liệu, tuy nhiên những số liệu này có thể hoàn toàn vô ích trong việc phân tích trực tuyến như: Địa chỉ, ID khách hàng Các dữ liệu kiểu này thường không được đưa vào kho dữ liệu để hạn chế dữ liệu cần xem xét xuống mức tối thiểu nhưng cũng bảo đảm các thông tin theo từng chủ
đề Một chủ đề là một miền dữ liệu được tách ra từ một tập hợp lớn các chủ đề mà người sử dụng quan tâm trong công việc kinh doanh
2.2.2 Tích hợp
Được xây dựng bằng việc tích hợp dữ liệu từ các nguồn dữ liệu hỗn tạp Các kỹ thuật làm sạch và tích hợp dữ liệu được áp dụng để đảm bảo sự đồng nhất trong các quy ước tên, cấu trúc mã hóa, các đơn vị đo thuộc tính giữa các nguồn khác nhau
Hình 2-2: Mô tả dữ liệu được tích hợp từ nhiều nguồn
Kho dữ liệu phải đưa các dữ liệu từ các nguồn khác nhau về định dạng phù hợp Chúng ta phải giải quyết những vấn đề như xung đột tên và mâu thuẩn giữa các đơn vị
đo
2.2.3 Biến thời gian
Yêu cầu quan trọng cho kho dữ liệu là phạm vi về thời gian dài hơn so với các hệ thống tác nghiệp
Trang 21• Cơ sở dữ liệu tác nghiệp: dữ liệu có giá trị hiện thời
• Dữ liệu của kho dữ liệu: cung cấp thông tin lịch sử từ 5-10 năm trước
• Yếu tố thời gian được lưu trữ trong hệ thống
Hình 2-3: Mô tả dữ liệu theo thời gian
Các hệ OLTP thường bao quát một khoảng thời gian không lớn và chúng được lưu trữ theo chu kỳ Ngược lại trong kho dữ liệu, dữ liệu của hàng chục năm được lưu trữ nhằm phát hiện sự liên hệ của các yếu tố có thể ảnh hưởng đến những chỉ tiêu cần quan tâm trong một thời gian dài
2.2.4 Tính bền vững
Khi thông tin đã đưa vào kho dữ liệu, dữ liệu không nên thay đổi Điều này là hợp lý vì mục đích của một kho dữ liệu là để cho phép ta phân tích những gì đã xảy ra
Dữ liệu đưa vào kho dữ liệu chỉ để đọc, việc sửa dữ liệu hầu như không được tiến hành
vì điều này có thể dẫn đến phá vỡ sự toàn vẹn Thông thường người ta không yêu cầu giảm thời gian đưa dữ liệu vào kho dữ liệu xuống mức tối thiểu, nhưng cần tối ưu hoá kho dữ liệu sao cho các truy vấn phục vụ cho việc phân tích đạt tốc độ tốt nhất Các sơ
đồ quan hệ sẽ tạo ra các Index hợp lý cũng như tạo ra sẵn các dữ liệu kết hợp
Hình 2-4: Mô tả thông tin dữ liệu luôn bền vững, an toàn
Dữ liệu được lưu trữ lâu dài trong kho dữ liệu Mặc dù có thêm dữ liệu mới nhập vào nhưng dữ liệu cũ trong kho vẫn không bị xoá, điều đó cho phép cung cấp thông tin
Trang 22về một khoảng thời gian dài, cung cấp đủ số liệu cần thiết cho các mô hình nghiệp vụ phân tích, dự báo
2.3 Đặc tính hệ quản trị cơ sở dữ liệu Oracle
2.3.1 Sự khác nhau giữa kho dữ liệu và OLTP
Một khác biệt lớn giữa hai hệ thống là kho dữ liệu thường không được chuẩn hóa
ở dạng chuẩn 3NF, một kiểu mô hình hóa dữ liệu phổ biến trong môi trường OLTP
• OLTP: Mô tả các tiến trình xử lý tác nghiệp trực tuyến tại hệ thống nghiệp vụ
• OLAP: Mô tả các tiến trình xử lý phân tích trực tuyến tại kho dữ liệu
Hình 2-5 Sự tương phản giữa OLTP và môi trường kho dữ liệu
Thời gian phản hồi Nhỏ hơn đơn vị giây Giây Æ Giờ
Thao tác dữ liệu Thêm, Xóa, Sửa, Đọc Chủ yếu là “Đọc”
Kích thước dữ liệu Nhỏ Æ Lớn Lớn Æ Rất lớn
Nguồn dữ liệu Hệ thống tác nghiệp Tác nghiệp, bên ngoài
2.3.2 Ưu, nhược điểm của hệ thống kho dữ liệu
Ưu điểm của hệ thống thông tin sử dụng tiếp cận kho dữ liệu:
• Quản lý được dữ liệu dư thừa
• Đảm báo tính nhất quán cho dữ liệu
• Tạo khả năng chia sẻ dữ liệu nhiều hơn
• Cải tiến tính toàn vẹn cho dữ liệu
Trang 23Nhược điểm của hệ thống thông tin khi tiếp cận kho dữ liệu:
• Một hệ quản trị CSDL lớn sẽ yêu cầu nhiều chi phí xây dựng hạ tầng, trang thiết bị
• Một hệ quản trị CSDL được xây dựng tổng quát cho nhiều người dùng thì công việc vận hành và quản trị sẽ tốn nghiều nguồn lực để đảm bảo hệ thống hoạt động ổn định
2.4 Kiến trúc kho dữ liệu
Tùy thuộc vào các chi tiết cụ thể của một tổ chức mà ta lựa chọn kiến trúc phù hợp cho kho dữ liệu Ba kiến trúc phổ biến là:
2.4.1 Kiến trúc kho dữ liệu cơ sở
Hình 2-6 cho thấy một kiến trúc đơn giản cho một kho dữ liệu Người dùng cuối trực tiếp truy cập dữ liệu nguồn thông qua kho dữ liệu
Hình 2-6 Kiến trúc của một kho dữ liệu
Siêu dữ liệu và dữ liệu thô của một hệ thống OLTP truyền thống là sẵn có, như là
là một loại dữ liệu bổ sung, dữ liệu giản lược Tóm lược rất có giá trị trong kho dữ liệu, vì chúng tính toán trước các hoạt động lâu dài như truy vấn kho dữ liệu điển hình
để lấy thông tin về lượng hàng được bán trong tháng Một tóm tắt trong một cơ sở dữ liệu Oracle được gọi là một khung nhìn cụ thể hoá
2.4.2 Kiến trúc kho dữ liệu với vùng trung gian
Với kiến trúc này, cần làm sạch và xử lý dữ liệu hoạt động trước khi đưa nó vào kho dữ liệu, mặc dù hầu hết kho dữ liệu sử dụng một vùng trung gian thay thế Một vùng trung gian sẽ làm đơn giản hoá việc quản lý kho dữ liệu chung Hình 2-7 minh họa kiến trúc đặc trưng này
Trang 24Hình 2-7: Kiến trúc của một kho dữ liệu với một vùng trung gian
2.4.3 Kiến trúc kho dữ liệu với vùng trung gian và kho dữ liệu cục bộ
Mặc dù kiến trúc trong hình 2-7 là khá phổ biến, tùy theo yêu cầu ta có thể kiến trúc kho dữ liệu cho các nhóm khác nhau bên trong của tổ chức Điều này có thế thực hiện bằng cách thêm các kho dữ liệu cục bộ, đó là các hệ thống được thiết kế cho một phạm vi cụ thể của doanh nghiệp Hình 2-8 minh hoạ một ví dụ nơi mua, bán hàng, và hàng tồn kho được tách ra Trong ví dụ này, một nhà phân tích tài chính có thể muốn phân tích dữ liệu lịch sử cho mua và bán
Hình 2-8: Kiến trúc của kho dữ liệu với vùng lưu trữ và các kho dữ liệu cục bộ
2.5 Thiết kế logic
2.5.1 Thiết kế logic mức vật lý
Sau khi xác định các yêu cầu nghiệp vụ và thỏa thuận phạm vi của ứng dụng, và tạo ra một thiết kế dựa trên các khái niệm Bây giờ ta cần phải dịch các yêu cầu thành
Trang 25một hệ thống có thể chuyển giao, tạo ra những thiết kế logic và thiết kế vật lý cho kho
dữ liệu Cần xác định:
1 Nội dung dữ liệu cụ thể
2 Mối quan hệ bên trong và giữa các nhóm dữ liệu
3 Môi trường hệ thống hỗ trợ kho dữ liệu
4 Các biến đổi dữ liệu cần thiết
5 Tần suất mà dữ liệu được làm tươi
Thiết kế logic xem xét các mối quan hệ logic giữa các chủ thể Thiết kế vật lý xem xét cách thức hiệu quả nhất của việc lưu trữ và gọi ra các đối tượng, cũng như xử
lý chúng từ một chuyển dịch và quan điểm sao lưu, phục hồi
Thiết kế hướng tới các nhu cầu của người dùng cuối Người dùng cuối thường muốn thực hiện phân tích và xem xét dữ liệu tổng hợp, hơn là giao tác riêng lẻ Tuy nhiên, người dùng cuối có thể không biết những gì họ cần cho đến khi họ nhìn thấy nó Ngoài ra, một thiết kế được lên kế hoạch chu đáo có tính đến sự tăng trưởng và thay đổi khi nhu cầu của người dùng thay đổi và tiến hóa Với thiết kế logic, tập trung vào các yêu cầu thông tin và lưu các chi tiết thực thi cho sau này
2.5.2 Tạo một thiết kế logic
Một thiết kế logic là trừu tượng và dựa trên các khái niệm Ta không đề cập tới những chi tiết cài đặt vật lý Ta chỉ đề cập tới việc xác định những loại thông tin mà ta cần Một kỹ thuật ta cần sử dụng làm mô hình cho các yêu cầu thông tin logic của tổ chức là mô hình thực thể quan hệ Mô hình thực thể quan hệ liên quan đến việc xác định những thứ quan trọng (thực thể), các tính chất của những thuộc tính, và làm thế nào chúng liên hệ được với nhau (các mối quan hệ)
Quá trình thiết kế logic liên quan đến việc sắp xếp dữ liệu thành một chuỗi các mối quan hệ logic được gọi là các thực thể và thuộc tính Một thực thể đại diện cho một mảng của thông tin Trong cơ sở dữ liệu quan hệ, một thực thể thường ánh xạ tới một bảng Một thuộc tính là một thành phần của một thực thể giúp xác định tính duy nhất của thực thể Trong cơ sở dữ liệu quan hệ, một thuộc tính ánh xạ tới một cột
Để chắc chắn rằng dữ liệu ta có là nhất quán, ta cần phải sử dụng định danh duy nhất Một định danh duy nhất là một cái gì đó ta thêm vào bảng để ta có thể phân biệt các phần tử giống nhau khi nó xuất hiện ở những nơi khác nhau Trong một thiết kế vật lý, đó thường là một chính khoá
Trong khi sơ đồ thực thể quan hệ theo truyền thống được kết hợp với các mô hình chuẩn hóa mức cao như các ứng dụng OLTP, kỹ thuật vẫn còn hữu ích cho thiết
Trang 26kế kho dữ liệu ở dạng mô hình chiều Trong mô hình chiều, thay vì tìm cách phát hiện các đơn vị nguyên tử của thông tin (như các thực thể và các thuộc tính) và tất cả các mối quan hệ giữa chúng, ta xác định thông tin đó thuộc về một bảng sự kiện trung tâm
và thông tin đó thuộc các bảng chiều liên kết của chúng Ta xác định các chủ thể nghiệp vụ hoặc các trường dữ liệu, xác định các mối quan hệ giữa các chủ thể kinh doanh, và tên các thuộc tính cho mỗi chủ thể
Thiết kế logic kết quả nên là một tập thực thể và thuộc tính tương ứng với các bảng sự kiện và các bảng chiều và một mô hình của dữ liệu hoạt động từ nguồn thành thông tin hướng chủ thể trong lược đồ kho dữ liệu đích
Ta có thể tạo ra những thiết kế logic sử dụng bút và giấy, hoặc sử dụng một công
cụ thiết kế như Oracle Warehouse Builder, đặc biệt được thiết kế để hỗ trợ cho mô hình hóa quá trình ETL; hoặc Oracle Designe, một công cụ mô hình hóa mục đích chung
2.5.3 Lược đồ kho dữ liệu
Một lược đồ là một tập các đối tượng cơ sở dữ liệu, bao gồm cả các bảng, các khung nhìn, các chỉ số, và các synonym Ta có thể sắp xếp các đối tượng lược đồ trong
mô hình lược đồ thiết kế cho kho dữ liệu theo nhiều cách Hầu hết các kho dữ liệu sử dụng một mô hình chiều
Mô hình của dữ liệu nguồn và các yêu cầu của người dùng giúp ta thiết kế lược
đồ kho dữ liệu Việc cài đặt vật lý của mô hình kho dữ liệu logic có thể yêu cầu một số thay đổi để thích ứng với các tham số hệ thống như kích thước máy, số lượng người dùng, khả năng lưu trữ, kiểu mạng, và phần mềm
2.5.3.1 Lược đồ hình sao
Lược đồ hình sao là lược đồ kho dữ liệu đơn giản nhất Nó được gọi là lược đồ hình sao bởi vì sơ đồ giống như một ngôi sao, với các đỉnh tỏa ra từ một trung tâm Trung tâm của hình sao gồm có một hoặc nhiều bảng sự kiện và các đỉnh của hình sao
là các bảng chiều, như hình 2-9
Hình 2-9: Lược đồ hình sao
Trang 27Cách tự nhiên nhất làm mô hình một kho dữ liệu như một lược đồ hình sao, ở đó chỉ có một mức kết nối thiết lập mối quan hệ giữa bảng sự kiện và một bảng chiều bất
2.5.4 Các đối tượng kho dữ liệu
Các bảng sự kiện và các bảng chiều là hai loại đối tượng sử dụng phổ biến trong các lược đồ kho dữ liệu đa chiều
Các bảng sự kiện là các bảng lớn trong lược đồ kho dữ liệu mà lưu giữ các thông
số nghiệp vụ Các bảng sự kiện tiêu biểu gồm các sự kiện và các khóa ngoại liên kết tới các bảng chiều Các bảng sự kiện miêu tả dữ liệu có thể được phân tích và kiểm tra, thường là số và cộng tính; ví dụ như bán hàng, chi phí, và lợi nhuận
Các bảng chiều, cũng được hiểu như là bảng tìm kiếm hoặc bảng tham chiếu, chứa dữ liệu tương đối tĩnh trong kho dữ liệu Các bảng chiều lưu trữ thông tin mà thường bao gồm các truy vấn Các bảng chiều thường là nguyên bản và mô tả và ta có thể sử dụng chúng như dòng tiêu đề của tập kết quả; ví dụ khách hàng hoặc sản phẩm
2.5.5 Các bảng sự kiện
Một bảng sự kiện đặc trưng có hai loại cột: Những cột chứa các dữ kiện số (thường gọi là các số đo), và những cột là các khóa ngoài liên kết tới các bảng chiều Một bảng sự kiện bao gồm các dữ kiện mức chi tiết hoặc các dữ kiện mà đã được tổng hợp Các bảng sự kiện mà chứa các dữ kiện tổng hợp thường được gọi là các bảng tổng Một bảng sự kiện luôn chứa các dữ kiện với mức tổng hợp giống nhau Mặc dù hầu hết các dữ kiện là có tính cộng được, chúng cũng có thể là có tính nửa cộng hoặc
là không có tính cộng Các dữ kiện cộng tính có thể được tổng hợp bởi phép cộng số học đơn giản Một ví dụ phổ biến là bán hàng
Ta phải xác định một bảng sự kiện cho mỗi lược đồ hình sao Xuất phát từ một quan điểm mô hình hóa, khóa chính của bảng sự kiện thường là một khóa phức được tạo thành từ tất cả các khóa ngoại của nó
2.5.6 Các bảng chiều
Trang 28Một chiều là một cấu trúc, thường bao gồm một hoặc nhiều phân cấp, để phân loại dữ liệu Các thuộc tính chiều giúp mô tả giá trị chiều
Chúng thường là các mô tả, các giá trị nguyên bản Một số chiều nhất định, kết hợp với các sự kiện, cho phép ta trả lời các câu hỏi kinh doanh Các chiều được sử
dụng phổ biến là khách hàng, sản phẩm và thời gian (customers, products, và time)
Dữ liệu chiều thường được thu thập tại mức chi tiết thấp nhất và sau đó được tổng hợp thành các tổng mức cao hơn để có ích hơn cho phân tích Các các phép gộp trong một bảng chiều được gọi là phân cấp
1 Phân cấp : Phân cấp là cấu trúc logic sử dụng các mức thứ tự theo nghĩa dữ liệu được tổ chức Một phân cấp có thể được sử dụng để xác định việc kết hợp dữ liệu Ví dụ, một chiều thời gian, một phân cấp phải kết hợp dữ liệu từ mức tháng tới mức quý tới mức năm Một phân cấp cũng có thể được sử dụng để xác định một hướng phân tích và để thiết lập một cấu trúc nhóm liên quan
Trong một phân cấp, mỗi cấp được kết nối logic tới các mức trên và mức dưới
nó Các giá trị dữ liệu tại các mức thấp hơn kết hợp thành giá trị dữ liệu mức cao hơn Một chiều có thể được tạo thành từ nhiều hơn một phân cấp Ví dụ, chiều sản phẩm, có thể có hai phân cấp: một cho các loại sản phẩm và một cho các nhà cung cấp sản phẩm
Phân cấp chiều cũng nhóm các mức từ tổng hợp đến chi tiết Các công cụ truy vấn sử dụng phân cấp cho phép ta đi sâu vào dữ liệu để xem mức độ khác nhau Đây là một trong những lợi ích chính của một kho dữ liệu Khi thiết kế phân cấp, ta phải xem xét các mối quan hệ trong các cấu trúc nghiệp vụ Ví dụ, một tổ chức bán hàng phân nhiều mức
Sự phân cấp áp đặt một cấu trúc nhóm trên các giá trị chiều Với một giá trị mức
cụ thể, một giá trị tại mức cao hơn kế tiếp là cha của nó, và các giá trị tại mức thấp hơn
kế tiếp là con của nó Các mối quan hệ thuộc nhóm cho phép các nhà phân tích truy cập dữ liệu nhanh chóng
2 Mức: Một mức đại diện cho một vị trí trong một hệ thống phân cấp Ví dụ, một chiều thời gian có thể có một phân cấp mà miêu tả dữ liệu ở các mức tháng, quý, năm Các mức sắp thứ tự từ khái quát đến cụ thể, với mức gốc là mức cao nhất hay tổng quát nhất Các mức trong một chiều được tổ chức thành một hoặc nhiều phân cấp
3 Các mối quan hệ cấp bậc: Các mối quan hệ cấp bậc xác định từ trên xuống dưới thứ tự của các mức từ thông tin chung nhất đến thông tin chi tiết Xác định mối quan hệ cha-con giữa các mức trong một hệ thống phân cấp
Trang 29Sự phân cấp cũng là các thành phần thiết yếu trong việc cho phép viết lại phức tạp hơn Ví dụ, cơ sở dữ liệu có thể tổng hợp một doanh thu bán hàng hiện có trên cơ
sở hàng quý cho tới hàng năm khi chiều phụ thuộc giữa quý và năm được biết
Một ví dụ cho một hệ phân cấp chiều điển hình
Hình 2-10: Các mức đặc trưng trong một hệ thống phân cấp chiều
2.5.7 Định danh duy nhất
Định danh duy nhất được chỉ định cho một bản ghi nhất định trong một bảng chiều Các định danh duy nhất thường được sử dụng để tránh các vấn đề tiềm ẩn trong việc thay đổi các định danh duy nhất Các định danh duy nhất được thống nhất sử dụng
kí tự “#” ở đầu; chẳng hạn #customer_id
2.5.8 Mối quan hệ
Mối quan hệ đảm bảo tính toàn vẹn trong kinh doanh Một ví dụ, nếu một doanh nghiệp bán một cái gì đó, rõ ràng ở đây có một khách hàng và một sản phẩm Thiết kế một mối quan hệ giữa thông tin bán hàng trong bảng sự kiện và các bảng chiều sản phẩm và khách hàng làm cho các quy tắc nghiệp vụ có hiệu lực trong cơ sở dữ liệu
2.5.9 Minh họa đối tượng kho dữ liệu và mối quan hệ
Hình 2-11 minh họa một ví dụ phổ biến của một bảng sự kiện bán hàng và các
bảng chiều customers, products, promotions, times, và channels
Hình 2-11: Các đối tượng kho dữ liệu điển hình
Trang 302.6 Thiết kế vật lý
2.6.1 Chuyển thiết kế logic thành thiết kế vật lý
Thiết kế logic là cái ta vẽ với bút và giấy hoặc thiết kế với Oracle Warehouse Builder hoặc Oracle Designer trước khi xây dựng kho dữ liệu
Thiết kế vật lý là việc tạo cơ sở dữ liệu với các lệnh SQL Trong quá trình thiết
kế vật lý, ta chuyển đổi dữ liệu thu thập được trong pha thiết kế logic vào một mô tả của cấu trúc cơ sở dữ liệu vật lý Các quyết định thiết kế vật lý được thúc đẩy bởi hiệu suất truy vấn và các khía cạnh bảo trì cơ sở dữ liệu Ví dụ, việc lựa chọn một chiến lược phân vùng mà đáp ứng các yêu cầu truy vấn phổ biến cho phép cơ sở dữ liệu Oracle tận dụng lợi thế của việc lược bớt phân vùng, một cách thu hẹp một tìm kiếm trước khi thực thi nó
2.6.2 Thiết kế vật lý
Trong pha thiết kế vật lý, ta xác định một mô hình cho kho dữ liệu gồm các thực thể, các thuộc tính, và các mối quan hệ Các thực thể được liên kết với nhau sử dụng các mối quan hệ Các thuộc tính được sử dụng để mô tả các thực thể Định danh duy nhất phân biệt giữa một trường hợp của một thực thể với các trường hợp khác
Hình 2-12 minh họa một phương pháp đồ họa của việc phân biệt giữa thiết kế logic và thiết kế vật lý
Hình 2-12: Thiết kế logic so với thiết kế vật lý
Trong quá trình thiết kế vật lý, ta chuyển các lược đồ dự kiến thành các cấu trúc
dữ liệu thực tế Lúc này, ta phải ánh xạ:
• Các thực thể tới các bảng
• Các mối quan hệ tới các ràng buộc khóa chính
Trang 31Một số cấu trúc này yêu cầu không gian đĩa Một số khác chỉ tồn tại trong từ điển
dữ liệu Ngoài ra, các cấu trúc sau có thể được tạo ra cho cải thiện hiệu suất
• Chỉ mục và chỉ mục phân vùng
• Khung nhìn
2.6.4 Không gian lưu trữ dữ liệu
Một không gian lưu trữ dữ liệu bao gồm một hoặc nhiều tệp dữ liệu, đó là những cấu trúc vật lý trong hệ điều hành ta đang sử dụng Một tệp dữ liệu liên kết với chỉ một không gian lưu trữ dữ liệu Từ một quan điểm thiết kế, các không gian lưu trữ dữ liệu
là nơi chứa các cấu trúc thiết kế vật lý
Các không gian lưu trữ dữ liệu cần phải được tách ra bởi sự khác biệt Ví dụ, các bảng nên được tách ra khỏi các chỉ mục của chúng và các bảng nhỏ nên được tách ra
từ các bảng lớn nếu có thế các không gian lưu trữ dữ liệu cũng nên đại diện cho các đơn vị nghiệp vụ Bởi vì một không gian lưu trữ cho phép sao lưu và khôi phục hoặc
di chuyển, thiết kế nghiệp vụ logic ảnh hưởng đến độ khả dụng và các hoạt động bảo trì
Bây giờ ta có thể sử dụng các tệp dữ liệu cực lớn, một cải tiến đáng kể trong các
cơ sở dữ liệu rất lớn
2.6.5 Bảng và phân hoạch bảng
Bảng là đơn vị cơ bản của lưu trữ dữ liệu Chúng là nơi chứa lượng dữ liệu thô
dự kiến trong kho dữ liệu
Sử dụng các bảng phân hoạch thay cho những bảng không phân hoạch giải quyết vấn đề chủ chốt của việc hỗ trợ khối lượng dữ liệu rất lớn bằng cách cho phép phân
Trang 32tích chúng thành những mảnh nhỏ hơn và dễ quản lý hơn Tiêu chuẩn thiết kế chính cho phân vùng là dễ quản lý, tuy nhiên ta cũng sẽ thấy được lợi ích hiệu năng trong hầu hết các trường hợp bởi sự lược bớt các phân hoạch hay việc xử lý song song thông minh
Phân hoạch các bảng lớn cải thiện hiệu suất vì mỗi phân vùng dễ quản lý hơn thông thường, ta phân vùng dựa trên các ngày giao dịch trong kho dữ liệu Ví dụ, mỗi tháng, một giá trị dữ liệu của tháng có thể được gán phân hoạch riêng cho nó
2.6.6 Nén bảng
Ta có thể tiết kiệm không gian đĩa bằng cách nén các bảng được tổ chức theo khối Một loại điển hình của bảng dữ liệu được tổ chức theo khối nên xem xét cho việc nén bảng là các bảng phân hoạch
Để giảm thiểu việc sử dụng đĩa và sử dụng bộ nhớ trong, như bộ nhớ đệm, ta có thể lưu trữ các bảng và các bảng được phân hoạch ở dạng nén bên ngoài cơ sở dữ liệu Điều này thường dẫn tới một thiết kế quy mô tốt hơn cho các hoạt động chỉ đọc Nén bảng cũng có thể tăng tốc việc thực thi truy vấn Tuy nhiên, điều quan tâm là cái giá trong chi phí hoạt động bộ xử lý
Nén bảng nên được sử dụng với dữ liệu dư thừa cao, như bảng với nhiều khóa ngoại Ta nên tránh nén bảng với nhiều cập nhật hay hoạt động ngôn ngữ thao tác dữ liệu (DML) khác
2.6.7 Khung nhìn
Một khung nhìn là một thể hiện phù hợp của dữ liệu chứa trong một hoặc nhiều bảng hoặc các khung nhìn khác Một khung nhìn đưa ra kết quả của một truy vấn và xem nó như một bảng Các khung nhìn không yêu cầu không gian trong cơ sở dữ liệu
2.6.8 Ràng buộc toàn vẹn
Ràng buộc toàn vẹn ngăn cản việc có các thông tin không hợp lệ trong bảng Ràng buộc toàn vẹn trong kho dữ liệu khác với ràng buộc trong môi trường OLTP Trong môi trường OLTP, chúng chủ yếu ngăn chặn việc chèn dữ liệu không hợp lệ vào một bản ghi, mà đó không phải là một vấn đề lớn trong môi trường kho dữ liệu vì độ chính xác đã được bảo toàn Trong môi trường kho dữ liệu, ràng buộc chỉ sử dụng cho viết lại truy vấn Ràng buộc NOT NULL đặc biệt phổ biến trong kho dữ liệu Như một
số trường hợp cụ thể, ràng buộc cần không gian trong cơ sở dữ liệu
2.6.9 Chỉ mục và chỉ mục phân cụm
Chỉ mục là cấu trúc tùy ý kết hợp với các bảng hoặc các cluster Ngoài chỉ mục B-tree cổ điển, chỉ mục bitmap cũng rất phổ biên trong môi trường kho dữ liệu Chỉ
Trang 33mục bitmap là cấu trúc chỉ mục tối ưu cho các hoạt động tập các dữ liệu được thiết lập định hướng Thêm nữa, chúng cần thiết cho một số phương pháp truy cập dữ liệu tối
ưu như các phép biến đổi hình sao
Chỉ mục như bảng bởi vì ta có thể phân vùng chúng, mặc dù chiến lược phân vùng không phụ thuộc vào cấu trúc bảng Phân vùng các chỉ mục làm nó dễ dàng hơn trong quản lý kho dữ liệu trong quá trình làm tươi và cải thiện hiệu năng truy vấn
2.6.11 Chiều
Chiều là một đối tượng mà xác định các mối quan hệ thứ bậc giữa các cột hoặc các nhóm cột Một quan hệ phân cấp là một phụ thuộc hàm từ một mức của một phân cấp tới một mức của phân cấp kế tiếp Một chiều là một miền của các mối quan hệ
logic và không yêu cầu không gian trong cơ sở dữ liệu Một chiều điển hình là city,
state (hoặc province), region, và country
Trang 34Sau khi trích xuất, dữ liệu được chuyển tới hệ thống đích hoặc một hệ thống trung gian nào đó để xử lý tiếp Việc biến đổi dữ liệu cũng có thể được thực hiện ở bước này Một công cụ hỗ trợ quá trình ETL là OWB Tuy nhiên, với những nghiệp vụ phức tạp ta cần viết các thủ tục, hàm riêng để thực hiện tiến trình ETL trong kho dữ liệu
Hình 2-14: Công cụ Oracle Warehouse Builder
Hình 2-15: Công cụ Extract, Tranform, Loading của Oracle Warehouse Builder
Trang 352.7.2 Trích xuất dữ liệu
Trích xuất dữ liệu là thao tác lấy dữ liệu từ nguồn để sử dụng cho DWH Đây là bước đầu tiên của quá trình ETL Sau khi trích xuất, dữ liệu có thể được biến đổi và được tải vào trong DWH
Nguồn dữ liệu cho việc trích xuất có thể rất phức tạp hoặc không được lập tài liệu đầy đủ, do vậy, quá trình xác định dữ liệu nào được trích xuất là khó khăn Thiết
kế tiến trình trích xuất dữ liệu chúng ta quan tâm tới hai vấn đề sau:
1 Thứ nhất: Lựa chọn phương thức trích xuất Điều này gây ảnh hưởng tới nguồn dữ liệu, tiến trình truyền và thời gian làm tươi DWH
2 Thứ hai: Cung cấp dữ liệu đã được trích xuất như thế nào để sử dụng trong tương lai Điều này ảnh hưởng tới phương thức truyền, cũng như nhu cầu làm sạch và biến đổi dữ liệu
Việc đánh giá lựa chọn phương pháp trích xuất dữ liệu phụ thuộc vào nguồn dữ liệu và nghiệp vụ cụ thể Có những phương pháp logic và vật lý giúp cụ thể hơn việc trích xuất dữ liệu từ nguồn
1 Phương pháp logic:
• Trích xuất đầy đủ: Lấy ra tất cả dữ liệu đang có tại nguồn Ví dụ như thao tác lấy tất cả dữ liệu ra từ một bảng Khi trích xuất đầy đủ, sẽ không cần thao tác lần vết theo sự thay đổi kể từ lần trích xuất thành công cuối cùng Thao tác này được thực hiện với trích xuất tăng
• Trích xuất tăng: Là trích xuất dữ liệu đã có sự thay đổi kể từ một thời điểm cụ thể nào đó trong quá khứ được lưu lại, như là thời điểm trích xuất dữ liệu gần nhất, hay là ngày đặt hàng cuối cùng của một kỳ tài chính
Để nhận biết được những thay đổi này cần có một cơ chế để đánh dấu dữ liệu đã có
sự thay đổi sau thời điểm đó (thời điểm trích xuất dữ liệu trước đó)
Nhiều DWH không sử dụng phương pháp bắt những dữ liệu đã có sự thay đổi, thay vào đó là kỹ thuật so sánh toàn bộ các bảng được trích xuất với bảng đã được trích xuất trước đó từ nguồn để nhận dạng dữ liệu có sự thay đổi Tuy nhiên, với bảng lớn thì phép toán này sẽ rất tốn tài nguyên hệ thống Oracle hỗ trợ cơ chế Oracle's Change Data Capture (CDC) giúp ghi nhận và bảo trì những thay đổi của dữ liệu
2 Phương pháp vật lý:
• Trích xuất trực tuyến: Dữ liệu được trích xuất trực tiếp từ nguồn Tiến trình trích xuất có thể kết nối trực tiếp tới nguồn để lấy dữ liệu hoặc qua một hệ
Trang 36thông trung gian nào đó đã lưu sẵn dữ liệu theo cách tổ chức đã được cấu hình từ trước
• Trích xuất ngoại tuyến: Dữ liệu được lấy từ nguồn lưu trữ dạng ngoại tuyến như các tệp tin phẳng hay các tệp tin kết xuất, các không gian lưu trữ dữ liệu
có thể trao đổi
2.7.3 Trao đổi dữ liệu
Vận chuyển là thao tác chuyển dữ liệu từ một hệ thống sang hệ thống khác Có thể là thao tác chuyển dữ liệu từ hệ thống nguồn tới cơ sở dữ liệu trung gian hoặc cơ
sở dữ liệu DWH, từ cơ sở dữ liệu trung gian tới cơ sở dữ liệu DWH, từ cơ sở dữ liệu DWH tới vùng lưu trữ siêu dữ liệu
Các cơ chế vận chuyển dữ liệu trong DWH:
1 Vận chuyển sử dụng các tập tin dữ liệu: Dữ liệu nguồn có thể được kết xuất ra dạng tệp tin dữ liệu, được truyền tới máy đích thông qua giao thức FTP, sau đó các tập tin dữ liệu này có thể được đưa vào DWH Đây là cơ chế đơn giản và hiệu quả để thực hiện việc vận chuyển dữ liệu ngoại tuyên ngay cả khi nguồn
và DWH không cùng hệ điều hành hoặc không cùng database
2 Vận chuyển thông qua các thao tác phân tán: Thông qua các truy vấn phân tán,
cơ chế này thực hiện chuyển dữ liệu trực tiếp tới hệ thống đích, do vậy nó hỗ trợ đồng thời cả trích xuất và vận chuyển dữ liệu Kết quả vận chuyển dữ liệu được biết ngay sau khi thực hiện các truy vấn hoặc giao dịch phân tán
3 Vận chuyển sử dụng các không gian lưu trữ dự liệu có thể trao đổi: Cơ chế này phù hợp khi vận chuyển lượng lớn dữ liệu Các không gian lưu trữ dự liệu này
có thể trao đổi hỗ trợ vận chuyển đồng thời cả dữ liệu và siêu dữ liệu Các tệp tin dữ liệu bao gồm hầu hết các đối tượng trong CSDL đều được vận chuyển từ CSDL này tới CSDL khác Hạn chế của cơ chế này là chỉ chạy trên cùng hệ điều hành, chỉ có từ phiên bản Oracle 8i trở lên, phải cùng bộ định dạng kí tự Ứng dụng các không gian lưu trữ dữ liệu có thể trao đổi trong DWH là khi vận chuyển dữ liệu từ nguồn dữ liệu trung gian sang DWH hoặc từ DWH sang vùng lưu trữ siêu dữ liệu Các không gian lưu trữ dữ liệu có thể trao đổi phải được thiết lập dạng READ ONLY để có thể vận chuyển được
2.7.4 Tải dữ liệu
Biến đổi dữ liệu là một công việc phức tạp đòi hỏi người làm phải có kỹ năng cao
để đáp ứng các yêu cầu nghiệp vụ đề ra, ở đây, kinh nghiệm về PLSQL và am hiểu về nghiệp vụ đóng vai trò quan trọng Ngoài các thao tác biến đổi dữ liệu bên trong cơ sở
dữ liệu, nó có thể được thực hiện bên ngoài cơ sở dữ liệu, như là các tệp tin phẳng
Trang 371 Cơ chế tải dữ liệu: Có thể sử dụng SQL*Loader, bảng ngoài để tải dữ liệu từ các tệp tin dữ liệu hoặc bảng ngoài vào trong cơ sở dữ liệu DWH
2 Cơ chế biến đổi dữ liệu: Khi dữ liệu đã được chuyển vào database, có thể biến đổi dữ liệu sử dụng SQL hoặc PL/SQL Khi sử dụng SQL, có thể sử dụng các câu lệnh INSERT, UPDATE, MERGE để biến đổi dữ liệu Sử dụng ngôn ngữ thủ tục PL/SQL để thực hiện các thao tác biến đổi dữ liệu phức tạp
2 Dữ liệu đang được tải vào DWH tại thời điểm cuối của tuần, của tháng chính là
dữ liệu giao dịch của tuần hoặc tháng đó
3 Hiệu năng kho dữ liệu
2.9 Thực thi song song
Thực thi song song giúp cải thiện đáng kể thời gian trả lời cho các thao tác dữ liệu chuyên sâu trong các cơ sở dữ liệu lớn như cơ sở dữ liệu phục vụ cho hệ thống hỗ trợ quyết định, kho dữ liệu
1 Thực thi song song cải thiện thao tác xử lý cho
• Các truy vấn yêu cầu quét các bảng lớn, hoặc phép liên kết, hoặc quét chỉ mục đã được phân vùng
• Tạo chỉ số lớn
• Tạo bảng lớn (bao gồm cả Khung nhìn vật lí)
• Các thao tác Insert, Update, Merge và Delete lượng lớn dữ liệu
• Thực hiện truy nhập các đối tượng lớn (LOBs)
• Thực thi song song hỗ trợ các hệ thống có các đặc tính sau:
• Đa xử lý đối xứng (Symetric MultiProcessor-SMPs), cluster hoặc hệ thống song song khổng lồ (Massively Parallel Systems – MPPs)
• Đủ băng thông để thực hiện vào ra
• Các hệ thống có tỉ lệ sử dụng CPU thấp (dưới 30%)
• Các hệ thống có đủ bộ nhớ để hỗ trợ các xử lý sử dụng nhiều bộ nhớ như thao tác băm, sắp xếp, bộ nhớ đệm vào ra
Trang 38• Thực thi song song được dùng nhiều trong hệ thống hỗ trợ quyết định DSS và DWH Các hệ thống OLTP cài đặt thực thi song song khi thực hiện các thao tác xử lý theo lô hoặc các thao tác tạo chỉ mục Các câu lệnh SELECT hoặc DML ở mức độ đơn giản trong hệ thống OLTP không nên cài đặt thực thi song song
2 Không cài đặt thực thi song song khi
• Các môi trường có nhiều truy vấn và giao tác được thực hiện trong thời gian rất ngắn (vài giây hoặc ít hơn) như hệ thống xử lý giao dịch trực tuyến OLTP
• Các môi trường trong đó các tài nguyên như bộ xử lý trung tâm, bộ nhớ, vào ra (I/O) đã được sử dụng gần hết
3 Các thao tác có thể cài đặt thực thi song song
• Các phương thức truy nhập: Quét bảng, quét chỉ mục
• Các phương thức liên kết: sort, merge, loop, hash
4 Cơ chế làm việc song song : Thực thi song song chia việc thực hiện xử lý một câu lệnh SQL thành nhiều đơn vị công việc nhỏ hơn, từng đơn vị công việc này
sẽ được xử lý bởi một tiến trình riêng rẽ Các bảng, phân hoạch, chỉ mục cũng được chia thành các phần gọi là granules Khi xử lý song song, Oracle có các điều phối truy vấn để thực hiện các thao tác
• Phân tích truy vấn và phân tích mức độ song song
• Cấp phát một hoặc hai phục vụ các luồng hoặc tiến trình
• Điều khiển các truy vấn và gửi các chỉ lệnh phục vụ tới các câu truy vấn thực thi song song (Parallel Query - PQ)
• Xác định bảng hoặc chỉ số nào cần được quét bởi PQ slaves
• Tạo ra các đầu ra cuối cùng cho người dùng
5 Mức song song: Oracle có bộ điều phối thực thi song song Bộ điều phối này đăng ký hai hoặc nhiều máy chủ thực thi song song của Oracle Instance để xử
lý một câu lệnh SQL Số máy chủ thực thi song song được liên kết với một thao tác đơn thể gọi là mức song song Một thao tác đơn ở đây là một phần của một câu lệnh SQL như là mệnh đề ORDER BY, như là việc quét toàn bộ một bảng
để thực hiện một phép LIÊN KẾT trên cột không được đánh chỉ mục Mức độ song song chỉ áp dụng cho cơ chế nội hoạt động song song Nếu cơ chế này có thể thực hiện thì tổng số máy chủ thực thi song song một câu lệnh có thể gấp hai lần mức song song Không có nhiều hơn hai bộ máy chủ thực thi song song
Trang 39có thể chạy đồng thời Mỗi bộ thực thi song song có thể xử lý nhiều thao tác Chỉ kích hoạt hai bộ máy chủ thực thi song song khi cần đảm bảo tối ưu nội hoạt động song song Thực thi song song được thiết kế để sử dụng hiệu quả CPU và ổ đĩa sẵn có để có được câu trả lời nhanh các truy vấn Như vậy, khi nhiều người dùng cùng sử dụng cơ chế song song sẽ gây ra tình trạng quá tải sử dụng tài nguyên Oracle cung cấp một số phương pháp quản lý sử dụng hiệu quả tài nguyên trong môi trường có cài đặt thực thi song song, bao gồm:
• Thuật toán tương thích đa người dùng được cài đặt mặc định cho phép giảm mức song song khi tải của hệ thống tăng lên
• Sử dụng cơ chế hồ sơ người dùng để giới hạn tài nguyên được sử dụng
• Sử dụng chức năng Database Resource Manager để quản lý cấp phát tài nguyên cho nhóm người dùng
6 Bộ đệm Máy chủ thực thi song song: Khi Instance khởi động, Oracle tạo một vùng đệm các máy chủ thực thi song song để sẵn sàng phục vụ các thao tác song song Tham số PARALLEL_MIN_SERVERS quy định số máy chủ thực thi song song khi Oracle Database khởi động một Instance Khi thực thi một thao tác song song, bộ điều phối thực thi song song có được máy chủ thực thi song song từ Vùng đệm và gán nó cho thao tác song song Nếu thấy cần thiết, Oracle có thể tạo ra thêm máy chủ thực thi song song để thực hiện thao tác song song đó Những máy chủ thực thi song song này duy trì việc thực thi các thao tác song song cho đến khi lệnh được thực hiện hoàn tất Sau khi thực hiện xong công việc, các máy chủ thực thi song song này sẽ được bộ điều phối xử lý song song trả về cho Vùng đệm Bộ điều phối song song và các máy chủ thực thi song song do bộ điều phối đó quản lý chỉ thực hiện một lệnh tại một thời điểm
Do vậy, không thể có chuyện các máy chủ thực thi song song của cùng một bộ điều phối quản lý lại vừa thực hiện một câu lệnh truy vấn, lại vừa thực hiện một câu lệnh thao tác dữ liệu khác (DML) tại một thời điểm Khi người dùng phát sinh một câu lệnh SQL, bộ tối ưu của database sẽ quyết định có sử dụng cơ chế song song để thao tác câu lệnh SQL đó không và mức song song cho mỗi thao tác là thế nào Khi bộ tối ưu chọn cơ chế song song để xử lý câu lệnh SQL, các
sự kiện theo trình tự sau được thực hiện:
• Tiến trình tiền cảnh của câu lệnh SQL trở thành bộ điều phối song song
• Bộ điều phối song song có được số máy chủ xử lý song song phụ thuộc vào mức song song từ vùng đệm máy chủ, hoặc tạo máy chủ xử lý song song mới nếu thấy cần
Trang 40• Oracle thực thi câu lệnh như một chuỗi các thao tác, mỗi thao tác được thực hiện song song nếu có thể
• Khi việc xử lý câu lệnh kết thúc, bộ điều phối trả kết quả về cho tiến trình người dùng phát sinh câu lệnh và trả máy chủ thực thi song song về cho vùng đệm máy chủ
7 Cách giao tiếp của máy chủ xử lý song song: Để thực thi một truy vấn trong cơ chế song song, Oracle tạo hai máy chủ là Producer Queue và Consumer Producer Queue Server lấy các bản ghi từ bảng và Consumer Server thực hiện các thao tác như liên kết, sắp xếp, DML và DDL trên các bản ghi này Mỗi máy chủ trong tiến trình thực thi Producer thiết lập một kết nối tới mỗi máy chủ tương ứng trong tập Consumer Như vậy số kết nối ảo giữa các máy chủ thực thi song song sẽ tăng theo bình phương của mức song song Từng kết nối sẽ sử dụng một tới bốn bộ nhớ đệm Trong môi trường chỉ có một Instance thì số bộ nhớ đệm thường là ba Trong môi trường RAC thì số bộ nhớ đệm thường là bốn cho mỗi kênh kết nối
Hình 2-16: Minh họa các tin điện bộ nhớ đệm và kết nối giữa các máy chủ thực thi song song
Nếu một kết nối được thực hiện giữa hai xử lý trên cùng một thể hiện thì các máy chủ xử lý song song giao tiếp bằng việc truyền tới truyền lui các vùng đệm Khi kết nối được thực hiện giữa hai thể hiện khác nhau thì tin điện được truyền sử dụng các giao thức mạng tốc độ cao
8 Làm song song hóa câu lệnh SQL: Sau khi bộ tối ưu xác định kế hoạch thực hiện câu lệnh SQL, bộ điều phối song song sẽ xác định phương thức thực hiện song song cho từng thao tác trong kế hoạch Ví dụ: khi quét toàn bộ bảng, phương thức thực hiện song song sẽ chọn phương pháp quét từng vùng khối