3.3 ĐÔI NÉT VỀ CÔNG CỤ THỰC HIỆN
3.3.3 NGÔN NGỮ TRUY VẤN ĐA CHIỀU MDX
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.
Một sơ đồ quan hệ thực thể của hệ thống OLTP:
(LUAN.VAN.THAC.SI).Xu.ly.phan.tich.truc.tuyen.OLAP.va.ung.dung.trong.khai.thac.kho.du.lieu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Xu.ly.phan.tich.truc.tuyen.OLAP.va.ung.dung.trong.khai.thac.kho.du.lieu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Xu.ly.phan.tich.truc.tuyen.OLAP.va.ung.dung.trong.khai.thac.kho.du.lieu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Xu.ly.phan.tich.truc.tuyen.OLAP.va.ung.dung.trong.khai.thac.kho.du.lieu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10
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:
Những lợi thế của việc thiết kế OLTP:
- 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
(LUAN.VAN.THAC.SI).Xu.ly.phan.tich.truc.tuyen.OLAP.va.ung.dung.trong.khai.thac.kho.du.lieu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Xu.ly.phan.tich.truc.tuyen.OLAP.va.ung.dung.trong.khai.thac.kho.du.lieu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Xu.ly.phan.tich.truc.tuyen.OLAP.va.ung.dung.trong.khai.thac.kho.du.lieu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Xu.ly.phan.tich.truc.tuyen.OLAP.va.ung.dung.trong.khai.thac.kho.du.lieu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10
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.
2. Phân hệ xử lý đơn hàng
(LUAN.VAN.THAC.SI).Xu.ly.phan.tich.truc.tuyen.OLAP.va.ung.dung.trong.khai.thac.kho.du.lieu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Xu.ly.phan.tich.truc.tuyen.OLAP.va.ung.dung.trong.khai.thac.kho.du.lieu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Xu.ly.phan.tich.truc.tuyen.OLAP.va.ung.dung.trong.khai.thac.kho.du.lieu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10(LUAN.VAN.THAC.SI).Xu.ly.phan.tich.truc.tuyen.OLAP.va.ung.dung.trong.khai.thac.kho.du.lieu.Luan.van.ThS.Cong.nghe.thong.tin.1.01.10
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.