ĐÔI NÉT VỀ CÔNG CỤ THỰC HIỆN

Một phần của tài liệu Xử lý phân tích trực tuyến OLAP và ứng dụng trong khai thác kho dữ liệu (Trang 53)

3.3.1 Hệ quản trị CSDL SQL Server

Microsoft SQL Server là một hệ quản trị CSDL của Microsoft. Đây là một trong các hệ quản trị CSDL phục vụ cho các hệ thống nhỏ lúc ban đầu nhưng ngày nay không ngừng được đổi mới, hoàn thiện và ngày càng đáp ứng được những yêu cầu khắt khe về tính tiện dụng, khả năng quản lý CSDL,v.v..

Hệ quản trị CSDL SQL Server được đánh giá là một trong các hệ quản trị CSDL mạnh nhất hiện nay. Hệ hoạt động trên kiến trúc máy khách/ máy phục vụ (client/ server), cho phép chia sẻ một cách hợp lý giữa các máy khách và các máy chủ. Cụ thể là các máy chủ đòi hỏi dung lượng bộ nhớ và dung lượng đĩa lớn để thực hiện và quản trị CSDL, còn các máy khách chỉ cần đủ bộ nhớ để chạy chương trình ứng dụng hay các công cụ để có thể truy nhập vào CSDL trên máy chủ.

Trong quá trình phát triển hãng Microsoft đã có sự cải tiến và nâng cấp, đưa ra nhiều phiên bản SQL Server khác nhau và phiên bản mới nhất (SQL Server 2005) có một số tính chất sau:

- Lưu trữ dữ liệu trên máy chủ

- Đảm bảo các ràng buộc toàn vẹn dữ liệu trong môi trường đa người dùng bằng cơ chế khoá

- Quản lý người dùng thông qua mật khẩu

- Tối ưu hoá quá trình truy cập và tìm kiếm thông tin

- Có khả năng chạy song hành trên nhiều máy cùng một lúc nên có thể thay thế khi một máy bị hỏng.

- Có khả năng liên kết với các CSDL khác.

3.3.2 Bộ công cụ Microsoft SQL Server

Bộ công cụ SQL Server là phiên bản mới của Microsoft trợ giúp việc xây dựng và quản trị các hệ thông thông tin, kho dữ liệu. Dưới đây là một số công cụ cơ bản của Microsoft SQL Server sẽ được sử dụng để xây dựng kho dữ liệu hỗ trợ thông tin điều hành quản lý thương mại điện tử.

- Microsoft Enterprise Manager: dùng để xây dựng và quản trị kho dữ liệu

- Microsoft Analysis Services: dùng để tạo lập các vùng tác nghiệp phục vụ cho khai thác thông tin

- Microsoft Query English: tạo các câu truy vấn khai thác thông tin - Microsoft VB.Net: công cụ phát triển ứng dụng

Luận văn sẽ sử dụng ba công cụ đầu để xây dựng kho dữ liệu và các module khai thác thông tin, do vậy sẽ giới thiệu chi tiết về các công cụ này (trình bày ở chương sau).

3.3.3 Ngôn ngữ truy vấn đa chiều MDX 3.3.3.1 Khái quát chung 3.3.3.1 Khái quát chung

Ngôn ngữ MDX (MultiDimension Express) là dạng mở rộng của ngôn ngữ truy vấn SQL, áp dụng để khai thác kho dữ liệu OLAP với khối đa chiều nhằm hỗ trợ cho việc tổng hợp thông tin và ra quyết định.

- Cấu trúc chung: Giống cấu trúc của một câu truy vấn SQL trên CSDL thông thường, nhưng mở rộng hơn để truy vấn trên khối dữ liệu đa chiều. Câu truy vấn đa chiều (MDX) có dạng như sau:

SELECT [<mô tả về chiều thứ 1>] [,<mô tả về chiều thứ 2>,...] FROM [<mô tả về khối dữ liệu>] [ WHERE [<các điều kiện cắt lớp >] ]

