123, Example Street, City 123@abc.com 123-456-7890 lasantha.wam

Chủ Nhật, 19 tháng 7, 2015

Hướng dẫn thiết lập SQL Server để kết nối từ xa qua mạng Internet


Hướng dẫn cài đặt và cấu hình SQL Server để kết nối từ xa qua Internet


Hệ quản trị cơ sở dữ liệu Microsoft SQL Server của Microsoft được đánh giá là một trong những hệ quản trị cơ sở dữ liệu tốt và mạnh nhất hiện nay. Nếu bạn là một nhà phát triển ứng dụng cũng như phát triển website trên môi trường Windows thì không thể không biết đến SQL Server.
Khi phát triển các ứng dụng dạng Desktop thì chúng ta thường không quan tâm và thậm chí có thể không cần biết đến tính năng hỗ trợ kết nối từ xa của SQL Server. Nhưng khi bạn phát triển các ứng dụng Web, hoặc các ứng dụng desktop đòi hỏi dữ liệu tập trung tức thì để phục vụ cho việc ra báo cáo mà chương trình thì lại cách xa nhau về mặt địa lý, thì bạn sẽ cần đến tính năng kết nối từ xa của SQL Server. Tính năng này có trên tất cả các phiên bản SQL Server.
Trong bài viết này, tôi thực hiện hướng dẫn cài đặt và cấu hình trên phiên bản SQL Server 2005, các phiên bản khác việc thực hiện tương tự.

Sau khi hoàn thành bài hướng dẫn này:

Bạn có thể cài đặt SQL Server
Bạn có kết nối vào SQL Server cài trên máy tính của bạn từ bất kỳ máy tính nào có nối mạng Internet từ bất cứ đâu.

Các bước thực hiện
Cài đặt SQL Server
Cấu hình SQL Server để mở kết nối từ xa.
Tạo user kết nối
Cấu hình Firewall trên Server cho phép nhận kết nối đến qua cổng kết nối của SQL Server
Cấu hình Router cho phép kết nối đến thông qua cổng của kết nối SQL Server

· Bước 1: Cài đặt SQL Server


* Xem hướng dẫn cài đặt SQL Server 2005 tại link này :http://bis.net.vn/forums/t/47.aspx

· Bước 2: Config SQL Server cho phép kết nối từ xa


Mục đích là kích hoạt tính năng cho phép kết nối từ xa của SQL Server và thiết lập cổng nghe (Listenning Port) cho SQL Server.


Vào Start -> All Programs -> Microsoft SQL Server 2005 -> Configuration Tools -> SQL Server Configuration Manager

Ở menu bên trái, chọn vào mục SQL Server 2005 Services -> Bên phải tìm mục SQL Server (MSSQLSERVER) (chú ý đây là dịch vụ cơ bản của SQL Server, tên của nó tùy thuộc vào Instant của SQL mà bạn cài vào máy, của tôi là MSSQLSERVER, có thể Instant của bạn sẽ khác). Click phải vào và chọn Properties (xem hình)





Trong Tab Log On, click chọn vào Built-In Account, chọn vào Network Service như trong hình, Click OK






Quay lại màn hình SQL Server Configuration Manager -> ở menu bên trái tiếp tục click vào mục SQL Server 2005 Network Configuration để mở ra menu con Protocols for MSSQLSERRVER(tên trên máy bạn có thể khác), chọn vào mục này -> bên phải tìm mục có tên là TCP/IP, click phải vào nó và chọn Properties (xem hình)



Trong cửa sổ mở ra, ở Tab Protocols, mục Enabled chọn vào Yes




Tiếp tục click qua Tab IP Address -> Sẽ xuất hiện list các IP (IP1, IP2,…) đây là danh sách các IP hình thành khi máy bạn có kết nối vào các mạng LAN khác nhau






Hãy chọn một IP nào đó bất kỳ (ví dụ tôi chọn IP1)

