Giới thiệu về kho dữ liệu

Một phần của tài liệu Quá trình ETL trong xây dựng kho dữ liệu cho hệ thống xử lý giám sát trực tuyến của NHTMCP ngoại thương việt nam khoá luận tốt nghiệp 604 (Trang 30)

Kho dữ liệu là kho lưu trữ điện tử của một lượng lớn thông tin của một doanh nghiệp

hoặc tổ chức. Kho dữ liệu là một thành phần quan trọng của phân tích kinh doanh, sử dụng các kĩ thuật phân tích trên dữ liệu doanh nghiệp.

Khái niệm kho dữ liệu được giới thiệu vào năm 1988 bởi 2 nhà nghiên cứu của IBM

là Barry Devlin và Paul Murphy. Nhu cầu lưu trữ dữ liệu phát triển khi các hệ thống máy tính trở nên phức tạp hơn và phải xử lý lượng dữ liệu ngày càng tăng. Một cuốn sách quan trọng về lưu trữ dữ liệu là "Xây dựng kho dữ liệu" của W.H Inmon, được xuất bản lần đầu tiên vào năm 1990 và đã được tái bản nhiều lần kể từ đó.

Kho dữ liệu được sử dụng để cung cấp cái nhìn sâu sắc hơn về hiệu suất của một công ty bằng cách so sánh dữ liệu được hợp nhất từ nhiều nguồn không đồng nhất. Kho dữ liệu được thiết kế để chạy các câu hỏi và phân tích trên dữ liệu lịch sử có nguồn gốc từ các nguồn giao dịch. [4]

DIP.HUYEN

P ' MAHUYEN NUMBER

MATINH NUMBER

T∈NHUYEN VARCHAR2 (2D BYTE) ∣⅛ HUYEN-PK (MAHUYEN)

ộ HUYEN-PK (MAHUYEN)

*

Khóa luận tốt nghiệp

2.1.1. Đặc trưng của kho dữ liệu

Kho dữ liệu hỗ trợ các truy vấn phức tạp, vừa là điểm tập trung dữ liệu từ nhiều nguồn khác nhau để có được thơng tin phân tích đầy đủ nhất. Theo đó kho dữ liệu là một tập hợp dữ liệu hướng chủ đề, toàn vẹn, khơng bị rị rỉ mất mát và có giá trị lịch sử.

Cụ thể các tính chất đó như sau: [5]

Định hướng theo chủ đề (subject-oriented):

Khơng giống như các hệ thống hoạt động, dữ liệu trong kho dữ liệu xoay quanh các

đối tượng của doanh nghiệp (chuẩn hóa cơ sở dữ liệu). Định hướng theo chủ đề có thể thực sự hữu ích cho việc ra quyết định. Tập hợp các đối tượng cần thiết được gọi là hướng đối tượng.

Tính tích hợp (integrated):

Data Warehouse giải quyết các khó khăn trong việc kết hợp dữ liệu từ nhiều nguồn dữ liệu khác nhau, giải quyết các sai khác về tên trường dữ liệu (dữ liệu khác nhau nhưng

tên giống nhau), ý nghĩa dữ liệu (tên giống nhau nhưng dữ liệu khác nhau), định dạng dữ liệu.

Tính biến đổi theo thời gian (time-variant):

Mặc dù các hệ thống vận hành phản ánh các giá trị hiện tại khi chúng hỗ trợ các hoạt động hàng ngày, dữ liệu trong kho dữ liệu biểu thị dữ liệu trong một khoảng thời gian dài (có thể lên tới hàng chục năm) có nghĩa là nó lưu trữ lịch sử của dữ liệu. Dữ liệu này dùng để khai thác và dự báo. Nếu người dùng đang tìm kiếm mơ hình mua của một khách hàng cụ thể, người dùng cần xem dữ liệu về các giao dịch mua hiện tại và cả quá khứ.

Tính ổn định (non-volative):

Dữ liệu được tập hợp từ nhiều nguồn khác nhau địi hỏi phải có tính ổn định cao. Dữ liệu phải thống nhất theo thời gian (bằng cách hạn chế tối đa sửa đổi hoặc xoá dữ liệu), từ đó làm tăng quy mơ dữ liệu lên đáng kể so với hệ thống nghiệp vụ.

