SAP HANA. Operação Delta Merge

Boa tarde colegas. Hoje eu gostaria de falar sobre uma operação regular e importante que ocorre no banco de dados SAP HANA como Delta Merge.





No conceito de banco de dados HANA, as alterações nas tabelas colunares não acontecem diretamente no armazenamento principal. Isso ocorre porque a Ôrea MAIN é otimizada para operações de leitura, não para operações de gravação. Todas as operações de gravação ocorrem em uma Ôrea especial chamada de armazenamento Delta. Nesse caso, as operações de leitura são realizadas a partir de ambas as Ôreas.





Periodicamente, é necessÔrio atualizar a Ôrea de armazenamento principal das tabelas de colunas (armazenamento principal) com o conteúdo da Ôrea de armazenamento delta. O processo de fusão dessas duas Ôreas é denominado fusão delta. Esse processo pode ser dividido em três etapas: a operação executada imediatamente antes da fusão, durante a fusão e após a fusão. O processo de mesclagem delta pode ser representado esquematicamente da seguinte forma:





Representação esquemÔtica de uma operação Delta Merge
Representação esquemÔtica de uma operação Delta Merge

No primeiro estÔgio (antes do início da operação de fusão delta), vemos que existem duas Ôreas Main1 e Delta1. A leitura é realizada em ambas as Ôreas, mas a escrita ocorre apenas na Ôrea 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.





Tipos de operação Delta Merge
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’. :





Valores no campo TYPE das visualizaƧƵes M_DELTA_MERGE_STATISTICS e 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