· Ở mục IP Address bạn xóa đi và gõ lại địa chỉ IP của máy bạn trong mạng LAN (chú ý đây là địa chỉ IP của máy bạn trong mạng LAN – ví dụ của tôi là 192.168.1.2)

· Ở mục Active - chọn Yes, mục Enabled - chọn Yes

· Ở mục TCP Port, khai báo cổng share mặc định của SQL, bạn có thể để mặc định là 1433

· Click OK

Restart lại SQL Server. (bằng cách chọn vào mục SQL Server 2005 Services, bên phải click phải vào mục SQL Server (MSSQLSERVER) -> Chọn Restart)

· Bước 3: Tạo một user để thực hiện kết nối từ xa


Mở Start -> All Programs -> Microsoft SQL Server 2005 -> SQL Server Management Studio -> Connect vào Server

Ở menu bên trái, mở mục Security -> Login -> Nhấn chuột phải và chọn New Login




Gõ vào Tên User, Password như trong hình, bỏ dấu ở mục Enforce password Expiration -> Nhấn OK





· Bước 4: Cấu hình Firewall cho phép nhận kết nối đến qua cổng share của SQL Server


Mục đích của việc này là để mở cổng Firewall của Windows cho phép nhận kết nối từ bên ngoài qua cổng share của SQL, mặc định là cổng 1433



* Trên WindowsXP

· Vào Control Panel -> Windows Firewall

· Trong Tab Exceptions, click vào nút Add Port để thêm cổng 1433

· Hộp thoại Add Port hiện ra, trong mục Name gõ tên bất kỳ, Port Number gõ số 1433, click chọn vào mục TCP (xem hình dưới)

· Nhấn OK

· Log Off hoặc Restart lại máy







* Trên Windows Vista, Windows 7:

Vào Start -> Control Panel -> Windows Firewall -> Ở menu bên trái chọn Advanced settings

Menu bên trái, click vào mục Inbound Rules

Tiếp tục ở Menu bên phải, click vào mục New Rule
Trong cửa sổ mới hiện ra, đánh dấu vào mục Port như hình -> Nhấn Next






Tiếp theo nhấn chọn vào mục TCP và Specific local Ports, gõ vào 1433 (số cổng share của SQL Server đã config trong bước 2) -> Nhấn Next






Trên màn hình tiếp theo, đánh dấu chọn vào mục Allow the connection -> Nhấn Next





Trong màn hình tiếp theo, chọn kiểu mạng sẽ áp dụng mở cổng này, đánh dấu vào cả 3 mục Domain, Private, Public -> Nhấn Next






Trong màn hình tiếp theo, gõ tên kết nối và Description tùy ý -> Nhấn Finish






Log Off hoặc Restart lại máy

· Bước 5: Cấu hình Router cho phép kết nối qua Port 1433


Mục đích của việc này:

· Mở cổng của Router trên mạng của bạn để cho phép nhận kết nối từ bên ngoài mạng (từ Internet) qua cổng kết nối của SQL Server (Port 1433).

· Chuyển hướng (Forward) kết nối về đến đúng máy mà bạn làm Server khi Router nhận được yêu cầu qua cổng 1433

Tùy loại Router mà bạn đang sử dụng, việc cấu hình có thể khác nhau đôi chút. Ở đây tôi đang thực hiện config trên một loại Router của Dlink. Các loại Router khác bạn có thể tự tìm hiểu thêm. Cách thiết lập trên các loại Router cơ bản là giống nhau, chỉ khác nhau về cách bố trí trên menu thôi.

Đầu tiên mở IE ra và gõ địa chỉ của Gateway -> Enter và đăng nhập vào quản trị Router

Ví dụ: Gateway của tôi là 192.168.1.1 thì tôi gõ vào Address của IE làhttp://192.168.1.1 -> Enter

Hãy đọc hướng dẫn sử dụng kèm theo router của bạn để biết được địa chỉ gateway cũng như user và password đăng nhập vào quản trị.

