2.1.3 Xây dựng
Quy trình xây dựng data warehouse gồm rất nhiều bước khác nhau.
Đối với đội phát triển: đầu tiên nhóm cần lập kế hoạch chuẩn bị cho hoạt động code để gửi tới ban quản trị dự án nếu được thơng qua sẽ chuyển cho bộ phận IT phía khách hàng phê duyệt. Sau khi bản kế hoạch được phê duyệt đội DEV sẽ phát triển cũng như đặc tả các quy ước code và đào tạo các quy ước code cho các thành viên trong nhóm.
Một trong những yếu tố đảm bảo hoạt động xây dựng được thành công là xác định cơng cụ được sử dụng hỗ trợ trong q trình code. Bước tiếp theo của quy trình xây dựng data warehouse là mã hóa các bộ thư viện cần sử dụng cũng như tiến hành kiểm thử đơn vị. Ban quản trị dự án sẽ xem xét sự mã hóa cũng như bước kiểm thử đơn vị ban đầu của DEV nếu khơng có vấn đề đội phát triển có thể phát triển dựa trên luồng ETL đồng thời xem xét code, phát triển báo cáo, phát triển MA và trong mỗi bước đều phải tiến hành kiểm thử đơn vị. Kiểm thử đơn vị được thực hiện bởi đội lập trình với mục đích kiểm tra các hàm, thủ tục....
Công việc tiếp theo là của đội kiểm thử. Đội kiểm thử sẽ tiến hành kiểm thử data warehouse được xây dựng về cách thức lưu trữ tổ chức dữ liệu, kiểm tra dữ liệu có được truyền đủ và chính xác hay khơng.
Khi thực hiện kiểm tra xong đội phát triển phải tạo hướng dẫn cài đặt. hướng dẫn người dùng rồi chuyển cho ban quản trị dự án xem xét nếu đạt chất lượng sẽ tiến hành đóng gói và chuyển giao cho người dùng hay nói cách khác là thực hiện UAT (kiểm thử chấp nhận).
Sau bước kiểm thử chấp nhận của người dùng đội phát triển phải tổng kết và hoàn thiện tất cả các tài liệu để chuyển cho ban quản trị dự án xem xét, nếu tất cả các tài liệu được ban quản trị và phía khách hàng chấp nhận, phê duyệt các tài liệu sẽ được ký nhận và quá trình xây dựng data warehouse kết thúc.
Kiểm thử data warehouse được thực hiện ở giai đoạn xây dựng để đảm bảo rằng data warehouse tối ưu hóa được các lỗi cịn tồn tại trước khi chuyển giao cho khách hàng. Data warehouse xây dựng sẽ không để mất bất cứ dữ liệu giao dịch nào, chức năng lưu trữ đạt hiệu quả cao.
Khóa luận tơt nghiệp Quy trình xây dựng và kiêm thử data warehouse
Cụ thể để xây dựng data warehouse công việc code được hiểu đơn giản là xây dựng 3 tầng của data warehouse
Bước 1: Trích xuất dữ liệu giao dịch Bước 2: Xây dựng tầng STAGING
Bước 3: Xây dựng tầng System Of Records (SOR) Bước 4: Xây dựng tầng Data Mart
2.1.3.1 Trích xuất dữ liệu giao dịch
Phần lớn việc xây dựng một DW đang kéo dữ liệu từ các nguồn dữ liệu khác nhau và đặt nó vào một khu vực lưu trữ trung tâm. Trên thực tế, đây có thể là bước khó hồn thành nhất. Chúng ta cần biết hệ thống cơ sở dữ liệu nào sẽ sử dụng cho khu vực của bạn và cách kéo dữ liệu từ nhiều nguồn khác nhau vào khu vực đó.
Đối với nhiều công ty vừa và nhỏ, Microsoft đã đưa ra một cơng cụ tuyệt vời để khai thác dữ liệu. Đó chính là dịch vụ chuyển đổi dữ liệu (DTS), là một phần của Microsoft SQL Server 7.0 và 2000, cho phép bạn nhập và xuất dữ liệu từ bất kỳ cơ sở dữ liệu phù hợp OLEDB hoặc ODBC nào miễn là bạn có nhà cung cấp dịch vụ thích hợp. Cơng cụ này có sẵn, miễn phí khi bạn mua Microsoft SQL Server. Tuy nhiên thực tế là bạn sẽ khơng phải ln ln có một nguồn dữ liệu tuân thủ theo OLEDB hoặc ODBC để làm việc. Nếu không, bạn buộc phải đầu tư đáng kể thời gian và nỗ lực viết một chương trình tùy chỉnh chuyển dữ liệu từ nguồn gốc vào cơ sở dữ liệu nguồn tổng hợp (staging).
Đội phát triển sẽ phải tạo Data Connection: lưu trữ các Data Connection kết nối đến các CSDL STG (Staging), SOR (System of Records) và DMT (Data Mart). Các data connection sẽ được tạo vào thời điểm dữ liệu được đẩy lên tầng tương ứng.
2.1.3.2 Xây dựng tầng STAGING
Một bước quan trọng khơng kém sau khi trích xuất là chuyển đổi dữ liệu được chiết xuất từ nhiều nguồn. Hệ thống nguồn của datawahouse được tạo hầu như được xây dựng bởi nhiều chuyên gia IT khác nhau. Hầu hết các cơng ty đều có dữ liệu tồn tại trong một số hệ thống quản lý cơ sở dữ liệu khác nhau: MS Access, MS SQL Server, Oracle, Sybase, v.v. Nhiều cơng ty cũng sẽ có nhiều dữ liệu của họ trong các tệp tin phẳng, bảng tính, hệ thống thư và các loại lưu trữ dữ liệu khác. Khi xây dựng kho dữ liệu, dữ liệu từ các nguồn sẽ được liên hệ với nhau và được xử lý tại nguồn dữ liệu tập trung.
Mỗi 1 bảng bên nguồn thường sẽ được chia ra làm 3 loại bảng trong STG: PREDAY, TODAY, MINUS (trừ các bảng giao dịch)
Khóa luận tốt nghiệp Quy trình xây dựng và kiểm thử data warehouse Đầu tiên dữ liệu nguồn sẽ được đẩy vào bảng TODAY và PREDAY trên Staging (Truncate).
Sau đó Dùng lệnh minus giữa 2 bảng TODAY <> PREDAY để đẩy dữ liệu vào bảng MINUS trên Staging.
Sau khi tất cả dữ liệu nằm trong staging, tất cả dữ liệu sẽ được định dạng. Trước khi định dạng dữ liệu, các bảng và cột giữa các hệ thống phải được tìm ra mối liên hệ với nhau.
2.1.3.3 Xây dựng tầng SOR
Dữ liệu từ nguồn STAGING sẽ được đẩy vào bảng TWT (Temp Work) tương ứng trên SOR nhằm lưu trữ các thông tin cần thiết, và chỉ bao gồm các giá trị code đối với các giá trị sẽ chuyển sang ID trên SOR
2.1.3.4 Xây dựng tầng Data Mart
Các luồng ETL xử lý dữ liệu từ nguồn SOR được tổng hợp thành các chủ đề khác nhau, bao gồm các bảng Dimession theo các chủ đề tương ứng cho Data Mart
2.1.4 Triển khai hệ thống
Sau khi đã thiết kế cũng như xây dựng được các thành phần của data warehouse, cơng ty sẽ căn cứ vào đó để ước tính cơng việc và lên kế hoạch cho việc triển khai dự án. Phạm vi của mỗi dự án liên quan tới kho dữ liệu là vơ cùng lớn chính vì thế lịch trình triển khai dự án sẽ được chia thành từng giai đoạn.
Tên cột Mơ tả
CL_ID Khóa tự tăng của bảng CV
SRC_STM_ID Mã khóa nguồn cho các cập nhật mới nhất của dữ liệu
CL_SCM_ID Mã phân loại đối tượng
CL_SCM_SEQ_NBR Số tự tăng duy nhất của giá trị phân loại trong đối tượng phân loại
EFF_DT Ngày sự thể hiện của thực thể hợp lệ
END_DT Ngày mà sau đó thực thể sẽ khơng cịn giá trị
CL_CODE Mã phân loại được sử dụng khi mã bộ nhớ ngồi có ý nghĩa, trong
trường hợp ngôn ngữ môi trường kho dữ liệu, sẽ được gán cho mỗi lần xuất hiện phân loại để xác định
CL_NM Tên chính được gán cho giá trị phân loại. Tên này được sử dụng trong
các báo cáo và tài liệu.
2.2Đánh giá quy trình xây dựng data warehouse
2.2.1 Điểm mạnh
Quy trình xây dựng data warehouse bao gồm rất nhiều các giai đoạn nhưng tất cả đều được thiết lập một cách chi tiết rõ ràng dễ dàng quản lý cũng như thực hiện, các thành viên trong đội dự án nắm được rõ công việc cần thực hiện, công việc không bị chồng chéo.
Từng bước của quy trình đều được giám sát một cách cẩn thận chính bởi vậy nên giảm thiểu rủi ro, quản trị dự án cũng nắm được rõ tình hình thực hiện, có những biện pháp quản lý hợp lý, kịp thời.
2.2.2 Hạn chế
Đối với hệ thống data warehouse được công ty xây dựng do hệ thống tích hợp lớn nên các yêu cầu về nghiệp vụ ban đầu có thể bị thay đổi khơng giống với tài liệu thiết kế ban đầu và tính linh hoạt trong quy trình vẫn cịn chưa cao nên hoạt động điều chỉnh theo những thay đổi vẫn chưa hoàn tồn được đáp ứng.
Tại bước xây dựng, mơ hình dữ liệu được xây dựng theo mơ hình hình sao, đơn giản tiết kiệm thời gian nhưng bộ nhớ lưu trữ lớn và người dùng không thể thấy được dữ liệu ở mức chi tiết.
CHƯƠNG 3: XÂY DỰNG TESTCASE THỰC HIỆN KIỂM THỬ DATA WAREHOUSE LƯU TRỮ DỮ LIỆU VỀ HỢP ĐỒNG GIAO DỊCH TRONG
NGÂN HÀNG
3.1Giới thiệu về bộ dữ liệu hợp đồng giao dịch trong data warehouse
Theo chuẩn của IBM Banking Data Model, dữ liệu chi tiết của DWH gồm 9 nội dung: Involved Party, Arrangement, Condition, Product, Location, Classification, Business Direction Item, Event và Resource Item. Đối với data warehouse lưu trữ dữ liệu hợp đồng giao dịch của khách hàng trong hoạt động ngân hàng được xây dựng với những nhóm sau:
3.1.1 Nhóm Classification (CL)
Nhóm bảng này chứa những dữ liệu định nghĩa mang tính chất phân loại như loại khách hàng gồm khách hàng cá nhân, tổ chức; loại hợp đồng gồm hợp đồng vay, hợp đồng mở thẻ; hợp đồng gửi tiết kiệm; các nhóm nợ...
Mơ tả
IP_ID Mã chủ thể
EFF_DT Ngày có hiệu lực
END_DT Ngày đáo hạn
IST_DT Ngày insert dữ liệu
IP_NM Tên chủ thể
IP_TP_ID Mã phân loại chủ thể
SRC_STM_ID Mã nguồn hệ thống
UNQ_ID_IN_SRC_STM Khóa thay đổi
Tên cột Mô tả
IDV_ID Mã khách hàng cá nhân
GND_ID Mã giới tính
BRTH_DT Ngày sinh
CTY_OF_RSDNC_ID Mã quốc gia cư trú
BRTH_PLC Nơi sinh
Bảng 3.1: Bảng các thuộc tính của bảng CV
Khóa luận tốt nghiệp Quy trình xây dựng và kiểm thử data warehouse
3.1.2 Nhóm Involved party (IP)
Nhóm này chứa thơng tin về các bên tham gia liên quan tới ngân hàng như khách hàng, nhà cung cấp, các ngân hàng đối tác, tổ chức tài chính, cụ thể trong kho dữ liệu là thơng tin về khách hàng, chi nhánh
❖ Bảng IP: lưu trữ thông tin về chủ thể
Bảng 3.2: Bảng các thuộc tính của bảng IP
CTY_OF_RSDNC_ID Mã quốc gia cư trú
ESTB_DT Ngày thành lập
ORG_TAX_IDENTN_NBR Mã số thuế của tổ chức
Tên cột Mô tả
OU_ID Mã đơn vị trong tổ chức
OU_CODE Tên đơn vị trong tổ chức
ORG_ID Mã tổ chức
Tên cột Mô tả
CST_ID Mã khách hàng
PPN_DT Ngày dữ liệu thay đổi
EFF_CST_DT Ngày khách hàng có hiệu lực
END_CST_DT Ngày khách hàng kết thúc
CST_LC_ST_TP_ID Mã loại trạng thái vòng đời khách hàng
CST_LC_ST_DT Ngày trạng thái vòng đời của khách hàng
CST_CGY_ID Mã danh mục khách hàng
CST_BSN_TP_ID Mã các loại khách hàng kinh doanh
Bảng 3.3: Bảng các thuộc tính của bảng IDV
❖ Bảng Organization (ORG): lưu trữ thơng tin khách hàng là tổ chức
Bảng 3.4: Bảng các thuộc tính của bảng ORG
❖ Bảng Organization Unit lưu trữ những thông tin của các đơn vị tổ chức
Bảng 3.5: Bảng các thuộc tính của bảng OU
PRIM_BR_NBR Số chi nhánh chính
CST_SHRT_NM Tên ngắn gọn của khách hàng
CST_FORMATTED_SHRT_NM Tên ngắn theo định dạng của khách hàng
CST_ADR_SEQ_NO Địa chỉ khách hàng
RSDNC_TP_ID Mã loại cư trú
CST_LAST_MNT_DT Ngày hỗ trợ cuối khách hàng
CST_RVW_DT Ngày duyệt lại khách hàng
RPT_BR_NBR Chi nhánh báo cáo
Tên cột Mô tả Tên cột Mô tả
AR_ID Mã hợp đồng AR_NM Tên hợp đồng
PPN_DT Ngày dữ liệu thay
đổi
AR_SHRT_NM Tên hợp đồng viết tắt
SRC_STM_ID Mã hệ thông nguồn AR_FORMATTED_
SHRT_NM
Tên viết tắt theo định dạng hợp đồng UNQ_ID_IN_SRC_
STM
Khóa thay đổi AR_OFCR_CODE Mã nhân viên trực thuộc
phịng ban chịu trách nhiệm với hợp đồng
AR_TP_ID Mã loại hợp đồng AR_GRP_NBR SƠ nhóm tài khoản
AR_LC_ST_TP_ ID
Mã loại trạng thái vịng đời của hợp đồng
ACG_GRP_NBR Mã nhóm sổ cái chung
AR_LC_ST_DT Ngày vịng đời hợp
đồng
ISRT_DT Ngày thực hiện thêm
mới
AR_TERM_TP_ID Mã loại kỳ hạn hợp
đồng
ISRT_TM Thời gian thêm mới
DNMN_CCY_ID Mã mệnh giá tiền
tệ
SPCL_INF_CODE_1 Mã thông tin đặc biệt
EFF_DT Ngày hợp đồng có
hiệu lực
EST_END_DT Ngày kết thúc ước tính
Bảng 3.6: Bảng các thuộc tính của bảng CST
3.1.3 Nhóm Arrangement (AR)
Mơ tả Tên cột Mơ tả
TXN_ID Mã khóa giao dịch TXN_DT Ngày giao dịch
TXN_TP_ID Mã loại giao dịch TXN_VAL_DT Ngày giá trị giao dịch
TXN_CCY_ID Mã tiền tệ giao dịch TXN_TM Thời gan giao dịch
PRIM_AR_ID Mã hợp đồng TXN_VAL_TM Thời gian giá trị giao
dịch NET_CASH_FLOW_A
MT
Sô lưu chuyên tiền mặt TXN_CODE Mã giao dịch
TXN_ST_CODE Mã trạng thái giao dịch TXN_USR_ID Mã giao dịch người
dùng
TXN_BTCH_NBR Sô lô giao dịch TXN_SPVSR_ID Mã giám sát giao
dịch
TXN_SEQ_NBR Sô chuỗi giao dịch TXN_AUXILIA
RY_CODE
Mã giao dịch phụ trợ cho giao dịch
TXN_SRL_NBR Sô thứ tự giao dịch TXN_PST_ORD
R_NBR
Lệnh đăng ký giao dịch
TXN_OU_ID Mã tổ chức giao dịch TXN_ACG_GRP
_CODE
Mã nhóm sổ cái chính giao dịch
TXN_SRC_OU_ID Mã nguồn tổ chức giao
dịch
TXN_ADDITIO N_INF
Thông tin bổ sung cho giao dịch
TXN_AFFECT_TP_ID Mã loại hiệu lực giao
dịch
TXN_SRC Nguồn giao dịch
TXN_AFFECT_CODE _AT_LAST_AVY
Mã hiệu quả giao dịch cuôi cùng
TXN_ORIG_CC Y_ID
Gôc tiền tệ giao dịch
TXN_ORIG_AMT Khoản tiền gơc giao
dịch
Bảng 3.7: Bảng các thuộc tính của bảng AR
Khóa luận tơt nghiệp Quy trình xây dựng và kiêm thử data warehouse
3.1.4 Nhóm Event
tại quy đổi LCY
MSR_PRD_ID Mã thời gian
hiện tại
CR_AMT_TODAY_FCY Khoản tín dụng
hiện tại FCY
SRO_ID Mã trường hợp
hợp đồng
CR_AMT_TODAY_LCY Khoản tín dụng
hiện tại quy đổi LCY
UOM_ID Mã thước đo đơn
vị
ACR_OD_INT_PTD_FCY Khoản lãi quá
hạn
CLS_BAL_TODAY_FCY Sô dư cuôi ngày
FCY
ACR_OD_INT_PTD_LCY Khoản lãi quá
hạn quy đổi
CLS_BAL_TODAY_LCY Sô dư cuôi ngày
quy đổi LCY
HOLD_AMT_FCY Khoản giữ lại
DB_AMT_TODAY_FCY Khoản nợ hiện
tại FCY
HOLD_AMT_LCY Khoản giữ lại
quy đổi LBY_ACR_INT_PTD_LC
Y
Khoản tiền phải trả
LBY_ACR_INT_PTD_FC
Y Khoản tiền phải
trả quy đổi
Bảng 3.8: Bảng các thuộc tính của bảng TXN
3.1.5 Nhóm Associatives
Là nhóm job lưu như lịch sử mơi quan hệ bao gồm các bảng quan hệ: AR_X_PD_RLTNP: Biêu diễn sự liên hệ giữa hợp đồng với sản phẩm
AR_X_IP_RLTNP: Biêu diễn những môi liên hệ giữa hợp đồng với các đôi tượng AR_X_AU_RLTNP: Biêu diễn những môi liên hệ giữa hợp đồng và đơn vị kế toán IP_X_IP_RLTNP: Lưu trữ những thông tin về sự tương tác giữa các đơi tượng trong kho dữ liệu
3.1.6 Nhóm Sumary
Là nhóm bảng lưu trữ dữ liệu tính tốn tổng hợp, chuẩn bị đê đẩy lên các bảng fact (Data Mart)
3.1.7 Nhóm Dim
Cung cấp các thơng tin ngữ cảnh cho bảng fact và do đó cũng là cung cấp tất cả số liệu chính được thể hiện trong DWH
Đối với data warehouse nghiên cứu gồm những bảng Dimension như sau: CST_DIM, AR_DIM, CCY_DIM, OU_DIM, LOB_DIM, PD_DIM
3.1.8 Nhóm fact
Là bảng đầu ra cuối cùng của toàn hệ thống DWH - BI, chứa tồn bộ các thơng tin cần thiết cho việc phân tích dữ liệu và tạo các báo cáo liên quan
3.2Xây dựng tescase kiểm thử data warehouse lưu trữ dữ liệu hợp đồng giao dịch trong ngân hàng
Khi thực hiện test data warehouse cần test các thành phần của data warehouse, đảm bảo rằng dữ liệu được truyền chính xác. Dựa trên đặc tính của mỗi tầng trong data warehouse
- Vùng staging
Vùng này lưu dữ liệu của tất cả các bảng của các nguồn dữ liệu theo số liệu của ngày thực hiện ETL. Đây là nơi các ứng dụng khai thác dữ liệu của ngân hàng tiến hành lấy dữ liệu nhằm giảm tải thời gian truy suất vào các hệ thống xử lý giao dịch của ngân hàng
Lưu trữ:
- Dữ liệu hiện tại - Dữ liệu thay đổi
- Vùng System Of Record
Lưu toàn bộ dữ liệu của tầng dữ liệu System Of Record theo mơ hình IBM Banking Data Model, bao gồm cac phân chính sau:
> Classification: Thơng tin mang tính chất phân loại
> Involved Party: Các bên liên quan
> Arrangement: Lưu trữ thông tin về các hợp đồng
> Accounting: Thơng tin liên quan tới kế tốn
> Event: Sự kiện
Chức năng Dữ liệu đầu vào Kết quả mong đợi
Count + Sô các bản ghi trong ở nguồn
SI_DAT_CFMAST trên tầng staging + Tập các bản ghi có trong bảng IP ở tầng SOR
Dữ liệu nguồn và đích trùng nhau
Khóa luận tốt nghiệp Quy trình xây dựng và kiêm thử data warehouse - Vùng Data Mart
Lưu dữ liệu được phân ra theo từng chủ đề. Xây dựng tầng data mart phục vụ cho các báo cáo phân tích được dễ dàng hơn
Hình 3.1: Mối liên hệ giữa các tầng trong data warehouse
Dựa vào luồng ETL tổng có thê thấy dữ liệu sau khi được làm sạch sẽ được chuyên lên tầng staging sau đó được chuẩn hóa vào tầng sor. Dữ liệu từ staging sẽ được đẩy vào các bảng lưu thông tin chung như CV, PD, EXG_RATE trước sau đó sẽ vào những bảng