- Trong MDX, phát biểu SELECT được dùng để mô tả một tập dữ liệu là một tập con của dữ liệu đa chiều.

- Một câu truy vấn MDX có chứa một mệnh đề SELECT, một mệnh đề FROM và một mệnh đề tuỳ chọn WHERE.

Ví dụ:

SELECT

{[Measures].[So SP], [Measures].[So Luong],[Measures].[Thanh Tien]} on columns,

{[DoTuoiKH].[All DoTuoiKH].[Thanh nien], [DoTuoiKH].[All DoTuoiKH].[Trung Nien] }on rows

FROM Ban_Hang

WHERE [THOIGIAN].[All THOIGIAN].[2003].[4].[10]

- Mệnh đề SELECT xác định các chiều của tập kết quả của truy vấn MDX, trong ví dụ là 2 chiều COLUMNS và ROWS

- Mệnh đề FROM xác định nguồn dữ liệu đa chiều (khối) nào được sử dụng để trích lọc dữ liệu vào tập kết quả của phát biểu SELECT. Trong ví dụ là từ khối dữ liệu Ban_Hang

- Mệnh đề WHERE nếu có, dùng để xác định chiều cắt của khối dữ liệu, nhằm giới hạn tập kết quả theo các chiều thành viên. Trong ví dụ, dữ liệu được cắt theo thành viên tháng 10, quý 4, năm 2003 của chiều thời gian.

- Câu truy vấn MDX phải chứa các thông tin sau: + Số lượng chiều (có thể mô tả tối đa 128 chiều)

+ Các thành viên của mỗi chiều cho từng trục của câu truy vấn + Tên của khối có chứa dữ liệu cho câu truy vấn MDX

+ Các thành viên từ chiều cắt, theo đó dữ liệu khối được cắt.

- Phát biểu SELECT của câu truy vấn MDX còn hỗ trợ các cú pháp tuỳ chọn khác, như là từ khóa WITH và việc sử dụng các hàm MDX để xây dựng các thành viên bằng việc tính toán để thêm vào một trục hoặc một chiều cắt.

3.3.3.2 So sánh sự khác nhau giữa ngôn ngữ SQL và ngôn ngữ MDX

- Cú pháp của câu truy vấn MDX tương tự như cú pháp SQL, tuy nhiên có một số khác biệt như sau:

+ Cú pháp MDX phân biệt các tập hợp bằng việc dùng dấu ngoặc nhọn {} bao quanh các bộ hay các thành viên.

+ Câu truy vấn MDX có thể chứa tới 128 chiều nhưng chỉ có 5 chiều đầu tiên là có aliase (tên phụ). Một trục có thể được tham chiếu bởi thứ tự của nó trong câu MDX hay bởi tên phụ của nó nếu có. Câu truy vấn MDX có thể được viết theo mẫu sau dùng thứ tự của mỗi trục. Lưu ý, trong phiên bản MDX Sample Application đang thử nghiệm, ta chỉ có thể truy vấn tối đa hai chiều.

SELECT

{[Measures].[SoSP],[Measures].[SoLuong],[Measures].[Thanh Tien]} on axis(0),

{TopCount([San Pham].[Loai Hang].members,5, [Measures].[So Luong])} on axis(1)

FROM Ban_Hang

WHERE ([ThoiGian].[All ThoiGian].[2003])

+ Trong câu truy vấn SQL, mệnh đề FROM có thể chỉ đến nhiều bảng dữ liệu. Tuy nhiên, mệnh đề FROM trong câu truy vấn MDX bị giới hạn bởi một khối duy nhất. Thông tin từ các khối có thể được tham chiếu theo từng giá trị bằng cách dùng hàm LookupCube

+ Mệnh đề WHERE được dùng để mô tả chiều cắt dữ liệu. Nếu một chiều không được đề cập trong mệnh đề WHERE, SQL Analysis Services vẫn xem nó như một chiều cắt, nhưng được lọc theo số thành viên mặc định của nó. Mệnh đề WHERE có thể thay đổi tiến trình lọc cho một chiều nào đó, giúp tinh chỉnh dữ liệu kết quả.

