Nhóm Arrangement (AR)

Một phần của tài liệu Nghiên cứu quy trình xây dựng datawarehouse và thực hiện test datawarehouse lưu trữ dữ liệu hợp đồng giao dịch trong NH khoá luận tốt nghiệp 328 (Trang 43 - 63)

3 .1Giới thiệu về bộ dữ liệu hợp đồng giao dịch trong data warehouse

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 master là IP, AR, TXN.Từ những bảng master sẽ tạo thành các bảng quan hệ như AR_X_IP, AR_X_PD...sau đó tính tốn tổng hợp dữ liệu lên bảng AR_TVR_SMY. Dữ liệu tại tầng SOR sẽ được phân theo chủ đề và được đẩy vào bảng AR_ANL_FCT.

Khóa luận tơt nghiệp Quy trình xây dựng và kiêm thử data warehouse

3.2.1 Test tầng SOR

IPID

Kiêm tra khóa nguồn hệ thơng

Cột UNQ_ID_IN_SRC_STM trong bảng ID được truyền thẳng từ trường CFCIFN trong nguồn SI_DAT_CFMAST

Khơng có bản ghi nào trả về có giá trị khơng trùng khớp giữa nguồn và đích ( có trong nguồn phải được đẩy lên sor và có trong sor thì phải tồn tại trong tầng staging

Kiêm tra thuộc

tính Thuộc tính EFT_DT trong bảng IP đượclấy từ trường CFORGD trong CFMAST

với định dạng date ‘YYYYDDD’

Khơng có bản ghi nào có giá trị thuộc tính EFT_DT khác với thuộc tính code được trả về Thuộc tính END_DT được truyền thẳng từ

cột REC_IND trong CFMASTMINUS nếu trường REC_IND nhận giá trị = D thì có định dạng to_date(t.PPN_DT,

'YYYYDDD') cịn khơng thì nhận giá trị to_date('20991231','yyyymmdd')

Khơng có bản ghi nào có giá trị thuộc tính END_DT khác với thuộc tính code được trả về

Thuộc tính IP_NM được truyền thẳng từ

trường CFNA1 trong SI_DAT_CFMAST Khơng có bản ghi nào có giá trịthuộc tính IP_NM khác với

thuộc tính code được trả về

Thuộc tính SRC_STM_ID trong bảng IP Khơng có bản ghi nào có giá trị

thuộc tính SRC_STM_ID khác với thuộc tính code được trả về Thuộc tính SRC_STM_ID được truyền từ

cột CL_ID với điều kiện

CL_SCM_CODE='SRC_STM’ và

Khơng có bản ghi nào có giá trị thuộc tính SRC_STM_ID khác với thuộc tính code được trả về

CL_CODE='SIBS_SI_DAT_CFMAST' Thuộc tính UNQ_ID_IN_SRC_STM được truyền thẳng từ cột CFCIFN trong nguồn SI_DAT_CFMAST

Khơng có bản ghi nào có giá trị

thuộc tính

UNQ_ID_IN_SRC_STM khác với thuộc tính code được trả về

Bảng 3.10: Kịch bản kiểm thử bảng IP

❖Kiểm tra tổng số bản ghi của nguồn (SI_DAT_CFMAST) và đích (IP) - Nguồn

Select count (*) from STAGING.SI_DAT_CFMAST - Đích

Select count (*) FROM ip

Where SRC_STM_ID= (select cl_id from CV where cl_scm_code='SRC_STM' and cl_code='SIBS_SI_DAT_CFMAST');

Ket quả: Nguồn trùng đích (= 325480 bản ghi)

❖Kiểm tra sự trùng lặp dữ liệu ở trường khóa chính (IP_ID)

Select UNQ_ID_IN_SRC_STM || SRC_STM_ID, count (UNQ_ID_IN_SRC_STM || SRC_STM_ID)

From ip

Group by UNQ_ID_IN_SRC_STM || SRC_STM_ID

Having count (UNQ_ID_IN_SRC_STM || SRC_STM_ID) > 1; Kết quả: Khơng có bản ghi nào bị trùng lặp theo từng đối tượng IP_ID

❖Check null Select count (1)

From fsstraining_sor.ip

Where unq_id_in_src_stm is null Kết quả: Trường khóa unq khơng bị để trống

❖Check key Select count (1) From

(Select TO_CHAR (NVL (UNQ_ID_IN_SRC_STM,'99999') From fsstraining_sor.ip

Where src_stm_id = '60001' and

Not exists (Select TO_CHAR (NVL (CFCIFN,'99999')) from STAGING.SI_DAT_CFMAST))

Kết quả: Các giá trị của IP ở trong sor đều có ở trong nguồn

❖Check thuộc tính

- Kiêm tra thuộc tính IP_NM trong đích Select NVL (IP_NM,'99999') ip_nm From fsstraining_sor.ip

Where src_stm_id='60001' and not exists (Select b.CFNA1

From fsstraining_sor.IP a, STAGING.SI_DAT_CFMAST b Where a.unq_id_in_src_stm = b.cfcifn)

- Kiêm tra thuộc tính IP_NM ở nguồn Select NVL (CFNA1,'99999') cfna1 From staging.si_dat_cfmast

Where not exists

(Select NVL (IP_NM,'99999') ip_nm

From fsstraining_sor.IP b, STAGING.SI_DAT_CFMAST a Where a.cfcifn = b.unq_id_in_src_stm and src_stm_id='60001') Ket quả: Các giá trị của thuộc tính IP_NM khớp với thuộc tính code

❖Kiêm tra tất cả các thuộc tính của bảng IP có trường mã loại đôi tượng (IP_TP_ID) không khớp với u cầu hay giữa nguồn và đích có 1 bản ghi khơng trùng khớp.

Count Sô bản ghi ở bảng SI_DAT_DDMAST trong STAGING

Sô bản ghi bảng AR trong tầng SOR

Dữ liệu nguồn và đích trùng nhau

Kiêm tra trùng lặp

Cột AR_ID trong bảng AR Khơng có sự trùng lặp ở trường

AR_ID Mỗi 1 mã nguồn UNQ_ID_IN_SRC_STM

sẽ tương ứng với một mã AR_ID

Khơng có sự trùng lặp ở trường UNQ_ID_IN_SRC_STM

Check null Cột UNQ_ID_IN_SRC_STM phải có giá trị

duy nhất Khơng có bản ghi nào màtrường

UNQ_ID_IN_SRC_STM bị bỏ trông

Check key Các giá trị của cột

UNQ_ID_IN_SRC_STM trong SOR được đẩy từ cột ACCTNO trong STAGING

Các giá trị của khóa nguồn đều được đẩy từ nguồn lên đích

SI_DAT_CFMAST dữ liệu sử dụng đê đẩy lên đích Kiêm tra

thuộc tính Các giá trị của thuộc tínhAR_LC_ST_TP_ID phải khớp với thuộc

tính code

Các giá trị của thuộc tính AR_LC_ST_TP_ID phải khớp với thuộc tính code

Các giá trị của thuộc tính AR_LC_ST_DT

phải khớp với thuộc tính code Các giá trị của thuộc tínhAR_LC_ST_DT phải khớp với

thuộc tính code Các giá trị của thuộc tính AR_NM phải

khớp với thuộc tính code Các giá trị của thuộc tínhAR_NM phải khớp với thuộc

tính code Các giá trị của thuộc tính

AR_TERM_TP_ID

phải khớp với thuộc tính code

Các giá trị của thuộc tính AR_TERM_TP_ID

phải khớp với thuộc tính code Các giá trị của thuộc tính AR_TP_ID phải

khớp với thuộc tính code Các giá trị của thuộc tínhAR_TP_ID phải khớp với thuộc

tính code Các giá trị của thuộc tính DMMN_CCY_ID

phải khớp với thuộc tính code Các giá trị của thuộc tínhDMMN_CCY_ID phải khớp

với thuộc tính code Các giá trị của thuộc tính PPN_DT phải

khớp với thuộc tính code ( được truyền thẳng từ cột ETL_DATE)

Các giá trị của thuộc tính PPN_DT phải khớp với thuộc tính code

Các giá trị của thuộc tính EFF_DT phải khớp với thuộc tính code (được truyền thẳng từ cột DATOP7 trong

SI_DAT_DDMAST với định dạng ‘YYYYDDD’)

Các giá trị của thuộc tính EFF_DT phải khớp với thuộc tính code

Các giá trị của thuộc tính END_DT phải khớp với thuộc tính code ( được truyền thẳng từ cột STATUS trong STAGING với điều kiện khi cột STATUS nhận giá trị bằng 2 thì nó được nhận giá trị là ngày

ETL_DATE cịn khơng thì là ngày với định

Các giá trị của thuộc tính END_DT phải khớp với thuộc tính code

dạng TO_DATE(2099365,'YYYYDDD') Các giá trị của thuộc tính

AR_FORMATTED_SHRT_NM phải khớp với thuộc tính code ( được truyền thẳng từ cột FSNAME trong bảng

SI_DAT_DDMAST ở STAGING)

Các giá trị của thuộc tính AR_FORMATTED_SHRT_N M phải khớp với thuộc tính code

Các giá trị của thuộc tính

AR_OFCR_CODE phải khớp với thuộc tính code ( được truyền thẳng từ cột OFFICR trong bảng SI_DAT_DDMAST ở STAGING)

Các giá trị của thuộc tính AR_OFCR_CODE phải khớp với thuộc tính code

Các giá trị của thuộc tính AR_GRP_NBR phải khớp với thuộc tính code ( được truyền thẳng từ cột DDNUM trong bảng

SI_DAT_DDMAST ở STAGING)

Các giá trị của thuộc tính AR_GRP_NBR phải khớp với thuộc tính code

Các giá trị của thuộc tính ISRT_DT phải khớp với thuộc tính code ( được truyền thẳng từ cột DDGRUP trong bảng SI_DAT_DDMAST ở STAGING)

Các giá trị của thuộc tính ISRT_DT phải khớp với thuộc tính code

Các giá trị của thuộc tính ISRT_DT phải khớp với thuộc tính code (dữ liệu được truyền thẳng từ ngày ETL_DT)

Các giá trị của thuộc tính ISRT_DT phải khớp với thuộc tính code

Các giá trị của thuộc tính ISRT_TM phải khớp với thuộc tính code (dữ liệu được truyền thẳng từ ngày ETL_TM)

Các giá trị của thuộc tính ISRT_TM phải khớp với thuộc tính code

Các giá trị của thuộc tính

SPCL_INF_CODE_1 phải khớp với thuộc tính code ( được truyền thẳng từ cột DDSIC1 trong bảng SI_DAT_DDMAST ở STAGING)

Các giá trị của thuộc tính

SPCL_INF_CODE_1 phải khớp với thuộc tính code

Các giá trị của thuộc tính

SPCL_INF_CODE_2 phải khớp với thuộc tính code ( được truyền thẳng từ cột DDSIC2 trong bảng SI_DAT_DDMAST ở STAGING)

Các giá trị của thuộc tính

SPCL_INF_CODE_2 phải khớp với thuộc tính code

Các giá trị của thuộc tính Các giá trị của thuộc tính

DDSIC3 trong bảng SI_DAT_DDMAST ở STAGING

Các giá trị của thuộc tính

SPCL_INF_CODE_4 được truyền thẳng từ cột DDSIC4 trong bảng

SI_DAT_DDMAST ở STAGING

Các giá trị của thuộc tính

SPCL_INF_CODE_4 phải khớp với thuộc tính code

Các giá trị của thuộc tính

AR_LAST_MNT_USR_ID được truyền thẳng từ cột DDMUID trong bảng SI_DAT_DDMAST ở STAGING)

Các giá trị của thuộc tính AR_LAST_MNT_USR_ID phải khớp với thuộc tính code

Các giá trị của thuộc tính

AR_LAST_WKST_ID được truyền thẳng từ cột DDMWID trong bảng

SI_DAT_DDMAST ở STAGING)

Các giá trị của thuộc tính AR_LAST_WKST_ID phải khớp với thuộc tính code

Chức năng Dữ liệu đầu vào Ket quả mong đợi

Count + Sô các bản ghi ở nguồn SI_DATE_DDDHIS

trên tầng staging

+ Tập các bản ghi có trong bảng TXN ở tầng SOR

Sô bản ghi ở nguồn = Sơ bản ghi trong đích

Kiêm tra thuộc tính

Các giá trị của thuộc tính

NET_CASH_FLOW_AMT được truyền thẳng từ cột AMT trong bảng SI_DAT_ DDDHIS ở

Các giá trị của thuộc tính nguồn khớp với thuộc tính code

❖Kiểm tra tổng số bản ghi của nguồn (SI_DAT_DDMAST) và đích (AR) - Nguồn

Select count (*) from STAGING.SI_DAT_DDMAST - Đích

Select count (*) FROM AR

Where SRC_STM_ID= (select cl_id from CV where cl_scm_code='SRC_STM' and cl_code='SIBS_SI_DAT_DDMAST');

Ket quả: Nguồn trùng đích (=1390189 bản ghi)

❖Kiểm tra sự trùng lặp dữ liệu ở trường khóa chính (UNQ_ID_IN_SRC_STM) Select count (unq_id_in_src_stm)

From fsstraining_sor.ar Group by unq_id_in_src_stm

Having count(unq_id_in_src_stm)>1;

Kết quả: Khơng có bản ghi nào bị trùng lặp theo từng đối tượng UNQ_ID_IN_SRC_STM

❖Check null Select count (1)

From fsstraining_sor.ar

Where unq_id_in_src_stm is null Kết quả: Trường khóa unq khơng bị để trống

❖Check key Select count (1) From ( Select UNQ_ID_IN_SRC_STM From AR MINUS

Select TO_CHAR (ACCTNO) ACCTNO From STAGING.SI_DAT_DDMAST)

Kết quả: Các giá trị của AR ở trong sor đều có ở trong nguồn

❖Check thuộc tính

- Kiêm tra thuộc tính AR_TERM_TP_ID trong đích Select *

From AR

Where AR_TERM_TP_ID<> (Select CL_ID From CV Where

CL_SCM_CODE='AR_TERM_TP' And CL_CODE='VAR_TERM') Ket quả: Các giá trị của thuộc tính IP_NM khớp với thuộc tính code)

