SAP HANA. Operasi Penggabungan Delta

Selamat siang, rekan-rekan. Hari ini saya ingin berbicara tentang operasi reguler dan penting yang terjadi di database SAP HANA sebagai Delta Merge.





Dalam konsep database HANA, perubahan tabel kolom tidak terjadi secara langsung di toko Utama. Ini karena area MAIN dioptimalkan untuk operasi baca, bukan operasi tulis. Semua operasi tulis berlangsung di area khusus yang disebut toko Delta. Dalam hal ini, operasi baca dilakukan dari kedua area.





Secara berkala perlu memperbaharui area penyimpanan utama tabel kolom (main store) dengan isi area delta store. Proses penggabungan kedua area ini disebut delta merge. Proses ini dapat dipecah menjadi tiga tahap: operasi yang dilakukan segera sebelum penggabungan, selama penggabungan, dan setelah penggabungan. Proses penggabungan delta dapat digambarkan secara skematis sebagai berikut:





Representasi skematis dari operasi Delta Merge
Representasi skema dari operasi Delta Merge

Pada tahap pertama (sebelum dimulainya operasi delta merge), kita melihat bahwa ada dua area Main1 dan Delta1. Membaca dilakukan dari kedua area, tetapi menulis hanya terjadi di area Delta1.





delta merge, Main2 Delta2. Main1 Main2 ( 1). (committed) Delta1 Main2 ( 2). (uncommitted) Delta 1 Delta2 ( 3). Main1, Delta1, Delta2. Delta2.





, , Main1 Delta1 . Main2 Delta2. Delta2.





, ( ) delta merge . , Delta1 Delta2 , .





Delta Merge.





Jenis Operasi Penggabungan Delta
Delta Merge

, . mergedog, SQL. , (implicit) merge, mergedog , Recovery Log replay.





Delta merge

delta merge , (Auto), , , (Critical), . .





Auto merge.  MERGE :





indexserver.ini -> [mergedog] -> activate (boolean), default: true





indexserver.ini -> [mergedog] -> check_interval (ms), default: 60000





indexserver.ini -> [mergedog] -> auto_merge_decision_func





[mergedog] true. ( check_interval) mergedog merge . Auto merge auto_merge_decision_func.





Critical merge.  MERGE mergedog . Critical merge :





indexserver.ini -> [mergedog] -> critical_merge_decision_func





Delta Merge

DELTA MERGE. :





Hard Force merge





, , MERGE. Hard merge :





MERGE DELTA OF “<table_name>” [FORCE REBUILD]





DELTA MERGE ( ) . FORCE REBUILD , delta merge, , , (decision function), .





WITH PARAMETERS (‘FORCED_MERGE’ = ‘ON’) FORCED MERGE, .





Smart merge





merge . , BW. . , Smart merge , .





indexserver.ini -> [mergedog] -> smart_merge_enabled





indexserver.ini -> [mergedog] -> smart_merge_decision_func





Smart merge :





MERGE DELTA OF “<table_name>” WITH PARAMETERS (‘SMART_MERGE’ = ‘ON’)





! , .





SAP ABAP TREX_EXT_MERGE_DELTA_INDEX smart merge .





Memory merge





SAP HANA 1.0 SP8 Memory merge, Hard merge. , , .





! . , .





Merge Monitor

. Merge Monitor.





( 2057046) , , . , .





() Merge . merge token, FORCE MERGE. Merge . . , , load_balancing_func indexserver.ini. merge, . , token_per_table.





Delta Merge, M_DELTA_MERGE_STATISTICS, . HOST_DELTA_MERGE_STATISTICS _SYS_STATISTICS. Merge. Merge TYPE ‘MERGE’. :





Nilai dalam bidang TYPE dari tampilan M_DELTA_MERGE_STATISTICS dan HOST_DELTA_MERGE_STATISTICS
TYPE M_DELTA_MERGE_STATISTICS HOST_DELTA_MERGE_STATISTICS

Delta Merge M_JOB_PROGRESS.





, Delta merge , . : main () + main () + delta. , .





delta merge (TYPE='SPARSE' M_DELTA_MERGE_STATISTICS), Pool/OptimizeCompression/<schema>:<table>. , .





Delta Merge

Delta Merge . LAST_ERROR ERROR_DESCRIPTION M_DELTA_MERGE_STATISTICS HOST­_DELTA_MERGE_STATISTICS. SQL HANA_Tables_ColumnStore_Merges.





SAP KBA 2057046 – FAQ: SAP HANA Delta Merges





HANA. delta merge , . Basis, BW .








All Articles