3.4 PHÂN TÍCH, THIẾT KẾ KHO DỮ LIỆU THƢƠNG MẠI ĐIỆN TỬ 3.4.1 Nhìn lại hệ thống thiết kế OLTP

Cần nhìn lại CSDL OLTP vì những lý do sau:

- Làm rõ sự khác nhau giữa việc thiết kế OLTP và OLAP nhằm tránh những lỗi gặp phải khi thiết kế CSDL

- Hiểu về hệ thống OLTP sẽ trợ giúp cho quá trình tách một CSDL OLTP thành một CSDL OLAP vì hầu hết CSDL OLAP được bắt nguồn từ CSDL OLTP

Như vậy, trước khi bắt đầu nghiên cứu thiết kế kho dữ kiệu, ta cần hiểu ba đặc trưng cơ bản và các kết quả liên quan của chúng:

- Lược đồ quan hệ thực thể - Chuẩn hóa các bảng CSDL - Kết quả thiết kế hệ thống OLTP

* Lược đồ quan hệ thực thể:

Đặc trưng chủ yếu của việc thiết kế hệ thống OLTP là sử dụng lược đồ quan hệ thực thể. Mô hình quan hệ thực thể cho phép những người thiết kế mô tả bề ngoài cấu trúc và ngữ cảnh của CSDL.

Hình 3.1 Sơ đồ quan hệ thực thể dịch vụ mua bán hàng hoá hữu hình.

* Chuẩn hóa các bảng CSDL :

Chuẩn hoá là một tập hợp tuần tự các bước thực hiện những quy tắc thiết kế CSDL để đưa các quan hệ về các dạng chuẩn nhằm:

- Loại bỏ sự trùng lặp thông tin

- Cung cấp những thay đổi hiệu quả tới cấu trúc bảng

- Thu gọn tối đa những thay đổi của bảng tới ứng dụng sử dụng

Hầu hết các quan hệ trong hệ thống OLTP đều đã được chuẩn hóa về dạng chuẩn 3NF.

* Kết quả thiết kế hệ thống OLTP:

Thiết kế OLTP tiếp cận tập trung vào giao dịch đáp ứng thời gian riêng lẻ và dữ liệu được cập nhật chính xác hơn là phân tích truy vấn. Trên cơ sở đó, thiết kế OLTP có cả những lợi thế và bất lợi:

- Ngăn ngừa những cập nhật bất thường

- Bảo đảm dữ liệu chắc chắn thông qua giao dịch

- Giảm thiểu số lượng truy cập CSDL cho việc thực hiện các khả năng xảy ra của nghiệp vụ.

- Điều khiển các giao dịch rời rạc

- Truy cập từng phần mà được chỉ rõ bởi vì tất cả các ứng dụng được lưu trong một vùng riêng lẻ.

Những bất lợi của việc thiết kế OLTP:

- Khó thiết kế cho phân tích báo cáo. Dữ liệu quan hệ thực thể được nhìn nhận cho những truy vấn từng dòng nhưng không cho nhiều ràng buộc, kết nối nhiều truy vấn.

- Thực hiện giảm các chỉ mục. Những chỉ mục mà đòi hỏi cải thiện việc phân tích báo cáo làm giảm việc thực hiện hệ thống OLTP.

3.4.1.1 Phân tích dịch vụ mua bán hàng hoá hữu hình và phi vật thể

Dịch vụ mua bán hàng hoá hữu hình được xây dựng để phục vụ các nhóm đối tượng: người bán hàng, người mua hàng, người quản lý (Trung tâm thông tin thương mại), cổng thanh toán (VASC payment).