❖Kiêm tra tất cả các thuộc tính của bảng IP có trường mã loại đơi tượng (IP_TP_ID) khơng khớp với u cầu hay giữa nguồn và đích có 1 bản ghi khơng trùng khớp, trường

END_DT có 343320 bản ghi được trả về khác nhau giữa nguồn và đích; thuộc tính LAST_ODRWN_DT khơng ở dưới nguồn đẩy lên phải đê null nhưng có 1202895

bản ghi

Các giá trị của thuộc tính TXN_DT được truyền thẳng từ cột TRDATE trong bảng SI_DAT_ DDDHIS ở STAGING)

Các giá trị của thuộc tính nguồn khớp với thuộc tính code

Các giá trị của thuộc tính TXN_TM được truyền thẳng từ cột TRTIME trong bảng SI_DAT_ DDDHIS ở STAGING)

Các giá trị của thuộc tính nguồn khớp với thuộc tính code

Các giá trị của thuộc tính TXN_VAL_TM được truyền thẳng từ cột TRETIM trong bảng SI_DAT_ DDDHIS ở STAGING)

Các giá trị của thuộc tính nguồn khớp với thuộc tính code

Các giá trị của thuộc tính TXN_ST_CODE được truyền thẳng từ cột TRSTAT trong bảng SI_DAT_ DDDHIS ở STAGING)