Lê Huy Hoàng - 19A4040064 Page | 15

Khóa luận tốt nghiệp

2.1.2. Mơ hình kho dữ liệu

Căn cứ vào cách thức lưu trữ dữ liệu, chúng ta chia mơ hình dữ liệu theo: [5]

DVF-TmiONGHIEU

THUONGHIEUID NUMBER

____________________DVF-NHASX _____________

P - NSXlD NUMBER

F THUONGHIEUID NUMBER

TENNSX VARCHAR2 (200 BYTE)

F DIACHINSX VARCHAR2 (20 BYTE)

_________________DVF-FACT___________ PF*NGAYTHANGID NUMBER F NSXlD NUMBER SOLUONG NUMBER DONGIA NUMBER F CUAHANGID NUMBER Ỉ FACT-FKI (NGAYTHANGID) FACT—FK2 (NSXID) FACT-FKS (CUAHANGID) Hình 3. Sơ đồ hình sao

- Sơ đồ hình sao bao gồm một bảng Fact và các bảng Dim bao quanh - Dữ liệu thường không được chuẩn hóa

- Các truy vấn nhằm vào bảng Fact và được cấu trúc bởi các bảng Dim - Fact chứa các thông tin cơ sở ở mức tác nghiệp mà các ứng dụng cần thiết

- Dim chứa các thông tin mô tả, các dữ liệu cần thiết cho việc thực hiện tác nghiệp theo

một chiều hay một phạm vi nào đó

Phân loại bảng Dim:

- Flat Dimension: Các giá trị của chiều có cùng mức, khơng giá trị nào là cha hay con của giá trị khác

- Hierarchical Dimension: Các giá trị của Dim có quan hệ một - nhiều - Fact chứa khóa của các Dimension

- Dimension thường có định danh duy nhất, chứa thơng tin về chiều của bảng Fact

Lê Huy Hồng - 19A4040064 Page| 16

Khóa luận tốt nghiệp

Ưu điểm:

- Hỗ trợ rất đa dạng các thao tác, xử lý khá hiệu quả những câu truy vấn

- Phù hợp với cách mà người sử dụng nhận và sử dụng dữ liệu

- Nguyên lý cơ bản của sơ đồ hình sao là một dạng dư thừa dữ liệu cải thiện sự thực hiện

các truy vấn

- Trực quan, dễ dàng, thể hiện khung nhìn đa chiều về dữ liệu trong CSDL quan hệ

Nhược điểm:

- Vì bảng Fact được tổng hợp từ trước và được kết hợp theo chiều nên xu hướng có rất nhiều bảng và dữ liệu tăng lên nhanh chóng làm cho độ dư thừa dữ liệu lớn

Sơ đồ tuyết rơi:

DVFDIACHINSX TENTHUONGHIEU VARCHAR2 <100 BYTE) THUONGHIEU—PK (THUONGHIEUID) THuoNGHIEU-PK(THUONGmEUID)

■-S» NHASX-PK(NSXID)

⅛ NHASX-FKI (OIACHINSX)

Sơ đồ tuyết rơi Sơ đồ kết hợp

Chưa tối thiểu không gian đĩa cần thiết để lưu trữ data.

Việc truy cập đến các bảng đơn giản hơn

Chưa chuẩn hóa. Tốc độ truy vấn chậm.

Tối thiểu không gian đĩa cần thiết để lưu trữ data. Việc truy cập đến các bảng phức tạp hơn

Đã chuẩn hóa

Tốc độ truy vấn được cải thiện.

Là sự kết hợp giữa sơ đồ hình sao và sơ đồ tuyết rơi. Cải thiện hiệu năng truy xuất dữ liệu.

Hỗ trợ rất đa dạng các thao tác, xử lý khá hiệu quả những câu truy vấn.

P * DIACHINSX VARCHAR2 (200 BYTE)

TENDlACHr VARCHAR2 (200 BYTE)

≠> D∣ACH∣NSX-PK (DIACHINSX)

<≥ DIACHINSX—PK (DIACHINSX)

<> FACT-PK (NGAYTHANGID)

Hình 4. Sơ đồ tuyết rơi