Khách hàng, thông qua giao diện web, gửi các yêu cầu về các thông tin mua hàng đến hệ thống TMĐT đặt tại trung tâm thông tin thương mại. Sau khi hình thành đơn đặt hàng, hệ thống sẽ tự động nối với cổng thanh toán, gửi các thông tin về thanh toán tới cổng. Cũng tại đây, các ngân hàng tương ứng sẽ nhận các dữ liệu của mình và gửi kết quả trả lại sau khi đã xử lý.

Như vậy, dịch vụ mua bán hàng hoá hữu hình của hệ thống TMĐT được phân chia thành những phân hệ chủ yếu sau :

1. Phân hệ hàng hoá:

- Mỗi nhà cung cấp được trang bị một kho hàng riêng ảo và tự mình cập nhật, quản lý hàng của mình.

- Như vậy, chỉ nhà cung cấp mới có quyền cập nhật, sửa đổi các thông tin trong kho. Các thông tin có thể được cập nhật, sửa đổi là tên hàng, chủng

loại hàng, mô tả chi tiết hàng, hình ảnh của mặt hàng, nhà sản xuất, nhà cung ứng, đơn vị, đơn giá, số lượng hàng trong kho ...

2. Phân hệ nhà cung cấp:

- Quản lý các nhà cung cấp và các siêu thị, đối tuợng cung cấp hàng hoá cho hệ thống.

- Với mỗi nhà cung cấp, các thông tin cần quản lý bao gồm: tên nhà cung cấp, địa chỉ, các mặt hàng mà nhà cung cấp đó cung cấp.

- Cho phép mỗi nhà cung cấp sử dụng kho hàng riêng ảo của mình để tự quản lý hàng hoá của mình, cập nhật thông tin cho các hàng hoá nhanh chóng và chính xác.

3. Phân hệ tạo lập đơn hàng

- Với mỗi phiên giao dịch, hệ thống sẽ sinh ra một giỏ hàng cho khách và sẽ quản lý giỏ hàng này cho tới hết phiên giao dịch.

- Các thông tin giỏ hàng lưu trữ bao gồm: tên hàng, số lượng, đơn giá, thành tiền, tổng.

- Khi kết thúc việc lựa chọn hàng, hệ thống sẽ tiến hành quá trình tạo lập đơn hàng.

- Mỗi mặt hàng cụ thể, khi được mua tại một thời điểm cụ thể có thể có chương trình khuyến mại giảm giá. Phân hệ sẽ cập nhật thông tin đó vào đơn hàng trước khi tính tiền thanh toán cho khách hàng.

- Thực hiện việc bóc tách đơn hàng ra thành nhiều đơn hàng nhỏ, theo từng nhà cung cấp, để phục vụ việc chuyển tiền vào tài khoản của từng nhà cung cấp và giúp việc cung ứng hàng của từng nhà cung cấp được chính xác, rõ ràng.

4. Phân hệ khách hàng

- Là nơi lưu trữ tập trung các thông tin về khách hàng, tích hợp tất cả các thông tin về khách hàng từ các ứng dụng.

- Thông tin về khách hàng là đồng nhất trong toàn bộ hệ thống

- Để có thể thực hiện các giao dịch trọn vẹn, khách hàng phải đăng ký để trở thành thành viên của hệ thống.

- Như vậy, hệ thống sẽ có một cơ sở dữ liệu về các thông tin cơ bản của khách hàng và sẽ kiểm tra mỗi khi đăng nhập và lấy những thông tin cần thiết để tạo lập đơn hàng.

- Dễ dàng thiết lập, duy trì và cung cấp các báo cáo về tình trạng khách hàng cho ban quản lý.

5. Phân hệ thanh toán

Toàn bộ dữ liệu có liên quan đến thanh toán sẽ được lưu trong một cơ sở dữ liệu riêng, bao gồm hai bảng: bảng dữ liệu gửi đi và bảng dữ liệu nhận về.

Các dữ liệu trong bảng dữ liệu gửi đi bao gồm: tên chủ tài khoản trả, mã số tài khoản trả, ngân hàng trả, tên chủ tài khoản nhận, mã số tài khoản nhận, ngân hàng nhận, số tiền, mã số đơn hàng, thời gian thanh toán, ...