Các giá trị của thuộc tính nguồn khớp với thuộc tính code

Các giá trị của thuộc tính TXN_SEQ_NBR được truyền thẳng từ cột SEQ trong bảng SI_DAT_ DDDHIS ở STAGING)

Các giá trị của thuộc tính nguồn khớp với thuộc tính code

Các giá trị của thuộc tính TXN_SRL_NBR được truyền thẳng từ cột SERIAL trong bảng SI_DAT_ DDDHIS ở STAGING)

Các giá trị của thuộc tính nguồn khớp với thuộc tính code

Các giá trị của thuộc tính TXN_AFFECT_TP_ID được truyền thẳng từ cột BORI trong bảng SI_DAT_ DDDHIS ở STAGING)

Các giá trị của thuộc tính nguồn khớp với thuộc tính code

Các giá trị của thuộc tính

TXN_AFFECT_CODE_AT_LAST_AVYđược truyền thẳng từ cột AFDOLA trong bảng SI_DAT_ DDDHIS ở STAGING)

Các giá trị của thuộc tính nguồn khớp với thuộc tính code

Các giá trị của thuộc tính

NET_CASH_FLOW_AMT được truyền thẳng từ cột TRANCD trong bảng SI_DAT_ DDDHIS ở STAGING)

Các giá trị của thuộc tính nguồn khớp với thuộc tính code

Các giá trị của thuộc tính TXN_CODE được truyền thẳng từ cột TRCDEC trong bảng SI_DAT_ DDDHIS ở STAGING)

Các giá trị của thuộc tính nguồn khớp với thuộc tính code

Các giá trị của thuộc tính DCM_POS_CODE được truyền thẳng từ cột CAMT trong bảng SI_DAT_ DDDHIS ở STAGING)

Các giá trị của thuộc tính nguồn khớp với thuộc tính code

Các giá trị của thuộc tính TXN_SRC được truyền thẳng từ cột SOURCE trong bảng SI_DAT_ DDDHIS ở STAGING)

Các giá trị của thuộc tính nguồn khớp với thuộc tính code

Các giá trị của thuộc tính TXN_USR_ID được truyền thẳng từ cột TRUSER trong bảng SI_DAT_

Một phần của tài liệu Nghiên cứu quy trình xây dựng datawarehouse và thực hiện test datawarehouse lưu trữ dữ liệu hợp đồng giao dịch trong NH khoá luận tốt nghiệp 328 (Trang 43 - 63)

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

(90 trang)
w