This is my new Marco color pencil picture.
Draw by me.
Enjoy your life!
Read more...
Thứ Hai, 30 tháng 6, 2014
Thứ Sáu, 6 tháng 6, 2014
CÁC LOẠI BẢNG FACT TRONG DATA WAREHOUSE
CÁC LOẠI BẢNG FACT TRONG DATA WAREHOUSE
Một
bảng sự kiện (fact table) là một bảng gồm các phép đo (measure), số liệu
(metrics) hoặc sự kiện (fact) của quy trình kinh doanh (business process). Những
giá trị định lượng này được sử dụng để biết được business value của doanh nghiệp
và để dự báo kinh doanh trong tương lai của doanh nghiệp đó.
Các
loại bảng fact khác nhau được phân loại như sau:
- Additive:
Additive
fact là những sự kiện được tóm tắt qua tất cả các Dimension trong bảng Fact. Nghĩa
là tất cả các Dimension cần phân tích đều được thể hiện trong bảng Fact. Bảng
Sales_Fact là một ví dụ tốt cho loại Additive fact.
- Semi-Additive:
Semi-Additive
fact là những sự kiện có thể được tóm tắt cho một số Dimension trong bảng Fact
chứ không phải là những bảng khác. Ví dụ như Inventory_Daily_Fact được tóm tắt
thông qua Store_Dimension chứ không phải là Time_Dimension như Sales_Fact.
- Non-Additive:
Non-Additive
fact là những bảng sự kiện không được tóm tắt cho bất kỳ Dimension hiện tại nào
trong bảng Fact.
Ví dụ
như bảng Fact tính toán phần trăm, tỉ lệ.
- Factless Fact Table:
Trong
thực tế, có thể có một bảng Fact mà không chứa phép đo (measure) hay sự kiện
(fact) nào. Các bảng đó được gọi là “Factless Fact tables”.
Ví dụ:
Một bảng Fact mà chỉ có mã sản phẩm và khóa ngày (Product_key & Date_key)
là factless fact. Rõ ràng là không hề có measure nào trong bảng này. Nhưng nhìn
vào bản này có thể thống kê (đếm) được có bao nhiêu sản phẩm bán ra trong một
khoảng thời gian.
***Tóm
lại, một bảng Fact bao gồm các sự kiện tổng hợp thường được gọi là bảng tóm tắt
(Summary tables).
~~~Mai Huynh~~~
Thứ Năm, 29 tháng 5, 2014
Cái chết oan ức của chim ưng
CÁI CHẾT OAN ỨC CỦA CHIM ƯNG
Mờ sáng hôm ấy, Đại Hãn - vị hoàng đế vĩ đại trên thảo nguyên Mông Cổ cùng những chiến tướng vào rừng đi săn. Khu rừng mọi hôm yên ắng, hôm nay bỗng rộn lên tiếng người cười nói, tiếng vó ngựa, tiếng chó sủa… Trên cổ tay Đại Hãn ngất nghểu con chim ưng mà ông rất mực yêu quý.
Vào thời đó, chim ưng được huấn luyện để đi săn. Chỉ cần nghe hiệu lệnh của chủ nhân là con chim bay vút lên cao nhìn dáo dác xung quanh tìm kiếm con mồi. Nếu phát hiện thấy nai hoặc thỏ, nó sẽ lao xuống như tên bắn và vồ chặt chúng. Mặt trời bắt đầu khuất dần sau các dãy núi nhưng Đại Hãn và đoàn tùy tùng vẫn chưa săn được nhiều con mồi như mong đợi.
Nóng lòng, Đại Hãn thúc ngựa vượt lên phía trước tách khỏi đoàn. Ông đã quá quen thuộc với khu rừng này. Trong khi mọi người tiếp tục đi theo con đường cũ thì ông lại chọn con đường xa hơn, chạy xuyên qua thung lũng giữa 2 dãy núi.
Sau nhiều giờ quần thảo trên ngựa dưới sức nóng của buổi chiều hè, hoàng đế bắt đầu cảm thấy khát nước. Con chim ưng vụt khỏi cổ tay ông và lao vút đi, ông tin là nó sẽ tìm được đường quay về. Chợt ông thấy có nước rỉ ra từ một ghềnh đá. Đại Hãn xuống ngựa, lấy từ trong túi săn một cái cốc nhỏ bằng bạc rồi bước đến hứng những giọt nước đang rỉ ra.
Ông kiên nhẫn và biết rằng phải lâu lắm cốc nước mới đầy. Miệng ông khát đắng nên không kịp chờ nước đầy ly, ông vội đưa ngay lên miệng chuẩn bị uống. Bất thình lình, một âm thanh vút lên từ trên không và một vật xẹt ngang tay ông, chiếc ly rơi xuống đất. Thì ra đó là con chim ưng yêu quý của ông. Con chim ưng bay tới bay lui thêm vài lần rồi buông cánh đậu giữa các vách đá bên khe nước.
Đại Hãn nhặt chiếc ly lên và một lần nữa đưa vào hứng lại từng giọt. Lần này ông không đợi lâu hơn. Khi hứng được gần nửa ly, ông nâng ly lên miệng nhưng trước khi chiếc cốc chạm vào môi, con chim ưng lại bay vụt xuống và làm rớt ly nước khỏi tay ông. Đại Hãn bắt đầu nổi giận. Ông tiếp tục lần nữa và lần thứ ba con chim ưng lại đánh đổ ly nước. Đại Hãn vô cùng giận dữ, hét lớn:
- Con vật khốn kiếp kia, sao ngươi dám làm như thế?
Đừng để ta bắt được ngươi, không thì ta sẽ vặn cổ ngươi đó! Và rồi ông hứng lại ly nước khác. Lần này trước khi đưa lên miệng uống, ông rút gươm cầm trên tay.
- Nào, đây là lần cuối cùng ta chịu đựng ngươi đó!
- Đại Hãn nóng giận hét lên thành lời. Gần như ông vừa dứt hết câu, con chim lao nhanh xuống và hất mạnh ly nước. Giờ đây, nhà vua không tha thứ được nữa. Một lằn sáng vút lên và thanh gươm của ông chém trúng con chim.
Con chim đáng thương nằm quằn quại và giẫy chết dưới chân chủ nhân nó. Không chút xót thương, Đại Hãn gằn giọng:
- Cái chết thật xứng đáng với tội láo xược của nhà ngươi.
Khi phát hiện chiếc ly bị rơi vào giữa 2 tảng đá và ông không thể với lấy nó được, ông tự nhủ ‘Ta sẽ uống nước tại con suối’. Và ông bắt đầu leo lên sườn đá dốc, ngược theo dòng nước chảy để lần đến con suối.
Khi đến nơi, con suối mà ông nghĩ thực ra chỉ là một vũng nước nhỏ, nhưng vật nằm trong đó đã làm nước trào hẳn ra ngoài. Và chính vật này khiến Đại Hãn hoảng sợ thật sự: Một con rắn lớn, nổi tiếng là loài cực độc, đang nằm chết rữa giữa vũng nước. Đại Hãn đứng khựng lại, quên cả cơn khát cháy cổ.
Ông đau đớn khi nghĩ đến hành động vừa rồi của mình, cơn tức giận nhất thời đã khiến ông vung gươm giết chết con chim yêu quý - chỉ vì nó muốn cứu mạng ông. Kể từ đó, hình ảnh con chim ưng giẫy chết trong vũng máu luôn nhắc nhở ông đừng bao giờ hành động điều gì trong cơn tức giận.
(ST)
Thứ Hai, 26 tháng 5, 2014
THIẾT KẾ LUẬN LÝ VÀ VẬT LÝ CỦA KHO DỮ LIỆU
THIẾT KẾ LUẬN LÝ VÀ VẬT LÝ CỦA KHO DỮ LIỆU
Thiết kế luận lý – Logical Design:
Thiết kế luận lý thể hiện các mối quan hệ (relationship) giữa
các đối tượng. Kỹ thuật mô hình thực thể và mối kết hợp (ER: Entity –
relationship) có thể được sử dụng cho các thiết kế luận lý của Kho dữ liệu. Mô
hình ER liên quan đến việc xác định các thực thể - entities (đối tượng quan trọng),
thuộc tính – attributes (các thuộc tính về đối tượng) và các mối quan hệ - relationship
giữa chúng. Hình bên dưới là một ví dụ về thiết kế luận lý – mô hình ERD
![]() |
| ERD for Northwind |
![]() |
| ERD for Walmart |
Một thực thể là một đoạn thông tin mà ánh xạ (map) đến một bảng
– table trong Cơ sở dữ liệu. Một thuộc tính là một phần của một thực thể mà được
ánh xạ đến một cột – column trong Cơ sở dữ liệu.
Một định danh duy nhất (unique identifier) được sử dụng để đảm
bảo dữ liệu phù hợp và không bị trùng lắp.
Thiết kế vật lý – Physical Design:
Thiết kế vật lý thể hiện phương thức hiệu quả để lưu trữ và
lấy dữ liệu. Trong thiết kế vật lý, thiết kế luận lý cần được chuyển đổi thành
một mô tả của các cấu trúc cơ sở dữ liệu vật lý. Hay nói cách khác, thiết kế vật
lý tác động đến môi trường vật lý của dữ liệu, và được chuyển hóa từ cấu trúc của
thiết kế luận lý trước đó. Tương tự như hình sau:
![]() |
| DW for Northwind |
![]() |
| DW for Walmart |
Thiết kế vật lý liên quan đến việc tạo ra các đối tượng cơ sở
dữ liệu như bảng – table, cột – column, chỉ mục – index, khóa chính – primary key,
khóa ngoại – foreign key, quan điểm – view, sequence – trình tự, phân vùng – partition…
Cuối cùng, hình sau sẽ khái quát hơn về thiết kế luận lý và
vật lý:
~~~MH~~~
Thứ Bảy, 17 tháng 5, 2014
Chương 2. Kiến trúc kho dữ liệu
Chapter 2: Kiến trúc kho dữ liệu
1. Kiến
trúc 1 tầng
-
Kiến trúc 1 tầng không qua bước ETL
-
Người dùng cuối truy xuất dữ liệu từ các
hệ thống xử lý nghiệp vụ thông qua kho dữ liệu
-
Mức kho dữ liệu có nhiệm vụ tổng hợp dữ
liệu từ các hệ thống xử lý nghiệp vụ mà không qua bước ETL
2. Kiến
trúc 2 tầng
-
Kiến trúc 2 tầng có bước chuyển dạng và
tích hợp
-
Bước 1: Lấy dữ liệu từ các hệ thống
nguồn khác nhau
-
Bước 2: Chuyển dạng và tích hợp các dữ
liệu từ các hệ thống nguồn khác nhau trước khi đưa vào kho dữ liệu
-
Bước 3: Kho dữ liệu là một cơ sở dữ liệu
chỉ đọc. Tổ chức kho dữ liệu để hỗ trợ quyết định. Kho dữ liệu
chứa cả dữ liệu tổng hợp và dữ liệu chi tiết.
-
Bước 4: Người sử dụng truy xuất kho dữ
liệu bằng các phương tiện khác nhau như công cụ phân tích và ngôn ngữ
truy vấn.
3. Kiến
trúc 3 tầng
-
Kiến trúc 3 tầng có bước ETL, phân theo
chủ đề Data mart
-
Với kiến trúc 3 tầng, dữ liệu được làm
sạch, xử lý để đưa vào kho dữ liệu
-
Kho dữ liệu phân ra thành những kho dữ
liệu theo chủ đề(Data mart), đây là việc cần thiết cho những ứng dụng
hỗ trợ ra quyết định theo từng nhóm người sử dụng.
4. Hệ hỗ
trợ ra quyết định
Hệ hỗ trợ ra quyết định mức tổng quát gồm 3 tầng:
-
Tầng 1: Kho dữ liệu
-
Tầng 2: Hệ quản trị OLAP: ROLAP, MOLAP,
HOLAP
-
Tầng 3: Tầng người dùng hỗ trợ các công
cụ truy vấn, báo cáo, phân tích, khai phá dữ liệu
Chức năng:
-
Hệ hỗ trợ ra quyết định giúp những người
lãnh đạo, quản lý và phân tích làm việc hiệu quả hơn
-
Hỗ trợ cho việc ra quyết định trong quản
lý, kinh doanh một cách có hiệu quả và nhanh chóng
5. Phân
tích kiến trúc 3 tầng
5.1 Operational
Source Systems
-
Các
nguồn dữ liệu thường nằm trong hệ thống xử lý giao dịch trực tuyến
OLTP(On-Line Transaction Processing), hay còn gọi là TPS(Transaction
Processing Systems)
-
Hiệu
suất và tính sẵn sàng ở mức độ cao
-
Thường
truy vấn một bảng ghi tại một thời điểm(one-record-at a time), có thể
hiểu là truy vấn tại một thời điểm nhất định
-
Đây là
hoạt động thông thường của các tổ chức
-
Với một
hệ thống OLTP thì đáng tin cậy và phù hợp, nhưng giữa các hệ thống
OLTP khác nhau thường có những xung đột nhất định
-
Các loại
định dạng dữ liệu và cấu trúc dữ liệu khác nhau trong các hệ thống
OLTP khác nhau
Theo giả định của
Kimball và cộng sự thì:
-
Hệ thống
nguồn không được truy vấn rộng và đột xuất
-
Duy trì
dữ liệu lịch sử rất ít(dữ liệu quá khứ, hiện tại…)
5.2 Data Staging Area
-
Thường
là phần phức tạp nhất trong kiến trúc, và liên quan đến:
o
Extraction
(E - Trích xuất)
o
Transformation
(T – Chuyển đổi)
o
Load (L –
Tải)
o
Indexing
(lập chỉ mục)
-
Công cụ
ETL (ETL – tools) có thể được sử dụng
-
Kịch bản
cho trích xuất, chuyển đổi và tải được thực hiện
Extraction:
-
Có nghĩa
là đọc và hiểu các nguồn dữ liệu và sao chép các dữ liệu cần
thiết cho kho dữ liệu vào khu vực trung gian (Staging Area) cho thao tác
tiếp theo: thao tác chuyển đổi
Transformation:
-
Chuyển
dạng/chuyển đổi dữ liệu (ghi rõ quy tắc chuyển đổi để chuyển sang
định dạng dữ liệu phổ biến và thuật ngữ phổ biến)
-
Làm sạch
dữ liệu
o
Làm kỹ
dữ liệu (sử dụng kiến thức tên miền cụ thể, ví dụ: địa chỉ bưu
chính để kiểm tra dữ liệu)
o
Kiểm
toán dữ liệu (khám phá mẫu nghi ngờ, phát hiện hành vi vi phạm các
quy định đã nêu ra)
-
Kết hợp
dữ liệu từ nhiều nguồn khác nhau
-
Gán vào
kho
-
Tập hợp
dữ liệu
Load:
-
Tải dữ
liệu vào kho dữ liệu
5.3 Data Presentation Area
5.3.1
OLAP là
gì?
-
Viết tắt
của On-Line Analytical Processing – Xử lý phân tích trực tuyến
-
Là một
hệ thống hỗ trợ ra quyết định (DSS) có hỗ trợ truy vấn, cho phép
các nhà quản lý và các nhà phân tích tương tác xử lý dữ liệu.
-
Giúp
người dùng dễ dàng và nhanh chóng thao tác và hình dung dữ liệu
thông qua tầm nhìn đa chiều, tức là các quan điểm khác nhau.
5.3.2
Mô hình đa chiều so với Mô hình dạng
chuẩn 3
Mô hình dạng chuẩn
3:
-
Một kỹ
thuật thiết kế luận lý, loại bỏ dữ liệu dư thừa để giữ sự nhất
quán và hiệu quả lưu trữ, làm cho giao dịch đơn giản
-
Mô hình
ER cho doanh nghiệp thường phức tạp. Ví dụ như họ thường có hàng
trăm, thậm chí hàng nghìn thực thể/bảng
Mô hình đa chiều:
-
Một kỹ
thuật thiết kế luận lý các dữ liệu hiện tại một các trực quan,
tức là dễ dàng hơn để điều hướng cho người dùng
-
Cho phép
truy cập/truy vấn hiệu suất cao (độ phức tạp của mô hình chuẩn 3 lấn
át các hệ thống cơ sở dữ liệu tối ưu, có nghĩa là hiệu suất kém)
-
Mục tiêu
của mô hình dữ liệu hỗ trợ ra quyết định
5.3.3
Data marts
-
Data mart
là kho dữ liệu có chủ đề
-
Dạng thu
nhỏ của kho dữ liệu, chia kho dữ liệu thành các kho nhỏ khác nhau.
Ví dụ: Bán hàng, Nhân sự, Tài chính…
-
Một mô
hình đa chiều có kho dữ liệu lớn thường bao gồm 10-25 data mart. Mỗi
data mart sẽ có 5-15 bảng chiều.
-
Data mart
có lượng dữ liệu rất nhỏ, các nguồn dữ liệu ít hơn
-
Dữ liệu dễ
dàng hơn cho quá trình làm sạch, roll-out nhanh hơn
-
Cho phép
tiếp cận “trọn vẹn” với những vấn đề tích hợp rất lớn liên quan
đến việc tạo ra mô hình dữ liệu rộng cho doanh nghiệp
Data mart độc lập
và phụ thuộc
5.3.4
ROLAP/MOLAP
servers
Extended Relational
DBMS (ROLAP Servers)
-
Dữ liệu
được lưu trữ trong RDB (Relational DB)
-
Lược đồ
hình sao
-
Hỗ trợ
phần mở rộng SQL
-
Cấu trúc
chỉ mục
Multidimensional DBMS
(MOLAP Servers)
-
Dữ liệu
được lưu trữ theo mảng (mảng n chiều)
-
Truy cập
trực tiếp đến cấu trúc dữ liệu mảng
-
Thuộc
tính chỉ mục tối ưu
-
Sử dụng
lưu trữ kém, đặc biệt là khi các dữ liệu thưa thớt
5.4 Metadata Respository – kho lưu trữ siêu dữ
liệu
Metadata – dữ liệu
của dữ liệu/thông tin về dữ liệu. Chức năng chính:
-
Định
nghĩa dữ liệu
-
Nguồn
gốc của dữ liệu
-
Cấu trúc
của dữ liệu
-
Quy tắc
cho việc lựa chọn và chuyển dữ liệu
-
Dữ liệu
định tính và định lượng về dữ liệu
Nguồn hoàn chỉnh
tích hợp của metadata:
-
Là trung
tâm của kiến trúc kho dữ liệu
-
Hỗ trợ
các nhu cầu thông tin của:
o
System
developers
o
Data
adminstators
o
System
administrators
o
Users
o
Applications
on the data warehouse
-
Cấu trúc
dữ liệu rất phức tạp
-
Phải có
lịch sử phiên bản đầy đủ
-
Luôn luôn
được cập nhật
Metadata life cycle activities – hoạt động chu kỳ siêu dữ liệu
-
Thu thập
o
Xác định
và nắm bắt siêu dữ liệu trong một kho lưu trữ trung tâm
-
Bảo trì
o
Thiết
lập quy trình để đồng bộ hóa siêu dữ liệu với cấu trúc dữ liệu
thay đổi
-
Triển
khai
o
Cung cấp
siêu dữ liệu cho người dùng với mẫu và công cụ đúng
Phân loại siêu dữ
liệu
-
Adminstrative
metadata
o
Gồm các
thông tin cần thiết cho việc thiết lập và sử dụng một DW
o
Ví dụ:
thông tin về CSDL nguồn, lược đồ DW, chiều, cấp bậc, kịch bản trích
xuất, chuyển đổi, tải…
-
Business
metadata
o
Điều
kiện và định nghĩa kinh doanh, quyền sở hữu dữ liệu
-
Operational
metadata
o
Thông tin
thu thập được trong quá trình hoạt động
của DW
o
Ví dụ
như thống kê sử dụng, báo cáo lỗi
5.5 End User Applications
-
OLAP
tools, BI apps, DSS
-
Query/Reporting
tools
-
Data
mining
Chức
năng của công cụ OLAP
-
Drill-down
-
Drill-up/Roll-up/Consolidate
-
Drill-across
-
Slicing
and Dicing
-
Pivoting
-
Ranking
Business Intelligence
(BI) apps
-
Strategic
o
Who:
Strategic leaders
o
What: xây
dựng chiến lược và giám sát hoạt động của công ty
o
Examples:
bảng cân đối, kế hoạch chiến lược
-
Operational
o
Who: Operational
managers
o
What: thực
hiện mục tiêu chiến lực
o
Examples:
ngân sách, phân tích dự báo bán hàng
-
Analytical
o
Who:
analysts, knowledge, worker, controller
o
What: ad-hoc
analyis
o
Examples: phân
tích tài chính và bán hàng, phân khúc khách hàng…
Problems of Data
Warehousing
-
Sự phức
tạp của tích hợp
o
Vấn đề
tiềm ẩn với hệ thống nguồn
o
Đồng
nhất dữ liệu
o
Đánh giá
thấp tài nguyên cho việc tải dữ liệu
-
Dữ liệu
yêu cầu không lấy được
-
Bảo trì
cao
-
Các dự
án trong thời gian dài
*****MH*****
Thứ Bảy, 12 tháng 4, 2014
Các loại lược đồ của Kho dữ liệu
DATA
WAREHOUSE DIMENSIONAL MODELLING (TYPES OF SCHEMAS)
< Các
loại lược đồ của Kho dữ liệu >
Có 4
loại lược đồ có sẵn trong Kho dữ liệu. Trong đó các lược đồ hình sao chủ yếu được
sử dụng trong các mẫu thiết kế kho dữ liệu. Các lược đồ kho dữ liệu chủ yếu được
sử dụng sau lược đồ hình sao đó là lược đồ bông tuyết.
***STAR
SCHEMA***
Một
lược đồ hình sao gồm 1 bảng Fact (bảng sự kiện) nằm ở trung tâm và được bao
quanh bởi những bảng Dimension (bảng chiều). Dữ liệu của lược đồ hình sao không được chuẩn
hóa. Các câu hỏi nhằm vào bảng Fact và được cấu trúc bởi các bảng Dim.
Ưu
điểm: Fact và Dim được mô tả rõ ràng, dễ hiểu. Bảng Dim là dữ liệu tĩnh. Bảng
Fact là dữ liệu động, được nạp vào bằng thao tác. Lược đồ hình sao còn giúp cải
thiện hiệu suất truy vấn. Dễ sử dụng, trực quan là ưu điểm của lược đồ hình
sao. Khóa của Fact được tạo bởi khóa của các bảng Dim. Nghĩa là khóa chính của
các bảng Dim chính là khóa của bảng Fact như hình vẽ.
Khuyết
điểm: Các chiều không được chuẩn hóa.
Ví dụ:
Như hình vẽ chúng ta có các bảng Dimension (bảng chiều) là Time, Store ,
Product và bảng Fact (bảng sự kiện) . Các bảng Dim thể hiện các trường hợp mà
chúng ta cần phân tích như thời gian nào, cửa hàng nào, sản phẩm nào. Lưu ý, một
bảng Dim tiên quyết mà khi xây dựng Data Warehouse phải có đó là Time. Còn bảng
Sales Facts thể hiện cái gì mình cần phân tích như bao nhiêu Units, bao nhiêu
Dollars. Từ 4 bảng nào ta lấy được gì? Ví dụ ông sếp muốn biết sản phẩm nào của
siêu thị Coop Cống Quỳnh đem lại doanh thu cao nhất vào tháng 4/2014. Thì chúng
ta lấy ở đâu? Tháng 4/2014 lấy từ Time Dim. Sản phẩm lấy từ Product Dim. Siêu
thị Coop Cống Quỳnh lấy từ Store Dim. Và Doanh thu lấy từ Sales Fact (Dollars).
***SNOW
FLAKE SCHEMA***
Một
lược đồ bông tuyết là dạng mở rộng của lược đồ hình sao bằng cách bổ sung các
Dimension. Bảng Fact giống lược đồ hình
sao. Bảng Dim được chuẩn hóa. Các chiều được cấu trúc rõ ràng. Một bảng Dim được
chia thành chiều chính hay chiều phụ thì đó là dạng bông tuyết hoặc hình sao mở
rộng.
Ưu
điểm: Là dạng cải tiến của lược đồ hình sao. Số chiều được phân cấp thể hiện dạng
chuẩn của bảng Dim.
Khuyết
điểm: Cấu trúc phi dạng chuẩn của lược đồ hình sao thích hợp hơn cho việc duyệt
các chiều.
Ví dụ:
Với bảng Fact như lược đồ sao, còn bảng Dim được mở rộng như hình vẽ. Bây giờ lấy
ví dụ một nhánh Product như sau: Nhìn trên lược đồ sao ta biết được sản phẩm
nào với nhãn hàng nào. Nhưng nếu số lượng sản phẩm lên đến hàng nghìn sản phẩm,
hàng trăm loại hàng hoặc ông sếp muốn thay đổi hoặc tách, thêm loại hàng cho sản
phẩm cũ thì chuyện gì sẽ xảy ra? Không thể thay đổi trong cùng một bảng Product
như trước. Lúc này buộc phải tách Product và Product Category thôi. Và dữ liệu
lúc này đã được chuẩn hóa. Nếu muốn thay đổi chỉ cần thay đổi ở duy nhất một bảng,
không ảnh hưởng gì đến dữ liệu chung.
***GALAXY
SCHEMA***
Lược
đồ này chứa nhiều bảng Fact cùng sử dụng chung một số bảng Dim. Lược đồ này là
sự kết hợp của nhiều Data Mart.
Ví dụ:
Ở đây chúng ta có 2 Data Mart đó là Sales (bán hàng) và Purchase (mua hàng) đều
dùng chung bảng Time Dim và Product Dim nên khi vẽ kết hợp 2 Data Mart khác
nhau thì sẽ có hình như trên.
***FACT
CONSTELLATION SCHEMA***
Ở lược
đồ này thì Dimension trong lược đồ được tách biệt thành Dimension độc lập dựa
trên các cấp độ của hệ thống phân cấp. Ví dụ Geo có 5 cấp Region, Branch, Area,
Province, District thay vì chỉ có một Geo chung.
Theo
Folkstalk
---Mai
Huynh biên soạn---
Thứ Bảy, 8 tháng 3, 2014
Chapter 1: Tổng quan về kho dữ liệu
Chapter 1: Tổng quan về kho dữ liệu
1. Data Warehousing là gì?
-
Data Warehousing - Lưu kho dữ liệu không phải
là một sản phẩm, nhóm sản phẩm. Nó giúp trả lời câu hỏi làm thế
nào để ra quyết định tốt nhất, nhưng nó chỉ là một phần của toàn
bộ quy trình hệ thống.
-
Lưu kho dữ liệu là việc thiết kế và thực
hiện các quy trình, công cụ và cơ sở để quản lý và cung cấp đầy
đủ, kịp thời, chính xác và dễ hiểu thông tin để ra quyết định.
2. Why Data Warehousing?
-
Đối với các tổ chức có lượng dữ liệu
ngày càng lớn thì càng khó truy cập và sử dụng dữ liệu.
-
Dữ liệu trong nhiều định dạng khác nhau,
tồn tại trên nhiều nền tảng khác nhau, và lưu trữ trong nhiều tập tin
khác nhau, cấu trúc cơ sở dữ liệu khác nhau được phát triển bởi các
nhà cung cấp khác nhau.
-
Tổ chức phải viết và duy trì hàng trăm
chương trình để trích xuất, chuẩn bị, hợp nhất dữ liệu để sử dụng
cho nhiều chương trình khác nhau dùng để phân tích và báo cáo.
-
Người ra quyết định muốn khai thác sâu hơn
vào các dữ liệu.
-
Điều này dẫn đến các yêu cầu phát triển
chương trình trích xuất mới hơn. Quá trình này rất tốn kém, không
hiệu quả và tốn thời gian. Data Warehousing cung cấp một phương pháp
tiếp cận tốt hơn.
-
Data Warehousing thực hiện quá trình truy
cập dữ liệu từ các nguồn không đồng nhất; làm sạch, lọc và chuyển
đổi dữ liệu; lưu trữ dữ liệu theo cấu trúc để dễ dàng truy cập,
hiểu rõ và sử dụng.
-
Dữ liệu sau đó được dùng để truy vấn,
báo cáo và phân tích dữ liệu.
-
Khối lượng dữ liệu trong kho dữ liệu có
thể rất lớn, đặc biệt khi xem xét các yêu cầu phân tích dữ liệu mang
tính lịch sử.
-
Chương trình phân tích dữ liệu đòi hỏi
phải quét qua khối lượng dữ liệu rất lớn, có thể dẫn đến kết quả
không tốt cho các ứng dụng hoạt động.
è
Do đó có một yêu cầu tách riêng hai môi
trường để giảm thiểu xung đột và sự xuống cấp của hiệu suất trong
môi trường hoạt động.
3. Lịch sử hình thành
-
Khái niệm Data Warehousing được xuất hiện
vào những năm 80, khi mà các hệ thống quản lý cở sở dữ liệu quan
hệ nổi lên như những sản phẩm thương mại.
-
Năm 1988, có một bài báo mô tả định nghĩa
đầu tiên về kiến trúc kho dữ liệu. Bài báo mô tả những công việc đã
thực hiện để thiết kế kho dữ liệu phục vụ chi nhánh IBM tại châu Âu.
-
Đầu thập niên 90, cuộc cách mạng về xử
lý dữ liệu không chỉ là phổ cập kho dữ liệu mà còn tạo điều kiện
để mở rộng khái niệm kho dữ liệu.
-
Thế kỷ 20 – kỷ nguyên của quản lý dựa
trên thông tin.
-
Ngày nay, chúng ta chờ đợi và dự đoán
tương lai dựa trên những phác thảo quá khứ. Nhu cầu về lợi thế cạnh
tranh tăng ca khiến nền tảng để hỗ trợ việc ra quyết định chuyển từ
dữ liệu dạng số sang thông tin và việc này có thể được mô tả bởi
thuật ngữ quản lý dựa trên thông tin.
4. Khái niệm
4.1
OLTP
Hệ thống
OLTP(On-Line Transaction Processing – Xử lý giao dịch trực tuyến)
-
Dữ liệu phát sinh từ các hoạt động hằng
ngày
-
Thu thập xử lý để phục vụ công việc
nghiệp vụ cụ thể của một tổ chức
-
Thường được gọi là dữ liệu tác vụ và
hoạt động thu thập xử lý dữ liệu này
-
Ví dụ: phần mềm kế toán, phần mềm bán
hàng, phần mềm nhân sự, lương,… được nhập liệu thường xuyên bởi những
người dùng cuối và dữ liệu chi tiết tới từng nghiệp vụ, mô hình
thiết kế theo quan hệ thực thể.
4.2
Data warehouse
-
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
-
Kho dữ liệu là nơi dữ liệu được tuyển
tập và lưu trữ:
o
Hướng chủ đề
o
Tích hợp
o
Biến đổi theo thời gian
o
Ổn định
-
Kho dữ liệu dùng để hỗ trợ ra quyết định
trong quản lý
4.3
OLAP
Hệ thống
OLAP(On-Line Analytical Processing – Xử lý phân tích trực tuyến)
-
OLAP là kỹ thuật sử dụng các cube(khối –
thể hiện dữ liệu đa chiều) nhằm cung cấp khả năng truy xuất nhanh đến
dữ liệu của kho dữ liệu. Tạo khối(cube) cho dữ liệu trong các bảng
chiều(dimension table) và bảng sự kiện(fact table) và cung cấp khả năng
thực hiện các truy vấn tinh vi và phân tích cho các ứng dụng client.
- Trong
khi Data warehouse và Data mart lưu trữ dữ liệu cho phân tích, thì OLAP
là kỹ thuật cho phép các ứng dụng client truy xuất hiệu quả dữ liệu
này.
- OLAP
cung cấp nhiều lợi ích cho người phân tích như sau:
o Cung
cấp mô hình dữ liệu đa chiều trực quan cho phép dễ dàng lựa chọn,
định hướng và khám phá dữ liệu.
o Cung
cấp một ngôn ngữ truy vấn phân tích, cung cấp sức mạnh để khám phá
các mối quan hệ trong dữ liệu kinh doanh phức tạp.
o Dữ
liệu được tính toán trước đối với các truy vấn thường xuyên nhằm
làm cho thời gian trả kết quả của các truy vấn đặc biệt trở nên
nhanh chóng hơn.
o Cung
cấp các công cụ mạnh mẽ giúp người dùng tạo các khung nhìn mới của
dữ liệu dựa trên một tập các hàm tính toán đặc biệt.
- OLAP
được đặt ra để xử lý các truy vấn liên quan đến lượng dữ liệu rất
lớn mà nếu cho thực thi các truy vấn này trong hệ thống OLTP sẽ không
thể cho kết quả hoặc sẽ mất rất nhiều thời gian.
5. Các đặc tính của kho dữ liệu
5.1 Subject Oriented – Hướng chủ đề
-
Kho dữ
liệu được thiết kế để hỗ trợ trong việc phân tích dữ liệu
-
Được tổ
chức xung quanh các chủ đề chính như: khách hàng, sản phẩm, bán
hàng,…
-
Loại bỏ
những dữ liệu không hữu ích cho trình ra quyết định
à Việc này giúp cho người dùng hướng theo
một chủ đề nhất định giúp xác định được những thông tin cần thiết
trong hoạt động của mình.
5.2 Integrated – Tích hợp
-
Là đặc
tính quan trọng nhất của kho dữ liệu
-
Dữ liệu
được tập hợp từ nhiều nguồn khác nhau:
o
Cở sở
dữ liệu quan hệ(relational databases), flat files, các bảng ghi toàn tác
trực tuyến. à Điều này sẽ
dấn đến việc trong quá trình tập hợp dữ liệu phải thực hiện việc
làm sạch, sắp xếp, rút gọn dữ liệu.
5.3 Non Volatile – Ổn định
-
Được lấy
từ nhiều nguồn dữ liệu của hệ thống tác nghiệp có sẵn
-
Kho dữ
liệu tách rời vật lý với môi trường tác nghiệp, nên dữ liệu trong
kho dữ liệu là dữ liệu chỉ đọc, không chỉnh sửa hoặc thêm mới được.
5.4 Time Variant – Biến đổi theo thời gian
- Dữ
liệu quá khứ và hiện tại
- Mỗi
dữ liệu trong kho dữ liệu đều được gắn với thời gian và có tính
lịch sử
*** Dữ liệu
trong kho dữ liệu rất lớn và không được thêm, xóa, sửa dữ liệu.
6. Mục đích của kho dữ liệu
- Kho
dữ liệu phải đáp ứng những yêu cầu sau:
o Phải
có khả năng đáp ứng mọi yêu cầu về thông tin của người sử dụng.
o Hỗ
trợ để các nhân viên của tổ chức thực hiện tốt, hiệu quả công việc
của mình.
o Giúp
cho tổ chức xác định, quản lý và điều hành dự án, các nghiệp vụ
một các hiệu quả và chính xác.
- Tích
hợp dữ liệu và các siêu dữ liệu từ nhiều nguồn khác nhau.
- Dùng
trong các hệ thống hỗ trợ quyết định(DSS), các hệ thống thông tin
tác nghiệp hoặc hỗ trợ cho các truy vấn đặc biệt.
7. Các thành phần kho dữ liệu
7.1 Methodology – Phương
pháp luận
- Đảm
bảo sự thành công của kho dữ liệu
- Thúc
đẩy việc phát triển
- Cung
cấp một hướng ổn định cho kho dữ liệu lớn:
o An
toàn
o Quản
lý được
o Kiểm
chứng tốt
o Ấn
tượng tốt
7.2 Design and Modeling –
Thiết kế và mô hình hóa
- Các
điểm khác của kho dữ liệu so với các hệ thống OLTP
o Thiết
kế các thành phần phục vụ các yêu cầu phân tích
o Định
hướng chủ đề
- Dữ
liệu được ánh xạ vào thông tin hướng chủ đề
o Nhận
dạng các chủ thể kinh doanh
o Định
nghĩa quan hệ giữa các chủ đề để xây dựng mô hình dữ liệu
- Mô
hình hóa là một quá trình lặp
7.3 ETL(Extract,
Transform, Load)
- Extract:
chọn lựa dữ liệu bằng nhiều hình thức
- Transform:
xác nhận hợp lệ, làm sạch, tích hợp và dữ liệu nhãn thời gian
- Load:
nạp dữ liệu vào kho dữ liệu
7.4 Data Management
- Các
công cụ phục vụ cho việc quản lý một cách hiệu quả
- Các
yêu cầu:
o Mềm
dẻo
o Tự
động
o Hiệu
quả
- Quản
lý phần cứng, hệ điều hành và mạng
7.5 Data Access and
Analysis
- Các
công cụ dùng để truy tìm dữ liệu cho việc phân tích kinh doanh
- Các
yêu cầu:
o Dễ
dàng
o Trực
quan
o Siêu
dữ liệu
o Dễ
huấn luyện
8. So sánh OLTP và OLAP
OLTP
Công nghệ: CSDL quan hệ
Chuẩn hóa, không dư thừa
Tập trung vào dữ liệu hiện
tại
Trả lời các truy vấn đơn
Toàn tác: tính toàn vẹn, bảo mật, đồng thời, locking
Trả lời các truy vấn đơn
Toàn tác: tính toàn vẹn, bảo mật, đồng thời, locking
Xử lý giao dịch
Data warehouse & OLAP
CSDL quan hệ, CSDL đa chiều
Chấp nhận dư thừa
Tiền tính toán tổng hợp
Dữ liệu lịch sử
Hỗ trợ phân tích phức tạp
Tích hợp dữ liệu từ đa nguồn
Dữ liệu rất lớn
Các câu hỏi phức tạp
OLTP
|
OLAP
|
|
Users
|
Chuyên viên
|
Các chuyên gia
|
Function
|
Thao tác hàng ngày
|
Hỗ trợ ra quyết định
|
DB Design
|
Hướng ứng dụng
|
Hướng chủ đề
|
Data
|
Hiện thời, cập nhật, chi
tiết, và là các CSDL độc lập
|
Lịch sử, tóm tắt, tích hợp
đa chiều và tổng hợp
|
Access
|
Đọc/ghi/lập chỉ mục
|
Duyệt nhiều lần
|
Unit of work
|
Toàn tác ngắn, đơn giản
|
Câu hỏi phức tạp
|
#Records accessed
|
Vài chục
|
Vài triệu
|
#Users
|
Vài ngàn
|
Vài trăm
|
DB size
|
100MB-GB
|
100GB-TB
|
Các ví dụ về OLTP và OLAP
- Xử
lý giao dịch trực tuyến OLTP
o Số
lượng coca cola vừa được bán
- Xử
lý phân tích trực tuyến OLAP
o Số
lượng coca cola được bán tháng trước tại các cửa hàng phía bắc tỉnh
Thừa Thiên Huế
o Cửa
hàng nào phía bắc tỉnh Thừa Thiên Huế có số lượng coca cola được
bán ra tháng trước lớn nhất
o Tháng
nào trong năm có số lượng coca cola được bán ra nhiều nhất tại tỉnh
Thừa Thiên Huế
9. Data source – Nguồn dữ liệu
- Data
source là các ứng dụng tác nghiệp hoặc các cơ sở dữ liệu tác
nghiệp, và các công cụ chiết xuất, làm sạch và chuyển đổi dữ liệu
- Data
source có thể là một tập tin, hay một cơ sở dữ liệu của một Hệ
quản trị CSDL nào bất kỳ:
o SQL
Server Databases
o Flat
files
o Microsoft
Access Databases
o Microsoft
Excel Worksheets
o Other
OLE DB providers
10. Meta Data – Siêu dữ liệu
- Siêu
dữ liệu là tất cả những thông tin để miêu tả dữ liệu trong môi
trường kho dữ liệu(siêu dữ liệu là dữ liệu của dữ liệu)
Đối với nhóm kho dữ liệu, siêu
dữ liệu gồm:
- Thư
mục về những gì có trong kho dữ liệu
o Thư
mục chỉ rõ nơi lưu trữ dữ liệu: thư mục là chỉ mục dùng cho câu truy
vấn thiên về việc tìm kiếm những thông tin đúng
- Những
ánh xạ tương ứng giữa tác vụ và các thao tác trong kho dữ liệu
- Dữ
liệu được đưa vào kho dữ liệu phải ở dạng chuẩn và phải theo những
quy ước của kho dữ liệu. Nghĩa là phải được làm sạch.
- Những
luật dùng để tổng hợp dữ liệu: thuật ngữ dùng để miêu tả dữ liệu,
kỹ thuật tương ứng sử dụng để truy xuất dữ liệu.
- Nguồn
dữ liệu, những luật dùng để suy dẫn nguồn dữ liệu và tạo ra nguồn
dữ liệu.
11. Data Mart
- Data
mart là một dạng thu nhỏ của kho dữ liệu
- Nếu
kho dữ liệu mô tả thông tin của một tổ chức thương mại thì:
o Data
mart mô tả thông tin cho từng phòng ban của tổ chức đó(như phòng kinh
doanh, phòng nhân sự…)
o Hoặc
chứa thông tin cho mỗi chi nhánh của tổ chức
- Data
mart đôi khi không thật sự cần thiết vì chúng có thể làm tốn thời
gian xử lý
- Tuy
nhiên, sử dụng Data mart cho phép thực thi các truy vấn nhanh hơn vì dữ
liệu của chúng ít hơn so với kho dữ liệu.
12. Data mining
- Khai
thác dữ liệu là kỹ thuật không dùng những truy vấn mà là những
thuật toán đặc biệt để phân tích dữ liệu và báo cáo cần khai phá.
- Khai
thác dữ liệu dùng để phân tích dữ liệu thống kê và khám phá tri
thức.
- Phân
tích dữ liệu thống kê phát hiện hình thức khác thường trong dữ liệu
và áp dụng kỹ thuật mô hình thống kê và toán học để giải thích
các mô hình.
- Các
mô hình này được dùng để dự báo và dự đoán.
- Các
loại kỹ thuật phân tích số liệu thống kê bao gồm phân tích tuyến
tính và phi tuyến tính, phân tích hồi quy, phân tích đa biến và phân
tích chuỗi thời gian.
- Việc
khám phá các tri thức giúp tìm ra các thông tin chưa từng biết trong
dữ liệu. Kết quả của nó là khám phá những sự thật kinh doanh không
rõ ràng.
- Khai
thác dữ liệu mang tính định hướng dữ liệu
- Truy
vấn và báo cáo mang tính định hướng phân tích
- Phân
tích đa chiều hỗ trợ phân tích.
13. Ứng dụng của kho dữ liệu
- Theo
cách khai thác truyền thống: các công cụ truy vấn, báo cáo
- Xử
lý phân tích trực tuyến OLAP
- Khai
phá dữ liệu – Data mining
Hệ hỗ trợ ra
quyết định (DSS – Decision Support System)
- DSS
giúp người lãnh đạo, quản lý và phân tích làm việc hiệu quả hơn
- Hỗ
trợ cho việc ra quyết định trong quản lý, kinh doanh 1 cách hiệu quả
và nhanh chóng.
- DSS
mức tổng quát gồm 3 tầng:
o Tầng
1: Data warehouse
o Tầng
2: Hệ quản trị OLAP có thể là ROLAP, MOLAP, HOLAP
o Tầng
3: tầng người dùng hỗ trợ các công cụ truy vấn, báo cáo, phân tích,
khai phá dữ liệu
---Mai Huynh biên soạn---
---Mai Huynh biên soạn---
Đăng ký:
Bài đăng (Atom)






























