{"id":258,"date":"2015-12-30T20:59:23","date_gmt":"2015-12-30T19:59:23","guid":{"rendered":"https:\/\/www.carajandb.com\/2015\/12\/30\/oracle-inmemory-first-experiences-en\/"},"modified":"2018-02-09T10:36:27","modified_gmt":"2018-02-09T09:36:27","slug":"oracle-inmemory-first-experiences-en","status":"publish","type":"post","link":"https:\/\/carajandb.com\/en\/2015\/12\/30\/oracle-inmemory-first-experiences-en\/","title":{"rendered":"Oracle inMemory &#8211; First experiences"},"content":{"rendered":"<p>With Oracle 12.1.0.2 the brand new database option named inMemory has been introduced. There are many blogs and articles out in the field so I don&#8217;t want to go in to much detail of the main concept. To me &#8220;inmemory&#8221; sounds a little obvious because whenever we are working with the Oracle database most of our data should be in Memory &#8211; right? But there is another naming for it: Column store. So it stores the data in columns instead of rows? Due to the Oracle documentation this isn&#8217;t true because &#8220;The columnar format exists only in memory (Concepts Guide)&#8221;. So the concept of inMemory is that an area exists in memory as part of the sga and the data in this area is no longer populated in row format like the buffer cache but in a column format. Especially Datawarehouses and Online Analytic Systems with benefit but because there is no difference in the storage of data the option can be simply enabled and used in OLTP systems as well. For the main concept I would recommend reading the Oracle Concepts Guide and the whitepaper &#8220;Oracle Database In-Memory&#8221;.<br \/>\n<!--more--><\/p>\n<h2>Real Life<\/h2>\n<p>Some of my customers tried inMemory more or less successful. Most of the time the reason for an unsuccessful test was that the data was not suitable for inMemory (e.g. no star schema, too complex queries, insufficient amount of data). But at least I had an appointment with a customer who is mainly specialized on Business Intelligence solutions. So a perfect fit for inMemory. We did some basic tests in their environment and without any changes to the application the queries run 10 to 20 times faster (and even more). I&#8217;m not allowed to use the customer queries over here but I&#8217;ve created a test environment in my own lab and here are some results.<\/p>\n<h2>Examples<\/h2>\n<p>The queries are based on a star flake schema with one fact table named &#8220;UMSAETZE&#8221; (German for &#8220;REVENUE&#8221;) with about 145 million rows and four dimension tables named &#8220;ARTIKEL&#8221;; &#8220;REGION&#8221;, &#8220;ZEITEN&#8221; and &#8220;KUNDEN&#8221; (German for &#8220;ITEM&#8221;, &#8220;REGION&#8221;, &#8220;DATES&#8221; and &#8220;CUSTOMERS&#8221;).<\/p>\n<p>The first query ist simply this:<\/p>\n<pre>SELECT count(*) FROM umsatz;<\/pre>\n<p>The second query is more complex:<\/p>\n<pre>\r\nSELECT sum(u.umsatz) as gesamtumsatz,\r\n       a.artikelgruppe,\r\n       z.monat_des_jahres,\r\n       z.jahreszahl,\r\n       r.region,\r\n       k.plz,\r\n       k.ort\r\n  FROM region r\r\n       INNER JOIN umsaetze u ON (r.region_id = u.region_id)\r\n       INNER JOIN kunden k ON (k.kunden_id = u.kunden_id)\r\n       INNER JOIN artikel a ON (a.artikel_id = u.artikel_id)\r\n       INNER JOIN zeiten z ON (zeiten_id = zeit_id)\r\n WHERE r.region = 'Nord'\r\n   AND z.jahreszahl in (2014,2015)\r\n   AND z.monat_des_jahres = 12\r\n GROUP BY a.artikelgruppe, z.monat_des_jahres, z.jahreszahl, k.plz, k.ort, r.region\r\n FETCH FIRST 10 PERCENT ROWS ONLY;\r\n<\/pre>\n<p>To allow tables to be populated into the column store the parameter inmemory_size must be set. As the inmemory area is part of the sga this parameter must be set in conjunction with the sga_target or memory_target parameter. In my sample database the sga_target was about 10 GB while the inmemory_size was 5 GB. The inMemory area is not a cache like the buffer cache so if a table is too huge or the area is too small tables might be populated partly and an error message will be written to the alert log.<\/p>\n<h2>Populate the tables<\/h2>\n<p>Tables can be populated with the &#8220;ALTER TABLE &#8230; INMEMORY&#8221; command. Even though this is the default I would not recommend using it. Because with this command a table will only be populated when it is used the first time (e.g. with an DML or a SELECT command). Instead I would recommend to populate the most important fact table first and next all tables associated with it:<\/p>\n<pre>\r\nSQL&gt; ALTER TABLE umsaetze INMEMORY PRIORITY CRITICAL;\r\nSQL&gt; ALTER TABLE artikel INMEMORY PRIORITY HIGH;\r\nSQL&gt; ALTER TABLE kunden INMEMORY PRIORITY HIGH;\r\nSQL&gt; ALTER TABLE region INMEMORY PRIORITY HIGH;\r\nSQL&gt; ALTER TABLE zeiten INMEMORY PRIORITY HIGH;\r\n<\/pre>\n<p>With this commands the table UMSAEZE will be populated immediately and whenever the instance is being started. After the table has been loaded completely into memory the rest of the tables will be populated as long as there is succifient space in the inmemory area.<\/p>\n<p>The views v$im_segments and v$im_user_segments can be used to validate that the tables have been populated. I granted SELECT on the v$im_user_segments to my test user so there is no need to use a privileged user for the verification.<\/p>\n<pre>\r\nSELECT inst_id, segment_name, inmemory_size, bytes, bytes_not_populated, populate_status\r\nFROM   v$im_user_segments;\r\n\r\nSEGMENT_NAME         INMEMORY_SIZE      BYTES BYTES_NOT_POPULATED POPULATE_\r\n-------------------- ------------- ---------- ------------------- ---------\r\nREGION                     1179648     393216                   0 COMPLETED\r\nKUNDEN                    24313856   83886080                   0 COMPLETED\r\nUMSAETZE                2710831104 6978273280                   0 COMPLETED\r\nZEITEN                     1179648     131072                   0 COMPLETED\r\n<\/pre>\n<p>One strange behavior which I cannot explain yet: the table &#8220;ARTIKEL&#8221; is not populated at all. I tried with several options and even with &#8220;PRIORITY CRITICAL&#8221; the table is not listed. As this is a very small table (only 300 rows) it doesn&#8217;t affect the overall query result.<\/p>\n<p>Now we are ready to start our first test:<\/p>\n<h3>1. Query 1 with the NO_INMEMORY hint<\/h3>\n<pre>\r\ncall     count       cpu    elapsed       disk      query    current        rows\r\n------- ------  -------- ---------- ---------- ---------- ----------  ----------\r\nParse        1      0.00       0.00          0          0          0           0\r\nExecute      1      0.00       0.00          0          0          0           0\r\nFetch        2     11.32      39.68     308384     308455          0           1\r\n------- ------  -------- ---------- ---------- ---------- ----------  ----------\r\ntotal        4     11.32      39.68     308384     308455          0           1\r\n\r\nMisses in library cache during parse: 0\r\nOptimizer mode: ALL_ROWS\r\nParsing user id: 105\r\nNumber of plan statistics captured: 1\r\n\r\nRows (1st) Rows (avg) Rows (max)  Row Source Operation\r\n---------- ---------- ----------  ---------------------------------------------------\r\n         1          1          1  SORT AGGREGATE (cr=308455 pr=308384 pw=0 time=39683926 us)\r\n 144500000  144500000  144500000   INDEX FAST FULL SCAN PK_UMSAETZE (cr=308455 pr=308384 pw=0 time=60586018 us cost=81707 size=0 card=144500000)(object id 92071)\r\n<\/pre>\n<h3>2. Query 2 without the hint<\/h3>\n<pre>\r\ncall     count       cpu    elapsed       disk      query    current        rows\r\n------- ------  -------- ---------- ---------- ---------- ----------  ----------\r\nParse        1      0.00       0.03          0          0          0           0\r\nExecute      1      0.00       0.00          0          0          0           0\r\nFetch        2      0.95       1.14          0         12          0           1\r\n------- ------  -------- ---------- ---------- ---------- ----------  ----------\r\ntotal        4      0.95       1.17          0         12          0           1\r\n\r\nMisses in library cache during parse: 1\r\nOptimizer mode: ALL_ROWS\r\nParsing user id: 105\r\nNumber of plan statistics captured: 1\r\n\r\nRows (1st) Rows (avg) Rows (max)  Row Source Operation\r\n---------- ---------- ----------  ---------------------------------------------------\r\n         1          1          1  SORT AGGREGATE (cr=12 pr=0 pw=0 time=1144222 us)\r\n 144500000  144500000  144500000   TABLE ACCESS INMEMORY FULL UMSAETZE (cr=12 pr=0 pw=0 time=1130484 us cost=8708 size=0 card=144500000)\r\n<\/pre>\n<h2>Result 1<\/h2>\n<p>The result is really impressive. Instead of approximately 40 seconds the query took only one second.<\/p>\n<p>But what about the more complex query?<\/p>\n<h3>3. Query 2 with the NO_INMEMORY hint<\/h3>\n<pre>\r\nall     count       cpu    elapsed       disk      query    current        rows\r\n------- ------  -------- ---------- ---------- ---------- ----------  ----------\r\nParse        1      0.04       0.04          0          0          0           0\r\nExecute      1      0.00       0.00          0          0          0           0\r\nFetch       88     29.36      69.63     854299     849731          0        1304\r\n------- ------  -------- ---------- ---------- ---------- ----------  ----------\r\ntotal       90     29.41      69.68     854299     849731          0        1304\r\n\r\nMisses in library cache during parse: 1\r\nOptimizer mode: ALL_ROWS\r\nParsing user id: 105\r\nNumber of plan statistics captured: 1\r\n\r\nRows (1st) Rows (avg) Rows (max)  Row Source Operation\r\n---------- ---------- ----------  ---------------------------------------------------\r\n      1304       1304       1304  VIEW  (cr=849731 pr=854299 pw=4619 time=69638236 us cost=268671 size=217524901 card=1587773)\r\n     13031      13031      13031   WINDOW BUFFER (cr=849731 pr=854299 pw=4619 time=69645196 us cost=268671 size=130197386 card=1587773)\r\n     13031      13031      13031    HASH GROUP BY (cr=849731 pr=854299 pw=4619 time=69609961 us cost=268671 size=130197386 card=1587773)\r\n    511356     511356     511356     HASH JOIN  (cr=849731 pr=854299 pw=4619 time=56529021 us cost=238350 size=130197386 card=1587773)\r\n       374        374        374      TABLE ACCESS FULL ARTIKEL (cr=5 pr=0 pw=0 time=115 us cost=3 size=5984 card=374)\r\n    511356     511356     511356      HASH JOIN  (cr=849726 pr=854299 pw=4619 time=56394671 us cost=238343 size=104793018 card=1587773)\r\n   1000000    1000000    1000000       TABLE ACCESS FULL KUNDEN (cr=9683 pr=9678 pw=0 time=54447 us cost=2745 size=21996920 card=999860)\r\n    511356     511356     511356       HASH JOIN  (cr=840043 pr=839971 pw=0 time=43368955 us cost=229777 size=69862012 card=1587773)\r\n      1351       1351       1351        TABLE ACCESS FULL REGION (cr=41 pr=0 pw=0 time=556 us cost=13 size=13734 card=1526)\r\n   3128202    3128202    3128202        HASH JOIN  (cr=840002 pr=839971 pw=0 time=85763697 us cost=229748 size=222288150 card=6351090)\r\n        32         32         32         TABLE ACCESS FULL ZEITEN (cr=14 pr=0 pw=0 time=154 us cost=6 size=616 card=56)\r\n 144500000  144500000  144500000         TABLE ACCESS FULL UMSAETZE (cr=839988 pr=839971 pw=0 time=41869421 us cost=229378 size=3468000000 card=144500000)\r\n<\/pre>\n<h3>4. Query 2 without a hint<\/h3>\n<pre>\r\ncall     count       cpu    elapsed       disk      query    current        rows\r\n------- ------  -------- ---------- ---------- ---------- ----------  ----------\r\nParse        1      0.31       0.37          0          0          0           0\r\nExecute      1      0.00       0.00          0          0          0           0\r\nFetch       88      1.83       2.74       4650         26          0        1304\r\n------- ------  -------- ---------- ---------- ---------- ----------  ----------\r\ntotal       90      2.14       3.11       4650         26          0        1304\r\n\r\nMisses in library cache during parse: 1\r\nOptimizer mode: ALL_ROWS\r\nParsing user id: 105\r\nNumber of plan statistics captured: 1\r\n\r\nRows (1st) Rows (avg) Rows (max)  Row Source Operation\r\n---------- ---------- ----------  ---------------------------------------------------\r\n      1304       1304       1304  VIEW  (cr=26 pr=4650 pw=4619 time=2735009 us cost=47289 size=217524901 card=1587773)\r\n     13031      13031      13031   WINDOW BUFFER (cr=26 pr=4650 pw=4619 time=2736637 us cost=47289 size=130197386 card=1587773)\r\n     13031      13031      13031    HASH GROUP BY (cr=26 pr=4650 pw=4619 time=2728219 us cost=47289 size=130197386 card=1587773)\r\n    511356     511356     511356     HASH JOIN  (cr=26 pr=4650 pw=4619 time=2316748 us cost=16968 size=130197386 card=1587773)\r\n       374        374        374      TABLE ACCESS INMEMORY FULL ARTIKEL (cr=5 pr=0 pw=0 time=28765 us cost=1 size=5984 card=374)\r\n    511356     511356     511356      HASH JOIN  (cr=21 pr=4650 pw=4619 time=2211160 us cost=16964 size=104793018 card=1587773)\r\n   1000000    1000000    1000000       TABLE ACCESS INMEMORY FULL KUNDEN (cr=3 pr=0 pw=0 time=72471 us cost=225 size=21996920 card=999860)\r\n    511356     511356     511356       HASH JOIN  (cr=18 pr=0 pw=0 time=951774 us cost=10917 size=69862012 card=1587773)\r\n      1351       1351       1351        TABLE ACCESS INMEMORY FULL REGION (cr=3 pr=0 pw=0 time=169990 us cost=4 size=13734 card=1526)\r\n   3128202    3128202    3128202        HASH JOIN  (cr=15 pr=0 pw=0 time=645427 us cost=10897 size=222288150 card=6351090)\r\n        32         32         32         JOIN FILTER CREATE :BF0000 (cr=3 pr=0 pw=0 time=14294 us cost=4 size=616 card=56)\r\n        32         32         32          TABLE ACCESS INMEMORY FULL ZEITEN (cr=3 pr=0 pw=0 time=14084 us cost=4 size=616 card=56)\r\n   3128202    3128202    3128202         JOIN FILTER USE :BF0000 (cr=12 pr=0 pw=0 time=227502 us cost=10529 size=3468000000 card=144500000)\r\n   3128202    3128202    3128202          TABLE ACCESS INMEMORY FULL UMSAETZE (cr=12 pr=0 pw=0 time=188217 us cost=10529 size=3468000000 card=144500000)\r\n<\/pre>\n<h2>Result 2<\/h2>\n<p>Again a fantastic performance gain: 70 seconds without inmemory and only 3 (!) seconds with inMemory.<br \/>\nAs a first result inMemory looks very promising. The customer was impressed and we went to the next stage: the preproduction database. Unfortunately that was a RAC database &#8211; and not an Exadata.<br \/>\nIn my next blog I will tell you about the challenges when using inMemory with RAC.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>With Oracle 12.1.0.2 the brand new database option named inMemory has been introduced. There are many blogs and articles out in the field so I don&#8217;t want to go in to much detail of the main concept. To me &#8220;inmemory&#8221; sounds a little obvious because whenever we are working with the Oracle database most of our data should be in Memory &#8211; right? But there is another naming for it: Column store. So it stores the data in columns instead of rows? Due to the Oracle documentation this isn&#8217;t true because &#8220;The columnar format exists only in memory (Concepts Guide)&#8221;. [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_crdt_document":"","_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":"default","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":[],"tags":[217],"class_list":["post-258","post","type-post","status-publish","format-standard","hentry","tag-oracle-12c-inmemory-performance"],"acf":{"occupation":"Write the Occupation of the Person","person_can-be-speaker":true,"person_is-team":true,"person_related-user-account":null,"person_ordering-number":50,"publication_speakers":null,"publication_content-language":["de"],"publication_files":null,"publication_event":"","publication_date":null},"spectra_custom_meta":{"_fgj2wp_old_id":["258"],"_yoast_wpseo_metadesc":["Oracle inMemory Option"],"_yoast_wpseo_metakeywords":["Oracle 12c; inMemory; Performance"],"_fgj2wp_translation_association_key":["a57de63b646a2dc8196b549215cc1cca"],"layout_show-author-box":["1"],"_layout_show-author-box":["field_5a64ee9cc6490"],"_edit_lock":["1518169066:3"],"_edit_last":["3"],"_vc_post_settings":["a:1:{s:10:\"vc_grid_id\";a:0:{}}"],"_yoast_wpseo_content_score":["60"],"layout_header":["light"],"_layout_header":["field_5a48111185e5f"],"layout_background":[""],"_layout_background":["field_5a481193c0995"],"layout_hide_services":["0"],"_layout_hide_services":["field_5a4811c5c0996"],"layout_show-categories-tags":["1"],"_layout_show-categories-tags":["field_5a64eee4c6491"],"blogpost_related-publications":[""],"_blogpost_related-publications":["field_5a480debdac62"],"blogpost_related-files":[""],"_blogpost_related-files":["field_5a480f377db29"],"_yoast_wpseo_primary_category":[""],"_wpml_location_migration_done":["1"],"rank_math_primary_category":[""],"rank_math_description":["Oracle inMemory Option"],"rank_math_news_sitemap_robots":["index"],"rank_math_robots":["a:1:{i:0;s:5:\"index\";}"],"rank_math_internal_links_processed":["1"],"astra_style_timestamp_css":["1773730294"],"wpil_sync_report3":["1"],"wpil_links_inbound_internal_count":["0"],"wpil_links_inbound_internal_count_data":["eJxLtDKwqq4FAAZPAf4="],"wpil_links_outbound_internal_count":["0"],"wpil_links_outbound_internal_count_data":["eJxLtDKwqq4FAAZPAf4="],"wpil_links_outbound_external_count":["0"],"wpil_links_outbound_external_count_data":["eJxLtDKwqq4FAAZPAf4="],"wpil_sync_report2_time":["2024-08-27T11:47:28+00:00"],"copied_media_ids":["a:0:{}"],"referenced_media_ids":["a:0:{}"],"_uag_css_file_name":["uag-css-258.css"],"_uag_page_assets":["a:9:{s:3:\"css\";s:25301:\".uag-blocks-common-selector{z-index:var(--z-index-desktop) !important}@media (max-width: 976px){.uag-blocks-common-selector{z-index:var(--z-index-tablet) !important}}@media (max-width: 767px){.uag-blocks-common-selector{z-index:var(--z-index-mobile) !important}}\n.uagb-icon-list__wrap{display:flex;align-items:flex-start;justify-content:flex-start}.wp-block-uagb-icon-list-child{padding:0;transition:all 0.2s;display:inline-flex;color:#3a3a3a;align-items:center;text-decoration:none;box-shadow:none}.wp-block-uagb-icon-list-child span.uagb-icon-list__source-wrap{display:block;align-items:center}.uagb-icon-list__source-wrap svg{display:block}.uagb-icon-list__source-image{width:40px}.uagb-icon-list__outer-wrap .uagb-icon-list__content-wrap{color:#3a3a3a;display:flex;align-items:center}\n.wp-block-uagb-icon-list-child{position:relative}.wp-block-uagb-icon-list-child>a{position:absolute;top:0;left:0;width:100%;height:100%}img.uagb-icon-list__source-image{max-width:unset}.wp-block-uagb-icon-list-child .uagb-icon-list__label{word-break:break-word}\n.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__source-image{width: 20px;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap svg{width: 20px;height: 20px;font-size: 20px;color: var(--ast-global-color-0);fill: var(--ast-global-color-0);}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{border-color: #28368200;padding: 0px;border-radius: 100px;border-width: 0px;align-self: center;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child .uagb-icon-list__label{font-size: 20px;text-decoration: !important;line-height: 1.5em;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__wrap{display: flex;flex-direction: column;justify-content: center;-webkit-box-pack: center;-ms-flex-pack: center;-webkit-box-align: flex-start;-ms-flex-align: flex-start;align-items: flex-start;margin-top: 0px;margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__label{text-align: left;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child{text-decoration: !important;font-size: 20px;line-height: 1.5em;}.wp-block-uagb-icon-list.uagb-block-51f78a84.wp-block-uagb-icon-list .wp-block-uagb-icon-list-child{margin-left: 0;margin-right: 0;margin-bottom: 0px;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__source-wrap{margin-right: 15px;}.uagb-block-d4bae936.wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap svg{fill: var(--ast-global-color-0) !important;color: var(--ast-global-color-0) !important;}.uagb-block-d4bae936.wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-d4bae936.wp-block-uagb-icon-list-child:hover .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-d4bae936.wp-block-uagb-icon-list-child.wp-block-uagb-icon-list-child.wp-block-uagb-icon-list-child{margin-top: 0px;margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}.uagb-block-375284f0.wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-375284f0.wp-block-uagb-icon-list-child:hover .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-dfc53cb7.wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-dfc53cb7.wp-block-uagb-icon-list-child:hover .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}@media only screen and (max-width: 976px) {.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__source-image{width: 20px;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap svg{width: 20px;height: 20px;font-size: 20px;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap {padding: 0px;border-width: 0px;align-self: center;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__wrap{display: flex;flex-direction: column;justify-content: center;-webkit-box-pack: center;-ms-flex-pack: center;-webkit-box-align: flex-start;-ms-flex-align: flex-start;align-items: flex-start;}.wp-block-uagb-icon-list.uagb-block-51f78a84.wp-block-uagb-icon-list .wp-block-uagb-icon-list-child{margin-left: 0;margin-right: 0;margin-bottom: 0px;}}@media only screen and (max-width: 767px) {.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__source-image{width: 20px;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap svg{width: 20px;height: 20px;font-size: 20px;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{padding: 0px;border-width: 0px;align-self: center;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__wrap{display: flex;flex-direction: column;justify-content: center;-webkit-box-pack: center;-ms-flex-pack: center;-webkit-box-align: flex-start;-ms-flex-align: flex-start;align-items: flex-start;}.wp-block-uagb-icon-list.uagb-block-51f78a84.wp-block-uagb-icon-list .wp-block-uagb-icon-list-child{margin-left: 0;margin-right: 0;margin-bottom: 0px;}}.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__source-image{width: 20px;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap svg{width: 20px;height: 20px;font-size: 20px;color: var(--ast-global-color-0);fill: var(--ast-global-color-0);}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{border-color: #28368200;padding: 0px;border-radius: 100px;border-width: 0px;align-self: center;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child .uagb-icon-list__label{font-size: 20px;text-decoration: !important;line-height: 1.5em;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__wrap{display: flex;flex-direction: column;justify-content: center;-webkit-box-pack: center;-ms-flex-pack: center;-webkit-box-align: flex-start;-ms-flex-align: flex-start;align-items: flex-start;margin-top: 0px;margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__label{text-align: left;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child{text-decoration: !important;font-size: 20px;line-height: 1.5em;}.wp-block-uagb-icon-list.uagb-block-51f78a84.wp-block-uagb-icon-list .wp-block-uagb-icon-list-child{margin-left: 0;margin-right: 0;margin-bottom: 0px;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__source-wrap{margin-right: 15px;}.uagb-block-05f838d1.wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap svg{fill: var(--ast-global-color-0) !important;color: var(--ast-global-color-0) !important;}.uagb-block-05f838d1.wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-05f838d1.wp-block-uagb-icon-list-child:hover .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-05f838d1.wp-block-uagb-icon-list-child.wp-block-uagb-icon-list-child.wp-block-uagb-icon-list-child{margin-top: 0px;margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}.uagb-block-66131845.wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-66131845.wp-block-uagb-icon-list-child:hover .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-b2264876.wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-b2264876.wp-block-uagb-icon-list-child:hover .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}@media only screen and (max-width: 976px) {.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__source-image{width: 20px;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap svg{width: 20px;height: 20px;font-size: 20px;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap {padding: 0px;border-width: 0px;align-self: center;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__wrap{display: flex;flex-direction: column;justify-content: center;-webkit-box-pack: center;-ms-flex-pack: center;-webkit-box-align: flex-start;-ms-flex-align: flex-start;align-items: flex-start;}.wp-block-uagb-icon-list.uagb-block-51f78a84.wp-block-uagb-icon-list .wp-block-uagb-icon-list-child{margin-left: 0;margin-right: 0;margin-bottom: 0px;}}@media only screen and (max-width: 767px) {.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__source-image{width: 20px;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap svg{width: 20px;height: 20px;font-size: 20px;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{padding: 0px;border-width: 0px;align-self: center;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__wrap{display: flex;flex-direction: column;justify-content: center;-webkit-box-pack: center;-ms-flex-pack: center;-webkit-box-align: flex-start;-ms-flex-align: flex-start;align-items: flex-start;}.wp-block-uagb-icon-list.uagb-block-51f78a84.wp-block-uagb-icon-list .wp-block-uagb-icon-list-child{margin-left: 0;margin-right: 0;margin-bottom: 0px;}}.wp-block-uagb-container{display:flex;position:relative;box-sizing:border-box;transition-property:box-shadow;transition-duration:0.2s;transition-timing-function:ease}.wp-block-uagb-container .spectra-container-link-overlay{bottom:0;left:0;position:absolute;right:0;top:0;z-index:10}.wp-block-uagb-container.uagb-is-root-container{margin-left:auto;margin-right:auto}.wp-block-uagb-container.alignfull.uagb-is-root-container .uagb-container-inner-blocks-wrap{display:flex;position:relative;box-sizing:border-box;margin-left:auto !important;margin-right:auto !important}.wp-block-uagb-container .wp-block-uagb-blockquote,.wp-block-uagb-container .wp-block-spectra-pro-login,.wp-block-uagb-container .wp-block-spectra-pro-register{margin:unset}.wp-block-uagb-container .uagb-container__video-wrap{height:100%;width:100%;top:0;left:0;position:absolute;overflow:hidden;-webkit-transition:opacity 1s;-o-transition:opacity 1s;transition:opacity 1s}.wp-block-uagb-container .uagb-container__video-wrap video{max-width:100%;width:100%;height:100%;margin:0;line-height:1;border:none;display:inline-block;vertical-align:baseline;-o-object-fit:cover;object-fit:cover;background-size:cover}.wp-block-uagb-container.uagb-layout-grid{display:grid;width:100%}.wp-block-uagb-container.uagb-layout-grid>.uagb-container-inner-blocks-wrap{display:inherit;width:inherit}.wp-block-uagb-container.uagb-layout-grid>.uagb-container-inner-blocks-wrap>.wp-block-uagb-container{max-width:unset !important;width:unset !important}.wp-block-uagb-container.uagb-layout-grid>.wp-block-uagb-container{max-width:unset !important;width:unset !important}.wp-block-uagb-container.uagb-layout-grid.uagb-is-root-container{margin-left:auto;margin-right:auto}.wp-block-uagb-container.uagb-layout-grid.uagb-is-root-container>.wp-block-uagb-container{max-width:unset !important;width:unset !important}.wp-block-uagb-container.uagb-layout-grid.alignwide.uagb-is-root-container{margin-left:auto;margin-right:auto}.wp-block-uagb-container.uagb-layout-grid.alignfull.uagb-is-root-container .uagb-container-inner-blocks-wrap{display:inherit;position:relative;box-sizing:border-box;margin-left:auto !important;margin-right:auto !important}body .wp-block-uagb-container>.uagb-container-inner-blocks-wrap>*:not(.wp-block-uagb-container):not(.wp-block-uagb-column):not(.wp-block-uagb-container):not(.wp-block-uagb-section):not(.uagb-container__shape):not(.uagb-container__video-wrap):not(.wp-block-spectra-pro-register):not(.wp-block-spectra-pro-login):not(.uagb-slider-container):not(.spectra-image-gallery__control-lightbox):not(.wp-block-uagb-info-box),body .wp-block-uagb-container>.uagb-container-inner-blocks-wrap,body .wp-block-uagb-container>*:not(.wp-block-uagb-container):not(.wp-block-uagb-column):not(.wp-block-uagb-container):not(.wp-block-uagb-section):not(.uagb-container__shape):not(.uagb-container__video-wrap):not(.wp-block-spectra-pro-register):not(.wp-block-spectra-pro-login):not(.uagb-slider-container):not(.spectra-container-link-overlay):not(.spectra-image-gallery__control-lightbox):not(.wp-block-uagb-lottie):not(.uagb-faq__outer-wrap){min-width:unset !important;width:100%;position:relative}body .ast-container .wp-block-uagb-container>.uagb-container-inner-blocks-wrap>.wp-block-uagb-container>ul,body .ast-container .wp-block-uagb-container>.uagb-container-inner-blocks-wrap>.wp-block-uagb-container ol,body .ast-container .wp-block-uagb-container>.uagb-container-inner-blocks-wrap>ul,body .ast-container .wp-block-uagb-container>.uagb-container-inner-blocks-wrap ol{max-width:-webkit-fill-available;margin-block-start:0;margin-block-end:0;margin-left:20px}.ast-plain-container .editor-styles-wrapper .block-editor-block-list__layout.is-root-container .uagb-is-root-container.wp-block-uagb-container.alignwide{margin-left:auto;margin-right:auto}.uagb-container__shape{overflow:hidden;position:absolute;left:0;width:100%;line-height:0;direction:ltr}.uagb-container__shape-top{top:-3px}.uagb-container__shape-bottom{bottom:-3px}.uagb-container__shape.uagb-container__invert.uagb-container__shape-bottom,.uagb-container__shape.uagb-container__invert.uagb-container__shape-top{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.uagb-container__shape.uagb-container__shape-flip svg{transform:translateX(-50%) rotateY(180deg)}.uagb-container__shape svg{display:block;width:-webkit-calc(100% + 1.3px);width:calc(100% + 1.3px);position:relative;left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);transform:translateX(-50%)}.uagb-container__shape .uagb-container__shape-fill{-webkit-transform-origin:center;-ms-transform-origin:center;transform-origin:center;-webkit-transform:rotateY(0deg);transform:rotateY(0deg)}.uagb-container__shape.uagb-container__shape-above-content{z-index:9;pointer-events:none}.nv-single-page-wrap .nv-content-wrap.entry-content .wp-block-uagb-container.alignfull{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}@media only screen and (max-width: 767px){.wp-block-uagb-container .wp-block-uagb-advanced-heading{width:-webkit-fill-available}}.wp-block-uagb-image--align-none{justify-content:center}\n.wp-block-uagb-container.uagb-block-add44f6f .uagb-container__shape-top svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-add44f6f .uagb-container__shape.uagb-container__shape-top .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-add44f6f .uagb-container__shape-bottom svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-add44f6f .uagb-container__shape.uagb-container__shape-bottom .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-add44f6f .uagb-container__video-wrap video{opacity: 1;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-add44f6f{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-block-add44f6f{box-shadow: 0px 0px   #00000070 ;padding-top: 10px;padding-bottom: 10px;padding-left: 10px;padding-right: 10px;margin-top:  !important;margin-bottom:  !important;overflow: visible;order: initial;border-color: inherit;flex-direction: column;align-items: stretch;justify-content: center;flex-wrap: nowrap;row-gap: 20px;column-gap: 20px;max-width: 100% !important;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__source-image{width: 25px;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap svg{width: 25px;height: 25px;font-size: 25px;color: var(--ast-global-color-0);fill: var(--ast-global-color-0);}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{border-color: #28368200;padding: 0px;border-radius: 100px;border-width: 0px;align-self: flex-start;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child .uagb-icon-list__label{font-size: 20px;text-decoration: !important;line-height: 1.5em;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__wrap{display: flex;flex-direction: column;justify-content: center;-webkit-box-pack: center;-ms-flex-pack: center;-webkit-box-align: flex-start;-ms-flex-align: flex-start;align-items: flex-start;margin-top: 0px;margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__label{text-align: left;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child{text-decoration: !important;font-size: 20px;line-height: 1.5em;}.wp-block-uagb-icon-list.uagb-block-51f78a84.wp-block-uagb-icon-list .wp-block-uagb-icon-list-child{margin-left: 0;margin-right: 0;margin-bottom: 0px;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__source-wrap{margin-right: 20px;}.uagb-block-05f838d1.wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap svg{fill: var(--ast-global-color-0) !important;color: var(--ast-global-color-0) !important;}.uagb-block-05f838d1.wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-05f838d1.wp-block-uagb-icon-list-child:hover .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-05f838d1.wp-block-uagb-icon-list-child.wp-block-uagb-icon-list-child.wp-block-uagb-icon-list-child{margin-top: 0px;margin-right: 0px;margin-bottom: 0px;margin-left: 0px;padding-top: 0px;padding-right: 0px;padding-bottom: 0px;padding-left: 0px;}.uagb-block-66131845.wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-66131845.wp-block-uagb-icon-list-child:hover .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-bb602a54.wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-bb602a54.wp-block-uagb-icon-list-child:hover .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-b2264876.wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}.uagb-block-b2264876.wp-block-uagb-icon-list-child:hover .uagb-icon-list__source-wrap{background:  !important;border-color:  !important;}@media only screen and (max-width: 976px) {.wp-block-uagb-container.uagb-is-root-container .uagb-block-add44f6f{width: 100%;}.wp-block-uagb-container.uagb-block-add44f6f{padding-top: 10px;padding-bottom: 10px;padding-left: 10px;padding-right: 10px;margin-top:  !important;margin-bottom:  !important;order: initial;align-items: stretch;max-width:  !important;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__source-image{width: 25px;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap svg{width: 25px;height: 25px;font-size: 25px;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap {padding: 0px;border-width: 0px;align-self: flex-start;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__wrap{display: flex;flex-direction: column;justify-content: center;-webkit-box-pack: center;-ms-flex-pack: center;-webkit-box-align: flex-start;-ms-flex-align: flex-start;align-items: flex-start;}.wp-block-uagb-icon-list.uagb-block-51f78a84.wp-block-uagb-icon-list .wp-block-uagb-icon-list-child{margin-left: 0;margin-right: 0;margin-bottom: 0px;}}@media only screen and (max-width: 767px) {.wp-block-uagb-container.uagb-is-root-container .uagb-block-add44f6f{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-block-add44f6f{padding-top: 10px;padding-bottom: 10px;padding-left: 10px;padding-right: 10px;margin-top:  !important;margin-bottom:  !important;order: initial;align-items: stretch;flex-wrap: wrap;max-width: 100% !important;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__source-image{width: 25px;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap svg{width: 25px;height: 25px;font-size: 25px;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .wp-block-uagb-icon-list-child .uagb-icon-list__source-wrap{padding: 0px;border-width: 0px;align-self: flex-start;}.wp-block-uagb-icon-list.uagb-block-51f78a84 .uagb-icon-list__wrap{display: flex;flex-direction: column;justify-content: center;-webkit-box-pack: center;-ms-flex-pack: center;-webkit-box-align: flex-start;-ms-flex-align: flex-start;align-items: flex-start;}.wp-block-uagb-icon-list.uagb-block-51f78a84.wp-block-uagb-icon-list .wp-block-uagb-icon-list-child{margin-left: 0;margin-right: 0;margin-bottom: 0px;}}.wp-block-uagb-container.uagb-block-e8cad69e .uagb-container__shape-top svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-e8cad69e .uagb-container__shape.uagb-container__shape-top .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-e8cad69e .uagb-container__shape-bottom svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-e8cad69e .uagb-container__shape.uagb-container__shape-bottom .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-e8cad69e .uagb-container__video-wrap video{opacity: 1;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-e8cad69e{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-block-e8cad69e{box-shadow: 0px 0px   #00000070 ;padding-top: 10px;padding-bottom: 10px;padding-left: 10px;padding-right: 10px;margin-top:  !important;margin-bottom:  !important;overflow: visible;order: initial;border-color: inherit;flex-direction: column;align-items: center;justify-content: center;flex-wrap: nowrap;row-gap: 20px;column-gap: 20px;max-width: 100% !important;}@media only screen and (max-width: 976px) {.wp-block-uagb-container.uagb-is-root-container .uagb-block-e8cad69e{width: 100%;}.wp-block-uagb-container.uagb-block-e8cad69e{padding-top: 10px;padding-bottom: 10px;padding-left: 10px;padding-right: 10px;margin-top:  !important;margin-bottom:  !important;order: initial;max-width:  !important;}}@media only screen and (max-width: 767px) {.wp-block-uagb-container.uagb-is-root-container .uagb-block-e8cad69e{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-block-e8cad69e{padding-top: 10px;padding-bottom: 10px;padding-left: 10px;padding-right: 10px;margin-top:  !important;margin-bottom:  !important;order: initial;flex-wrap: wrap;max-width: 100% !important;}}.wp-block-uagb-container.uagb-block-0921a5e7 .uagb-container__shape-top svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-0921a5e7 .uagb-container__shape.uagb-container__shape-top .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-0921a5e7 .uagb-container__shape-bottom svg{width: calc( 100% + 1.3px );}.wp-block-uagb-container.uagb-block-0921a5e7 .uagb-container__shape.uagb-container__shape-bottom .uagb-container__shape-fill{fill: rgba(51,51,51,1);}.wp-block-uagb-container.uagb-block-0921a5e7 .uagb-container__video-wrap video{opacity: 1;}.wp-block-uagb-container.uagb-is-root-container .uagb-block-0921a5e7{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-block-0921a5e7{box-shadow: 0px 0px   #00000070 ;padding-top: 10px;padding-bottom: 10px;padding-left: 10px;padding-right: 10px;margin-top:  !important;margin-bottom:  !important;overflow: visible;order: initial;border-color: inherit;flex-direction: column;align-items: center;justify-content: center;flex-wrap: nowrap;row-gap: 20px;column-gap: 20px;max-width: 100% !important;}@media only screen and (max-width: 976px) {.wp-block-uagb-container.uagb-is-root-container .uagb-block-0921a5e7{width: 100%;}.wp-block-uagb-container.uagb-block-0921a5e7{padding-top: 10px;padding-bottom: 10px;padding-left: 10px;padding-right: 10px;margin-top:  !important;margin-bottom:  !important;order: initial;max-width:  !important;}}@media only screen and (max-width: 767px) {.wp-block-uagb-container.uagb-is-root-container .uagb-block-0921a5e7{max-width: 100%;width: 100%;}.wp-block-uagb-container.uagb-block-0921a5e7{padding-top: 10px;padding-bottom: 10px;padding-left: 10px;padding-right: 10px;margin-top:  !important;margin-bottom:  !important;order: initial;flex-wrap: wrap;max-width: 100% !important;}}\";s:2:\"js\";s:0:\"\";s:18:\"current_block_list\";a:14:{i:0;s:15:\"core\/categories\";i:1;s:17:\"core\/latest-posts\";i:2;s:14:\"core\/tag-cloud\";i:3;s:14:\"core\/paragraph\";i:4;s:11:\"core\/search\";i:5;s:12:\"core\/heading\";i:6;s:9:\"core\/list\";i:7;s:14:\"core\/list-item\";i:8;s:14:\"uagb\/icon-list\";i:9;s:20:\"uagb\/icon-list-child\";i:10;s:10:\"core\/group\";i:11;s:14:\"uagb\/container\";i:12;s:10:\"core\/image\";i:13;s:17:\"uagb\/loop-builder\";}s:8:\"uag_flag\";b:1;s:11:\"uag_version\";s:10:\"1776501092\";s:6:\"gfonts\";a:1:{s:7:\"Default\";a:2:{s:10:\"fontfamily\";s:7:\"Default\";s:12:\"fontvariants\";a:0:{}}}s:10:\"gfonts_url\";s:77:\"https:\/\/fonts.googleapis.com\/css?family=Default&subset=latin&display=fallback\";s:12:\"gfonts_files\";a:0:{}s:14:\"uag_faq_layout\";b:0;}"]},"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":"Johannes Ahrends","author_link":"https:\/\/carajandb.com\/en\/author\/9aa6cdb2095bd409\/"},"uagb_comment_info":1,"uagb_excerpt":"With Oracle 12.1.0.2 the brand new database option named inMemory has been introduced. There are many blogs and articles out in the field so I don&#8217;t want to go in to much detail of the main concept. To me &#8220;inmemory&#8221; sounds a little obvious because whenever we are working with the Oracle database most of&hellip;","_links":{"self":[{"href":"https:\/\/carajandb.com\/en\/wp-json\/wp\/v2\/posts\/258","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/carajandb.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/carajandb.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/carajandb.com\/en\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/carajandb.com\/en\/wp-json\/wp\/v2\/comments?post=258"}],"version-history":[{"count":0,"href":"https:\/\/carajandb.com\/en\/wp-json\/wp\/v2\/posts\/258\/revisions"}],"wp:attachment":[{"href":"https:\/\/carajandb.com\/en\/wp-json\/wp\/v2\/media?parent=258"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/carajandb.com\/en\/wp-json\/wp\/v2\/categories?post=258"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/carajandb.com\/en\/wp-json\/wp\/v2\/tags?post=258"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}