Menu bên trái, chọn Advanced Setup -> NAT -> Virtual Servers


Click Add và thiết lập như trong hình -> Save






Hãy chú ý các mục mà tôi đánh dấu:

· Custom Server: Tên của thiết lập, do bạn tự đặt tùy ý

· Server IP Address: Đây là địa chỉ IP của máy mà bạn cài làm máy chủ. Ví dụ của tôi là 192.168.1.2

Chú ý: Đây chính là IP của máy mà yêu cầu sẽ được Router chuyển đến. Do đó bạn nên khai báo IP tĩnh cho máy bạn cài làm máy chủ để khỏi phải vào mục này thiết lập lại mỗi khi restart máy.

Xin nhớ rằng đây là IP của máy trong mạng LAN chứ không phải là IP đối với mạng Internet.

· Port Start, Port End là số hiệu của cổng nhận yêu cầu, đều khai báo là 1433

Ở đây sở dĩ có Port Start và Port End là vì Router cho phép bạn Forward trong cả một dải các cổng (từ cổng đến cổng). Đối với kết nối SQL Server chúng ta đang thực hiện thì chỉ cần Port 1433 thôi. Một số loại router có mục Single Port Forwarding – cho phép bạn chỉ cần config một cổng thôi là đủ.

· Mục Protocol: Chọn phương thức kết nối là TCP.



Chú ý: Thường thì phần thiết lập này nằm trong mục NAT (Network Address Translation), hoặc có thể là Port Forwarding,… tùy router.


Đến đây bạn đã hoàn thành việc cài đặt và cấu hình cho phép server nhận kết nối SQL Server từ xa qua cổng 1433.


Để test kết quả:

· Hãy ngồi ở một máy tính nào đó ngoài mạng LAN của bạn, có kết nối Internet.
· Dùng một chương trình quản lý SQL Server (có thể dùng SQL Server Management Studio), gõ vào các thông tin kết nối -> Nhấn Connect





Chú ý một số thông tin:

  • 1. Server name: Đây là địa chỉ của Server nhận kết nối (chính là máy bạn đã cài SQL). Trong hình tôi gõ là 222.252.241.123,1433. Trong đó 222.252.241.123 chính là địa chỉ IP của máy tôi ở trên Internet, 1433 là cổng (Port) share SQL Server của tôi (tùy cổng share của bạn thiết lập, số này có thể khác, nếu bạn dùng 1433 thì có thể không cần gõ vì đây là cổng mặc định)

  • 2. Authentication: Chọn kiểu chứng thực người dùng, có hai chế độ chứng thực là Windows Authentication và SQL Server Authentication. Tuy nhiên để kết nối từ xa thì phải dùng SQL Server Authentication

  • 3. Login: Gõ user name mà bạn đã tạo

  • 4. Password: Mật khẩu tương ứng

Thứ Bảy, 18 tháng 7, 2015

Vấn đề tiền xử lý dữ liệu trong Data Mining


Vấn đề tiền xử lý dữ liệu trong Data Mining

(Data Preprocessing in Data Mining)

Nguyễn Văn Chức – chuc1803@gmail.com

1. Giới thiệu về tiền xử lý dữ liệu (Data Preprocessing)


Trong qui trình khai phá dữ liệu, công việc xử lý dữ liệu trước khi đưa vào các mô hình là rất cần thiết, bước này làm cho dữ liệu có được ban đầu qua thu thập dữ liệu (gọi là dữ liệu gốc original data) có thể áp dụng được (thích hợp) với các mô hình khai phá dữ liệu (data mining model) cụ thể. Các công việc cụ thể của tiền xử lý dữ liệu bao gồm những công việc như:

Filtering Attributes: Chọn các thuộc tính phù hợp với mô hình

Filtering samples: Lọc các mẫu (instances, patterns) dữ liệu cho mô hình