Là sự mở rộng của sơ đồ hình sao mà tại đó mỗi cánh sao không phải là một bảng Dimension mà là nhiều bảng và các chiều được chuẩn hóa.

Ưu điểm:

- Cải thiện hiệu năng truy xuất so với sơ đồ hình sao - Tối thiểu không gian đĩa cần thiết để lưu trữ dữ liệu

- Tăng tính linh hoạt của các ứng dụng bởi sự chuẩn hóa ít mang bản chất theo chiều

Lê Huy Hồng - 19A4040064 Page| 17

Khóa luận tốt nghiệp

Sơ đồ kết hợp:

Hình 5. Sơ đồ kết hợp

Là sự kết hợp giữa sơ đồ hình sao dựa trên bảng Fact và các bảng Dim khơng chuẩn hóa và sơ đồ tuyết rơi trong đó tất cả các bảng Dim đều được chuẩn hóa.

Ưu điểm:

- Cải thiện hiệu năng truy xuất dữ liệu so với sơ đồ tuyết rơi

- Hỗ trợ rất đa dạng các thao tác, xử lý khá hiệu quả những câu truy vấn - Tạo ra một khung hình đa chiều về dữ liệu

Tùy vào từng mục đích mà người ta sẽ sử dụng sơ đồ hình sao, sơ đồ tuyết rơi hay sơ đồ kết hợp sao cho phù hợp với u cầu đặt ra.

Khóa luận tốt nghiệp

2.1.3. Mục đích của kho dữ liệu

Kho dữ liệu được xây dựng để đáp ứng các mục tiêu cơ bản như:

- Kho dữ liệu hỗ trợ cho việc ra quyết định của các tổ chức, doanh nghiệp, phục vụ cho

việc tạo ra các báo cáo, phân tích tổng hợp

- Tích hợp dữ liệu từ nhiều hệ thống nguồn, cho phép một chế độ xem trung tâm trên toàn hệ thống

- Cải thiện chất lượng dữ liệu, bằng cách cung cấp mã và mô tả nhất quán, gắn cờ hoặc

thậm chí sửa dữ liệu xấu

- Cung cấp một mơ hình dữ liệu chung duy nhất cho tất cả dữ liệu quan tâm bất kể nguồn

dữ liệu

- Cơ cấu lại dữ liệu sao cho hợp lý với người dùng doanh nghiệp

- Cơ cấu lại dữ liệu để nó mang lại hiệu suất truy vấn tốt hơn, ngay cả đối với các truy vấn phức tạp, mà không ảnh hưởng đến các hệ thống hoạt động

- Đưa ra các quyết định hỗ trợ truy vấn dễ dàng hơn - Sắp xếp và phân tán dữ liệu lặp đi lặp lại

2.3. Quá trình ETL trong xây dựng kho dữ liệu

2.2.1. Khái niệm về ETL

Q trình trích xuất, biến đổi và tải dữ liệu - (Extract - Transform - Load) - ETL là quá trình dùng để thu thập dữ liệu từ nhiều hệ thống nguồn khác nhau (tất cả các dữ liệu

này đều ở dạng thơ) sau đó biến đổi dữ liệu và cuối cùng nạp dữ liệu đã được xử lý vào hệ thống kho dữ liệu để phục vụ cho mục đích của kho dữ liệu. Nó đơn giản là 1 q trình 3 bước: Trích xuất (Extract), Biến đổi (Transform) và Tải (Load). [7]

2.2.2. Vị trí và tầm quan trọng của ETL trong kho dữ liệu

Q trình ETL phải đóng một vai trị quan trọng trong việc cung cấp cho các ứng dụng một khuôn dạng dữ liệu phù hợp. Nó bắt đầu từ các hệ thống dữ liệu nguồn đến khi dữ liệu được đưa vào các bảng Dimension, bảng Fact tốn kém phần lớn thời gian của việc xây dựng kho dữ liệu.

Với sự hỗ trợ của quá trình ETL, các quyết định kinh doanh tốt hơn của doanh nghiệp, ngân hàng đã được đưa ra trong suốt những năm qua. Các tác dụng chính của ETL có thể kể đến:

- Nó giúp các cơng ty phân tích dữ liệu để đưa ra các quyết định kinh doanh quan trọng

