O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

SQL SERVER BUSINESS INTELLIGENCE & WINDOWS SERVICE

2.124 visualizações

Publicada em

Đây là một ví dụ minh họa một cách đầy đủ nhất cho việc kết hợp phân tích dữ liệu với SQL SERVER BUSINESS INTELLIGENCE.
Cách thức để tạo nên WINDOWS SERVICE application

Publicada em: Software
  • Seja o primeiro a comentar

SQL SERVER BUSINESS INTELLIGENCE & WINDOWS SERVICE

  1. 1. Lâm Minh Trí-10/2013 Contact: Minhtri.itp@gmail.com (for demo source code) .
  2. 2. NỘI DUNG TRÌNH BÀY 2 I. GIỚI THIỆU GIẢI PHÁP NGHIỆP VỤ THÔNG MINH II.CÔNG CỤ SQL SERVER BUSINESS INTELLIGENCE IV. SSIS PACKAGE VỚI SCHEDULE WINDOWS SERVICE VII. THẢO LUẬN VIII. DEMO
  3. 3. 3
  4. 4. GIỚI THIỆU GIẢI PHÁP NGHIỆP VỤ THÔNG MINH 4  Thuật ngữ Business Intelligence (BI) ra đời trong một bài báo của nhà nghiên cứu Hans Peter Luhn tại IBM.  Có rất nhiều định nghĩa về BI theo nhiều khía cạnh khác nhau, một cách tổng quát IB là một tập hợp của những phương thức, quá trình, kiến trúc, kỹ thuật cho phép chuyển đổi, trích xuất, tính toán từ nhiều nguồn dữ liệu khác nhau thành loại dữ liệu có giá trị. Qua đó có thể phân tích đánh giá và đưa ra những quyết định, định hướng phát triển cho doanh nghiệp.
  5. 5. TẠI SAO CHÚNG TA CẦN BI? 5  Với sự phát triển nhanh chóng của CNTT, nguồn dữ liệu cho nhân loại ngày càng rộng lớn và phong phú với nhiều lĩnh vực. Tuy nhiên việc khai thác nguồn dữ liệu này sẽ vô cùng khó khăn bởi độ lớn, sự phức tạp, không đồng nhất ,…  Bản thân các nguồn dữ liệu này sẽ không có giá trị nếu chúng rời rạc và chỉ phục vụ cho mục đích lưu trữ.  BI ra đời như một giải pháp giúp chúng ta có thể tổng hợp dữ liệu từ nhiều nguồn khác nhau thành những báo cáo, phân tích đánh giá có giá trị phục vụ cho mục đích, chiến lược kinh doanh, quảng bá cho doanh nghiệp,..  VD: Một công ty dược phẩm cần phát triển sản phẩm mới. Họ có thể dựa vào nguồn dữ liệu bệnh nhân và dữ liệu số lượng, chất lượng giá thành các sản phẩm dược trên thì trường để ra một báo cáo phân tích đầu tư cho một sản phẩm mà bệnh nhân đang cần nhất, với ít đối thủ cạnh tranh nhất để đưa ra chiến lược đầu tư sản phẩm.
  6. 6. CÁC GIAI ĐOẠN CỦA GIẢI PHÁP BI 6 Thu thập dữ liệu (từ các nguồn dữ liệu) ETL (Extract – Transform – Load) : Trích lọc chuyển đổi nguồn dữ liệu thô thành dữ liệu có giá trị. Lưu trữ dữ liệu: Lưu trữ lại lượng dữ liệu có giá trị. Cung cấp cái nhìn trực quan về nguồn dữ liệu sau trích lọc (thông qua các báo cáo). Đưa ra các quyết định thông qua các báo cáo.
  7. 7. CÔNG CỤ SQL SERVER BUSINESS INTELLIGENCE 7
  8. 8. SỬ DỤNG BUSINESS INTELLIGENCE DEVELOPMENT STUDIO CHO QUÁ TRÌNH ETL 8  Đây là một môi trường cho phép chúng ta sử dụng để phát triển những package phục vụ cho việc trích lọc dữ liệu từ các nguồn dữ liệu khác nhau, Chuyển đổi, tính toán dữ liệu, Lưu trữ dũ liệu vào tập dữ liệu đích phục vụ cho việc phân tích , báo cáo,..  Công cụ này là một thành phần của SQL Server từ phiên bản 2005 Enterprise trở lên.  Chúng ta có thể tùy chọn khi cài đặt hoặc repair SQL Server và chọn Add New Feature.  Quá trình cài đặt đơn giản chỉ vài click chuột nên sẽ không hướng dẫn chi tiết.
  9. 9. SỬ DỤNG BUSINESS INTELLIGENCE DEVELOPMENT STUDIO CHO QUÁ TRÌNH ETL 9 Sau khi cài đặt xong, chúng ta thực hiện mở SQL Server Business Intelligence Development Studio lên theo hình minh họa Sau khi của sổ chương trình mở lên, chúng ta vào menu File và chọn New Project để tạo dự án BI mới với project template là Integration Service Project. Nhập đầy đủ các thông tin và chọn OK để tạo project mới.
  10. 10. SỬ DỤNG CÁC CÔNG CỤ BUSINESS INTELLIGENCE DEVELOPMENT STUDIO 10 Với project type là Integration Service cung cấp cho chúng ta rất nhiều công cụ cho quá trình ETL. Được xếpvào 3 nhóm chính: Data Flow Source: Bao gồm các công cụ cho phép chúng ta kết nối , truy xuất đến nguồn dữ liệu như database (SQL Server, Oracle,..), File Excel,.. Data Flow Transformations: Bao gồm các công cụ cho phép tính toán và trích lọc dữ liệu. Data Flow Destination: Bao gồm các công cụ cho phép chúng ta kết nối lưu trữ dữ liệu sau khi trích lọc, tính toán như database (SQL Server, Oracle,..). Mỗi công cụ sẽ có output theo hai luồng thực thi thành công và thực thi thất bại (có thể sử dụng để ghi lại log lỗi cho quá trình ETL)
  11. 11. SỬ DỤNG CÁC CÔNG CỤ BUSINESS INTELLIGENCE DEVELOPMENT STUDIO 11  Minh họa sử dụng công cụ OLE DB Source (Column Mapping)
  12. 12. SỬ DỤNG CÁC CÔNG CỤ BUSINESS INTELLIGENCE DEVELOPMENT STUDIO 12  Minh họa sử dụng công cụ OLE DB Source
  13. 13. SỬ DỤNG CÁC CÔNG CỤ BUSINESS INTELLIGENCE DEVELOPMENT STUDIO 13  Minh họa sử dụng công cụ Aggerations
  14. 14. SỬ DỤNG CÁC CÔNG CỤ BUSINESS INTELLIGENCE DEVELOPMENT STUDIO 14  Minh họa sử dụng công cụ OLE DB Destination
  15. 15. SỬ DỤNG BUSINESS INTELLIGENCE DEVELOPMENT STUDIO CHO QUÁ TRÌNH ETL 15  Sau khi thiết lập xong các thành phần của quá trình ETL chúng ta có thể click debug để xem quá trình ETL thực thi một cách trực quan.  Các thành phần của quá trình ETL sẽ được output ra thành một package.dtsx.  Chúng ta có thể thực hiện package này với command line , Power Shell , hoặc thông qua ứng dụng khác.
  16. 16. SSIS PACKAGE VỚI SCHEDULE WINDOWS SERVICE 16
  17. 17. WINDOWS SERVICE LÀ GÌ? 17  Windows Service là một chương trình có thể chạy nền (background) với hệ thống.  Cho phép chúng ta có thể cấu hình tự động khởi chạy khi hệ thống khởi động.  Phân quyền tài khoản được phép thực thi service(System, Network Service, Local Service hoặc một tài khoản đặc biệt nào đó)
  18. 18. TẠO WINDOWS SERVICE PROJECT 18  Để tạo mới Windows service chúng ta mở Visual Studio lên -> Chọn menu File -> chọn New -> Project-> Chọn và nhập các thông tin như hình minh họa -> Chọn OK để tạo mới Windows Service
  19. 19. WINDOWS SERVICE (OUTLINE) 19  Sau khi tạo mới project ,VS đã tạo sẵn cho chúng ta một service mới, kế thừa từ Service Base (Class).  Chúng ta có thể đổi lại tên service cho phù hợp.  Windows service đã bao gồm hai hàm kế thừa từ Service Base là OnStart (Xử lý khi khởi chạy dịch vụ), OnStop ( Xử lý khi dừng dịch vụ).  Lưu ý: Chúng ta không thể debug windows service khi chưa cài đặt . Các phần tiếp theo sẽ hướng dẫn cách cài đặt windows service.
  20. 20. THỰC THI SSIS PACKAGE VỚI C# CODE 20
  21. 21. SCHEDULE 21  Để có thể thực thi windows service theo một lịch trình được định nghĩa trước. Bước tiếp theo chúng ta sẽ xây dựng schedule cho windows service.  Timer và sự kiện Elapsed là điểm quan trọng để xử lý schedule cho window service.  Chúng ta sẽ thiết lập các thông số cấu hình cho schedule ở app.config. Sau khi tổng hợp đầy đủ các thông tin cấu hình chúng ta sẽ tính ra giá trị interval cho timer. Mỗi khi timer phát sinh sự kiện Elapsed chúng ta sẽ tiến hành thực hiện job mà mình mong muốn.  Tiếp theo chúng ta khởi tạo timer và bắt sự kiện Elapsed khi trong hàm OnStart của Windows Services. Chúng ta sẽ stop timer trong sự kiện OnStop của windows servicce.
  22. 22. CÀI ĐẶT WINDOWS SERVICE 22  Để cài đặt windows service trước hết chúng ta cần tạo mới lớp xử lý cài đặt trong project bằng cách chọn Add New Item -> chọn Intaller Class.
  23. 23. CÀI ĐẶT WINDOWS SERVICE 23  Sau khi tạo lớp cài đặt chúng ta tiến hành code xử lý cài đặt Windows service theo hình mình họa sau:
  24. 24. CÀI ĐẶT WINDOWS SERVICE 24  Sau khi tạo lớp xử lý cài đặt chúng ta tiến hành build lại project.  Tiếp theo chúng ta sẽ sử dụng công cụ install util để cài đặt:  Vào menu Start chọn Visual Studio Command Prompt  Dùng lệnh cd để di chuyển đến đường dẫn chứa file exe của windows services project đã build.  Để cài đặt chúng ta gõ lệnh: installutil <TenFileExe>  Để remove service chúng ta dùng lệnh: installutil /u <TenFileExe>  Sau khi cài đặt xong chúng ta có thể gõ vào run lệnh services.msc để xem lại thông tin service đã cài đặt.
  25. 25. DEBUG WINDOWS SERVICE 25  Sau khi cài đặt xong windows services chúng ta có thể debug bằng các attach process của windows service vào VS theo hình minh họa sau:
  26. 26. VII. THẢO LUẬN 26 ?
  27. 27. VIII. DEMO 27
  28. 28. 28

×