Clean data: Làm sạch dữ liệu như xóa bỏ các dữ liệu bất thường (Outlier) Transformation:Chuyển đổi dữ liệu cho phù hợp với các mô hình như chuyển đổi dữ liệu từ numeric qua nomial hay ordinal

Discretization (rời rạc hóa dữ liệu): Nếu bạn có dữ liệu liên tục nhưng một vài mô hình chỉ áp dụng cho các dữ liệu rời rạc (như luật kết hợp chẳn hạn) thì bạn phải thực hiện việc rời rạc hóa dữ liệu.

Bài viết này mô tả một số công việc cơ bản của quá trình tiền xử lý dữ liệu qua ví dụ cụ thể trên phần mềm Weka nhằm giúp bạn hiểu hơn về Data Preprocessing trong Data mining.

2. Tiền xử lý dữ liệu với Weka (Data Preprocessing with Weka)


Dữ liệu được dùng trong minh họa này là dữ liệu về khách hàng ngân hàng ( file comma-separated format tên bank-data.csv ). Gồm 12 thuộc tính và 600 khách hàng (samples, instances, patterns). Cấu trúc file bank-data.csv như sau: (Download file dữ liệu bank-data.csv tại đây)



Vấn đề đặt ra là để thực hiện mô hình khai phá luật kết hợp (Association Rule Mining) trên file bank-data.csv ta cần phải làm các việc sau :

- Loại bỏ thuộc tính id vì thuộc tính này không dùng trong mô hình. Quá trình này gọi là lọc thuộc tính (Filtering Attribute)

- Rời rạc hóa giá trị của các trường liên tục là “children”,” age” và “income” vì mô hình khai phá luật kết hợp không làm việc với các kiểu dữ liệu liên tục. Quá trình này goi là rời rạc hóa dữ liệu (Discretization)

Nạp dữ liệu (Loading the Data)

Thông thường, định dạng chuẩn file dữ liệu của Weka la file ARFF (Attribute Relation File Format), tuy nhiên rất nhiều DBMS và Spreadsheet cho phép tổ chức file dữ liệu dưới dạng file .csv (comma-separated values) và một điều thuận lợi là Weka cho phép đọc dữ liệu từ file .csv.



Nạp file dữ liệu data-bank.csv: Chọn tab “Preprocess” > Open file



Sau khi dữ liệu được nạp lên, panel bên trái thể hiện các thuộc tính của file dữ liệu, panel bên phải thể hiện các thống kê tương ứng với thuộc tính bên trái (xem hình sau)


2.1. Lọc thuộc tính (Filtering Attributes)


Trong file dữ liệu bank-data.csv, mỗi khách hàng được xác định duy nhất bởi thuộc tính id. Chúng ta cần loại bỏ thuộc tính này trước khi thực hiện các bước tiếp theo trong Association Rule Mining. Công việc này được thực hiện rất dễ dàng trong Weka như sau:

Trong panel Filter > Choose > filters >unsupervised > attribute > Remove





Bước tiếp theo là bấm vào textbox ngay bên phải nút “Choose” và gỏ vào 1 (đây là index của thuộc tính id trong file dữ liệu). Chú ý rằng tùy chọn "invertSelection" phải được thiết lập là false. (xem hình)



Bấm nút “Apply” sẽ tạo ra một liệu mới (working relation) với 11 thuộc tính sau khi đã loại bỏ thuộc tính id. (xem hình sau).



Bạn có thể thực hiện việc lọc nhiều thuộc tính khác nhau tùy theo ứng dụng của bạn theo cách trên.

Bây giờ ta lưu lại dữ liệu sau khi loại bỏ thuộc tính id dưới dạng file arff với tên là "bank-data-R1.arff" .Để thực hiện việc rời rạc hóa dữ liệu ở bước tiếp theo.

Chọn nút “save” và gỏ vào tên file "bank-data-R1.arff" (xem hình sau)



Nội dung file “bank-data-R1.arff như sau (in WordPad)



Chú ý rằng, khi thuộc tính “id” đã bị loại thì tất cả các giá trị của trường id trong các record cũng bị loại.

