SAP HANA. Opération Delta Merge

Bon aprÚs-midi, chers collÚgues. Aujourd'hui, je voudrais parler d'une opération aussi réguliÚre et importante qui se déroule dans la base de données SAP HANA que Delta Merge.





Dans le concept de base de données HANA, les modifications apportées aux tables en colonnes ne se produisent pas directement dans le magasin principal. C'est parce que la zone MAIN est optimisée pour les opérations de lecture, pas pour les opérations d'écriture. Toutes les opérations d'écriture ont lieu dans une zone spéciale appelée le magasin Delta. Dans ce cas, les opérations de lecture sont effectuées à partir des deux zones.





PĂ©riodiquement, il est nĂ©cessaire de mettre Ă  jour la zone de stockage principale des tables de colonnes (magasin principal) avec le contenu de la zone de stockage delta. Le processus de fusion de ces deux zones est appelĂ© fusion delta. Ce processus peut ĂȘtre dĂ©composĂ© en trois Ă©tapes : l'opĂ©ration effectuĂ©e immĂ©diatement avant la fusion, pendant la fusion et aprĂšs la fusion. Le processus de fusion delta peut ĂȘtre schĂ©matiquement reprĂ©sentĂ© comme suit :





Représentation schématique d'une opération Delta Merge
Représentation schématique d'une opération Delta Merge

A la premiÚre étape (avant le début de l'opération de fusion delta), on voit qu'il y a deux zones Main1 et Delta1. La lecture est effectuée à partir des deux zones, mais l'écriture se produit uniquement dans la zone 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.





Types d'opérations de fusion 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’. :





Valeurs dans le champ TYPE des vues M_DELTA_MERGE_STATISTICS et 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