{"id":8856,"date":"2018-08-28T22:35:52","date_gmt":"2018-08-28T20:35:52","guid":{"rendered":"https:\/\/www.salvis.com\/blog\/?p=8856"},"modified":"2023-11-08T03:21:22","modified_gmt":"2023-11-08T02:21:22","slug":"smartdb-as-of-2018-06-12","status":"publish","type":"post","link":"https:\/\/www.salvis.com\/blog\/2018\/08\/28\/smartdb-as-of-2018-06-12\/","title":{"rendered":"SmartDB as of 2018-06-12"},"content":{"rendered":"\n<p>This is a transcription of Bryn Llewellyn&#8217;s talk\u00a0<a href=\"https:\/\/youtu.be\/q8F713K-Qfw?list=PLdtXkK5KBY56RKLbtH4-wyDvZhe7UZ1bB&amp;t=486\">Guarding Your Data Behind a Hard Shell PL\/SQL API\u2014the Detail<\/a>\u00a0recorded at Kscope18. It covers the time between 08:06 to 11:03. This definition was the starting position for my previous SmartDB and PinkDB-related posts.<\/p>\n\n\n\n<p>In the meantime, Bryn provided an updated, narrow definition of the Smart Database Paradigm (SmartDB). I recommend to stop reading here and instead read the <a href=\"https:\/\/www.salvis.com\/blog\/2018\/08\/28\/smartdb-as-of-2018-08-21\/\">next post<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">SmartDB Definition &#8211; Kscope18 &#8211; June, 12 2018<\/h2>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1616\" height=\"905\" src=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_1.png\" alt=\"\" class=\"wp-image-8857\" srcset=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_1.png 1616w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_1-300x168.png 300w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_1-768x430.png 768w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_1-1024x573.png 1024w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_1-260x146.png 260w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_1-50x28.png 50w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_1-134x75.png 134w\" sizes=\"auto, (max-width:767px) 480px, (max-width:1616px) 100vw, 1616px\" \/><\/a><\/figure>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>This is another way of finally summarizing the notion, the Smart Database Paradigm, whose hashtag you see there.<\/p>\n<\/blockquote>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_2.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1616\" height=\"288\" src=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_2.png\" alt=\"\" class=\"wp-image-8858\" srcset=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_2.png 1616w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_2-300x53.png 300w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_2-768x137.png 768w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_2-1024x182.png 1024w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_2-260x46.png 260w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_2-50x9.png 50w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_2-150x27.png 150w\" sizes=\"auto, (max-width:767px) 480px, (max-width:1616px) 100vw, 1616px\" \/><\/a><\/figure>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>This is if you like the basic definition of it. We ensure that this primitive anonymous block (this is what we encourage,&nbsp; that is the only thing that is allowed to do anything when you do a database call), can only do, what the second thing shows. So, the first is the principle in words, and this is the principle illustrated in code. Okay.<\/p>\n<\/blockquote>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_3.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1616\" height=\"162\" src=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_3.png\" alt=\"\" class=\"wp-image-8859\" srcset=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_3.png 1616w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_3-300x30.png 300w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_3-768x77.png 768w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_3-1024x103.png 1024w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_3-260x26.png 260w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_3-50x5.png 50w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_3-150x15.png 150w\" sizes=\"auto, (max-width:767px) 480px, (max-width:1616px) 100vw, 1616px\" \/><\/a><\/figure>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>And finally, if we say this is the basic central axiom of the Smart Database Paradigm, then what we see here, in Euclid\u2019s way of seeing the world, is a theorem. And the theorem is, that <code>insert<\/code>, <code>update<\/code>, <code>delete<\/code>, <code>commit<\/code>&nbsp;and <code>select<\/code>&nbsp;and for that matter <code>rollback<\/code> &#8211; I said them in funny order, but you know what I mean &#8211; the classic SQL statements that are sufficient to implement an ordinary OLTP application, they can come only out of PL\/SQL code. Okay. You see that, that\u2019s just a theorem following from this simple axiom here stated in words and reinforced here in an illustration.<\/p>\n<\/blockquote>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_4.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1616\" height=\"174\" src=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_4.png\" alt=\"\" class=\"wp-image-8860\" srcset=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_4.png 1616w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_4-300x32.png 300w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_4-768x83.png 768w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_4-1024x110.png 1024w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_4-260x28.png 260w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_4-50x5.png 50w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_4-150x16.png 150w\" sizes=\"auto, (max-width:767px) 480px, (max-width:1616px) 100vw, 1616px\" \/><\/a><\/figure>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>So then. And the final bit of the definition of the SmartDB paradigm is squishy. Everything I\u2019ve said up to that point is hard and fast. You could walk up to a database, interrogate a few people, connect, do a few queries and you would soon see, hard shell or not.<\/p>\n\n\n\n<p>The next bit you wouldn\u2019t see. You would have to establish it and it\u2019s a sliding scale. But basically, it says that everything that\u2019s done to establish the world that\u2019s exposed by the hard shell is done by intelligent, mature human beings, who\u2019ve studied their trade, and have really done the whole thing. Designed the optimal set of tables and constraints, the optimal data model. They know SQL inside out and they know how to write the best SQL for the best use case. They know how to take advantage of set-based SQL in the ordinary sense, analytic functions, match recognize, you name it. It\u2019s their stock-in-trade. And of course, they know also how to write PL\/SQL.<\/p>\n\n\n\n<p>But in this way of thinking about this world, I have to say, that the PL\/SQL is typically no more than a kind of orchestration glue, whose purpose is to issue the SQL you\u2019ve designed against the optimal data model, that you\u2019ve designed. In other words, this is old-fashioned and unashamedly so, there\u2019s no frameworks, there\u2019s no point and click, it\u2019s genuine intellectual achievement by people who\u2019ve practiced their trade and being prepared to study what\u2019s needed to study to get that far. And that part, of course, of SmartDB paradigm is harder to pin down.<\/p>\n<\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>This is a transcription of Bryn Llewellyn&#8217;s talk\u00a0Guarding Your Data Behind a Hard Shell PL\/SQL API\u2014the Detail\u00a0recorded at Kscope18. It covers the time between 08:06 to 11:03. This definition was the starting position for my previous SmartDB and PinkDB-related posts. In the meantime, Bryn provided an updated, narrow definition of the Smart<span class=\"excerpt-hellip\"> [\u2026]<\/span><\/p>\n","protected":false},"author":1,"featured_media":8857,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[103],"class_list":["post-8856","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-oracle","tag-smartdb"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>SmartDB as of 2018-06-12 - Philipp Salvisberg&#039;s Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.salvis.com\/blog\/2018\/08\/28\/smartdb-as-of-2018-06-12\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"SmartDB as of 2018-06-12 - Philipp Salvisberg&#039;s Blog\" \/>\n<meta property=\"og:description\" content=\"This is a transcription of Bryn Llewellyn&#8217;s talk\u00a0Guarding Your Data Behind a Hard Shell PL\/SQL API\u2014the Detail\u00a0recorded at Kscope18. It covers the time between 08:06 to 11:03. This definition was the starting position for my previous SmartDB and PinkDB-related posts. In the meantime, Bryn provided an updated, narrow definition of the Smart [\u2026]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.salvis.com\/blog\/2018\/08\/28\/smartdb-as-of-2018-06-12\/\" \/>\n<meta property=\"og:site_name\" content=\"Philipp Salvisberg&#039;s Blog\" \/>\n<meta property=\"article:published_time\" content=\"2018-08-28T20:35:52+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-11-08T02:21:22+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1616\" \/>\n\t<meta property=\"og:image:height\" content=\"905\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Philipp Salvisberg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@phsalvisberg\" \/>\n<meta name=\"twitter:site\" content=\"@phsalvisberg\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Philipp Salvisberg\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2018\\\/08\\\/28\\\/smartdb-as-of-2018-06-12\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2018\\\/08\\\/28\\\/smartdb-as-of-2018-06-12\\\/\"},\"author\":{\"name\":\"Philipp Salvisberg\",\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/#\\\/schema\\\/person\\\/34352245c48678b1a5a05d4bc1339515\"},\"headline\":\"SmartDB as of 2018-06-12\",\"datePublished\":\"2018-08-28T20:35:52+00:00\",\"dateModified\":\"2023-11-08T02:21:22+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2018\\\/08\\\/28\\\/smartdb-as-of-2018-06-12\\\/\"},\"wordCount\":548,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/#\\\/schema\\\/person\\\/34352245c48678b1a5a05d4bc1339515\"},\"image\":{\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2018\\\/08\\\/28\\\/smartdb-as-of-2018-06-12\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/wp-content\\\/uploads\\\/2018\\\/08\\\/kscope18_smartdb_1.png\",\"keywords\":[\"SmartDB\"],\"articleSection\":[\"Oracle\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2018\\\/08\\\/28\\\/smartdb-as-of-2018-06-12\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2018\\\/08\\\/28\\\/smartdb-as-of-2018-06-12\\\/\",\"url\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2018\\\/08\\\/28\\\/smartdb-as-of-2018-06-12\\\/\",\"name\":\"SmartDB as of 2018-06-12 - Philipp Salvisberg&#039;s Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2018\\\/08\\\/28\\\/smartdb-as-of-2018-06-12\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2018\\\/08\\\/28\\\/smartdb-as-of-2018-06-12\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/wp-content\\\/uploads\\\/2018\\\/08\\\/kscope18_smartdb_1.png\",\"datePublished\":\"2018-08-28T20:35:52+00:00\",\"dateModified\":\"2023-11-08T02:21:22+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2018\\\/08\\\/28\\\/smartdb-as-of-2018-06-12\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2018\\\/08\\\/28\\\/smartdb-as-of-2018-06-12\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2018\\\/08\\\/28\\\/smartdb-as-of-2018-06-12\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/wp-content\\\/uploads\\\/2018\\\/08\\\/kscope18_smartdb_1.png\",\"contentUrl\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/wp-content\\\/uploads\\\/2018\\\/08\\\/kscope18_smartdb_1.png\",\"width\":1616,\"height\":905},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2018\\\/08\\\/28\\\/smartdb-as-of-2018-06-12\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"SmartDB as of 2018-06-12\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/\",\"name\":\"Philipp Salvisberg&#039;s Blog\",\"description\":\"Database-centric development\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/#\\\/schema\\\/person\\\/34352245c48678b1a5a05d4bc1339515\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/#\\\/schema\\\/person\\\/34352245c48678b1a5a05d4bc1339515\",\"name\":\"Philipp Salvisberg\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/wp-content\\\/uploads\\\/2010\\\/11\\\/phs_trivadis4.jpg\",\"url\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/wp-content\\\/uploads\\\/2010\\\/11\\\/phs_trivadis4.jpg\",\"contentUrl\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/wp-content\\\/uploads\\\/2010\\\/11\\\/phs_trivadis4.jpg\",\"width\":400,\"height\":400,\"caption\":\"Philipp Salvisberg\"},\"logo\":{\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/wp-content\\\/uploads\\\/2010\\\/11\\\/phs_trivadis4.jpg\"},\"sameAs\":[\"http:\\\/\\\/www.salvis.com\\\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"SmartDB as of 2018-06-12 - Philipp Salvisberg&#039;s Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.salvis.com\/blog\/2018\/08\/28\/smartdb-as-of-2018-06-12\/","og_locale":"en_US","og_type":"article","og_title":"SmartDB as of 2018-06-12 - Philipp Salvisberg&#039;s Blog","og_description":"This is a transcription of Bryn Llewellyn&#8217;s talk\u00a0Guarding Your Data Behind a Hard Shell PL\/SQL API\u2014the Detail\u00a0recorded at Kscope18. It covers the time between 08:06 to 11:03. This definition was the starting position for my previous SmartDB and PinkDB-related posts. In the meantime, Bryn provided an updated, narrow definition of the Smart [\u2026]","og_url":"https:\/\/www.salvis.com\/blog\/2018\/08\/28\/smartdb-as-of-2018-06-12\/","og_site_name":"Philipp Salvisberg&#039;s Blog","article_published_time":"2018-08-28T20:35:52+00:00","article_modified_time":"2023-11-08T02:21:22+00:00","og_image":[{"width":1616,"height":905,"url":"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_1.png","type":"image\/png"}],"author":"Philipp Salvisberg","twitter_card":"summary_large_image","twitter_creator":"@phsalvisberg","twitter_site":"@phsalvisberg","twitter_misc":{"Written by":"Philipp Salvisberg","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.salvis.com\/blog\/2018\/08\/28\/smartdb-as-of-2018-06-12\/#article","isPartOf":{"@id":"https:\/\/www.salvis.com\/blog\/2018\/08\/28\/smartdb-as-of-2018-06-12\/"},"author":{"name":"Philipp Salvisberg","@id":"https:\/\/www.salvis.com\/blog\/#\/schema\/person\/34352245c48678b1a5a05d4bc1339515"},"headline":"SmartDB as of 2018-06-12","datePublished":"2018-08-28T20:35:52+00:00","dateModified":"2023-11-08T02:21:22+00:00","mainEntityOfPage":{"@id":"https:\/\/www.salvis.com\/blog\/2018\/08\/28\/smartdb-as-of-2018-06-12\/"},"wordCount":548,"commentCount":0,"publisher":{"@id":"https:\/\/www.salvis.com\/blog\/#\/schema\/person\/34352245c48678b1a5a05d4bc1339515"},"image":{"@id":"https:\/\/www.salvis.com\/blog\/2018\/08\/28\/smartdb-as-of-2018-06-12\/#primaryimage"},"thumbnailUrl":"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_1.png","keywords":["SmartDB"],"articleSection":["Oracle"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.salvis.com\/blog\/2018\/08\/28\/smartdb-as-of-2018-06-12\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.salvis.com\/blog\/2018\/08\/28\/smartdb-as-of-2018-06-12\/","url":"https:\/\/www.salvis.com\/blog\/2018\/08\/28\/smartdb-as-of-2018-06-12\/","name":"SmartDB as of 2018-06-12 - Philipp Salvisberg&#039;s Blog","isPartOf":{"@id":"https:\/\/www.salvis.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.salvis.com\/blog\/2018\/08\/28\/smartdb-as-of-2018-06-12\/#primaryimage"},"image":{"@id":"https:\/\/www.salvis.com\/blog\/2018\/08\/28\/smartdb-as-of-2018-06-12\/#primaryimage"},"thumbnailUrl":"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_1.png","datePublished":"2018-08-28T20:35:52+00:00","dateModified":"2023-11-08T02:21:22+00:00","breadcrumb":{"@id":"https:\/\/www.salvis.com\/blog\/2018\/08\/28\/smartdb-as-of-2018-06-12\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.salvis.com\/blog\/2018\/08\/28\/smartdb-as-of-2018-06-12\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.salvis.com\/blog\/2018\/08\/28\/smartdb-as-of-2018-06-12\/#primaryimage","url":"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_1.png","contentUrl":"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2018\/08\/kscope18_smartdb_1.png","width":1616,"height":905},{"@type":"BreadcrumbList","@id":"https:\/\/www.salvis.com\/blog\/2018\/08\/28\/smartdb-as-of-2018-06-12\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.salvis.com\/blog\/"},{"@type":"ListItem","position":2,"name":"SmartDB as of 2018-06-12"}]},{"@type":"WebSite","@id":"https:\/\/www.salvis.com\/blog\/#website","url":"https:\/\/www.salvis.com\/blog\/","name":"Philipp Salvisberg&#039;s Blog","description":"Database-centric development","publisher":{"@id":"https:\/\/www.salvis.com\/blog\/#\/schema\/person\/34352245c48678b1a5a05d4bc1339515"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.salvis.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/www.salvis.com\/blog\/#\/schema\/person\/34352245c48678b1a5a05d4bc1339515","name":"Philipp Salvisberg","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2010\/11\/phs_trivadis4.jpg","url":"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2010\/11\/phs_trivadis4.jpg","contentUrl":"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2010\/11\/phs_trivadis4.jpg","width":400,"height":400,"caption":"Philipp Salvisberg"},"logo":{"@id":"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2010\/11\/phs_trivadis4.jpg"},"sameAs":["http:\/\/www.salvis.com\/"]}]}},"_links":{"self":[{"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/posts\/8856","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/comments?post=8856"}],"version-history":[{"count":16,"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/posts\/8856\/revisions"}],"predecessor-version":[{"id":12649,"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/posts\/8856\/revisions\/12649"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/media\/8857"}],"wp:attachment":[{"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/media?parent=8856"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/categories?post=8856"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/tags?post=8856"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}