2.2. Rời rạc hóa dữ liệu (Discretization)


Trong Data Mining, một số kỹ thuật như khai phá luật kết hợp (association rule mining) chỉ có thể thực hiện trên các dữ liệu phân loại (categorical/ nominal data). Điều này yêu cầu phải thực hiện việc rời rạc hóa trên các thuộc tính có kiểu dữ liên tục (như kiểu numeric chẳn hạn) khi muốn áp dụng các kỹ thuật này. Trong file dữ liệu “bank-data-R1.arff” có 3 thuộc tính kiểu số, đó là "age", "income", và "children".

Đối với thuộc tính "children", vì phạm vi giá của nó chỉ có thể là 0,1,2 và 3 cho nên ta có thể giữ lại các giá trị của thuộc tính này. Việc rời rạc hóa cho thuộc tính “children” có thể thực hiện đơn giản bằng cách mở file “bank-data-R1.arff” bằng bất kỳ text editor nào (WordPad chẳn hạn) và thay từ khóa “numeric” bằng các giá trị rời rạc {0,1,2,3}. Sau đó lưu kết quả lại với tên file "bank-data2.arff". (Xem hình)





Bây giờ trên file “bank-data2.arff”, chúng ta sẽ thực hiện việc rời rạc hóa dữ liệu trên 2 thuộc tính là "age" và "income".

Trong ví dụ này, các dữ liệu liên tục trên 2 trường “age” và “income” sẽ được tự động chuyển vào 3 khoảng bins (intervals) như sau

Nạp file dữ liệu “bank-data2.arff”

Chú ý rằng thuộc tính “age” và “income” có kiểu dữ liệu là numeric. Và nếu ta chọn thuộc tính “children” ta sẽ thấy kiểu dữ liệu là nominal (xem hình)



Bây giờ mở lại hộp thoại Filter và chọn: filters.unsupervised.attribute.Discretize



Tiếp theo, bấm chuột vào text box ngay bên phải nút “Choose” và thiết lập các tham số để thực hiện việc rời rạc hóa.

Trong textbox attributeIndices nhập 1 tương ứng với index của thuộc tính “age”

Trong mục bins nhập 3 (tuổi được chia thành 3 khoảng – interval)





Click "Apply" để thực hiện. Kết quả sẽ được tạo ra trong một working relation mới, trong đó các giá trị liên tục trong thuộc tính “age” sẽ được tự động chia vào 3 khoảng có nhãn lần lượt là "(-inf-34.333333]", "(34.333333-50.666667]" “(50.666667- inf)” (xem hình).


Tương tự, ta thực hiện việc rời rạc hóa thuộc tính “income” như sau (xem hình)và sau đó lưu lại file dữ liệu với tên “bank-data3.arff”



Nếu bạn mở file dữ liệu “bank-data3.arff” bằng text editor như wordpad sẽ thấy như sau



Chú ý rằng, kiểu dữ liệu cũng như giá trị của 2 thuộc tính “age” và “income” đã chuyển sang Nominal với 3 khoảng (bin, interval). Kiểm tra thuộc tính “age” ta sẽ thấy rằng có 3 độ tuổi có thể gọi là nhỏ, trung niên, già tương ứng với 3 khoảng là "(-inf-34.333333]", "(34.333333-50.666667]" “(50.666667- inf)”

Chúng ta có thể thay đổi các nhãn mà Weka tự động tạo ra bằng các nhãn dễ hiểu hơn. Chẳn hạn ta thay nhãn "(-inf-34.333333]" bằng 0_34, nhãn "(34.333333-50.666667]" bằng 35_51 và nhãn “(50.666667- inf)” bằng 52-max ta chỉ cần mở file dữ liệu ra bằng text editor có hỗ trợ find and replace (như wordpad chạn hạn) và thực hiện việc tìm kiếm và thay thế như trên.



