{"id":11196,"date":"2020-01-15T08:00:31","date_gmt":"2020-01-15T07:00:31","guid":{"rendered":"http:\/\/192.168.20.3\/?p=11196"},"modified":"2024-12-11T16:31:43","modified_gmt":"2024-12-11T15:31:43","slug":"conceptos-basicos-sobre-bbdd-sap-y-hana-parte-ii","status":"publish","type":"post","link":"https:\/\/orekait.com\/es\/conceptos-basicos-sobre-bbdd-sap-y-hana-parte-ii\/","title":{"rendered":"Conceptos b\u00e1sicos sobre BBDD SAP y HANA<br><span class=\"font-300\">Parte II<\/span>"},"content":{"rendered":"<p>[et_pb_section fb_built=&#8221;1&#8243; admin_label=&#8221;section&#8221; _builder_version=&#8221;4.16&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_row admin_label=&#8221;Imagen principal&#8221; _builder_version=&#8221;4.16&#8243; background_size=&#8221;initial&#8221; background_position=&#8221;top_left&#8221; background_repeat=&#8221;repeat&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.16&#8243; custom_padding=&#8221;|||&#8221; global_colors_info=&#8221;{}&#8221; custom_padding__hover=&#8221;|||&#8221;][et_pb_image src=&#8221;https:\/\/orekait.com\/wp-content\/uploads\/2020\/01\/Conceptos-basicos-sobre-BBDD-SAP-y-HANA-Parte-II-2.png&#8221; alt=&#8221;cloud-public&#8221; title_text=&#8221;Conceptos-b\u00e1sicos-sobre-BBDD-SAP-y-HANA-Parte-II-2&#8243; admin_label=&#8221;Imagen principal&#8221; module_class=&#8221;post-img&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_image][\/et_pb_column][\/et_pb_row][et_pb_row admin_label=&#8221;Cuerpo&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_text admin_label=&#8221;Texto&#8221; _builder_version=&#8221;4.25.2&#8243; header_2_font_size=&#8221;24px&#8221; header_3_font_size=&#8221;20px&#8221; header_4_font_size=&#8221;17px&#8221; background_size=&#8221;initial&#8221; background_position=&#8221;top_left&#8221; background_repeat=&#8221;repeat&#8221; width=&#8221;%22630%22&#8243; height=&#8221;%22307%22&#8243; hover_enabled=&#8221;0&#8243; global_colors_info=&#8221;{}&#8221; content__hover_enabled=&#8221;off|hover&#8221; sticky_enabled=&#8221;0&#8243;]<\/p>\n<p>En el art\u00edculo anterior repas\u00e1bamos los<a href=\"https:\/\/orekait.com\/blog\/conceptos-basicos-sobre-bbdd-sap-y-hana-parte-i\/\">\u00a0conceptos generales m\u00e1s importantes acerca de las\u00a0<strong>bases de datos relacionales en SAP<\/strong><\/a>. En este segundo art\u00edculo vamos a concretar m\u00e1s, viendo c\u00f3mo aplican (o no) estos conceptos en las\u00a0<strong>bases de datos HANA<\/strong>.<\/p>\n<p>Las\u00a0<strong>bases de datos en HANA<\/strong>\u00a0funcionan de manera diferente a las bases de datos cl\u00e1sicas porque\u00a0las tablas est\u00e1n basadas en columnas y no en filas como las bases de datos tradicionales. Los\u00a0campos<em>\u00a0de columna de la\u00a0<strong>base de datos de HANA<\/strong>\u00a0se comportan como si hubi\u00e9ramos creado manualmente un \u00edndice en cada campo de la tabla,\u00a0<\/em>pero sin ning\u00fan costo \/ gasto \/ inconveniente de los \u00edndices secundarios. Esto significa que ya no tiene sentido utilizar los \u00edndices que explic\u00e1bamos en el art\u00edculo anterior de la serie.<\/p>\n<p>Sin embargo, se pueden crear \u00edndices en la base de datos de HANA mediante el comando CREAR \u00cdNDICE. Hay dos tipos de \u00edndices en HANA.<\/p>\n<h2>\u00cdndices en bases de datos HANA<\/h2>\n<ol>\n<li><strong>\u00cdndice invertido:<\/strong>\u00a0los \u00edndices invertidos se refieren a una sola columna. Aqu\u00ed, los datos de \u00edndice se almacenan en estructuras de memoria interna que pertenecen a la columna respectiva.<\/li>\n<li><strong>\u00cdndice compuesto:<\/strong>\u00a0los \u00edndices compuestos se refieren a m\u00e1s de una columna. Primero, el contenido de estas columnas se agrupa en una columna interna y luego se crea un \u00edndice invertido para esta columna interna.<\/li>\n<\/ol>\n<h2>Vistas en bases de datos HANA<\/h2>\n<p>Las vistas ABAP en el diccionario de datos son conjuntos de datos l\u00f3gicos que contienen datos extra\u00eddos en una o m\u00e1s tablas como una sola entidad. Una vista en una o m\u00e1s tablas se refiere a que los datos de una vista no se almacenan f\u00edsicamente como los datos que se derivan de una o m\u00e1s tablas.<\/p>\n<p>En SAP se admiten cuatro tipos de vista diferentes. Estos difieren en la forma en que se implementa la vista y en los m\u00e9todos permitidos para acceder a los datos de la vista.<\/p>\n<ol>\n<li><strong>Las vistas de la base de datos<\/strong>\u00a0se implementan con una vista equivalente en la base de datos.<\/li>\n<li><strong>Las vistas de proyecci\u00f3n<\/strong>\u00a0se utilizan para ocultar los campos de una tabla (solo proyecci\u00f3n).<\/li>\n<li><strong>Las vistas de ayuda<\/strong>\u00a0se pueden utilizar como m\u00e9todo de selecci\u00f3n en las b\u00fasquedas de ayuda.<\/li>\n<li><strong>Las vistas de mantenimiento<\/strong>\u00a0le permiten mantener los datos distribuidos en varias tablas para un objeto de aplicaci\u00f3n a la vez.<\/li>\n<\/ol>\n<p>Las vistas de la base de datos implementan una uni\u00f3n interna. Los otros tipos de vista implementan una uni\u00f3n externa.<\/p>\n<p><a href=\"https:\/\/orekait.com\/blog\/wp-content\/uploads\/2020\/01\/Conceptos-b%C3%A1sicos-sobre-BBDD-SAP-y-HANA-Parte-II-1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter  wp-image-7277\" src=\"https:\/\/orekait.com\/blog\/wp-content\/uploads\/2020\/01\/Conceptos-b%C3%A1sicos-sobre-BBDD-SAP-y-HANA-Parte-II-1-300x171.png\" sizes=\"auto, (max-width: 464px) 100vw, 464px\" srcset=\"https:\/\/orekait.com\/blog\/wp-content\/uploads\/2020\/01\/Conceptos-b\u00e1sicos-sobre-BBDD-SAP-y-HANA-Parte-II-1-300x171.png 300w, https:\/\/orekait.com\/blog\/wp-content\/uploads\/2020\/01\/Conceptos-b\u00e1sicos-sobre-BBDD-SAP-y-HANA-Parte-II-1-400x229.png 400w, https:\/\/orekait.com\/blog\/wp-content\/uploads\/2020\/01\/Conceptos-b\u00e1sicos-sobre-BBDD-SAP-y-HANA-Parte-II-1.png 402w\" alt=\"Conceptos b\u00e1sicos sobre BBDD SAP y HANA (Parte II) (1)\" width=\"464\" height=\"264\" \/><\/a><\/p>\n<p>En SAP sobre base de datos HANA existen dos maneras de utilizar las vistas de la base de datos:<\/p>\n<ol>\n<li>Definirlas al nivel del diccionario ABAP<\/li>\n<li>Definirlas al nivel de la base de datos.<\/li>\n<\/ol>\n<h2>ABAP CDS VIEWS<\/h2>\n<p>Las vistas de SAP ABAP CDS se definen en el nivel del servidor de aplicaciones ABAP. Las vistas se crean y mantienen en archivos DDL (lenguaje de definici\u00f3n de datos), que residen en el servidor de aplicaciones ABAP. Forman parte del Diccionario de datos (SE11) y, por lo tanto, forman parte del sistema de transporte ABAP, la gesti\u00f3n del ciclo de vida, etc.<\/p>\n<p>Las vistas usan Open SQL y tienen como objetivo apoyar el desarrollo de aplicaciones ABAP. El tipo de sistema de base de datos es irrelevante: no tiene que ser una base de datos HANA. Por lo tanto, el enfoque principal de las vistas ABAP CDS es crear vistas.<\/p>\n<h2>HANA CDS VIEWS<\/h2>\n<p>Las vistas de CDS de SAP HANA se definen en el nivel de base de datos de HANA. Las vistas se crean y mantienen en archivos DDL, que residen en el nivel de la base de datos en HANA XS (HANA Extended Application Services). Las vistas usan SQL nativo y tienen como objetivo apoyar el desarrollo de las aplicaciones nativas de SAP HANA. Usan caracter\u00edsticas que son espec\u00edficas de SAP HANA. Por lo tanto, solo se pueden usar con una base de datos HANA. El enfoque principal de las vistas de CDS de HANA es crear modelos en la base de datos de HANA.<\/p>\n<p>Aqu\u00ed ten\u00e9is una referencia a un art\u00edculo anterior del blog de Oreka IT en el que hablamos sobre los CDS.<\/p>\n<p><a href=\"https:\/\/orekait.com\/blog\/sap-hana-core-data-services-y-sus-vistas\/\">https:\/\/orekait.com\/blog\/sap-hana-core-data-services-y-sus-vistas\/<\/a><\/p>\n<h2>\u00bfOpen SQL y Native SQL son excluyentes?<\/h2>\n<p><strong>La respuesta es simplemente NO, porque tienen su propia identidad y prop\u00f3sito.<\/strong><\/p>\n<p>Open SQL consiste en un conjunto de sentencias ABAP que realizan operaciones en la base de datos central en SAP Web AS ABAP. Se llama OPEN porque es independiente de la base de datos. (Open = independiente de plataforma). En fondo, los programas Kernel est\u00e1n ocupados convirtiendo la declaraci\u00f3n Open SQL en declaraciones SQL nativas para que la base de datos en uso entienda el lenguaje.<\/p>\n<p>Open SQL solo puede funcionar con tablas de base de datos que se han creado en el Diccionario ABAP.<\/p>\n<p>En SQL nativo, se puede utilizar principalmente instrucciones SQL espec\u00edficas de la base de datos. La interfaz SQL nativa los env\u00eda tal cual al sistema de base de datos donde se ejecutan. Como no se utiliza nada definido en el diccionario de datos ABAP, las tablas que se necesitan pueden existir solo al nivel de base de datos, por lo tanto, SAP no tiene una herramienta para verificar la sintaxis de estas consultas.<\/p>\n<p>Con esta \u00faltima pregunta y respuesta, acabamos este segundo art\u00edculo de la serie. En el siguiente describiremos un ejemplo pr\u00e1ctico de una vista CDS en HANA.<\/p>\n<p>Si tienes preguntas puedes dej\u00e1rnoslas en el espacio de preguntas. \u00a1Muchas gracias por leernos!<\/p>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row admin_label=&#8221;M\u00e1s informaci\u00f3n&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_text _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<p class=\"morado\">M\u00e1s informaci\u00f3n:<\/p>\n<p>[\/et_pb_text][et_pb_button button_url=&#8221;https:\/\/orekait.com\/es\/area-personalizacion&#8221; button_text=&#8221;M\u00e1s informaci\u00f3n&#8221; module_class=&#8221;entrada-btn&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; custom_button=&#8221;on&#8221; button_text_color=&#8221;#8156EA&#8221; button_bg_color=&#8221;RGBA(255,255,255,0)&#8221; button_border_color=&#8221;#8156EA&#8221; button_border_radius=&#8221;30px&#8221; button_font=&#8221;Plus Jakarta Sans|600|||||||&#8221; button_icon=&#8221;&#x24;||divi||400&#8243; button_icon_color=&#8221;#8156EA&#8221; button_on_hover=&#8221;off&#8221; hover_enabled=&#8221;0&#8243; global_colors_info=&#8221;{}&#8221; button_text_color__hover_enabled=&#8221;on|desktop&#8221; button_text_color__hover=&#8221;#8156EA&#8221; button_bg_color__hover_enabled=&#8221;on|hover&#8221; button_bg_color__hover=&#8221;#8156EA&#8221; button_bg_enable_color__hover=&#8221;on&#8221; button_icon_color__hover_enabled=&#8221;on|hover&#8221; button_icon_color__hover=&#8221;#ffffff&#8221; url_new_window=&#8221;on&#8221; sticky_enabled=&#8221;0&#8243;][\/et_pb_button][et_pb_divider show_divider=&#8221;off&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; custom_margin=&#8221;||40px||false|false&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_divider][\/et_pb_column][\/et_pb_row][et_pb_row use_custom_gutter=&#8221;on&#8221; admin_label=&#8221;Noticias relacionadas titulo&#8221; module_id=&#8221;fondo-articulos&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; background_color=&#8221;#f7f7f7&#8243; width=&#8221;100%&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_divider show_divider=&#8221;off&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; background_color=&#8221;RGBA(255,255,255,0)&#8221; custom_margin=&#8221;||40px||false|false&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_divider][et_pb_heading title=&#8221;Quizas te pueda interesar&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; title_level=&#8221;h2&#8243; title_text_align=&#8221;center&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_heading][et_pb_divider show_divider=&#8221;off&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; custom_margin=&#8221;||30px||false|false&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_divider][\/et_pb_column][\/et_pb_row][et_pb_row admin_label=&#8221;Noticias relacionadas&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; width=&#8221;100%&#8221; custom_margin=&#8221;-150px||||false|false&#8221; custom_margin_tablet=&#8221;0px||||false|false&#8221; custom_margin_phone=&#8221;0px||||false|false&#8221; custom_margin_last_edited=&#8221;on|desktop&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_blog fullwidth=&#8221;off&#8221; posts_number=&#8221;3&#8243; include_categories=&#8221;current&#8221; show_author=&#8221;off&#8221; show_date=&#8221;off&#8221; show_pagination=&#8221;off&#8221; _builder_version=&#8221;4.25.2&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_blog][\/et_pb_column][\/et_pb_row][\/et_pb_section]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>En el art\u00edculo anterior repas\u00e1bamos los\u00a0conceptos generales m\u00e1s importantes acerca de las\u00a0bases de datos relacionales en SAP. En este segundo art\u00edculo vamos a concretar m\u00e1s, viendo c\u00f3mo aplican (o no) estos conceptos en las\u00a0bases de datos HANA. Las\u00a0bases de datos en HANA\u00a0funcionan de manera diferente a las bases de datos cl\u00e1sicas porque\u00a0las tablas est\u00e1n basadas [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":11198,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_et_pb_use_builder":"on","_et_pb_old_content":"Lorem ipsum dolor sit amet consectetur adipiscing elit congue montes, imperdiet taciti erat elementum fermentum sem ante ultrices ridiculus, sagittis sociis egestas quisque ac semper quis odio. Aenean hendrerit ac metus dis nascetur aliquet mollis integer, rutrum vel laoreet posuere proin sagittis luctus est, tempus duis nisl ultrices parturient tempor praesent. Dignissim curabitur nascetur pellentesque augue fringilla pulvinar eros, tempus fames vehicula maecenas cubilia id, rutrum euismod integer ut scelerisque mus.\r\n\r\nVivamus auctor odio aenean rhoncus natoque dictum purus, volutpat pellentesque laoreet ridiculus consequat nisi varius euismod, augue platea convallis curae magnis taciti. Imperdiet nibh curabitur quisque orci consequat aenean pellentesque, cubilia duis senectus felis sed posuere tortor, magnis enim diam a odio sociis. Enim tellus nisl nec molestie augue luctus tempor habitant, nunc dictumst phasellus volutpat sem facilisis taciti, habitasse laoreet at turpis vel fermentum vulputate.","_et_gb_content_width":"","footnotes":""},"categories":[57,51],"tags":[],"class_list":["post-11196","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-sap-netweaver","category-user-experience-integracion"],"_links":{"self":[{"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/posts\/11196","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/comments?post=11196"}],"version-history":[{"count":4,"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/posts\/11196\/revisions"}],"predecessor-version":[{"id":22114,"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/posts\/11196\/revisions\/22114"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/media\/11198"}],"wp:attachment":[{"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/media?parent=11196"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/categories?post=11196"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/orekait.com\/es\/wp-json\/wp\/v2\/tags?post=11196"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}