{"id":949,"date":"2024-04-14T18:55:56","date_gmt":"2024-04-14T15:55:56","guid":{"rendered":"https:\/\/techltx.com\/de\/?p=949"},"modified":"2024-04-17T20:41:02","modified_gmt":"2024-04-17T17:41:02","slug":"sap-hana-native-storage-extension-mit-partitionierung-der-tabelle-edid4","status":"publish","type":"post","link":"https:\/\/techltx.com\/de\/sap\/sap-hana-native-storage-extension-mit-partitionierung-der-tabelle-edid4\/2024\/04\/","title":{"rendered":"SAP HANA Native Storage Extension mit Partitionierung der Tabelle EDID4"},"content":{"rendered":"\n<p>Dies ist eine HowTo-Anleitung:<\/p>\n\n\n\n<p>Um SAP HANA Native Storage Extension (NSE) mit Partitionierung zu optimieren, m\u00fcssen Sie einige Schl\u00fcsselstrategien ber\u00fccksichtigen. Hier finden Sie eine detaillierte Erkl\u00e4rung, die auf die Verbesserung der Leistung und des Datenmanagements durch Partitionierung in Kombination mit NSE zugeschnitten ist:<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><tbody><tr><td>Strategie der Aufteilung<\/td><td>Verwenden Sie die Partitionierung, um gro\u00dfe Tabellen in kleinere, besser zu verwaltende Segmente aufzuteilen. Dies kann auf der Grundlage von Bereichen (Bereichspartitionierung), Listenwerten (Listenpartitionierung) oder sogar Hash-Schl\u00fcsseln (Hash-Partitionierung) erfolgen.<br>Die Partitionierung kann dabei helfen, die hei\u00dfen und warmen Daten nach Zugriffsmustern auszurichten. So k\u00f6nnen beispielsweise Daten, auf die h\u00e4ufig zugegriffen wird, im Hauptspeicher aufbewahrt werden, w\u00e4hrend Daten, auf die weniger h\u00e4ufig zugegriffen wird, in NSE partitioniert werden k\u00f6nnen. vgl: <a href=\"https:\/\/help.sap.com\/docs\/SAP_HANA_PLATFORM\/6b94445c94ae495c83a19646e7c3fd56\/c3002bdbbb571014ac1ce966e91b1a38.html\">https:\/\/help.sap.com\/docs\/SAP_HANA_PLATFORM\/6b94445c94ae495c83a19646e7c3fd56\/c3002bdbbb571014ac1ce966e91b1a38.html<\/a><\/td><\/tr><tr><td>Daten-Strukturierung<\/td><td><code>SAP HANA NSE ist f\u00fcr ein effektives Daten-Tiering konzipiert, das es erm\u00f6glicht, Daten, auf die weniger h\u00e4ufig zugegriffen wird, auf einem plattenbasierten Speicher zu speichern und so den Speicherbedarf und die Kosten zu reduzieren.<\/code><br>Sie k\u00f6nnen Tiering auf Partitionsebene spezifizieren, wobei verschiedene Partitionen derselben Tabelle in verschiedenen Speicherschichten gespeichert werden k\u00f6nnen. Dieser Ansatz ist vorteilhaft f\u00fcr die Handhabung von Tabellen mit unterschiedlichen Datenzugriffsmustern in verschiedenen Segmenten.<\/td><\/tr><tr><td>Partitionsbeschneidung<\/td><td>Mit intelligenter Partitionierung erm\u00f6glichen Abfragen, die nur auf bestimmte Partitionen zugreifen, dass HANA ein Partition Pruning durchf\u00fchrt, bei dem nur relevante Partitionen gescannt werden. Dies reduziert die E\/A- und Verarbeitungszeit erheblich, was insbesondere in Kombination mit NSE von Vorteil ist.<br>Lade- und Entladevorg\u00e4nge:<br>Nutzen Sie die M\u00f6glichkeiten von NSE, um selten genutzte Partitionen manuell oder automatisch auf die Festplatte zu entladen und sie bei Bedarf wieder in den Speicher zu laden. Dieser Vorgang kann durch die Festlegung geeigneter Richtlinien auf der Grundlage von Nutzungsmustern und Gesch\u00e4ftspriorit\u00e4ten optimiert werden.<\/td><\/tr><tr><td>Indizierung von Partitionen<\/td><td>Geeignete Indizierungsstrategien f\u00fcr Partitionen k\u00f6nnen die Zugriffsgeschwindigkeit weiter erh\u00f6hen. W\u00e4hrend Indizes in HANA im Allgemeinen speicherresident sind, sollten Sie die Auswirkungen auf die Leistung ber\u00fccksichtigen, wenn Indizes f\u00fcr NSE-Daten von der Festplatte geladen werden m\u00fcssen.<\/td><\/tr><tr><td>\u00dcberwachung und Anpassungen<\/td><td>Die regelm\u00e4\u00dfige \u00dcberwachung der Leistungsmetriken sowohl f\u00fcr den Hauptspeicher als auch f\u00fcr die NSE ist von entscheidender Bedeutung. Anpassung der Partitionierungs- und Tiering-Strategien auf der Grundlage sich \u00e4ndernder Zugriffsmuster und des Datenwachstums.<\/td><\/tr><tr><td>Kombination mit anderen Funktionen<\/td><td>Kombinieren Sie NSE mit Funktionen wie Delta Merges, LOB (Large Object)-Behandlung und Spaltenspeicherkomprimierung, um Leistung und Speicherplatz weiter zu optimieren.<\/td><\/tr><\/tbody><\/table><figcaption class=\"wp-element-caption\">Durch die Implementierung dieser Strategien k\u00f6nnen Sie sowohl die Partitionierung als auch NSE in SAP HANA nutzen, um gro\u00dfe Datenmengen effektiv zu verwalten, die Leistung zu optimieren und die Kosten zu senken. Planen und testen Sie Partitionierungsschemata immer in einer Entwicklungsumgebung, bevor Sie sie in der Produktion einsetzen, um sicherzustellen, dass sie Ihre Leistungs- und Speicherziele erf\u00fcllen.<\/figcaption><\/figure>\n\n\n\n<p><strong>Dieses Beispiel beschreibt, wie man eine SAP HANA RANGE RANGE Partition f\u00fcr TABLE EDID4 erstellt und die Tabelle mit HANA NSE in den warmen Speicher entl\u00e4dt:<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Identification of relevant tables - the enabled NSE Advisor helps you.\nALTER SYSTEM CLEAR CACHE ('cs_access_statistics');\nALTER SYSTEM ALTER CONFIGURATION ('indexserver.ini','system') SET ('cs_access_statistics','collection_enabled') = 'true' WITH RECONFIGURE;\n\n# Verify the recommendations. A good idea is to collect some days of data:\nSELECT * FROM SYS.M_CS_NSE_ADVISOR ;\n\n# Range-Range Partitioning of table EDID4\n\nALTER TABLE EDID4\n  PARTITION BY RANGE (MANDT)(         \n  PARTITION VALUE = '000',\n  PARTITION VALUE = '001', \n  PARTITION OTHERS ) ,\nRANGE (DOCNUM)(\n  PARTITION '0000000000000000' <= VALUES < '0000000010000000',\n  PARTITION '0000000010000000' <= VALUES < '0000000020000000',\n  PARTITION '0000000020000000' <= VALUES < '0000000030000000',\n  PARTITION '0000000030000000' <= VALUES < '0000000040000000',\n  ...\n  PARTITION '0000000018000000' <= VALUES < '0000000099999999',\n  PARTITION OTHERS ) ;\n\n\n# Activate NSE for table EDID4 \nALTER TABLE EDID4 PAGE LOADABLE;\n\n# Unload EDID4 \nUNLOAD \"EDID4\" DELETE PERSISTENT MEMORY;\n\n# The DELETE PERSISTENT MEMORY clause is optional and takes care that in context of persistent memory or the fast restart option (SAP Note 2700084) also the main storages are unloaded.\n\n# Disable NSE Advisor if not required anymore\nALTER SYSTEM ALTER CONFIGURATION ('indexserver.ini','system') SET ('cs_access_statistics','collection_enabled') = 'false' WITH RECONFIGURE;<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/techltx.com\/wp-content\/uploads\/2024\/04\/sap-hana-native-storage-extension-for-warm-storage.png\"><img loading=\"lazy\" decoding=\"async\" width=\"762\" height=\"520\" src=\"https:\/\/techltx.com\/wp-content\/uploads\/2024\/04\/sap-hana-native-storage-extension-for-warm-storage.png\" alt=\"Schema Wie SAP HANA NSE funktioniert.\" class=\"wp-image-945\" srcset=\"https:\/\/techltx.com\/wp-content\/uploads\/2024\/04\/sap-hana-native-storage-extension-for-warm-storage.png 762w, https:\/\/techltx.com\/wp-content\/uploads\/2024\/04\/sap-hana-native-storage-extension-for-warm-storage-300x205.png 300w\" sizes=\"auto, (max-width: 762px) 100vw, 762px\" \/><\/a><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u00dcberpr\u00fcfung der Merge Operationen der Tabelle EDID4<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>select schema_name, table_name, part_id, raw_record_count_in_delta, last_merge_time, persistent_memory, read_count, write_count, merge_count from m_cs_tables where table_name = 'edid4' order by last_merge_time desc;\n<\/code><\/pre>\n\n\n\n<p>Die angegebene SQL-Abfrage hat zum Ziel, spezifische Informationen \u00fcber die Tabelle <code>EDID4<\/code> aus der Systemansicht <code>m_cs_tables<\/code> in einer SAP HANA Datenbank abzufragen. Hier ist die Bedeutung der einzelnen Komponenten der Abfrage:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong><code>schema_name<\/code><\/strong>: Gibt den Namen des Schemas an, in dem sich die Tabelle befindet.<\/li>\n\n\n\n<li><strong><code>table_name<\/code><\/strong>: Der Name der Tabelle, f\u00fcr die die Informationen abgerufen werden, spezifiziert als <code>EDID4<\/code>.<\/li>\n\n\n\n<li><strong><code>part_id<\/code><\/strong>: Die ID der Partition der Tabelle, falls partitioniert.<\/li>\n\n\n\n<li><strong><code>raw_record_count_in_delta<\/code><\/strong>: Die Anzahl der Rohdatens\u00e4tze im Delta-Bereich der Tabelle. Dies gibt an, wie viele Eintr\u00e4ge noch nicht in den Hauptdatenbereich (Main Store) \u00fcbertragen wurden.<\/li>\n\n\n\n<li><strong><code>last_merge_time<\/code><\/strong>: Der Zeitpunkt, zu dem die letzte Delta-Merge-Operation f\u00fcr diese Tabelle durchgef\u00fchrt wurde. Delta-Merge ist ein Vorgang, bei dem \u00c4nderungen aus dem Delta-Bereich in den Hauptdatenbereich \u00fcbertragen werden.<\/li>\n\n\n\n<li><strong><code>PERSISTENT_MEMORY<\/code><\/strong>: Zeigt an, ob die Tabelle im persistenten Speicher (wie Intel Optane DC Persistent Memory) gespeichert wird.<\/li>\n\n\n\n<li><strong><code>READ_COUNT<\/code><\/strong>: Die Anzahl der Leseoperationen, die auf der Tabelle ausgef\u00fchrt wurden.<\/li>\n\n\n\n<li><strong><code>WRITE_COUNT<\/code><\/strong>: Die Anzahl der Schreiboperationen, die auf der Tabelle ausgef\u00fchrt wurden.<\/li>\n\n\n\n<li><strong><code>MERGE_COUNT<\/code><\/strong>: Die Anzahl der Merge-Operationen, die auf der Tabelle ausgef\u00fchrt wurden.<\/li>\n<\/ol>\n\n\n\n<p>Die Abfrage sortiert die Ergebnisse in absteigender Reihenfolge nach dem Zeitpunkt des letzten Merges (<code>last_merge_time desc<\/code>), was bedeutet, dass die neuesten Merge-Operationen zuerst angezeigt werden. Dies kann hilfreich sein, um zu verstehen, wie aktuell die Daten in der Hauptdatenspeicher der Tabelle sind und wie oft und wann die Daten konsolidiert wurden.<\/p>\n\n\n\n<p>Die Ergebnisse dieser Abfrage bieten wertvolle Einblicke in die Performance und das Verhalten der Tabelle <code>EDID4<\/code> im Hinblick auf Speicheroperationen und Datenaktualit\u00e4t, was wichtig f\u00fcr die Optimierung und \u00dcberwachung der Datenbankperformance ist. <\/p>\n\n\n\n<p>vgl. SAP HANA system view M_CS_TABLES: <a href=\"https:\/\/help.sap.com\/docs\/HANA_SERVICE_CF\/7c78579ce9b14a669c1f3295b0d8ca16\/20ad60f77519101498ccb610c33c3ca6.html?locale=en-US\">https:\/\/help.sap.com\/docs\/HANA_SERVICE_CF\/7c78579ce9b14a669c1f3295b0d8ca16\/20ad60f77519101498ccb610c33c3ca6.html?locale=en-US<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>HowTo: <\/p>\n<p>Wenn eine Spalte geladen wird, wird sie aus der Persistenz in den SAP HANA-Spaltenspeicher kopiert.<\/p>\n<p>Entladungen sind Tabellenspaltenverschiebungen aus dem Spaltenspeicher.<\/p>\n<p>In diesem SAP-Hinweis konzentrieren wir uns auf das Laden und Entladen von Spalten im Column Store. Tabellen im Zeilenspeicher werden normalerweise beim Start geladen und bleiben dauerhaft im Speicher.<\/p>\n<p>Hot Data: Wird zum Speichern sehr wichtiger Daten f\u00fcr eine schnelle und analytische Verarbeitung in Echtzeit verwendet, die \u00fcblicherweise im DRAM (dynamisches RAM) oder PMEM (Persistent Memory) gespeichert werden.<\/p>\n<p>Warm Data: Wird zum Speichern von Daten verwendet, die nicht h\u00e4ufig verwendet werden und nicht kontinuierlich im SAP HANA-Speicher verbleiben m\u00fcssen. NSE verwaltet diese Daten als erweiterte Festplatte. Die Abfrageleistung f\u00fcr warme Daten kann im Vergleich zu hei\u00dfen Daten geringer sein.<br \/>\nKalte Daten: Werden zum Speichern von Daten verwendet, auf die selten zugegriffen wird.<\/p>\n<p>SAP Native Storage Extension [NSE] \u2013 SAP HANA Native Storage Extension ist die integrierte Warmspeicherl\u00f6sung von HANA. Standardm\u00e4\u00dfig sind in HANA 2.0 SP 04 und bei aktivierter SAP HANA CLOUD NSE keine weiteren Ma\u00dfnahmen erforderlich, au\u00dfer der Implementierung korrekter SQL\/DDL-Deklarationen.<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"content-type":"","_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[86,5],"tags":[85,80,87,83,84,7],"class_list":["post-949","post","type-post","status-publish","format-standard","hentry","category-hana","category-sap","tag-edid4","tag-hana","tag-howto","tag-nse","tag-partition","tag-sap"],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":"BALTX","author_link":"https:\/\/techltx.com\/de\/author\/baltx-com\/"},"uagb_comment_info":0,"uagb_excerpt":"HowTo: Wenn eine Spalte geladen wird, wird sie aus der Persistenz in den SAP HANA-Spaltenspeicher kopiert. Entladungen sind Tabellenspaltenverschiebungen aus dem Spaltenspeicher. In diesem SAP-Hinweis konzentrieren wir uns auf das Laden und Entladen von Spalten im Column Store. Tabellen im Zeilenspeicher werden normalerweise beim Start geladen und bleiben dauerhaft im Speicher. Hot Data: Wird zum&hellip;","_links":{"self":[{"href":"https:\/\/techltx.com\/de\/wp-json\/wp\/v2\/posts\/949","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/techltx.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/techltx.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/techltx.com\/de\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/techltx.com\/de\/wp-json\/wp\/v2\/comments?post=949"}],"version-history":[{"count":18,"href":"https:\/\/techltx.com\/de\/wp-json\/wp\/v2\/posts\/949\/revisions"}],"predecessor-version":[{"id":1068,"href":"https:\/\/techltx.com\/de\/wp-json\/wp\/v2\/posts\/949\/revisions\/1068"}],"wp:attachment":[{"href":"https:\/\/techltx.com\/de\/wp-json\/wp\/v2\/media?parent=949"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/techltx.com\/de\/wp-json\/wp\/v2\/categories?post=949"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/techltx.com\/de\/wp-json\/wp\/v2\/tags?post=949"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}