Đối với thuộc tính “income” ta thay thế các nhãn như sau:

(-inf-24386.173333] thay bằng 0_24386

(24386.173333-43758.136667] thay bằng 24387_43758

(43758.136667-inf)thay bằng 43759_max

Sau khi đã thực hiện và thay thế các nhãn của 2 thuộc tính “age” và “income” ta lưu lại file dữ liệu cuối cùng có tên “bank-data-final.arff”.



Bây giờ, với file dữ liệu đã qua quá trình lọc thuộc tính id và rời rạc hóa dữ liệu trên 3 thuộc tính là “children”, “age” và “income”, bạn có thể thực hiện các kỹ thuật mining chỉ làm việc trên dữ liệu nominal (như association rule mining). Sau đây là kết quả thực hiện thuật toán Apriori để phát hiện luật kết hợp trên file dữ liệu “bank-data-final.arff”. (Xem thêm về khai phá luật kết hợp ở bài Khai phá luật kết hợp với Weka tạihttp://bis.net.vn/forums/t/384.aspx.





PS. All comments please send to chucnv@ud.edu.vn. Thank you and Welcome !

OLAP-Kỹ thuật xử lý phân tích trực tuyến với SQL SERVER




Giới thiệu kỹ thuật xử lý phân tích trực tuyến với SQL SERVER



OLAP (OnLine Analytical Processing) with SQL SERVER


Nguyễn Văn Chức - chuc1803@gmail.com

Trong công nghệ kho dữ liệu (Data Warehouse Technology), OLAP là kỹ thuật để truy xuất dữ liệu chủ yếu trong kho dữ liệu. Dữ liệu trong DW được tổ chức dưới dạng các khối dữ liệu đa chiều (Multi Dimensional Cube) và OLAP được dùng để phân tích trên dữ liệu khối (cube).

Bài viết này trình bày cách triển khai thực hiện kỹ thuật OLAP trên DBMS SQL Server phiên bản 2005 hoặc cao hơn.

1.Giải thích một số thuật ngữ


Dưới đây tóm lược các thuật ngữ được sử dụng trong bài viết:

Data Warehouse (DW): Được xem là tập các cơ sở dữ liệu hướng chủ đề, có tính lịch sử được tích hợp từ nhiều nguồn dữ liệu qua các quá trình trích lọc, hợp nhất, chuyển đổi, làm sạch.

Dữ liệu khối (Data Cube): Dữ liệu trong kho dữ liệu được thể hiện dưới dạng đa chiều (Multi Dimension) gọi là khối (cube). Mỗi chiều mô tả một đặc trưng nào đó của dữ liệu. Ví dụ với Data Cube bán hàng thì chiều hàng hóa (Item) mô tả chi tiết về hàng hóa, chiều thời gian (time) mô tả về thời gian bán hàng, chiều chi nhánh (Branch) mô tả thông tin về các đại lý bán hàng,…

Để rõ hơn về Data Cube, hình dưới đây minh họa Data Cube của dữ liệu bán hàng từ bảng dữ liệu (Spreadsheet) sang dữ liệu dạng khối với 3 dimensions là: Location (Cities), Time (Quarters) và Item (Types)




Lược đồ hình sao (Star Schema): Đây là mô hình biểu diễn dữ liệu của DW, lược đồ hình sao về cơ bản gồm có bảng sự kiện (Fact Table) và các bảng chiều (Dimension table). Fact table đùng để theo dõi các biến động của dữ liệu, cấu trúc của Fact table gồm các khóa ngoại đó là các khóa chính của cả bảng chiều (Dimension table). Dimension Table là các bảng mô tả các đặt trưng của các chiều như chiều thời gian, chiều khách hàng, chiều hàng hóa,…

Dưới đây minh họa lược đồ hình sao của bài toán bán hàng. Đây cũng là dữ liệu dùng để minh họa trong phần tiếp theo khi thực hiện OLAP trên SQL Server. Trong đó Fact table là Sales và 4 Dimension tables là time (chiều thời gian) , item (chiều hàng hóa) , location (chiều bị trí) và branch (chiều chi nhánh)




Measure (độ đo): Là đại lượng có thể tính toán được trên các thuộc tính của fact table. Đây là mục tiêu của OLAP và phải xác định trước khi tiến hành phân tích. Ví dụ như tổng tiền bán hàng của một chi nhánh, doanh thu của từng mặt hàng theo quí,…

Phân cấp (Hierarchies): Khái niệm này mô tả sự phân cấp thứ bậc (mức độ chi tiết của dữ liệu). Ví dụ đối với chiều thời gian, ta có thực bậc như sau: day<week<month<quarter<year. Tương tự đối với chiều location ta có thứ bậc street<city<province_or_state<country. Trong khi phân tích dữ liệu chúng ta rất cần khái niệm này để tổng hợp hay chi tiết từng hạng mục dữ liệu trong DW.





2. Mô tả ứng dụng phân tích OLAP


Bài toán mô tả trong phần này là bài toán bán hàng, gồm có 1 Fact table là Sales và 4 Dimension table là time, item, location và branch (Xem lược đồ hình sao trên).

Fact Table (Sales): Lưu giữ các biến động về quá trình bán hàng, gồm các khóa ngoại của 4 dimension tables và 2 thuộc tính là giá bán (dollars_ sold) và số lượng bán (units_sold)

Các dimension table:
Time: lưu giũ thông tin về thời gian bán hàng.

Location: Lưu giữ thông tin về vị trí

Branch: Lưu trữ thông tin về chi nhánh

Item: Lưu trữ thông tin về hàng hóa

Mục đích mô tả hoạt động OLAP để phân tích hoạt động bán hàng của một doanh nghiệp.

3. Triển khai OLAP trong SQL Server


Lưu ý: Để có công cụ phân tích OLAP, bạn phải cài đặt SQL Server 2005 (2008) phiên bản Developer hoặc phiên bản Enterprise Edition đầy đủ và khi cài đặt nhớ chọn mục “SQLServer Database Services” và “Analysis Services”. Công cụ cho phép thực hiện OLAP là “SQL Server Business Intelligence Development Studio - BIDS”. Khi cài SQL Server các phiên bản trên thì BIDS sẻ được tự động cài đặt.

Các bước thực hiện:

Khởi động SQL Server Management Studio và tạo CSDL có tên DW như sau và nhập vào các bảng một số records để phân tích.




Khởi động SQL Server Business Intelligence Development Studio






Tạo một Analysis Services Project mới có tên “OLAP_DW”






Trong của sổ Solution Explorer của Project OLAP_DW, bấm phím phải chuột vào Data Source để tạo một bộ kết nối đến dữ liệu dùng cho phân tích.






Xác định các tham số kết nối đến kho dữ liệu có tên “DW” đã tạo ra trong SQL Server Management Studio.








Đặt tên cho Data Source vàm bấm Finish để hoàn thành việc kết nối đến cơ sở dữ liệu.

Tạo Data Source View để lấy các bảng dữ liệu cần thiêt cần cho phân tích. Bấm phím phải chuột vào Data Source View trong của sổ Solution Explorer chọn New Data Source View






Xác định nguồn dữ liệu (Data Source) cần lấy là DW mới vừa tạo ra ở bước trước




Chọn Next và chọn các bảng cần cho phân tích



Chú ý: Nếu bạn muốn chọn bảng Fact và các bảng Dimension liên quan đến bảng Fact thì chỉ cần chọn Fact Table đưa qua khung bên phải và bấm nút "Add Related Tables" để tự động lấy các bảng Dimensions liên quan.


Sau khi hoàn thành, các bảng Fact và Dimension như sau:




Sau khi tao Data Source và Data Source View ta tạo dữ liệu khối cho phân tích bằng cách bấm chuột phải lên Cube trong Solution Explorer và chọn New Cube






Chọn Next và chọn nguồn dữ liệu cho Khối (DW), hệ thống sẽ tự động dò tìm fact và Dimension Tables





Kết quả như sau:




Bấm Next để thiết lập chiều thời gian. Chú ý, thời gian là một chiều rất quan trọng trong kho dữ liệu nói chúng và phân tích OLAP. Vì vậy nếu bạn không xác định chiều thời gian thì hệ thống sẽ tự động tạo ra một chiều thời gian để quản lý.






Bấm Next để xác định các độ đo (Measure) cho phân tích. Nhắc lại rằng độ đo là các đại lượng phản ảnh mục tiêu phân tích, tính toán. Đó là các phép toán trên thuộc tính có thể tính toán trong bảng Fact.




Bấm Next, hệ thống sẽ tự động phát hiện các cấu trúc phân cấp (Hierarchies) trong các Dimesion Tables




Xem lại các chiều trong khối






Đặt tên khối (DW)và bấm finish để sinh ra khối. Khối dữ liệu với các chiều được sinh ra






Sau khi tạo ra khối dữ liệu cho phân tích, để thực thi OLAP ta bấm phím phải chuột vào tên project trong Solution Explorer và chọn Deploy






Project được thực thi thành công như sau






Sau khi thực thi xong project, để thực hiện các phân tích OLAP phục vụ cho công tác quản lý, bấm phím phải chuột vào Cube trong Solution Explorer chọn Browse để xuất hiện mà hình phân tích:






Màn hình phân tích OLAP như sau:

Panel bên trái chứa các Measure và các Dimensions đã định nghĩa khi xây dựng khối.

Panel bên phải chia làm 2 cửa sổ, cửa sổ phía trên dùng để xác định các điều kiện để phân tích, cửa sổ phía dưới chứa kết quả các measure khi ta kéo thả (drag and drop) các measure từ panel bên trái qua. Tùy theo mục đích phân tích mà chúng ta xác lập các biểu thức phân tích cho phù hợp.

Ví dụ với thiết lập như dưới đây có nghĩa là yêu cầu cho biết số lần (Sales Count) và tổng số lượng (Unit Sold) hàng mà chi nhánh Danang đã bán.




Thiết lập dưới đây cho biết Mặt hàng của hãng Intel đã được bán bao nhiêu lần với tổng số lượng bao nhiêu tại chi nhánh HCM











Màn hình thiết kế OLAP rất dễ sử dụng và linh hoạt, bạn có thể kéo thả các Dimension và các Measure từ Panel bên trái sang panel bên phải. Ví dụ ta có thể kéo thả thuộc tính Branch Name trong Dimension Branches sang panel bên phải và hệ thống sẽ cho biết số lượng và số lần bán các sản phẩm theo từng chi nhánh như sau:









Tùy theo nhu cầu phân tích dữ liệu, bạn có thể tạo ra các lát cắt (slice) dữ liệu trên nhiều chiều khác nhau để sinh ra các tổng hợp dữ liệu cần thiết cho nhu cầu phân tích dữ liệu trong kho rất nhanh chóng và tiện lợi. Hình dưới đây cho biết số lượng và số lần bán các mặt hàng theo từng chi nhánh dựa trên lát cắt 2 chiều Branches và Items

Các tab Dimension Usage, Caculations, KPIs, Actions, Partitions, Perspectives, translations được dùng để mở rộng khả năng phân tích của OLAP.
Ngoài kỹ thuật phân tích OLAP, SQL Server Business Intelligence Development Studiocòn cung cấp các kỹ thuật để khai phá dữ liệu như Regression, Association, Decision tree, Time Series, Clustering.. trong mục Mining Structure rất mạnh và tiện lợi để xây dựng các mô hình khai phá dữ liệu (sẽ trình bày ở bài viết khác)



All comments please send to chuc1803@gmail.com. Thank you and Welcome!

Popular Posts

Recent Posts

Unordered List

Text Widget