MỞ ĐẦU Ngày nay thông tin rất cần thiết trong kinh doanh. Việc kinh doanh của công ty có thành công hay không phụ thuộc vào công ty này có được thông tin kịp thời hay không. Trong môi trường kinh doanh luôn biến động đòi hỏi thông tin phải được truy cập một cách nhanh chóng, chính xác ở bất cứ nơi nào. Khi đã có được các nguồn dữ liệu với khối lượng khổng lồ, phong phú và đa dạng về kiểu loại và được tổng hợp từ rất nhiều nguồn khác nhau, vấn đề nảy sinh là làm sao khai thác một cách có hiệu quả các nguồn dữ liệu đó đồng thời phải liên tục cập nhật và xử lý dữ liệu hiện đang sử dụng.
Dữ liệu có thường không nhất quán, dư thừa, khó khai thác và đặc biệt là không dùng được cho những ứng dụng hỗ trợ ra quyết định. Trong những năm gần đây, công nghệ kho dữ liệu ra đời đáp ứng được nhu cầu quản lý, đây là công nghệ đang phát triển rất mạnh và đã được ứng dụng rất nhiều trên thế giới hiện nay. Nó cho phép ta tập trung được các nguồn dữ liệu thô khác nhau, tổ chức lại và xây dựng trên đó những công cụ phân tích hữu hiệu giúp cho người sử dụng, những nhà quản lý, lãnh đạo có thể thu được những thông tin thực sự hữu ích từ những dữ liệu đã có, giúp họ đưa ra được những quyết định nhanh chóng, chính xác trong công tác quản lý. Xuất phát từ nhu cầu thực tiễn tại Tập đoàn xăng dầu Việt Nam (Petrolimex), với hệ thống phân phối nội địa thông qua 80 Công ty xăng dầu thành viên, chi nhánh, xí nghiệp, gần 1.800 cửa hàng và hệ thống đại lý với trên 6.000 điểm bán trên toàn quốc; hệ thống CHXD phân tán trên phạm vi địa lý rộng lớn nên việc quản lý thông tin của CHXD gặp nhiều khó khăn, thiếu chính xác và không kịp thời.
Do đó, việc xây dựng kho dữ liệu có ý nghĩa hết sức quan trọng. Kho dữ liệu sẽ thu thập dữ liệu từ các hệ thống nghiệp vụ, cung cấp các thông tin hữu ích về số lượng hàng tồn kho, sản lượng và doanh thu bán hàng, tình hình công nợ - tiền hàng… giúp cho các nhà quản lý có thể có những thông tin chính xác nhanh chóng, phục vụ cho công tác đánh giá kết quả kinh doanh, lập đơn hàng và điều độ hàng hóa, quản trị công nợ, kế hoạch hóa dòng tiền, hỗ trợ cho việc ra các quyết định kịp thời và có lợi nhất cho doanh nghiệp. Trên cơ sở đó, đề tài được xây dựng với các mục tiêu chính như sau: Nghiên cứu lý thuyết về Kho dữ liệu, phương pháp tổ chức cơ sở dữ liệu đa chiều, phân tích và khai thác dữ liệu để trợ giúp ra quyết định. Ứng dụng lý thuyết nghiên cứu trong việc tổ chức cơ sở dữ liệu cho bài toán Quản lý cửa hàng bán lẻ xăng dầu bằng công cụ của Microsoft SQL Server 2008.
Bố cục của luận văn: Toàn bộ luận văn được trình bày trong bốn chương. Trong đó chương đầu tiên trình bày các lý thuyết chung về kho dữ liệu và mô hình kho dữ liệu, phương pháp xây dựng và thiết kế CSDL cho kho dữ liệu. Chương hai trình bày về bộ công cụ sử dụng để xây dựng kho dữ liệu là SQL Server 2008. Chương tiếp theo, luận Luận văn tốt nghiệp cao học chuyên ngành Công nghệ phần mềm – Khóa 15 z -9- văn giới thiệu về hệ thống Quản lý cửa hàng bán lẻ xăng dầu đang được ứng dụng tại Tập đoàn xăng dầu Petrolimex.
Chương bốn, luận văn trình bày phương pháp thiết kế một kho dữ liệu dựa trên cơ sở dữ liệu nguồn của hệ thống Quản lý cửa hàng bán lẻ xăng dầu phục vụ cho việc khai thác báo cáo. Phần cuối cùng của luận văn là kết luận và hướng phát triển tiếp theo của đề tài. Luận văn tốt nghiệp cao học chuyên ngành Công nghệ phần mềm – Khóa 15 z - 10 - CHƢƠNG I: KHO DỮ LIỆU Hiện nay hầu hết các doanh nghiệp, tổ chức đều đang phải đương đầu với sự thay đổi của thị trường. Người ta thấy rằng để có thể đưa ra một quyết định đúng đắn, trước hết phải có khả năng truy nhập tới tất cả các loại thông tin nhanh chóng.
Đối với một tổ chức nào đó, để có thể có quyết định đúng đắn, cần nghiên cứu cả những dữ liệu quá khứ, phân tích nhằm định ra toàn bộ các xu hướng có thể. Trong bối cảnh công nghệ thông tin phát triển, dữ liệu được tập trung trong những cơ sở dữ liệu khổng lồ, nhu cầu truy cập vào tất cả các thông tin là cần thiết. Cách có hiệu quả nhất để trợ giúp nhu cầu truy nhập thông tin là tổ chức Kho dữ liệu (Data Warehouse). Các thành phần cấu thành kho dữ liệu cung cấp một khung cơ bản để trao đổi về kiến trúc, cấu trúc và các chiến lược của kho dữ liệu.1 Định nghĩa Kho dữ liệu “Kho dữ liệu (Data Warehouse) là tập hợp của các CSDL tích hợp, hướng chủ đề, được thiết kế để hỗ trợ cho chức năng trợ giúp quyết định mà mỗi đơn vị dữ liệu đều liên quan tới một khoảng thời gian cụ thể”.
Kho dữ liệu thường có dung lượng rất lớn, tới hàng trăm Gigabyte hay thậm chí hàng Terabyte dữ liệu được tổ chức, lưu trữ và phân tích phục vụ cho việc cung cấp các dịch vụ thông tin liên quan đến yêu cầu của một tổ chức nào đó. Kho dữ liệu phục vụ cho việc phân tích với kết quả mang tính thông tin cao. Các hệ thống thông tin thu thập, xử lý dữ liệu loại này còn gọi là Hệ xử lý phân tích trực tuyến (OLAP – Online Analytical Processing). Một kho lưu trữ dữ liệu thường được sử dụng như cơ sở cho một hệ thống hỗ trợ quyết định.
Nó được thiết kế để khắc phục những vấn đề vấp phải khi một tổ chức cố gắng thực hiện chiến lược phân tích có sử dụng cùng một cơ sở dữ liệu đã được sử dụng cho xử lý giao dịch trực tuyến.2 Các đặc trƣng của kho dữ liệu 1.1 Hƣớng chủ đề Hướng chủ đề có nghĩa là kho dữ liệu được tổ chức xung quanh các chủ đề chính như khách hàng, sản phẩm, sản xuất. Tập trung vào việc mô hình hóa và phân tích dữ liệu cho các nhà quản lý ra quyết định mà không tập trung vào các xử lý thông thường. Cung cấp cho người dùng một khung nhìn toàn vẹn, đơn giản và đầy đủ về các sự kiện quanh các chủ đề.2 Tính tích hợp Một kho dữ liệu là một khung nhìn thông tin ở mức toàn thể, thống nhất các khung nhìn khác nhau thành một khung nhìn của một chủ đề. Ví dụ, hệ thống xử lý giao dịch trực tuyến OLTP (Online Transaction Processing) truyền thống được xây dựng trên một vùng phục vụ việc kinh doanh.
Một hệ thống bán hàng và Marketing có Luận văn tốt nghiệp cao học chuyên ngành Công nghệ phần mềm – Khóa 15 z - 11 - thể có chung một dạng thông tin về khách hàng, nhưng các vấn đề về tài chính thì lại cần một khung nhìn khác. Một kho dữ liệu sẽ có một khung nhìn toàn thể về một khách hàng, khung nhìn đó bao gồm các phần dữ liệu khác nhau từ tài chính đến Marketing. Tính tích hợp thể hiện ở chỗ dữ liệu tập hợp trong kho dữ liệu được thu thập từ nhiều nguồn khác nhau và các nguồn có tổ chức khác nhau: Cơ sở dữ liệu, các file excel, các flat file hoặc các raw file. Khi đưa vào kho dữ liệu, các dữ liệu được làm sạch và tích hợp với nhau tạo thành một thể thống nhất nhằm đảm bảo tính nhất quán của dữ liệu.3 Tính bền vững Dữ liệu trong kho dữ liệu được chuyển đổi từ môi trường tác nghiệp và được lưu trữ trong một thời gian dài, khi dữ liệu được chuyển đổi vào đây thì các thao tác cập nhật và xóa dữ liệu thường không xảy ra.
Dữ liệu trong kho dữ liệu chỉ có hai thao tác: Chèn mới và đọc dữ liệu, có thể được kiểm tra và không được sửa đổi bởi người sử dụng.4 Dữ liệu gắn thời gian và có tính lịch sử Một kho chứa dữ liệu bao hàm một khối lượng lớn dữ liệu mang tính lịch sử. Dữ liệu được lưu trữ thành một loạt các Snapshort, mỗi Snapshort phản ánh những giá trị của dữ liệu tại một thời điểm nhất định thể hiện một khung nhìn của một vùng chủ đề trong một giai đoạn. Do vậy nó cho phép khôi phục lại lịch sử và so sánh một cách chính xác các giai đoạn khác nhau. Yếu tố thời gian đóng vai trò như một phần của khoá để bảo đảm tính đơn nhất và cung cấp đặc trưng về thời gian cho dữ liệu.
Dữ liệu trong kho luôn gắn với một giá trị thời gian nhất định.5 Dữ liệu không biến động Thông tin trong kho dữ liệu được tải vào sau khi dữ liệu trong hệ thống điều hành được cho là quá cũ. Không biến động thể hiện ở chỗ: 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 về 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.6 Dữ liệu tổng hợp và chi tiết Dữ liệu chi tiết là thông tin mức thấp nhất được lưu trữ trong kho dữ liệu. Dữ liệu tác nghiệp là thông tin mức thấp nhất cho một tổ chức.
Dữ liệu tác nghiệp thuần tuý không được lưu trữ trong kho dữ liệu. Dữ liệu tổng hợp được tích lại qua nhiều giai đoạn khác nhau.3 Kiến trúc của kho dữ liệu Mô hình kiến trúc của kho dữ liệu cơ bản (hình 1.1) gồm có ba thành phần: Dữ liệu nguồn, khu vực xử lý và kho dữ liệu. Luận văn tốt nghiệp cao học chuyên ngành Công nghệ phần mềm – Khóa 15 z - 12 - Nguồn Khu vực Kho dữ liệu Người dùng cuối dữ liệu xử lý Hình 1.1: Mô hình kiến trúc của kho dữ liệu 1.1 Nguồn dữ liệu Nguồn dữ liệu của kho dữ liệu có thể từ rất nhiều nguồn khác nhau và có cấu trúc dữ liệu khác nhau, bao gồm các hệ thống trong và ngoài của một tổ chức, rất phong phú về chủng loại. Các hệ thống nằm trong được coi như các hệ thống nguồn hoặc các hệ thống đã có sẵn.
- Hệ thống đã có sẵn (Legacy System - LS): là một hệ thống tác nghiệp. Hệ thống này đã từng được phát triển, sử dụng các công nghệ có sẵn và vẫn phù hợp với các nhu cầu.