- Nó giúp trả lời các câu hỏi kinh doanh phức tạp, điều mà các cơ sở dữ liệu lưu trữ các

giao dịch (transactional databases) khơng thể làm được

Khóa luận tốt nghiệp

- ETL cung cấp phương pháp di chuyển dữ liệu từ nhiều nguồn khác nhau vào kho dữ liệu. Khi nguồn dữ liệu thay đổi, kho dữ liệu sẽ tự động cập nhật

- Hệ thống ETL được thiết kế tốt và có tài liệu hướng dẫn cụ thể là điều cần thiết cho sự

thành công của các dự án kho dữ liệu

- Nó cho phép xác minh các quy tắc chuyển đổi, các phép tốn tổng hợp và tính tốn dữ

liệu. Ngồi ra q trình ETL cịn cho phép so sánh dữ liệu mẫu giữa hệ thống nguồn và hệ thống đích

- ETL giúp di chuyển dữ liệu vào kho dữ liệu. Chuyển đổi sang các định dạng và loại khác nhau để tuân thủ một hệ thống nhất quán

- ETL là một quy trình được xác định trước để truy cập và thao tác dữ liệu nguồn vào cơ sở dữ liệu đích

2.2.3. Các thành phần của ETL

Có thể nói ETL là trái tim của kho dữ liệu vì nó đảm bảo cho cả hệ thống vận hành trơn tru và chính xác. Vậy nên việc tìm hiểu các thành phần của quá trình ETL là khá quan trọng.

Hình 6. Các thành phần của ETL

Khóa luận tốt nghiệp

Giai đoạn Trích xuất: Giai đoạn này sẽ thu thập hay cịn gọi là trích xuất dữ liệu

từ

các hệ thống dữ liệu nguồn vào giai đoạn biến đổi. Dữ liệu được sinh ra từ giai đoạn này

được gọi là dữ liệu nguồn.

Giai đoạn Biến đổi: Dữ liệu trích xuất từ hệ thống nguồn là dữ liệu thô và không

thể sử dụng với dạng ban đầu của nó. Bởi vậy nó cần được làm sạch, kết nối và biến đổi.

Trong giai đoạn này, ta áp dụng các chức năng biến đổi trên dữ liệu đã trích xuất từ hệ thống nguồn. Dữ liệu sinh ra từ giai đoạn này được gọi là dữ liệu tải. Đây chính là giai đoạn quan trọng nhất trong q trình ETL bởi nó có thể thêm các giá trị và biến đổi dữ liệu đồng thời tối ưu hóa với mục đích tạo ra các báo cáo nhằm đưa ra quyết định kinh doanh thông minh.

Giai đoạn Tải: Giai đoạn này sẽ nạp dữ liệu đã được biến đổi (hoặc không với

những dữ liệu không yêu cầu biến đổi) vào kho dữ liệu và kết thúc quá trình ETL, bắt đầu quá trình tạo báo cáo và triển khai giải pháp BI cho doanh nghiệp. [8]

2.2.4. Quá trình xử lý dữ liệu

Quá trình xử lý dữ liệu là giai đoạn chuyển đổi dữ liệu thô thủ công hay dùng tool tự động tạo đầu ra là thơng tin có ý nghĩa. Các dữ liệu thô được thu thập và làm sạch trước khi làm đầu vào của trung tâm xử lý nơi mà thực hiện các thủ tục để kiểm soát dữ liệu và xử lý nó để cung cấp đầu ra có ý nghĩa đúng với mong muốn của người dùng.

Quá trình xử lý dữ liệu bao gồm 6 bước chính: [7] - Thu thập dữ liệu (Collection)

- Tiền xử lý dữ liệu (Pre - Processing/ Preparation) - Đầu vào (Input)

- Xử lý dữ liệu (Processing) - Đầu ra (Output)

- Lưu trữ (Storage)

Khóa luận tốt nghiệp

Hình 7. Quá trình xử lý dữ liệu

Thu thập dữ liệu (Data Collection)

Thu thập dữ liệu là giai đoạn đầu tiên trong việc xử lý dữ liệu. Dữ liệu được kéo về từ nhiều nguồn có sẵn, bao gồm cả các kho lưu trữ trung tâm (Data Lake) và kho lưu trữ

