Nghiên cứu giải pháp kho dữ liệu thời gian thực ứng dụng trọng hệ thống siêu thị (tt)

26 12 0
Nghiên cứu giải pháp kho dữ liệu thời gian thực ứng dụng trọng hệ thống siêu thị (tt)

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG - Vương Quang Phương NGHIÊN CỨU GIẢI PHÁP KHO DỮ LIỆU THỜI GIAN THỰC ỨNG DỤNG TRONG HỆ THỐNG SIÊU THỊ Chuyên ngành: Khoa học máy tính Mã số: 60.48.01.01 TĨM TẮT LUẬN VĂN THẠC SĨ HÀ NỘI - 2014 Luận văn hồ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 Phạm Văn Cường Phản biện 1: …………………………………………………………………………… Phản biện 2: ………………………………………………………………………… Luận văn bảo vệ trước Hội đồng chấm luận văn thạc sĩ Học viện Cơng nghệ Bưu Viễn thông Vào lúc: ngày tháng năm Có thể tìm hiểu luận văn tại: - Thư viện Học viện Công nghệ Bưu Viễn thơng MỞ ĐẦU Hiện nay, cơng nghệ thông tin trở thành phận quan trọng kinh tế tri thức, phương tiện trợ giúp đắc lực công tác quản lý nói chung quản trị doanh nghiệp nói riêng Việc lưu trữ khai thác thông tin hiệu giúp cho doanh nghiệp hoạch định chiến lược kinh doanh cho cách nhanh chóng xác Đi với phát triển mạnh mẽ ngành thương mại, dịch vụ, nhu cầu áp dụng phần mềm quản lý siêu thị, cửa hàng hay trung tâm thương mại điều tất yếu Trong trình hoạt động kinh doanh, liệu cửa hàng, siêu thị phát sinh hàng ngày tăng lên nhanh chóng Việc lữu trữ, quản lý khai thác liệu đặc biệt quan tâm Với xu hướng mở nhiều chi nhánh phân tán địa điểm khác nhau, công nghệ kho liệu (Data Warehouse) nhiều nhà quản lý chuyên gia công nghệ thơng tin lựa chọn giải tốn Công nghệ tập phương pháp, kỹ thuật cơng cụ kết hợp, hỗ trợ để cung cấp thông tin cho người sử dụng sở tích hợp liệu từ nhiều nguồn, nhiều môi trường khác Trong hệ thống chuỗi siêu thị, sử dụng kho liệu giúp hệ thống phần mềm dễ dàng lấy thông tin báo cáo doanh số, tiền mặt có, cơng nợ đối tác, hay hoạt động truy cập khách hàng, yêu cầu đặt hàng… Tuy nhiên, với nhà quản lý việc cần báo cáo hoạt động kinh doanh xác, họ cũng yêu cầu chúng phải tổng hợp cách nhanh chóng, nguồn tài liệu quan trọng giúp đưa định xác kịp thời Hoặc với nhân viên nghiệp vụ, việc nhận thông tin tổng hợp tức thời từ nhiều chi nhánh việc đặt hàng khách hàng giúp họ làm việc hiệu nhiều Tức hệ thống kho liệu không đơn giản đưa kết xác mà cịn phải thực xử lý thời gian ngắn, người ta gọi hệ thống kho liệu (thơng tin) thời gian thực Nhưng kho liệu chứa liệu tích hợp từ nhiều nguồn nên khối lượng thường lớn Việc tổng hợp liệu thời gian thực để xây dựng báo cáo không dễ dàng Thời gian gần đây, số công nghệ phương pháp giới thiệu để giải tốn Trong có phương pháp kho liệu thời gian thực (Real-time Data Warehouse) Sau thời gian tìm hiểu vấn đề nêu trên, tơi xin chọn đề tài “Nghiên cứu giải pháp kho liệu thời gian thực ứng dụng hệ thống siêu thị” làm đề tài nghiên cứu luận văn Ngoài phần mở đầu kết luận, luận văn gồm chương: Chương 1: Trình bày tổng quan kho liệu kho liệu thời gian thực, đưa định nghĩa, số khái niệm bản, đặc điểm kỹ thuật lưu trữ, quản lý Chương 2: Trình bày tiến trình ETL với khái niệm kiến trúc kho liệu Từ đó, tìm vấn đề hạn chế, cải tiến áp dụng vào kho liệu thời gian thực Chương 3: Áp dụng kiến thức vào xây dựng mơ hình kho liệu thời gian thực mô CHƯƠNG – TỔNG QUAN VỀ KHO DỮ LIỆU VÀ KHO DỮ LIỆU THỜI GIAN THỰC 1.1 Tổng quan kho liệu 1.1.1 Định nghĩa kho liệu Kho liệu (Data Warehouse - DW) tập hợp sở liệu trung tâm tạo cách kết hợp liệu từ nhiều nguồn với Chúng lưu trữ liệu lịch sử tổ chức/doanh nghiệp, sử dụng để phân tích xây dựng báo cáo hỗ trợ định cho nhà quản lý [1] 1.1.2 Mục tiêu kho liệu Các mục tiêu kho liệu ([2], tr.10-11) - Tạo truy cập dễ dàng cho thông tin tổ chức/doanh nghiệp - Tạo quán cho thông tin - Trở thành nguồn thơng tin linh hoạt có tính thích nghi - Trở thành nơi an tồn để bảo vệ thơng tin - Nền móng tạo báo cáo hỗ trợ định 1.1.3 Đặc điểm kho liệu Tính tích hợp: Kho liệu khung nhìn tổng thể tổ chức/doanh nghiệp, thống từ khung nhìn phận khác Dữ liệu kho tổ chức theo nhiều cách Chỉ đọc: Người dùng cuối sử dụng kho liệu để đọc, tra cứu, truy vấn báo cáo thống kê mà không phép thực sửa đổi Hướng chủ đề: Kho liệu tổ chức theo chủ đề để phục vụ việc dễ dàng xác định thông tin cần thiết mảng hoạt động kinh doanh khách hàng (customer), sản phẩm (product), bán hàng (sale) Gắn thời gian có tính lịch sử: Một kho liệu bao gồm khối lượng lớn liệu lịch sử Chúng lưu trữ thành ảnh chụp (snapshot), ghi phản ánh giá trị liệu thời điểm, thể khung nhìn chủ đề giai đoạn Khơng biến động: Tính khơng biến động hiểu theo nghĩa liệu lưu trữ lâu dài kho liệu Dù có liệu thêm vào ghi cũ khơng bị xóa Dữ liệu tổng hợp chi tiết: Dữ liệu chi tiết thông tin mức thấp lưu trữ kho Dữ liệu tác nghiệp thơng tin mức thấp 1.1.4 Một số khái niệm 1.1.4.1 Dữ liệu tác nghiệp (operational data) Được tạo sử dụng hệ thống ứng dụng hoạt động sản xuất kinh doanh (như mua bán hàng, quản lý kho, tài chính) hệ thống hỗ trợ định 1.1.4.2 Khu vực tổ chức liệu (Data Staging Area - DSA) Là nơi diễn trình chuyển đổi liệu trước chúng đưa lên kho lưu trữ Những cơng đoạn nhìn chung đòi hỏi phải xây dựng bảng tạm để chứa thông tin xử lý bảng điều khiển để chứa metadata trình ETL 1.1.4.3 Bảng kiện (Fact Table) Là bảng chứa liệu có tính chất đo lường Một Fact (hay cịn gọi độ đo) dùng để minh họa cho trường chứa giá trị đo lường có vai trò quan trọng Do cấu trúc bảng kiện đơn giản chứa khóa ngoại Fact, ngồi khơng có thơng tin khác nên tốc độ truy cập bảng nhanh 1.1.4.4 Bảng chiều (Dimension table) Bảng chiều chứa thông tin mơ tả nghiệp vụ Trong khơng gian mơ hình đa chiều, thông tin gọi thuộc tính chiều Cịn lưu trữ cụ thể sở liệu quan hệ, thông tin trường/cột bảng Một nguyên tắc thiết kế kho liệu cố gắng đưa nhiều thơng tin vào chiều tốt 1.1.4.5 Siêu liệu (Metadata) Siêu liệu “dữ liệu liệu”, lưu trữ thông tin người dùng, công cụ thao tác, thời gian sử dụng, thao tác hệ thống Những liệu giúp người dùng hiểu ý nghĩa ngữ cảnh thông tin, quan trọng giúp cho việc xây dựng, trì hoạt động, quản lý kho liệu Siêu liệu chia thành loại: - Siêu liệu nghiệp vụ - Siêu liệu kỹ thuật - Siêu liệu tác nghiệp 1.1.5 Các thành phần hệ thống kho liệu 1.1.5.1 Nguồn liệu (Data Sources) Là sở liệu hoạt động kinh doanh mua bán hàng, kế toán, nhân sự, CRM, liệu từ bên ngồi từ Internet Chúng lưu trữ nhiều tảng khác Như Oracle EBS, SAP R/3, Oracle DB, SQL Server, Data Access, Flat file, XML file,… Bao gồm số loại chính: liệu từ hệ thống tác nghiệp, hệ thống kế thừa, nguồn liệu bên ngồi 1.1.5.2 Tiến trình ETL (Extract Transform Load): Chiết xuất (Extract): Làm để lấy liệu mong muốn xếp thứ tự cho không ảnh hưởng đến giai đoạn tiếp sau Có phương pháp chiết xuất liệu: lấy toàn liệu, lấy liệu gia tăng thêm Chuyển đổi (Transform): có nhiệm vụ chuẩn bị liệu cho việc giai đoạn tải phía sau, cho liệu sau chuyển đổi phù hợp với kiến trúc cách tổ chức của kho liệu Quá trình bao gồm cơng việc: ánh xạ lại (re-mapping), xếp (sorting), lọc (filtering), làm (cleaning), tổng hợp (aggregation), chuẩn hóa (standardization) Tải (Load): Các liệu chuyển đổi để phù hợp thực tải lên kho Tùy thuộc vào phương pháp chuyển đổi phía (đầy đủ hay gia tăng) ràng buộc, mà ghi đè liệu có, thêm hay pha trộn hai 1.1.5.3 Kho liệu chủ đề (Data Mart) Kho liệu thường lớn chứa liệu nhiều chi nhánh, phòng ban Muốn cho phận người sử dụng cuối khai thác thông tin dễ dàng thân chúng phải phân thành chủ đề Data Mart gồm hai loại: Data Mart phụ thuộc: chứa liệu lấy từ kho những thứ trích chọn, tinh chế, tích hợp lại mức cao để phục vụ cho chủ đề Data Mart độc lập: loại xây dựng trước kho liệu liệu lấy trực tiếp từ nguồn Phương pháp đơn giản chi phí thấp dẫn tới liệu vài Data Mart không đồng với 1.1.5.4 OLAP (Online Analysis Processing) Hệ thống phân tích trực tuyến OLAP, công cụ với cách tiếp cận việc phân tích lập báo cáo đa chiều OLAP cho phép người điều hành thực phân tích xu hướng, so sánh theo thời gian cách khảo sát liệu nhiều chiều tổng hợp tính tốn sơ trước 1.1.5.5 Các ứng dụng người dùng cuối Các ứng dụng giúp người dùng cuối thực truy vấn, tạo phân tích với mục tiêu hỗ trợ nhu cầu quản lý tổ chức/doanh nghiệp Trong phổ biến Business Intelligence (BI), Key Performance Indicator (KPI) 1.1.6 Một số kỹ thuật lưu trữ kho liệu 1.1.6.1 Mơ hình lưu trữ liệu a Mơ hình liên kết thực thể Thực thể biểu diễn cho đối tượng người, địa điểm, vật, kiện, thứ giới thực liên quan đến tổ chức/doanh nghiệp Bên chúng thuộc tính, mơ tả đặc điểm tính chất đối tượng Có ba loại quan hệ sau: 1-1, 1-nhiều, nhiềunhiều b Mơ hình liệu đa chiều (Multi Dimension) Các báo cáo, phân tích xây dựng từ kho liệu thường phải cung cấp nhìn đa chiều tình hình hoạt động kinh doanh tổ chức/doanh nghiệp Một cách để quan sát mô hình liệu đa chiều nhìn khối Một số lược đồ tổ chức liệu mơ hình đa chiều: Lược đồ hình sao: cho phép hệ thống đối tượng kết nối với nhiều đối tượng khác Một số uu điểm lược đồ hình sao: kiện chiều mơ tả rõ ràng, dễ hiểu Các bảng chiều liệu tĩnh, liệu nạp (bằng thao tác) vào bảng kiện Cải tiến hiệu suất cho câu truy vấn kho liệu Dễ sử dụng, trực quan Lược đồ tuyết Là mở rộng lược đồ hình sao, cánh chứa nhiều bảng chiều Sơ đồ cải thiện hiệu truy vấn, tối thiểu không gian đĩa cần thiết để lưu trữ Ưu điểm lược đồ tuyết: lược đồ, số chiều phân cấp để thể rõ ràng dạng chuẩn bảng chiều Lược đồ kết hợp Là kết hợp lược đồ hình bơng tuyết Một vài sở liệu công cụ truy vấn người dùng cuối, cơng cụ xử lý phân tích trực tuyến (OLAP) địi hỏi mơ hình liệu phải lược đồ hình hỗ trợ mơ hình liệu đa chiều 1.1.6.2 Phân vùng liệu Nhằm tối ưu hiệu suất truy vấn, cách cho phép người thiết kế phân vùng vùng nhớ để chứa liệu thỏa mãn yêu cầu người thiết kế đặt Khi thực hiện, người thiết kế chọn điều kiện để phân vùng, ví dụ số liệu doanh thu bán hàng, người thiết kế phân vùng theo năm 1.1.6.3 Chỉ mục liệu Các nhà thiết kế cần chọn trường liệu phù hợp bảng để đáng mục, thơng tin lưu vào bảng tham chiếu, xếp sẵn Lúc có yêu cầu truy vấn, liệu xếp giúp giảm thời gian thực cách đáng kể 1.2 Tổng quan kho liệu thời gian thực 1.2.1 Giới thiệu thời gian thực 1.2.1.1 Xu hướng phát triển BI KPI IDC[3] khảo sát 693 tổ chức Châu Âu vào tháng 2-2011 tảng công nghệ mà họ quan tâm cho tổ chức Trong đó, 51% phản hồi BI phân tích cơng nghệ ưu tiên hàng đầu BI cung cấp số báo cáo tình hình doanh nghiệp thời điểm tại, khơng có đối sánh KPI giúp cho nhà quản lý triển khai chiến lược lãnh đạo thành mục tiêu quản lý chương trình hành động cụ thể cho phận, lĩnh vực cá nhân 1.2.1.2 Nhu cầu thời gian thực “Retail Out-of-Stocks” (khơng có hàng cho bán lẻ - OSS) [4] vắng mặt sản phẩm kệ hàng Trên toàn cầu, tỷ lệ chiếm khoảng 8.3%, tức thời điểm nào, 100 sản phẩm có sản phẩm khơng có hàng để bán Con số tăng gấp đôi, khoảng 16,3% cho hạng mục thực khuyến mại Sự thiếu hụt hàng hóa làm cho nửa số khách (55%) khơng tiếp tục việc mua hàng Nguy hại hơn, người tiêu dùng chuyển sang mua thứ muốn trung tâm khác, làm giảm thị phần ảnh hưởng đến uy tín siêu thị Điều xảy phần lớn liệu quản lý hàng hóa từ chi nhánh siêu thị cập nhật lên hệ thống kho trung tâm chậm Từ đó, người có trách nhiệm khơng kịp thời phát tình hình để luân chuyển hàng hóa khu vực, tiến hành đặt thêm hàng, đáp ứng nhu cầu người tiêu dùng Hơn nữa, số ngành nghề mặt hàng đặc biệt cần có báo cáo sản xuất kinh doanh mà liệu phải cập nhật thời gian quy định Đặc biệt trường hợp khoảng thời gian xem báo cáo ngắn hàng tuần hàng ngày Chính vậy, sóng đầu tư cơng nghệ thơng tin dịch chuyển hệ thống phân tích doanh nghiệp thời gian thực, lý hệ thống thời gian thực giai đoạn tiềm lớn 1.2.1.3 Hệ thống thời gian thực Trước tiên, phải làm rõ định nghĩa “thời gian thực” vấn đề liên quan để có nhìn rõ ràng Với nhiều người, “thời gian thực” đồng nghĩa với “tức thời” Tuy nhiên, điều khơng thực xác thực tế "Hệ thống thời gian thực hệ thống cần phải xử lý thơng tin tạo phản ứng thời gian quy định, khơng có nguy gây hậu nghiêm trọng Có nghĩa là, hệ thống với ràng buộc thời gian thực, không tốt dù có hành động câu trả lời sau thời gian hạn định: thời gian vô giá trị".[5] Như vậy, hiểu cách đơn giản “thời gian thực” phụ thuộc vào thực tế doanh nghiệp cụ thể Không có chuẩn mực chung cho việc xác định ngưỡng thời gian quy định, hệ thống phải có phản ứng thời gian hạn định 1.2.2 Định nghĩa kho liệu thời gian thực Một kho liệu thời gian thực (real time data warehouse - RTDW) hệ thống phản ánh tất thay đổi nguồn liệu (hoặc nguồn) lên kho liệu, thời gian thực thời gian gần thực [6] 1.2.3 Kiến trúc kho liệu thời gian thực Hình 1.7: Kiến trúc kho liệu thời gian thực Gần giống kiến trúc kho liệu thông thường, kho liệu thời gian thực bao gồm thành phần hình vẽ Khác biệt nằm chỗ tiến trình ETL OLAP kho liệu thời gian thực cải tiến để thực cơng việc thời gian thực 10 CHƯƠNG – NGHIÊN CỨU TIẾN TRÌNH ETL ỨNG DỤNG TRONG HỆ THỐNG QUẢN LÝ KHO DỮ LIỆU THỜI GIAN THỰC 2.1 Giới thiệu ETL 2.1.1 Khái niệm ETL Tiến trình ETL (Extract-Transform-Load) chức cốt lõi hệ thống kho liệu, thực chiết xuất liệu từ hệ thống nguồn, chuyển đổi chúng theo chất lượng tiêu chuẩn thống cho liệu từ nguồn riêng biệt tích hợp với Sau thực tải lên kho liệu, phục vụ phát triển ứng dụng xây dựng báo cáo hỗ trợ định cho người dùng cuối [2] 2.1.2 Chức tiến trình ETL - Xác định (identification) thông tin liên quan nguồn liệu - Chiết xuất (extraction) thông tin cần cập nhật - Vận chuyển (transportation) thông tin tới khu vực tổ chức liệu - Chuyển đổi (transformation) tùy biến - customization tích hợp - integration thơng tin từ nhiều nguồn khác vào định dạng phổ biến - Làm (cleaning) tập liệu kết quả, dựa cấu trúc sở liệu quy tắc nghiệp vụ - Tải (loading) liệu vào kho liệu 2.1.3 Các thành phần tiến trình ETL 2.1.3.1 Chiết xuất Cơng việc cần thực tiến trình ETL liên quan đến việc chiết xuất liệu từ hệ thống nguồn, với mục tiêu xác định tập liệu cần xử lý Các phương pháp chiết xuất  Mức Logic - Đầy đủ: Các liệu chiết xuất hoàn toàn từ hệ thống nguồn - Gia tăng: Tại thời điểm cụ thể, có liệu thay đổi kể từ lần cuối chiết xuất  Mức vật lý - Chiết xuất trực tuyến: Dữ liệu chiết xuất trực tiếp từ hệ thống nguồn 11 - Chiết xuất ngoại tuyến: Dữ liệu không chiết xuất trực tiếp từ hệ thống nguồn xử lý cách rõ ràng bên ngoài, khu vực tổ chức liệu Một số kỹ thuật chiết xuất liệu Chiết xuất thông qua nhật ký hoạt động (log file): hệ quản trị CSDL có file nhật ký hoạt động ghi lại giao dịch thực thi để khơi phục gặp cố Kỹ thuật sử dụng thông tin log file để chiết xuất liệu tương ứng cần thiết Chiết xuất thông qua triggers: xuất hành động cập nhật thủ tục trigger tự động kích hoạt viết nội dung cho thủ tục tương ứng với bảng để thực việc chiết xuất Chiết xuất công cụ chụp phát thay đổi (bằng cách so sánh file): so sánh hai ảnh chụp hai thời điểm khác tìm thay đổi đó, xác định liệu phát sinh thêm, liệu bị sửa đổi liệu thay đổi 2.1.3.2 Chuyển đổi Các vấn đề xung đột Nhìn chung, việc chuyển đổi làm liệu phải đối phó: - Xung đột mức lược đồ: xung đột đặt tên, xung đột cấu trúc - Xung đột mức thực thể: ghi bị nhân đơi có mâu thuẫn Các kiểu chuyển đổi Sửa lại định dạng, Giải mã trường, Tính toán lại giá trị dẫn xuất, Chia tách trường đơn, Gộp thông tin, Chuyển đổi ký tự, Chuyển đổi đơn vị đo, Chuyển đổi Ngày/Giờ, Tổng hợp, Tái cấu trúc khóa, Giải ghi trùng 2.1.3.3 Tải Để thực hiện, có số cách thức chúng phụ thuộc vào số loại tải liệu đây: - Tải lần đầu: tổng hợp liệu cho tất bảng kho liệu cho lần - Tải gia tăng: cập nhật ghi có thay đổi thêm ghi phát sinh cách định kỳ - Làm tươi tồn bộ: xóa hồn tồn nội dung nhiều bảng tải lại với liệu Kỹ thuật tải liệu Có kỹ thuật tải liệu thường sử dụng: 12 Tải (Load): Nếu bảng mục tiêu tồn có liệu, thực tải ghi chưa có, bỏ qua ghi có Nếu bảng trống, lấy toàn liệu chuyển đổi để cập nhật vào Thêm nối (Append): Nếu liệu tồn tại, tiến hành thêm nối ghi chuyển đổi vào bảng Cơ chế xử lý ghi trùng hoạt động, tùy chọn lưu trữ ghi sao, cho phép xóa ghi trùng lặp Trộn phá hủy (Destructive Merge): Sẽ có so sánh liệu gửi tới liệu mục tiêu Nếu khóa chúng giống nhau, cập nhật liệu vào bảng Nếu khóa chưa có tức ghi chưa tồn cần thêm Trộn xây dựng (Constructive Merge): Chế độ khác với chế độ trộn phá hủy Nếu khóa ghi gửi đến giống với khóa ghi có, ghi có giữ lại, ghi gửi đến thêm vào đánh dấu không dùng 2.1.4 Kiến trúc tiến trình ETL truyền thống Kiến trúc tiến trình ETL truyền thống bao lớp chính: nguồn liệu, khu vực tổ chức liệu kho liệu Hình 2.4: Tiến trình ETL Chiết xuất – Chuyển đổi – Tải Có loại kiến trúc sử dụng cho hệ thống ETL: kiến trúc đồng (homogenous) kiến trúc không đồng (heterogeneous) Kiến trúc đồng nhất: Chỉ liên quan đến nguồn sở liệu đích đơn lẻ Kiến trúc ETL đồng thường áp dụng cho kho liệu chủ đề, đặc biệt tập trung vào chủ đề Kiến trúc không đồng nhất: Một hệ thống liệu trích xuất từ nhiều nguồn Kiến trúc không đồng thường xuyên sử dụng cho kho liệu kho liệu chủ đề 13 2.1.5 Những vấn đề thách thức 2.1.5.1 Một số vấn đề chung Tiến trình ETL có vấn đề chung cần phải đối mặt: Vấn đề địa lý ràng buộc thời gian: [8] 90% vấn đề kho liệu xuất phát từ chu kỳ tải hàng loạt liệu vào ban đêm Với nhiều vấn đề như: đồng thời thực nhiều cơng việc lại có tính hỗn hợp phụ thuộc lẫn nhau, khoảng thời gian gọi “buổi đêm” bị kéo ngắn lại, thứ tự thực thao tác nghiệp vụ công việc phù hợp Khối lượng liệu lớn: Lượng liệu hoạt động hàng ngày từ nhiều chi nhánh lớn, không làm tốt công việc lọc liệu cần phải xử lý hệ thống hoạt động nặng nề Chất lượng liệu: liệu sau đưa lên kho phải ln làm có giá trị với người sử dụng Sự phát triển liệu: hệ thống cần bảo trì thường xuyên, cungf mở rộng quy mô, vùng địa lý, kho liệu cải tiến để đáp ứng nhu cầu xây dựng báo cáo lớn tổ chức/doanh nghiệp hồn tồn xảy Hoạt động tự động: ETL hoạt động có tính định kỳ hệ thống kho liệu, chúng cần lập lịch tự động hóa hoạt động 2.1.5.2 Một số vấn đề thành phần Ngoài vấn đề chung nêu trên, giai đoạn tiến trình ETL cịn có vấn đề phát sinh, việc làm tươi kho liệu nhiệm vụ khó khăn Chiết xuất - Phải đảm bảo khơng ảnh hưởng đến hiệu suất hệ thống nguồn - Xác định liệu cần chiết xuất khơng dễ dàng - Làm để lấy ghi mong muốn xếp thứ tự để không ảnh hưởng đến giai đoạn tiếp sau Chuyển đổi - Dữ liệu từ nhiều nguồn với nhiều cách thiết kế, định dạng, … khác nên cần xác định tiêu chuẩn, công thức cho việc chuyển đổi - Do thời gian hạn chế lượng liệu lớn nên yêu cầu khu vực tổ chức phải đạt ổn định hoạt động hiệu - Xem xét sử dụng chế quản lý, cấp phát nhớ trở nên quan trọng 14 Tải - Lựa chọn chế thêm mới, cập nhật ghi cần phải cân nhắc kỹ - Chi phí cho việc thực trì mục khung nhìn (view) tốn 2.1.6 Hạn chế ETL truyền thống Cập nhật liệu liên tục ETL kho liệu truyền thống bị giới hạn khung thời gian hoạt động vào “ban đêm” Hệ thống thời gian thực yêu cầu liệu phải cập nhật thời gian quy định lên kho liệu Chiết xuất Một số kỹ thuật chiết xuất liệu chiết xuất thông qua nhật ký hoạt động, chiết xuất công cụ chụp phát thay đổi Tuy kỹ thuật có ưu điểm tốt lại khơng đáp ứng vấn đề tốc độ thời gian thực Chuyển đổi Công nghệ quản lý nhớ cũ có tốc độ chậm chạp đọc/ghi liệu làm trình phải nhiều thời gian hồn thành Mỗi đơn vị thời gian cần xử lý nhiều liệu hơn, từ phát sinh nhiều hoạt động nhớ Việc quản lý cấp phát nhớ trở nên quan trọng Tải ETL thông thường thực tải hàng loạt vào ban đêm, liệu vừa cập nhật chậm so với thời gian mong muốn Hạn chế cần phải giải kho liệu thời gian thực cho liệu phải cập nhật thời gian quy định 2.2 Giải pháp xây dựng tiến trình ETL cho hệ thống kho liệu thời gian thực 2.2.1 Phân vùng thời gian thực Một bảng kiện thời gian thực riêng biệt tạo ra, kèm với bảng chiều tương ứng Các bảng phân vùng thời gian thực ưu tiên cập nhật liệu liên tục ngày Các liệu lại ETL truyền thống đưa lên vào ban đêm bình thường Phương pháp kết hợp vừa đảm bảo liệu đưa lên kho theo thời gian thực vừa yêu cầu không phức tạp 2.2.2 Phân nhóm liệu cho xử lý song song Xử lý song song trình xử lý gồm nhiều tiến trình kích hoạt đồng thời tham gia giải vấn đề hệ thống có nhiều xử lý Nghĩa áp 15 dụng xử lý song song vào hệ thống thời gian thực, có nhiều tiến trình ETL hoạt động đồng thời, giúp liệu cập nhật lên kho đơn vị thời gian tăng lên đáng kể Kỹ thuật phân nhóm liệu Đối với lượng liệu lớn, nên phân chia tập liệu thành tập nhỏ Ý tưởng sau nhóm liệu sử dụng tiến trình ETL để thực xử lý Tức có nhiều tiến trình ETL chạy nhiều xử lý thời điểm Vào cuối trình này, nhóm liệu cần sáp nhập lại tải vào kho mục tiêu 2.2.3 Lô liệu nhỏ ETL (Microbatch ETL) Lô liệu nhỏ ETL gần tương tự ETL thông thường, khác biệt liệu chia nhỏ theo lơ, mức độ thường xun hàng hay phút tùy thuộc nhu cầu thực tế tổ chức/doanh nghiệp Những lô tiến trình ETL thực cập nhật lên kho cách thường xuyên, đáp ứng thời gian thực Việc chia lô thực dựa liệu chiết xuất, có nhiều tiêu chí để phân chia phân chia theo khoảng thời gian (ví dụ tồn liệu có thay đổi khoảng thời gian phút/ lơ), theo lượng liệu (ví dụ 100 ghi lô) 2.2.4 Cơ sở liệu nhớ Cơ sở liệu nhớ (in memory database - IMDB) hệ thống quản lý sở liệu chủ yếu dựa vào nhớ để lưu trữ liệu [10] Trong ứng dụng thời gian thực, lợi ích sở liệu nhớ đem lại nhiều hiệu hiệu xử lý Hiện nay, hãng công nghệ lớn Oracle, Microsoft nghiên cứu tích hợp ln cơng nghệ lên hệ quản trị sở liệu truyền thống họ Oracle Database, MS SQL Server Hoặc sử dụng cơng cụ lập trình DotNet Microsoft để thực chức 2.2.5 Chiết xuất thời gian thực Sử dụng Trigger Với cách thức hoạt động xây dựng sẵn hệ quản trị sở liệu, trigger thực việc chiết xuất liệu gần tức mà khơng ảnh hưởng nhiều đến hoạt động nguồn liệu Để sử dụng kỹ thuật này, bảng chiết xuất chứa định danh ghi thay đổi tạo Sau đó, thủ tục trigger tương ứng với hoạt động INSERT, UPDATE, DELETE viết cho bảng tương ứng Truy vấn song song hệ quản trị sở liệu 16 Trong hệ quản trị sở liệu nay, tất có hỗ trợ truy vấn song song Trong SQL Server, bật tính song song cách cấu hình trường degree tạo bảng 2.2.6 Chuyển đổi thời gian thực Sử dụng kỹ thuật song song Để tăng số lượng ghi từ chi nhánh cập nhật lên kho liệu trung tâm đơn vị thời gian Chúng ta chạy song song nhiều tiến trình ETL thời điểm Sử dụng Microbath ETL Cơ sở liệu nhớ Theo cách thức chung, việc áp dụng công nghệ giúp tăng tốc độ tính tốn cơng thức, thuật toán khả thi Với lượng liệu theo lô nhỏ, kết hợp với công nghệ sở liệu thường trú nhớ giải tốn Lơ liệu nhỏ giúp việc đưa chúng lên nhớ khơng u cầu chi phí lớn thiết bị phần cứng Các chế quản lý liệu có bảng chứa liệu nhớ giúp tốc độ đọc/ghi nhanh nhiều Từ việc thao tác với liệu nhanh chóng hơn, thao tác chuyển đổi cải thiện đáng kể mặt tốc độ 2.2.7 Tải thời gian thực Tải lô liệu nhỏ Các liệu chuyển đổi nhanh với lô liệu nhỏ chuyển tới trình tải, đồng nghĩa với trình thực tải với lô liệu tương ứng Do số lượng lô liệu chia nhỏ nên trình đưa chúng lên kho nhanh, không chiếm nhiều thời gian sử dụng hệ thống Từ đó, đảm bảo độ sẵn sàng kho liệu Kết luận chương Dựa lý thuyết tìm hiểu chương 1, chương sâu nghiên cứu tiến trình ETL, thành phần quan trọng kho liệu kho liệu thời gian thực Với việc phân tích chi tiết thành phần, kiến trúc vấn đề, hạn chế hệ thống ETL thông thường, giải pháp áp dụng công nghệ kỹ thuật tiên tiến đề xuất giúp cải tiến tốc độ cập nhật liệu theo thời gian thực lên kho liệu 17 CHƯƠNG – XÂY DỰNG MƠ HÌNH KHO DỮ LIỆU THỜI GIAN THỰC 3.1 Bài tốn Cơng ty TNHH TM & Dịch vụ Văn hố Phương Bắc (cơng ty Phương Bắc), địa trụ sở 110D- Ngọc Hà – Ba Đình – Hà Nội, cơng ty có hệ thống nhiều chi nhánh trải rộng khu vực Hà Nội (3 chi nhánh), Vinh (2 chi nhánh), TP HCM (3 chi nhánh) Các chi nhánh sử dụng Internet để kết nối trực tiếp máy chủ trung tâm đặt Hà Nội Với đặc điểm vừa sản xuất, vừa bán bn bán lẻ hàng hóa nên việc có thông tin thời gian thực phục vụ việc lên kế hoạch sản xuất tiêu thụ hàng hóa cần thiết, đặc biệt số sản phẩm theo mùa, hàng hóa độc quyền Yêu cầu đặt xây dựng kho liệu đặt máy chủ trung tâm Hà Nội, tập hợp liệu chi nhánh, phục vụ nhiều loại báo cáo từ chi tiết đến tổng hợp cho nhiều phịng ban Trong có báo cáo số lượng tồn doanh số bán hàng cần đảm bảo yếu tố thời gian thực, quy định phút sau có giao dịch phát sinh 3.2 Xây dựng mơ hình kho liệu thời gian thực 3.2.1 Khảo sát hệ thống sẵn có Hệ thống mạng Hạ tầng mạng doanh nghiệp với chi nhánh mơ hình dưới: Máy chủ TPHCM Máy chủ Hà Nội Máy chủ TPHCM Máy chủ Hà Nội Máy chủ trung tâm Máy chủ TPHCM Máy chủ Hà Nội Máy chủ Vinh Máy chủ Vinh Hình 3.1: Mơ hình hệ thống mạng doanh nghiệp Ứng dụng Các ứng dụng kế toán, quản lý mua bán hàng, đặt hàng, báo cáo kinh doanh thông minh BI - KPI,… hoạt động xây dựng sẵn tảng NET Cơ sở liệu 18 - MS SQL Server 2008 sử dụng để lưu trữ sở liệu - Số ghi có: Chi nhánh lớn 2.537.799 - Chi nhánh nhỏ 753.510 - Số ghi phát sinh thêm hàng ngày: Chi nhánh lớn 8.171/ngày- Chi nhánh nhỏ 4.073/ngày 3.2.2 Thiết kế hệ thống 3.2.2.1 Kiến trúc hệ thống Hình 3.3: Mơ hình kiến trúc hệ thống kho liệu thời gian thực 3.2.2.2 Thiết kế liệu Dữ liệu chủ đề mua bán hàng Bảng kiện cung cấp thơng tin doanh số mua, bán hàng, tính tốn giá trị tồn kho theo chiều Hình 3.4: Sơ đồ kho liệu chủ đề mua bán hàng 19  Chiều cửa hàng: Chiều cung cấp thông tin cho báo cáo doanh số, tồn kho,… theo cửa hàng  Chiều hàng hóa: Chiều hàng hóa lưu liệu hàng hóa mà doanh nghiệp có thực giao dịch mua bán  Chiều kho: Chiều kho lưu liệu kho hàng mà doanh nghiệp có thực giao dịch mua bán  Chiều nhân viên: Chiều nhân viên lưu liệu nhân viên thực giao dịch mua bán  Chiều đối tác: Chiều đối tác lưu liệu đối tác (khách hàng, nhà cung cấp) mà doanh nghiệp có thực giao dịch mua bán Dữ liệu chủ đề công nợ Dữ liệu cho báo cáo tổng hợp công nợ hệ thống không lớn, thiết kế từ bảng liệu danh mục Store DoiTac Bảng FactCongNo đóng thể số liệu công nợ đối tác, theo tài khoản kế toán thời điểm Hình 3.5: Sơ đồ kho liệu chủ đề công nợ  Chiều tài khoản: Chiều tài khoản lưu liệu hệ thống tài khoản mà doanh nghiệp sử dụng nghiệp vụ kế toán Các chiều đối tác chiều cửa hàng tương tự liệu chủ đề mua bán hàng 3.2.3 Xây dựng tiến trình ETL thời gian thực 3.2.3.1 Xác định phân vùng thời gian thực Dựa khảo sát thành phần sẵn có tiến trình nghiệp vụ hệ thống, phân vùng thời gian thực bao gồm bảng kiện FactMuaBanHang bảng danh mục liên quan Tại hệ thống nguồn, bảng VatTuHangHoa, NhomVatTuHangHoa, ChungTu, KhoanMucChungTu, DoiTuongNghiepVu, Kho, Store, User chứa thông tin giao dịch mua bán hàng ngày lựa chọn để chiết xuất thời gian thực 20 3.2.3.2 Phân nhóm liệu cho xử lý song song Dựa vào đặc điểm phân vùng thời gian thực lưu lại thơng tin giao dịch mua bán hàng Như vậy, giao dịch phân chia thành nhóm Việc phân nhóm liệu thực với công việc với chiết xuất trình bày phần Trong thực tế, lượng liệu doanh nghiệp chưa lớn tới mức cần đến chạy song song nhiều tiến trình ETL đồng thời Nhưng thiết kế để mở rộng cách dễ dàng có nhu cầu tương lai cần thiết 3.2.3.3 Sử dụng kỹ thuật lô liệu nhỏ ETL (Microbatch ETL) Lô liệu với 10 ghi đạt hiệu tốt nhất, gần không ảnh hưởng đến hoạt động sở liệu lựa chọn Thực tế, cửa hàng bán lẻ thực giao dịch cách liên tục đồng thời, kho liệu truy vấn báo cáo cách trơn tru 3.2.3.4 Chiết xuất Đầu tiên cần tiến hành đặt ký hiệu cho chi nhánh Sau đó, xây dựng bảng thông tin đồng chứa liệu chiết xuất, có khả đánh dấu thứ tự phát sinh liệu để sau đồng theo Bảng có thơng tin như: định danh chi nhánh, tên bảng có liệu thay đổi, giá trị ghi có thay đổi, kiểu thay đổi ghi tương ứng Hình 3.7: Sơ đồ quan hệ bảng chiết xuất Trigger sử dụng cho dịch vụ giám sát hoạt động thời gian thực, lần liệu sở liệu có thay đổi, thơng tin tương ứng ghi lại Tính xử lý truy vấn song song SQL Server kích hoạt hệ quản trị sở liệu hệ thống nguồn Cấu hình thơng qua câu lệnh: EXEC sp_configure 'max degree of parallelism', 5; GO RECONFIGURE WITH OVERRIDE; 21 3.2.3.5 Chuyển đổi Tải liệu lên nhớ Với hệ quản trị sở liệu SQL Server 2008 việc đưa liệu lên nhớ cách trực tiếp chưa cung cấp Công việc thực gián tiếp cơng cụ lập trình Dữ liệu truy vấn lưu trữ DataTable lưu trữ nhớ [11] Xử lý chuyển đổi liệu Hệ thống doanh nghiệp sử dụng chạy tảng cơng nghệ có chung cách thức thiết kế, xây dựng sở liệu nên việc chuyển đổi không cần phải xử lý trường hợp: kiểu, định dạng khác Phần chuyển đổi tập trung vào làm tổng hợp vào bảng kiện Dựa số thuật toán sau: Thuật toán chuyển đổi kiểu thay đổi Kiểu thay đổi = Insert No Kiểm tra tồn ghi bảng đích Yes Yes No No Kiểu thay đổi = Update Chuyển kiểu thay đổi thành Update Yes No Kiểm tra tồn ghi bảng đích Yes Chuyển kiểu thay đổi thành Insert Hình 3.8: Sơ đồ thuật tốn chuyển đổi kiểu thay đổi 3.2.3.6 Tải Việc lại thực cập nhật liệu chuyển đổi lên kho Kỹ thuật tải gia tăng với lô liệu nhỏ lựa chọn sử dụng Thuật toán tải liệu Kiểu thay đổi = Insert Yes Gọi phương thức XayDungTruyVanThemMoi Insert ghi vào bảng đích Gọi phương thức XayDungTruyVanCapNhat Update ghi vào bảng đích Gọi phương thức XayDungTruyVanXoa Xóa ghi khỏi bảng đích No Kiểu thay đổi = Update Yes Xóa ghi khỏi bảng chiết xuất No Kiểu thay đổi = Delete Yes No Hình 3.9: Sơ đồ thuật toán tải liệu 3.2.4 Cài đặt triển khai 3.2.4.1 Cài đặt Dự án xây dựng ứng dụng đặt tên DongBoDuLieu, kiểu dự án Windows Services Được tổ chức sau: 22 Hình 3.10: Tổ chức lớp dự án DongBoDuLieu Sau dự án Build thành công , file chạy “DongBoDuLieu.exe” sinh 3.2.4.2 Triển khai Các thành phần phần kiến trúc hệ thống: - Nguồn liệu: hệ thống sẵn có - Máy chủ kho liệu: sử dụng CPU Intel Xeon E5520 2.27 GHZ, nhớ RAM 8GB, dung lượng ổ cứng 500GB, cài đặt Windows Server 2008R2 SQL Server 2008R2 Máy chủ cấu hình mở cổng 1433 cấu hình quyền truy cập kết nối sở liệu từ xa - Thành phần ETL: cài đặt Windows Service, người sử dụng phải dùng file InstallUtil.exe Net Framework 4.0 thư mục C:\Windows\Microsoft.NET\Framework\v4.0.30319 file DongBoDuLieu.exe - Máy trạm: máy trạm máy tính desktop, laptop, máy tính bảng, điện thoại thơng minh cài đặt ứng dụng báo cáo 3.2.5 Kết thử nghiệm Đảm bảo thời gian thực: Theo thực nghiệm, lượng liệu trung bình truyền khoảng 500 ghi chi nhánh lên kho liệu phút ứng với tiến trình ETL hoạt động, tương đương với khoảng 33-35 hóa đơn mua bán trung bình Cơ đáp ứng thời gian mong muốn doanh nghiệp Tự động hoạt động: Dịch vụ hoạt động ổn định, ln hoạt động 24/24h, có khả tự kích hoạt mở windows định kỳ kiểm tra đưa liệu lên kho thời gian thực Không cần can thiệp người Tự động xử lý gặp lỗi: liệu xử lý theo lô nhỏ nên lần gặp lỗi, lượng liệu đủ nhỏ để khơng làm ảnh hưởng nhiều đến hệ thống 23 KẾT LUẬN Những vấn đề giải Luận văn tập trung nghiên cứu, tìm hiểu khái niệm kỹ thuật kho liệu nói chung kho liệu thời gian thực nói riêng Từ có áp dụng thử nghiệm toán hệ thống liệu siêu thị - Tìm hiểu tổng quan khái niệm, kiến trúc, đặc điểm số kỹ thuật kho liệu kho liệu thời gian thực, từ khác biệt chúng - Đi sâu nghiên cứu đề xuất giải pháp cho việc xây dựng tiến trình ETL thời gian thực, thành phần quan trọng hệ thống kho liệu thời gian thực - Lập trình thực hóa tiến trình ETL thời gian thực dựa cơng nghệ mơ hình đề xuất - Triển khai áp dụng cho doanh nghiệp cụ thể với kết khả quan Những hạn chế luận văn Do hạn chế mặt thời gian nghiên cứu trình độ học thuật, nên số vấn đề phân tích, nghiên cứu luận văn chắn thiếu sót Luận văn tập trung giải thực hóa tiến trình ETL thời gian thực Còn thành phần khác chưa tối ưu để hệ thống hồn thiện Chúng tơi hy vọng hạn chế, thiếu sót luận văn khắc phục nghiên cứu sâu Rất mong nhận nhiều ý kiến đóng góp từ quý thầy cô đồng nghiệp Hướng nghiên cứu phát triển - Tiếp tục nghiên cứu thêm kho liệu kho liệu thời gian thực - Phát triển thêm kỹ thuật để ứng dụng cho việc xây dựng báo cáo nhanh báo cáo thời gian thực thơng qua tìm kiếm nhanh liệu Time series, Sequential Models, Bayesian Models, … 24 TÀI LIỆU THAM KHẢO [1] http://en.wikipedia.org/wiki/Data_warehouse#History [2] Ralph Kimball, Joe Casertar, 1998, “The Data Warehouse Lifecycle Toolkit”, Wiley Publishing Inc, 111 River Street, Hoboken, NJ 07030-5774 [3] IDC, “Future Architechtures, Skills and Roadmaps for CIO“, White paper, 2011 Available from http://www.sas.com/resources/asset/BigDataAnalyticsFutureArchitectures-Skills-RoadmapsfortheCIO.pdf [4] Warelite, “Warelite real time demand chain management A simple solution to Retail Out-of-Stocks” Available from http://www.warelite.net/articles/WL_Real_Time_Demand_Chain_Management.pdf [5] http://www.le.ac.uk/eg/fss1/real%20time.htm [6] Jonas T Hansen, Stig Jorgensen, 2009, “A Real-Time Data Warehouse Solution for Analysis on Indoor Tracking Data” Available from http://projekter.aau.dk/projekter/files/17989175/ReportFinal.pdf [7] Panos Vassiliadis, Spiros Skiadopoulos, 2002, “Conceptual Modeling for ETL Processes”, Proceeding DOLAP '02 Proceedings of the 5th ACM international workshop on Data Warehousing and OLAP, Pages 14 – 21 [8] B Scalzo, 2003, “Oracle DBA Guide to DataWarehousing and Star Schemas” Published June 4th 2003 by Prentice Hall PTR [9] Alkis Simitsis, Panos Vassiliadis, Aug 2009, “Near Real Time ETL”, in University of Ioannina Available from http://www.researchgate.net/publication/226219087_Near_Real_Time_ETL/file/79e41 50b23b3aca5aa.pdf [10] http://en.wikipedia.org/wiki/In-memory_database [11] http://msdn.microsoft.com/en-us/library/f704wwzh.aspx [12] Nguyễn Văn Tùng, Hoàng Đỗ Thanh Tùng, Vương Quang Phương, 2012, “Cơ sở liệu nhớ giải hệ thống có số lượng giao dịch lớn”, Hội thảo quốc gia công nghệ thông tin truyền thông Việt Nam lần thứ 15, ngày 0304/12/2012, Hà Nội [13] Vương Quang Phương, Hoàng Đỗ Thanh Tùng, 2013, “Hệ thống KPI thời gian thực cho doanh nghiệp thương mại văn hóa phẩm”, Hội thảo quốc gia công nghệ thông tin truyền thông Việt Nam lần thứ 16, ngày 14-15/11/2013, Đà Nẵng ... dụng vào kho liệu thời gian thực Chương 3: Áp dụng kiến thức vào xây dựng mơ hình kho liệu thời gian thực mô 3 CHƯƠNG – TỔNG QUAN VỀ KHO DỮ LIỆU VÀ KHO DỮ LIỆU THỜI GIAN THỰC 1.1 Tổng quan kho. .. kho liệu kho liệu thời gian thực, từ khác biệt chúng - Đi sâu nghiên cứu đề xuất giải pháp cho việc xây dựng tiến trình ETL thời gian thực, thành phần quan trọng hệ thống kho liệu thời gian thực. .. liệu nhanh Hệ thống kho liệu thời gian thực áp dụng công nghệ số giai đoạn cụ thể để tăng hiệu tính tốn 1.2.4.5 Tiến trình ETL thời gian thực Trong hệ thống kho liệu nói chung kho liệu thời gian

Ngày đăng: 19/03/2021, 17:53

Tài liệu cùng người dùng

Tài liệu liên quan