Các dữ liệu trong bảng dữ liệu nhận về bao gồm: mã số đơn hàng, thời gian thanh toán, tình trạng thanh toán (thành công hay không),....

3.4.1.2 Phân tích dịch vụ mua bán một số dịch vụ du lịch

Ngoài các loại hàng hoá hữu hình và phi vật thể trên, hệ thống còn được thiết kế để có thể mua bán một loại hình thương mại thứ ba là dịch vụ. Các dịch vụ được thực hiện trong hệ thống là các dịch vụ du lịch, bao gồm: dịch vụ đặt tour du lịch, dịch vụ đặt phòng khách sạn, dịch vụ đặt vé máy bay.

Hệ thống quản lý dịch vụ du lịch được chia thành các phân hệ sau:

1. Phân hệ tạo lập đơn hàng

Khách hàng có thể đặt các tour du lịch trong nước, ngoài nước, đặt phòng ở các khách sạn miền Bắc, miền Nam, miền Trung, đặt vé máy bay của một số hãng máy bay trong nước.

Các thông tin tìm được từ cơ sở dữ liệu sẽ được đưa ra theo mức độ ngày càng chi tiết, cụ thể hơn, giúp khách hàng lựa chọn chính xác, đúng nhu cầu.

Đơn hàng sẽ được tạo lập sau mỗi phiên giao dịch của khách hàng.

Mỗi đơn hàng sẽ lưu giữ các thông tin về khách hàng, về tour, về thời gian dự định thực hiện tour, số lượng người tham gia, và trên cơ sở đó là tổng số tiển cần phải thanh toán.

Đối với các đơn hàng đặt tour, ngay sau khi thực hiện lệnh đặt hàng, đơn hàng sẽ được sinh ra và gửi đến cổng thanh toán, tương tự như trường hợp mua hàng ở các siêu thị.

Đối với việc đặt phòng tại khách sạn, sau khi chấp nhận đặt hàng, một đơn hàng tương ứng được sinh ra, người quản lý sẽ liên hệ trực tiếp với khách sạn và chỉ khi nhận được sự chấp nhận chính thức của khách sạn, người quản lý mới cập nhật trạng thái để đơn hàng được gửi đến cổng thanh toán.

Tương tự, đối với các đơn hàng đặt vé máy bay, người quản lý cũng phải liên hệ với đại lý bán vé chính thức của hãng và chỉ khi có kết quả chấp nhận, mới cập nhật trạng thái của đơn hàng để gửi ra cổng thanh toán.

Với qui trình xử lý như vậy, hệ thống sẽ giải quyết được một số mâu thuẫn thường nảy sinh giữa bên mua và bên bán dịch vụ.

3. Phân hệ khách hàng

Khách hàng có thể tự đăng ký tham gia mua bán dịch vụ khi đã được hệ thống lớn xác nhận.

Khi đã sử dụng các chức năng của hệ thống để đặt hàng các thông tin về khách hàng sẽ được cập nhật vào các bảng dữ liệu riêng về từng dịch vụ.

Điều này cho phép quản lý khách hàng theo dịch vụ để có các chính sách hậu mãi kịp thời, thích hợp.

4. Phân hệ hàng hoá

Hàng hoá ở đây được hiểu là các dịch vụ. Người quản lý có thể truy nhập vào các trang web quản lý để cập nhật, sửa đổi thông tin về các tour, về khách sạn cũng như các chuyến bay.

3.4.2 Phân tích hệ thống kho dữ liệu thƣơng mại điện tử

Mục tiêu của giai đoạn này là phân tích những yêu cầu của bài toán để xác định các chiều thông tin, dữ liệu mà kho dữ liệu sẽ chứa đựng, những yêu

Một phần của tài liệu Xử lý phân tích trực tuyến OLAP và ứng dụng trong khai thác kho dữ liệu (Trang 53)