dữ liệu (Data Warehouse). Việc thu thập dữ liệu cũng phụ thuộc rất nhiều vào các nguồn

dữ liệu bởi tùy vào độ tin cậy cũng như việc thiết kế của dữ liệu mà chất lượng có thể khác nhau. Có thể nói kết quả của việc xử lý dữ liệu phụ thuộc phần lớn vào giai đoạn này.

Có nhiều phương thức thu thập dữ liệu khác nhau: Thu thập dữ liệu định lượng như thông qua thực hiện khảo sát, điều tra dân số, qua các tài liệu, ... và thu thập dữ liệu định tính như thơng qua phỏng vấn, qua quan sát, ...

Tiền xử lý dữ liệu (Data Pre-processing)

Sau khi dữ liệu đã được thu thập, nó sẽ được chuyển đến giai đoạn tiền xử lý dữ liệu. Giai đoạn này bao gồm sắp xếp và lọc dữ liệu để làm đầu vào. Nó yêu cầu xóa những dữ liệu khơng cần thiết và khơng thực sự quan trọng để làm cho bộ dữ liệu đáng tin cậy hơn. Việc này cũng đảm bảo dữ liệu không vượt quá giới hạn và chỉ bao gồm những thông tin thực sự cần thiết. Mục đích chính của giai đoạn là kiểm tra, làm sạch để loại bỏ những dữ liệu khơng tốt (bad data) (dư thừa, khơng hồn chỉnh, không đúng) và bắt đầu tạo dữ liệu chất lượng cao cho các giai đoạn xử lý sau.

Khóa luận tốt nghiệp

Đầu vào (Input)

Dữ liệu sau khi được làm sạch sẽ được chuyển đến giai đoạn này để biến đổi sang ngôn ngữ máy để thuận tiện trong việc xử lý. Giai đoạn này tốn khá nhiều thời gian và u cầu tính nhanh chóng cũng như tính chính xác trong cơng việc. Đây là giai đoạn đầu

tiên mà dữ liệu thơ bắt đầu có định dạng của các thơng tin có thể sử dụng được.

Xử lý dữ liệu (Data Processing)

Ở giai đoạn này, dữ liệu sẽ được xử lý qua các thuật tốn của máy tính, giai đoạn sẽ khác nhau tùy thuộc vào dữ liệu được lấy từ nguồn nào (kho lưu trữ trung tâm, mạng xã hội, các thiết bị kết nối, ...) và mục đích sử dụng của chúng (kiểm tra mơ hình quảng cáo, chẩn đoán y khoa từ các thiết bị đã kết nối, phân tích nhu cầu khách hàng, ..). Xử lý dữ liệu tốn rất nhiều thời gian phụ thuộc vào độ phức tạp và khối lượng của dữ liệu mà ta chuẩn bị.

Đầu ra (Output)

Giai đoạn đầu ra là giai đoạn mà dữ liệu có thể sử dụng được phụ thuộc vào mục đích xử lý dữ liệu ở giai đoạn trước. Dữ liệu khi này đã biểu lộ được thông tin vừa được xử lý và truyền đạt lại cho máy tính và hiển thị cho người dùng. Dữ liệu đầu ra này có thể tồn tại dưới nhiều dạng như báo cáo bằng hình ảnh, âm thanh, video, hoặc dưới dạng

tài liệu. Dữ liệu đầu ra cần được giải thích từ đó nó có thể cung cấp các thơng tin ý nghĩa

giúp người dùng có thể sử dụng đúng với mục đích xử lý ban đầu.

Lưu trữ (Storage)

Giai đoạn lưu trữ là giai đoạn cuối cùng trong quy trình xử lý dữ liệu. Một số dữ liệu và siêu dữ liệu (metadata - thông tin về dữ liệu) có thể được dùng ngay lập tức,

Một phần của tài liệu Quá trình ETL trong xây dựng kho dữ liệu cho hệ thống xử lý giám sát trực tuyến của NHTMCP ngoại thương việt nam khoá luận tốt nghiệp 604 (Trang 30)

Tải bản đầy đủ (DOCX)

(84 trang)
w