{"id":9104,"date":"2016-10-13T12:16:46","date_gmt":"2016-10-13T10:16:46","guid":{"rendered":"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/"},"modified":"2016-10-13T12:16:46","modified_gmt":"2016-10-13T10:16:46","slug":"partitioning-when-data-movement-is-not-performed-as-expected","status":"publish","type":"post","link":"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/","title":{"rendered":"Partitioning &#8211; When data movement is not performed as expected"},"content":{"rendered":"<p><span style=\"color: #000000;font-family: Calibri\">This blog is about an interesting partitioning story and curious data movements during merge operation. I was at my one of my customer uses intensively partitioning for various reasons including archiving and manageability. A couple of days ago, we decided to test the new fresh developed script, which will carry out the automatic archiving stuff against the concerned database in quality environment. <\/span><\/p>\n<p><span style=\"color: #000000;font-family: Calibri\">Let\u2019s describe a little bit the context. <\/span><\/p>\n<p><span style=\"color: #000000;font-family: Calibri\">We used a range-based data distribution model. Boundary are number-based and are incremented monolithically with identity values. <\/span><\/p>\n<p><span style=\"color: #000000;font-family: Calibri\">We defined a partition function with range right values strategy as follows:<\/span><\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">CREATE PARTITION FUNCTION pfOrderID (INT) \nAS RANGE RIGHT FOR VALUES(@boundary_archive, @boundary_current)\ngo<\/pre>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #000000;font-family: Calibri\">The first implementation of the partition scheme consisted in storing all partitioned data inside the same filegroup. <\/span><\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">CREATE PARTITION SCHEME psOrderID \nAS PARTITION pfOrderID \nALL TO ([PRIMARY])\ngo<\/pre>\n<p><span style=\"color: #000000;font-family: Calibri\">Well, the initial configuration was as follows. We applied page compression to the archive partition because it contained cold data which is not supposed to be updated very frequently. <\/span><\/p>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-0-partitioned-table-starting-point.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-12085\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-0-partitioned-table-starting-point.jpg\" alt=\"blog 106 - 0 - partitioned table starting point\" width=\"549\" height=\"195\" \/><\/a><\/p>\n<p><span style=\"color: #000000;font-family: Calibri\"><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-1-partitioned-table-starting-point-config.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-12089\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-1-partitioned-table-starting-point-config.jpg\" alt=\"blog 106 - 1 - partitioned table starting point config\" width=\"656\" height=\"80\" \/><\/a><\/span><\/p>\n<p><span style=\"color: #000000;font-family: Calibri\">As you may expect, the next step will consist in merging ARCHIVE and CURRENT partitions by using the MERGE command as follows:<\/span><\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">ALTER PARTITION FUNCTION pfOrderID() \nMERGE RANGE (@b_archive);<\/pre>\n<p>&nbsp;<\/p>\n<p>Basically, we achieve a merge operation according to <a href=\"https:\/\/msdn.microsoft.com\/en-US\/library\/ms186307.aspx\" target=\"_blank\" rel=\"noopener noreferrer\">Microsoft documentation<\/a>:<\/p>\n<p><strong><em>The filegroup that originally held boundary_value is removed from the partition scheme unless it is used by a remaining partition, or is marked with the NEXT USED property.<\/em><\/strong><\/p>\n<p>&nbsp;<\/p>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-2-partitioned-table-after-merge.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-12092\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-2-partitioned-table-after-merge.jpg\" alt=\"blog 106 - 2 - partitioned table after merge\" width=\"549\" height=\"148\" \/><\/a><\/p>\n<p>At this point we may expect SQL Server has moved data from the middle partition to the left partition and according to this other Microsoft <a href=\"https:\/\/msdn.microsoft.com\/en-US\/library\/cc280449.aspx\">pointer<\/a><\/p>\n<p><strong><em>When two partitions are merged, the resultant partition inherits the data compression attribute of the destination partition.<\/em><\/strong><\/p>\n<p>But the results come as a little surprise because I expected to see a page compression value from my archive partition.<\/p>\n<p><span style=\"color: #000000;font-family: Calibri\"><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-3-partitioned-table-after-merge-config.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-12091\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-3-partitioned-table-after-merge-config.jpg\" alt=\"blog 106 - 3 - partitioned table after merge config\" width=\"656\" height=\"65\" \/><\/a><\/span><\/p>\n<p>At this point, my assumption was either compression value doesn\u2019t inherit correctly as mentioned in the Microsoft documentation or data movement is not performed as expected. The latter may be checked very quickly by looking at the corresponding records inside the transaction log file.<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">SELECT \n\t[AllocUnitName],\n\tOperation,\n\tCOUNT(*) as nb_ops\nFROM ::fn_dblog(NULL,NULL)\nWHERE [Transaction ID] = (\n     SELECT TOP 1 [Transaction ID]\n     FROM ::fn_dblog(NULL,NULL)\n     WHERE [Xact ID] = 164670)\nGROUP BY [AllocUnitName], Operation\nORDER BY nb_ops DESC\nGO<\/pre>\n<p><span style=\"color: #000000;font-family: Calibri\">I put only the relevant sample here<\/span><\/p>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-5-log-file-after-merge-config.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-12097\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-5-log-file-after-merge-config.jpg\" alt=\"blog 106 - 5 - log file after merge config\" width=\"392\" height=\"96\" \/><\/a><\/p>\n<p><span style=\"color: #000000;font-family: Calibri\">Referring to what I saw above, I noticed data movement was not performed as expected but rather as shown below:<\/span><\/p>\n<p><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-4-partitioned-table-after-merge-config-2.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-12096\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-4-partitioned-table-after-merge-config-2.jpg\" alt=\"blog 106 - 4 - partitioned table after merge config 2\" width=\"549\" height=\"148\" \/><\/a><\/p>\n<p>So, this strange behavior seems to explain why compression state switched from PAGE to NONE in my case. Another strange thing is when we changed the partition scheme to include an archive filegroup, we returned to normality.<\/p>\n<pre class=\"brush: sql; gutter: true; first-line: 1\">CREATE PARTITION SCHEME psOrderID \nAS PARTITION pfOrderID \nTO ([ARCHIVE], [PRIMARY], [PRIMARY])\ngo<\/pre>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #000000;font-family: Calibri\">I doubled checked the Microsoft documentation to see if it exists one section to figure out the behavior I experienced in this case but without success. After further investigations I found out an interesting <\/span><a href=\"https:\/\/blogs.msdn.microsoft.com\/sqlserverstorageengine\/2010\/02\/03\/performance-improvement-by-orders-of-magnitude-when-merging-partitions-in-sql-server-2008r2\/\" target=\"_blank\" rel=\"noopener noreferrer\"><span style=\"color: #0563c1;font-family: Calibri\">blog post<\/span><\/a><span style=\"color: #000000;font-family: Calibri\"> from Sunil Agarwal (Microsoft) about partition merging and some performance improvements shipped with SQL Server 2008 R2. In short, I was in the specific context described in the blog post (same filegroup) and merging optimization came into action transparently because number of rows in the archive partition was lower than the one in the current partition at the moment of the MERGE operation. <\/span><\/p>\n<p>Let me introduce another relevant information &#8211; the number of lines\u00a0for each partition &#8211;\u00a0to the following picture:<\/p>\n<p><span style=\"color: #000000;font-family: Calibri\"><a href=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-6-partitioned-table-optimization-stuff.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-12107\" src=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-6-partitioned-table-optimization-stuff.jpg\" alt=\"blog 106 - 6 - partitioned table optimization stuff\" width=\"549\" height=\"200\" \/><\/a><\/span><\/p>\n<p>Just to be clear, this is an interesting and smart mechanism provided by Microsoft but it may be a little bit confusing when you\u2019re not aware of this optimization. In my case, we finally decided with my customer\u00a0to dedicate an archiving partition to store cold data that will be rarely accessed in this context and keep up the possibility to store cold data on cheaper storage when archiving partition will grow to a critical size. But in other cases, if storing data is the same filegroup is a still relevant scenario, keep in mind this optimization to not experience unexpected behaviors.<\/p>\n<p>Happy partitioning!<\/p>\n<p>By David Barbarin<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This blog is about an interesting partitioning story and curious data movements during merge operation. I was at my one of my customer uses intensively partitioning for various reasons including archiving and manageability. A couple of days ago, we decided to test the new fresh developed script, which will carry out the automatic archiving stuff [&hellip;]<\/p>\n","protected":false},"author":26,"featured_media":9112,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[229],"tags":[751,366,67,51],"type_dbi":[],"class_list":["post-9104","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-database-administration-monitoring","tag-data-movement","tag-partitioning","tag-performance","tag-sql-server"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Partitioning - When data movement is not performed as expected<\/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.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Partitioning - When data movement is not performed as expected\" \/>\n<meta property=\"og:description\" content=\"This blog is about an interesting partitioning story and curious data movements during merge operation. I was at my one of my customer uses intensively partitioning for various reasons including archiving and manageability. A couple of days ago, we decided to test the new fresh developed script, which will carry out the automatic archiving stuff [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/\" \/>\n<meta property=\"og:site_name\" content=\"dbi Blog\" \/>\n<meta property=\"article:published_time\" content=\"2016-10-13T10:16:46+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-0-partitioned-table-starting-point-1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"549\" \/>\n\t<meta property=\"og:image:height\" content=\"195\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Microsoft Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Microsoft Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/\"},\"author\":{\"name\":\"Microsoft Team\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/bfab48333280d616e1170e7369df90a4\"},\"headline\":\"Partitioning &#8211; When data movement is not performed as expected\",\"datePublished\":\"2016-10-13T10:16:46+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/\"},\"wordCount\":618,\"commentCount\":0,\"image\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-0-partitioned-table-starting-point-1.jpg\",\"keywords\":[\"Data movement\",\"Partitioning\",\"Performance\",\"SQL Server\"],\"articleSection\":[\"Database Administration &amp; Monitoring\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/\",\"name\":\"Partitioning - When data movement is not performed as expected\",\"isPartOf\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-0-partitioned-table-starting-point-1.jpg\",\"datePublished\":\"2016-10-13T10:16:46+00:00\",\"author\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/bfab48333280d616e1170e7369df90a4\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/#primaryimage\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-0-partitioned-table-starting-point-1.jpg\",\"contentUrl\":\"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-0-partitioned-table-starting-point-1.jpg\",\"width\":549,\"height\":195},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/www.dbi-services.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Partitioning &#8211; When data movement is not performed as expected\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#website\",\"url\":\"https:\/\/www.dbi-services.com\/blog\/\",\"name\":\"dbi Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/bfab48333280d616e1170e7369df90a4\",\"name\":\"Microsoft Team\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/c44a1a792c059f24055763aa77d80a244467f6eef724a8bd13db8d4a350b7a4c?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/c44a1a792c059f24055763aa77d80a244467f6eef724a8bd13db8d4a350b7a4c?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/c44a1a792c059f24055763aa77d80a244467f6eef724a8bd13db8d4a350b7a4c?s=96&d=mm&r=g\",\"caption\":\"Microsoft Team\"},\"url\":\"https:\/\/www.dbi-services.com\/blog\/author\/microsoft-team\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Partitioning - When data movement is not performed as expected","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.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/","og_locale":"en_US","og_type":"article","og_title":"Partitioning - When data movement is not performed as expected","og_description":"This blog is about an interesting partitioning story and curious data movements during merge operation. I was at my one of my customer uses intensively partitioning for various reasons including archiving and manageability. A couple of days ago, we decided to test the new fresh developed script, which will carry out the automatic archiving stuff [&hellip;]","og_url":"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/","og_site_name":"dbi Blog","article_published_time":"2016-10-13T10:16:46+00:00","og_image":[{"width":549,"height":195,"url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-0-partitioned-table-starting-point-1.jpg","type":"image\/jpeg"}],"author":"Microsoft Team","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Microsoft Team","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/#article","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/"},"author":{"name":"Microsoft Team","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/bfab48333280d616e1170e7369df90a4"},"headline":"Partitioning &#8211; When data movement is not performed as expected","datePublished":"2016-10-13T10:16:46+00:00","mainEntityOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/"},"wordCount":618,"commentCount":0,"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-0-partitioned-table-starting-point-1.jpg","keywords":["Data movement","Partitioning","Performance","SQL Server"],"articleSection":["Database Administration &amp; Monitoring"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/","url":"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/","name":"Partitioning - When data movement is not performed as expected","isPartOf":{"@id":"https:\/\/www.dbi-services.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/#primaryimage"},"image":{"@id":"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/#primaryimage"},"thumbnailUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-0-partitioned-table-starting-point-1.jpg","datePublished":"2016-10-13T10:16:46+00:00","author":{"@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/bfab48333280d616e1170e7369df90a4"},"breadcrumb":{"@id":"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/#primaryimage","url":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-0-partitioned-table-starting-point-1.jpg","contentUrl":"https:\/\/www.dbi-services.com\/blog\/wp-content\/uploads\/sites\/2\/2022\/04\/blog-106-0-partitioned-table-starting-point-1.jpg","width":549,"height":195},{"@type":"BreadcrumbList","@id":"https:\/\/www.dbi-services.com\/blog\/partitioning-when-data-movement-is-not-performed-as-expected\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.dbi-services.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Partitioning &#8211; When data movement is not performed as expected"}]},{"@type":"WebSite","@id":"https:\/\/www.dbi-services.com\/blog\/#website","url":"https:\/\/www.dbi-services.com\/blog\/","name":"dbi Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.dbi-services.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.dbi-services.com\/blog\/#\/schema\/person\/bfab48333280d616e1170e7369df90a4","name":"Microsoft Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/c44a1a792c059f24055763aa77d80a244467f6eef724a8bd13db8d4a350b7a4c?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/c44a1a792c059f24055763aa77d80a244467f6eef724a8bd13db8d4a350b7a4c?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c44a1a792c059f24055763aa77d80a244467f6eef724a8bd13db8d4a350b7a4c?s=96&d=mm&r=g","caption":"Microsoft Team"},"url":"https:\/\/www.dbi-services.com\/blog\/author\/microsoft-team\/"}]}},"_links":{"self":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/9104","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/users\/26"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/comments?post=9104"}],"version-history":[{"count":0,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/posts\/9104\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media\/9112"}],"wp:attachment":[{"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/media?parent=9104"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/categories?post=9104"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/tags?post=9104"},{"taxonomy":"type","embeddable":true,"href":"https:\/\/www.dbi-services.com\/blog\/wp-json\/wp\/v2\/type_dbi?post=9104"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}