{"id":1016,"date":"2025-05-13T08:00:00","date_gmt":"2025-05-13T13:00:00","guid":{"rendered":"https:\/\/www.sqltabletalk.com\/?p=1016"},"modified":"2025-05-12T22:09:11","modified_gmt":"2025-05-13T03:09:11","slug":"snapshots-in-sql-server-high-availability","status":"publish","type":"post","link":"https:\/\/www.sqltabletalk.com\/?p=1016","title":{"rendered":"Database Snapshots in SQL Server High-Availability Setups"},"content":{"rendered":"<p><!-- Title --><\/p>\n<h1>Introduction<\/h1>\n<p><!-- Introduction --><\/p>\n<p>SQL Server\u2019s database-snapshot feature is a wonderfully simple tool: at the instant you create the snapshot, every page in the database is marked \u201ccopy-on-write.\u201d Nothing is copied across the wire, no blocking locks appear, and the snapshot opens immediately as a read-only database on the local replica. Queries against the snapshot see the world exactly as it looked at that moment while the live workload keeps changing pages in the primary data files. Because snapshots live only in sparse files on the server that owns them, they are not a replacement for backups\u2014but they are perfect for ad-hoc reporting, quick \u201cbefore-and-after\u201d comparisons, or a safety net when you want an easy way to back out a risky change that should finish within minutes or hours.<\/p>\n<p><!-- Section: Always On Availability Groups --><\/p>\n<h2>Always On Availability Groups<\/h2>\n<p>You can create a snapshot on the primary replica or on any readable secondary, and data movement never pauses. The extra I\/O occurs only on the node that owns the snapshot, because that node now has to write changed pages into its sparse file in addition to the normal redo or active workload. The snapshot is invisible to the other replicas and it does not survive fail-over.<\/p>\n<p>Reverting to the snapshot is a different story. The database must leave the AG first, the <code>RESTORE DATABASE \u2026 FROM DATABASE_SNAPSHOT<\/code> command must run on the replica that hosts the snapshot, and the database must then re-join the AG. Because the restore resets log-sequence numbers, every secondary has to perform a full automatic-seeding cycle. On a large database the reseed window can easily dwarf the few seconds it takes to issue the <code>RESTORE<\/code> itself, so plan the outage around the reseed rather than the rollback.<\/p>\n<p><!-- Section: Log Shipping --><\/p>\n<h2>Log Shipping<\/h2>\n<p>On a log-shipping primary, a snapshot sits happily alongside the regular cycle of log backups, copy jobs, and restores. Because snapshots store old versions of <em>data<\/em> pages, they do not keep any virtual-log-file segments active, so log truncation continues exactly as before.<\/p>\n<p>A log-shipping secondary, by contrast, can never host a snapshot; that database is stuck in the <code>RESTORING<\/code> or <code>STANDBY<\/code> state and snapshots require the database to be fully <code>ONLINE<\/code>. If you revert the primary to its snapshot, the log chain breaks and further log restores fail. The only remedy is to take a fresh full backup of the primary, copy it over, restore it, and let log shipping start anew.<\/p>\n<p><!-- Section: Transactional Replication --><\/p>\n<h2>Transactional Replication<\/h2>\n<p>A snapshot on the publisher is invisible to both the Log Reader Agent and the Distribution Agent. They stream transactions from the log and through the distribution database without noticing the snapshot\u2019s existence. You can also create snapshots on subscribers, which is handy when the subscriber runs large reporting queries that you would rather not aim at the live subscription database.<\/p>\n<p>Restoring the publisher to a snapshot rewinds log-sequence numbers that replication uses to track which transactions have been delivered. When that happens, the publication and every subscription are marked invalid and must be re-initialised\u2014either with a fresh replication snapshot or by shipping new full backups to each subscriber.<\/p>\n<p><!-- Section: Practical Perspective --><\/p>\n<h2>Practical Perspective<\/h2>\n<p>The thread that runs through every scenario is simple: the act of <strong>creating<\/strong> a snapshot is always safe and lightweight, but <strong>restoring<\/strong> from it forces you to rebuild the high-availability or data-movement link. Automatic reseeding of Availability Groups, fresh full-backup initialisation of log shipping, or full re-initialisation of replication all take time that scales with database size and downstream bandwidth. Measure that time on a test system before you rely on the snapshot as a fast-rollback tool in production.<\/p>\n<p>Snapshots themselves consume storage proportional to the amount of data that changes after they are created. On a busy OLTP database they can grow quickly, so keep an eye on free space and drop snapshots as soon as they have served their purpose. If you need an archived point-in-time copy that will live longer than a few hours, a full backup is still the better choice.<\/p>\n<p>Used with these constraints in mind, snapshots slot comfortably into environments that already depend on Availability Groups, log shipping, or replication. They give you an immediate frozen view of your data, they never block the primary workload, and they let you answer \u201cwhat did this look like an hour ago?\u201d in seconds\u2014provided you plan for the reseed or re-initialization work that follows a rollback.<\/p>\n<p>If you would like to see a live demonstration\u2014building a snapshot on both a primary and a secondary replica, tracking sparse-file growth, and walking through a controlled rollback\u2014let me know and we can schedule a short session tailored to the scenarios that matter most to you.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A database snapshot in SQL Server provides an instant, read-only view of your data at a specific point in time without blocking the live workload. This post explores how snapshots interact with high-availability technologies\u2014Always On Availability Groups, log shipping, and transactional replication\u2014highlighting that creating a snapshot is always safe but restoring it severs existing sync mechanisms. You\u2019ll learn the steps required to roll back to a snapshot, including AG reseeding, log-shipping reinitialization, or replication re-initialization, and why planning for these operations is essential. The post also covers practical tips on monitoring sparse-file growth and choosing between snapshots and full backups for longer-term retention.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[36,389,149,144,13],"tags":[191,532,529,247,42,391,534,533,131,150],"class_list":["post-1016","post","type-post","status-publish","format-standard","hentry","category-availability-groups","category-log-shipping","category-replication","category-sql-auditing","category-storage-engine","tag-always-on-availability-groups","tag-copy-on-write","tag-database-snapshots","tag-disaster-recovery","tag-high-availability","tag-log-shipping","tag-rollback-strategies","tag-sparse-files","tag-sql-server","tag-transactional-replication"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.1.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Database Snapshots in SQL Server High-Availability Setups - SQL Table Talk<\/title>\n<meta name=\"description\" content=\"A database snapshot in SQL Server provides an instant, read-only view of your data at a specific point in time without blocking the live workload. This post explores how snapshots interact with high-availability technologies\u2014Always On Availability Groups, log shipping, and transactional replication\u2014highlighting that creating a snapshot is always safe but restoring it severs existing sync mechanisms. You\u2019ll learn the steps required to roll back to a snapshot, including AG reseeding, log-shipping reinitialization, or replication re-initialization, and why planning for these operations is essential. The post also covers practical tips on monitoring sparse-file growth and choosing between snapshots and full backups for longer-term retention.\" \/>\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.sqltabletalk.com\/?p=1016\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Database Snapshots in SQL Server High-Availability Setups - SQL Table Talk\" \/>\n<meta property=\"og:description\" content=\"A database snapshot in SQL Server provides an instant, read-only view of your data at a specific point in time without blocking the live workload. This post explores how snapshots interact with high-availability technologies\u2014Always On Availability Groups, log shipping, and transactional replication\u2014highlighting that creating a snapshot is always safe but restoring it severs existing sync mechanisms. You\u2019ll learn the steps required to roll back to a snapshot, including AG reseeding, log-shipping reinitialization, or replication re-initialization, and why planning for these operations is essential. The post also covers practical tips on monitoring sparse-file growth and choosing between snapshots and full backups for longer-term retention.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.sqltabletalk.com\/?p=1016\" \/>\n<meta property=\"og:site_name\" content=\"SQL Table Talk\" \/>\n<meta property=\"article:published_time\" content=\"2025-05-13T13:00:00+00:00\" \/>\n<meta name=\"author\" content=\"Stephen Planck\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Stephen Planck\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.sqltabletalk.com\/?p=1016#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.sqltabletalk.com\/?p=1016\"},\"author\":{\"name\":\"Stephen Planck\",\"@id\":\"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/1947e42a9438bccd91691d8b791888e0\"},\"headline\":\"Database Snapshots in SQL Server High-Availability Setups\",\"datePublished\":\"2025-05-13T13:00:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.sqltabletalk.com\/?p=1016\"},\"wordCount\":770,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/1947e42a9438bccd91691d8b791888e0\"},\"keywords\":[\"Always On Availability Groups\",\"Copy-on-Write\",\"Database Snapshots\",\"Disaster Recovery\",\"High Availability\",\"Log Shipping\",\"Rollback Strategies\",\"Sparse Files\",\"SQL Server\",\"Transactional Replication\"],\"articleSection\":[\"Availability Groups\",\"Log Shipping\",\"Replication\",\"SQL Auditing\",\"Storage Engine\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.sqltabletalk.com\/?p=1016#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.sqltabletalk.com\/?p=1016\",\"url\":\"https:\/\/www.sqltabletalk.com\/?p=1016\",\"name\":\"Database Snapshots in SQL Server High-Availability Setups - SQL Table Talk\",\"isPartOf\":{\"@id\":\"https:\/\/www.sqltabletalk.com\/#website\"},\"datePublished\":\"2025-05-13T13:00:00+00:00\",\"description\":\"A database snapshot in SQL Server provides an instant, read-only view of your data at a specific point in time without blocking the live workload. This post explores how snapshots interact with high-availability technologies\u2014Always On Availability Groups, log shipping, and transactional replication\u2014highlighting that creating a snapshot is always safe but restoring it severs existing sync mechanisms. You\u2019ll learn the steps required to roll back to a snapshot, including AG reseeding, log-shipping reinitialization, or replication re-initialization, and why planning for these operations is essential. The post also covers practical tips on monitoring sparse-file growth and choosing between snapshots and full backups for longer-term retention.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.sqltabletalk.com\/?p=1016#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.sqltabletalk.com\/?p=1016\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.sqltabletalk.com\/?p=1016#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.sqltabletalk.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Database Snapshots in SQL Server High-Availability Setups\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.sqltabletalk.com\/#website\",\"url\":\"https:\/\/www.sqltabletalk.com\/\",\"name\":\"SQL Table Talk\",\"description\":\"Breaking Down SQL Server, One Post at a Time.\",\"publisher\":{\"@id\":\"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/1947e42a9438bccd91691d8b791888e0\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.sqltabletalk.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/1947e42a9438bccd91691d8b791888e0\",\"name\":\"Stephen Planck\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/64181114edc3de3d99072c049bcec024f025c9536dc89fc8ff1bac58976ca81e?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/64181114edc3de3d99072c049bcec024f025c9536dc89fc8ff1bac58976ca81e?s=96&d=mm&r=g\",\"caption\":\"Stephen Planck\"},\"logo\":{\"@id\":\"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/image\/\"},\"sameAs\":[\"https:\/\/dexterwiki.com\",\"https:\/\/www.linkedin.com\/in\/stephen-planck-4611b692?trk=people-guest_people_search-card&challengeId=AQErf8gbBmcVMwAAAYsyIsxO-0UvU8z7cHrBpZoo_n3xt9qEKpRN5B_jd_LmAMu-OfeArkQ7GDjobJ2uRoQQV35EQdh_rR6kxA&submissionId=09de7067-c335-8e17-40b8-8dc32b60ed6c&challengeSource=AgEcUCw35zpPmAAAAYsyI4vAWhJTV7Nt4vZYKc3V1qiDBpCkKgUvtlOBgYXcE84&challegeType=AgE_wZiTT09IAQAAAYsyI4vDmNvbZIYe6XHju5V2bXVvM3IVxnJslgY&memberId=AgESFTkUShzs_gAAAYsyI4vGYk0Gic1uc5kB6cKOABA26Gw&recognizeDevice=AgHdSZyUSI5CEwAAAYsyI4vKd_koF9JgpsCJShT8QfbK1QMiv8SI\",\"https:\/\/www.youtube.com\/linuxmate\"],\"url\":\"https:\/\/www.sqltabletalk.com\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Database Snapshots in SQL Server High-Availability Setups - SQL Table Talk","description":"A database snapshot in SQL Server provides an instant, read-only view of your data at a specific point in time without blocking the live workload. This post explores how snapshots interact with high-availability technologies\u2014Always On Availability Groups, log shipping, and transactional replication\u2014highlighting that creating a snapshot is always safe but restoring it severs existing sync mechanisms. You\u2019ll learn the steps required to roll back to a snapshot, including AG reseeding, log-shipping reinitialization, or replication re-initialization, and why planning for these operations is essential. The post also covers practical tips on monitoring sparse-file growth and choosing between snapshots and full backups for longer-term retention.","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.sqltabletalk.com\/?p=1016","og_locale":"en_US","og_type":"article","og_title":"Database Snapshots in SQL Server High-Availability Setups - SQL Table Talk","og_description":"A database snapshot in SQL Server provides an instant, read-only view of your data at a specific point in time without blocking the live workload. This post explores how snapshots interact with high-availability technologies\u2014Always On Availability Groups, log shipping, and transactional replication\u2014highlighting that creating a snapshot is always safe but restoring it severs existing sync mechanisms. You\u2019ll learn the steps required to roll back to a snapshot, including AG reseeding, log-shipping reinitialization, or replication re-initialization, and why planning for these operations is essential. The post also covers practical tips on monitoring sparse-file growth and choosing between snapshots and full backups for longer-term retention.","og_url":"https:\/\/www.sqltabletalk.com\/?p=1016","og_site_name":"SQL Table Talk","article_published_time":"2025-05-13T13:00:00+00:00","author":"Stephen Planck","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Stephen Planck","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.sqltabletalk.com\/?p=1016#article","isPartOf":{"@id":"https:\/\/www.sqltabletalk.com\/?p=1016"},"author":{"name":"Stephen Planck","@id":"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/1947e42a9438bccd91691d8b791888e0"},"headline":"Database Snapshots in SQL Server High-Availability Setups","datePublished":"2025-05-13T13:00:00+00:00","mainEntityOfPage":{"@id":"https:\/\/www.sqltabletalk.com\/?p=1016"},"wordCount":770,"commentCount":0,"publisher":{"@id":"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/1947e42a9438bccd91691d8b791888e0"},"keywords":["Always On Availability Groups","Copy-on-Write","Database Snapshots","Disaster Recovery","High Availability","Log Shipping","Rollback Strategies","Sparse Files","SQL Server","Transactional Replication"],"articleSection":["Availability Groups","Log Shipping","Replication","SQL Auditing","Storage Engine"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.sqltabletalk.com\/?p=1016#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.sqltabletalk.com\/?p=1016","url":"https:\/\/www.sqltabletalk.com\/?p=1016","name":"Database Snapshots in SQL Server High-Availability Setups - SQL Table Talk","isPartOf":{"@id":"https:\/\/www.sqltabletalk.com\/#website"},"datePublished":"2025-05-13T13:00:00+00:00","description":"A database snapshot in SQL Server provides an instant, read-only view of your data at a specific point in time without blocking the live workload. This post explores how snapshots interact with high-availability technologies\u2014Always On Availability Groups, log shipping, and transactional replication\u2014highlighting that creating a snapshot is always safe but restoring it severs existing sync mechanisms. You\u2019ll learn the steps required to roll back to a snapshot, including AG reseeding, log-shipping reinitialization, or replication re-initialization, and why planning for these operations is essential. The post also covers practical tips on monitoring sparse-file growth and choosing between snapshots and full backups for longer-term retention.","breadcrumb":{"@id":"https:\/\/www.sqltabletalk.com\/?p=1016#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.sqltabletalk.com\/?p=1016"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.sqltabletalk.com\/?p=1016#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.sqltabletalk.com\/"},{"@type":"ListItem","position":2,"name":"Database Snapshots in SQL Server High-Availability Setups"}]},{"@type":"WebSite","@id":"https:\/\/www.sqltabletalk.com\/#website","url":"https:\/\/www.sqltabletalk.com\/","name":"SQL Table Talk","description":"Breaking Down SQL Server, One Post at a Time.","publisher":{"@id":"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/1947e42a9438bccd91691d8b791888e0"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.sqltabletalk.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/1947e42a9438bccd91691d8b791888e0","name":"Stephen Planck","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/64181114edc3de3d99072c049bcec024f025c9536dc89fc8ff1bac58976ca81e?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/64181114edc3de3d99072c049bcec024f025c9536dc89fc8ff1bac58976ca81e?s=96&d=mm&r=g","caption":"Stephen Planck"},"logo":{"@id":"https:\/\/www.sqltabletalk.com\/#\/schema\/person\/image\/"},"sameAs":["https:\/\/dexterwiki.com","https:\/\/www.linkedin.com\/in\/stephen-planck-4611b692?trk=people-guest_people_search-card&challengeId=AQErf8gbBmcVMwAAAYsyIsxO-0UvU8z7cHrBpZoo_n3xt9qEKpRN5B_jd_LmAMu-OfeArkQ7GDjobJ2uRoQQV35EQdh_rR6kxA&submissionId=09de7067-c335-8e17-40b8-8dc32b60ed6c&challengeSource=AgEcUCw35zpPmAAAAYsyI4vAWhJTV7Nt4vZYKc3V1qiDBpCkKgUvtlOBgYXcE84&challegeType=AgE_wZiTT09IAQAAAYsyI4vDmNvbZIYe6XHju5V2bXVvM3IVxnJslgY&memberId=AgESFTkUShzs_gAAAYsyI4vGYk0Gic1uc5kB6cKOABA26Gw&recognizeDevice=AgHdSZyUSI5CEwAAAYsyI4vKd_koF9JgpsCJShT8QfbK1QMiv8SI","https:\/\/www.youtube.com\/linuxmate"],"url":"https:\/\/www.sqltabletalk.com\/?author=1"}]}},"jetpack_featured_media_url":"","jetpack-related-posts":[],"jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/www.sqltabletalk.com\/index.php?rest_route=\/wp\/v2\/posts\/1016","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.sqltabletalk.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.sqltabletalk.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.sqltabletalk.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.sqltabletalk.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1016"}],"version-history":[{"count":1,"href":"https:\/\/www.sqltabletalk.com\/index.php?rest_route=\/wp\/v2\/posts\/1016\/revisions"}],"predecessor-version":[{"id":1017,"href":"https:\/\/www.sqltabletalk.com\/index.php?rest_route=\/wp\/v2\/posts\/1016\/revisions\/1017"}],"wp:attachment":[{"href":"https:\/\/www.sqltabletalk.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1016"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.sqltabletalk.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1016"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.sqltabletalk.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1016"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}