{"id":164909,"date":"2025-05-19T10:33:50","date_gmt":"2025-05-19T17:33:50","guid":{"rendered":"https:\/\/blog.everpuredata.com\/?p=164909"},"modified":"2025-06-17T07:58:01","modified_gmt":"2025-06-17T14:58:01","slug":"sql-server-2025-streamlining-t-sql-snapshot-backups","status":"publish","type":"post","link":"https:\/\/blog.everpuredata.com\/it\/purely-technical\/sql-server-2025-streamlining-t-sql-snapshot-backups\/","title":{"rendered":"Integrazione delle API REST T-SQL in SQL Server 2025: Semplificazione dei backup delle snapshot T-SQL"},"content":{"rendered":"\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-7387b849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column has-medium-font-size is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:70%\">\n<div class=\"wp-block-group has-border-color has-pure-orange-100-border-color has-primary-background-color has-background is-layout-flow wp-block-group-is-layout-flow\" style=\"border-width:2px;border-top-left-radius:16px;border-top-right-radius:16px;border-bottom-left-radius:16px;border-bottom-right-radius:16px;padding-top:30px;padding-right:30px;padding-bottom:30px;padding-left:30px\">\n<h3 class=\"wp-block-heading\" id=\"h-summary\">Sintesi<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This article takes you through the steps for using a T-SQL script to create application-consistent snapshots on<sup> <\/sup>FlashArray from within SQL Server, without needing any external tools or scripts.\u00a0<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-group pdf-print-hide is-content-justification-right is-nowrap is-layout-flex wp-container-core-group-is-layout-f726d978 wp-block-group-is-layout-flex\"><div class=\"pdfprnt-buttons\"><a href=\"https:\/\/blog.everpuredata.com\/it\/wp-json\/wp\/v2\/posts\/164909?print=pdf\" class=\"pdfprnt-button pdfprnt-button-pdf\" target=\"_blank\" ><img decoding=\"async\" src=\"https:\/\/blog.everpuredata.com\/wp-content\/plugins\/pdf-print-pro\/images\/pdf.png?1953174090\" alt=\"image_pdf\" title=\"Visualizza PDF\" \/><\/a><a href=\"https:\/\/blog.everpuredata.com\/it\/wp-json\/wp\/v2\/posts\/164909?print=print\" class=\"pdfprnt-button pdfprnt-button-print\" target=\"_blank\" ><img decoding=\"async\" src=\"https:\/\/blog.everpuredata.com\/wp-content\/plugins\/pdf-print-pro\/images\/print.png?245231721\" alt=\"image_print\" title=\"Stampa contenuto\" \/><\/a><\/div>\n<\/div>\n\n\n\n<div id=\"CONTENT\" class=\"wp-block-group is-layout-flow wp-block-group-is-layout-flow\">\n<p class=\"has-text-align-center wp-block-paragraph\"><em>Questo articolo \u00e8 apparso originariamente sul <a href=\"https:\/\/www.nocentino.com\/posts\/2025-05-19-t-sql-rest-api-integration-in-sql-server-2025-streamlining-t-sql-snapshot-backups\/\">blog di Anthony Nocentino<\/a>. \u00c8 stato ripubblicato con il credito e il consenso dell&#8217;autore.<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In questo post ti illustrer\u00f2 uno script T-SQL che crea snapshot coerenti con le applicazioni su Pure Storage<sup>\u00ae <\/sup><a href=\"https:\/\/www.purestorage.com\/products\/unified-block-file-storage.html\" target=\"_blank\" rel=\"noreferrer noopener\">FlashArray<\/a><sup>\u2122<\/sup>, il tutto all&#8217;interno di SQL Server, senza strumenti esterni. SQL Server 2025 introduce una nuova potente funzionalit\u00e0: la procedura <em>sp_invoke_external_rest_endpoint<\/em> memorizzata. Questo miglioramento rende pi\u00f9 facile che mai chiamare le API REST direttamente da T-SQL. Combinando questa nuova funzionalit\u00e0 con l&#8217;API Pure Storage, possiamo orchestrare le operazioni delle snapshot in modo trasparente, senza la necessit\u00e0 di strumenti o script esterni.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Se hai seguito la mia <a href=\"https:\/\/blog.everpuredata.com\/author\/anthony-nocentino\/\" target=\"_blank\" rel=\"noreferrer noopener\">serie &#8220;Uso del backup delle snapshot T-SQL&#8221;,<\/a> sai che questa funzionalit\u00e0 offre enormi vantaggi per gli ambienti di database di grandi dimensioni. Oggi vedremo come implementarlo direttamente in T-SQL sfruttando la capacit\u00e0 di SQL Server di chiamare endpoint REST esterni, senza richiedere PowerShell.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In T-SQL, sfruttando la capacit\u00e0 di SQL Server di chiamare endpoint REST esterni, non \u00e8 necessario PowerShell.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Puoi trovare l&#8217;intero <a href=\"https:\/\/gist.github.com\/nocentino\/e5a9579529eaeccdc85107ba5dbb0294\">scriptqui<\/a>.<\/strong><\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"enabling-the-rest-endpoint-in-sql-server-2025\">Abilitazione dell&#8217;endpoint REST in SQL Server 2025<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Per prima cosa, ci assicuriamo di poterci connettere agli endpoint REST esterni:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sp_configure 'external rest endpoint enabled', 1;\nRECONFIGURE WITH OVERRIDE;\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Ci\u00f2 abilita la funzionalit\u00e0 dell&#8217;endpoint REST di SQL Server, che consente al nostro SQL Server di effettuare chiamate REST API in uscita. Questo \u00e8 fondamentale per connettersi all&#8217;API di FlashArray e attivare le snapshot.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u00c8 importante notare cherichiede che tutti gli endpoint <code>sp_invoke_external_rest_endpoint<\/code>utilizzino HTTPS con crittografia TLS e che il certificato deve essere attendibile dal sistema operativo sottostante che ospita l&#8217;istanza SQL Server.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"authenticating-with-the-flasharray\">Autenticazione con FlashArray<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Successivamente, stabiliremo una sessione sicura con Pure Storage FlashArray utilizzando la procedura di <code>sp_invoke_external_rest_endpoint<\/code>newstored di SQL Server 2025. Questa funzionalit\u00e0 rappresenta un progresso significativo nelle funzionalit\u00e0 di SQL Server, consentendoci di effettuare chiamate API REST direttamente da T-SQL senza script esterni.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Per l&#8217;autenticazione a un FlashArray, inviamo prima un <a href=\"https:\/\/support.purestorage.com\/bundle\/m_purityfa_rest_api\/page\/FlashArray\/PurityFA\/Purity_FA_REST_API\/topics\/task\/t_rest_api_setup_through_the_graphic_user_interface_gui.html\" target=\"_blank\" rel=\"noreferrer noopener\">token API <\/a>con autorizzazioni sufficienti all&#8217;endpoint di accesso di FlashArray. Una volta completata correttamente l&#8217;autenticazione, FlashArray restituisce an<code>x-auth-token<\/code>nelle intestazioni di risposta, che diventano le nostre credenziali di sessione per tutte le operazioni API successive in questa sessione. Questo modello di autenticazione basato su token fornisce un meccanismo sicuro e limitato nel tempo per le interazioni API, mantenendo al tempo stesso un chiaro audit trail delle operazioni.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nel codice che segue, eseguiremo questa richiesta di autenticazione ed estrarremo il <code>tokenx-authdalla<\/code> risposta JSON per creare le nostre intestazioni di autorizzazione per le chiamate API REST successive.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>DECLARE @ret INT, @response NVARCHAR(MAX), @AuthToken NVARCHAR(100), @MyHeaders NVARCHAR(100);\n\nEXEC @ret = sp_invoke_external_rest_endpoint\n @url = N'https:\/\/flasharray1.purestorage.com\/api\/2.36\/login',\n @headers = N'{\"api-token\":\"PASTE_YOUR_TOKEN_HERE\"}',\n @response = @response OUTPUT;\n\nPRINT 'Login Return Code: ' + CAST(@ret AS NVARCHAR(10))\nPRINT 'Login Response: ' + @response\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"error-handling-and-token-extraction\">Gestione degli errori ed estrazione dei token<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Successivamente, verificheremo il successo dell&#8217;accesso ed estrarremo il token di autenticazione. Se il codice di reso di FlashArray \u00e8 diverso da 0, verr\u00e0 visualizzato un messaggio di errore e verr\u00e0 visualizzato il messaggio di uscita. Ipotizzando il successo, leggeremo il <code>tokenx-authdalla<\/code> risposta di accesso. Tenere presente che la chiave token deve includere virgolette doppie <code>\"x-auth-token\"<\/code> per <code>JSON_VALUE<\/code>assicurarsidi analizzarla correttamente. Una volta estratto, utilizzeremo il token per costruire l&#8217;intestazione di autorizzazione per le successive chiamate API REST all&#8217;array.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>if ( @ret &lt;&gt; 0 )\n    BEGIN\n        PRINT 'Error in REST call, unable to login to the array.'\n        RETURN\n    END\n\nSET @AuthToken = JSON_VALUE(@response, '$.response.headers.\"x-auth-token\"'); \nSET @MyHeaders = N'{\"x-auth-token\":\"' + @AuthToken + '\", \"Content-Type\":\"application\/json\"}'\n\nPRINT 'Headers: ' + @MyHeaders\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"freezing-the-database-for-snapshot\">Congelamento del database per le snapshot<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Il passaggio cruciale \u00e8 la sospensione dell&#8217;I\/O di scrittura del database per prepararsi all&#8217;istantanea. Questo comando utilizza la funzionalit\u00e0 di backup snapshot T-SQL di SQL Server 2022 per bloccare le operazioni di I\/O di scrittura sul database. Il database rimane leggibile, ma le operazioni di scrittura vengono sospese fino al completamento del processo di snapshot. In questo modo otteniamo una snapshot coerente con le applicazioni.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ALTER DATABASE &#091;TestDB1] SET SUSPEND_FOR_SNAPSHOT_BACKUP = ON\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"taking-the-storage-snapshot\">Scattare le snapshot dello storage<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Con l&#8217;I\/O di scrittura bloccato nel database, siamo pronti per scattare una snapshot su FlashArray. Il passo successivo \u00e8 chiamare l&#8217;endpoint<code>protection-group-snapshots<\/code>REST RESTper avviare un backup delle snapshot del gruppo di protezione.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>EXEC @ret = sp_invoke_external_rest_endpoint\n @url = N'https:\/\/flasharray1.purestorage.com\/api\/2.36\/protection-group-snapshots',\n @headers = @MyHeaders,\n @payload = N'{\"source_names\":\"aen-sql-25-a-pg\"}',    \n @response = @response OUTPUT;\n\nPRINT 'Snapshot Return Code: ' + CAST(@ret AS NVARCHAR(10))\nPRINT 'Snapshot Response: ' + @response\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Qui chiamiamo REST REST API<code>protection-group-snapshotsendpoint<\/code> di FlashArray per creare una snapshot di un gruppo di protezione denominato<code>aen-sql-25-a-pg<\/code>. Il gruppo di protezione deve contenere tutti i volumi in cui sono archiviati i file di database. FlashArray creer\u00e0 una snapshot point-in-time di tutti i volumi in questo gruppo di protezione.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"extracting-the-snapshot-name-and-creating-the-backup\">Estrazione del nome dell&#8217;istantanea e creazione del backup<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Nel prossimo passaggio, estrarremo il nome dello snapshot dalla risposta JSON di FlashArray utilizzando<code>JSON_VALUE(@response, \"$.result.items[0].name\").<\/code> Questo nome sar\u00e0 incluso nella descrizione dei supporti di backup come parte di un backup di soli metadati. Se FlashArray restituisce un codice di successo (codice di ritorno = 0), procederemo con il backup utilizzando il comando<code>BACKUP DATABASE<\/code> e l&#8217;<code>METADATA_ONLY<\/code>opzione. Questo crea un file di backup leggero che contiene solo i metadati del database e un riferimento allo snapshot FlashArray in<code>MEDIADESCRIPTION<\/code>. La memorizzazione del nome dello snapshot in MEDIADESCRIPTION facilita l&#8217;identificazione e il posizionamento dello snapshot FlashArray corrispondente quando si esegue un&#8217;operazione di restore.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Se l&#8217;operazione di snapshot non riesce, registriamo un messaggio di errore e annulliamo immediatamente la sospensione del database per riprendere il normale I\/O di scrittura.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>DECLARE @SnapshotName NVARCHAR(100)\nSET @SnapshotName = JSON_VALUE(@response, '$.result.items&#091;0].name')\n\nif ( @ret = 0 ) \n    BEGIN\n        BACKUP DATABASE &#091;TestDB1] TO DISK='SnapshotBack.bkm' WITH METADATA_ONLY, MEDIADESCRIPTION=@SnapshotName\n        PRINT 'Snapshot backup successful. Snapshot Name: ' + @SnapshotName\n    END\nELSE \n    BEGIN\n        ALTER DATABASE &#091;TestDB1] SET SUSPEND_FOR_SNAPSHOT_BACKUP = OFF\n        PRINT 'Error in REST call, snapshot backup failed. Database unsuspended.'\n    END\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"checking-the-sql-server-error-log\">Controllo del registro degli errori di SQL Server<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Per verificare il funzionamento del backup, controlliamo il registro degli errori di SQL Server.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il registro degli errori di SQL Server conferma un backup snapshot di soli metadati del database TestDB1. Il registro mostra che il database \u00e8 stato sospeso, l&#8217;I\/O di scrittura \u00e8 stato bloccato e la snapshot \u00e8 stata scattata prima che l&#8217;I\/O fosse ripristinato in modo sicuro. Poich\u00e9 si tratta di un backup di soli metadati, non sono state elaborate pagine di dati; solo i metadati sono stati acquisiti e scritti nel file <code>bkm<\/code> specificato. Ci\u00f2 garantisce una snapshot coerente con le applicazioni con un impatto minimo sulla disponibilit\u00e0 dei database.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>EXEC xp_readerrorlog 0, 1, NULL, NULL, NULL, NULL, N'desc'\n\n2025-05-09 12:03:25.120 Backup  BACKUP DATABASE successfully processed 0 pages in 0.004 seconds (0.000 MB\/sec).\n2025-05-09 12:03:25.090 Backup  Database backed up. Database: TestDB1, creation date(time): 2025\/04\/30(16:05:02), pages dumped: 394061770, first LSN: 80323:19757:39, last LSN: 80323:19774:1, number of dump devices: 1, device information: (FILE=12, TYPE=DISK: {'C:\\Program Files\\Microsoft SQL Server\\MSSQL17.MSSQLSERVER\\MSSQL\\Backup\\SnapshotBack.bkm'}). This is an informational message only. No user action is required.\n2025-05-09 12:03:25.080 spid86  Database 'TestDB1' originally suspended for snapshot backup in session 86 successfully resumed in session 86.\n2025-05-09 12:03:25.080 spid86  Database 'TestDB1' released suspend locks in session 86.\n2025-05-09 12:03:25.080 spid86  I\/O was resumed on database TestDB1. No user action is required.\n2025-05-09 12:03:25.080 spid86  I\/O is frozen on database TestDB1. No user action is required. However, if I\/O is not resumed promptly, you could cancel the backup.\n2025-05-09 12:03:22.110 spid86  Database 'TestDB1' successfully suspended for snapshot backup in session 86.\n2025-05-09 12:03:22.110 spid86  I\/O is frozen on database TestDB1. No user action is required. However, if I\/O is not resumed promptly, you could cancel the backup.\n2025-05-09 12:03:22.070 spid86  Database 'TestDB1' acquired suspend locks in session 86.\n2025-05-09 12:03:22.070 spid86  Setting database option suspend_for_snapshot_backup to ON for database 'TestDB1'.\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Ecco l&#8217;output delle dichiarazioni di stampa che abbiamo utilizzato in precedenza. Il backup delle snapshot \u00e8 stato completato correttamente: il sistema \u00e8 stato autenticato con FlashArray, ha sospeso TestDB1 per bloccare l&#8217;I\/O, ha creato la snapshot <code>(aen-sql-25-a-pg.17),<\/code> ha ripreso l&#8217;I\/O e ha terminato con un backup di soli metadati, il tutto confermato tramite i log di SQL Server e le risposte API.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Login Return Code: 0\nLogin Response: {\"response\":{\"status\":{\"http\":{\"code\":200,\"description\":\"\"}},\"headers\":{\"Date\":\"Fri, 09 May 2025 12:03:22 GMT\",\"Content-Length\":\"37\",\"Content-Type\":\"application\\\/json\",\"Server\":\"nginx\",\"x-auth-token\":\"75b2b984-a238-44ce-adbd-ff19decab148\",\"strict-transport-security\":\"max-age=31536000; includeSubDomains;\",\"content-security-policy\":\"frame-ancestors 'none'\",\"x-frame-options\":\"DENY\",\"x-content-type-options\":\"nosniff\",\"x-xss-protection\":\"1; mode=block\",\"x-request-id\":\"bdc6bbff70105c00fdeac8b0a1af565c\"}},\"result\":{\"items\":&#091;{\"username\":\"anocentino\"}]}}\n\nHeaders: {\"x-auth-token\":\"75b2b984-a238-44ce-adbd-ff19decab148\", \"Content-Type\":\"application\/json\"}\n\nDatabase 'TestDB1' acquired suspend locks in session 86.\nI\/O is frozen on database TestDB1. No user action is required. However, if I\/O is not resumed promptly, you could cancel the backup.\nDatabase 'TestDB1' successfully suspended for snapshot backup in session 86.\n\nSnapshot Return Code: 0\nSnapshot Response: {\"response\":{\"status\":{\"http\":{\"code\":200,\"description\":\"\"}},\"headers\":{\"Date\":\"Fri, 09 May 2025 12:03:22 GMT\",\"Content-Length\":\"340\",\"Content-Type\":\"application\\\/json\",\"Server\":\"nginx\",\"x-auth-token\":\"75b2b984-a238-44ce-adbd-ff19decab148\",\"strict-transport-security\":\"max-age=31536000; includeSubDomains;\",\"content-security-policy\":\"frame-ancestors 'none'\",\"x-frame-options\":\"DENY\",\"x-content-type-options\":\"nosniff\",\"x-xss-protection\":\"1; mode=block\",\"x-request-id\":\"e3089939224baca84d6ad69b485855de\"}},\"result\":{\"items\":&#091;{\"name\":\"aen-sql-25-a-pg.17\",\"id\":\"32e86de3-a3ee-3ae0-f74c-4bf5a7f74744\",\"space\":null,\"source\":{\"name\":\"aen-sql-25-a-pg\",\"id\":\"b6660b61-a8de-ae1b-cb65-e3045d13b5ba\"},\"suffix\":\"17\",\"destroyed\":false,\"created\":1746792202183,\"pod\":{\"name\":null,\"id\":null},\"time_remaining\":null,\"eradication_config\":{\"manual_eradication\":\"enabled\"}}]}}\n\nI\/O was resumed on database TestDB1. No user action is required.\nDatabase 'TestDB1' released suspend locks in session 86.\nDatabase 'TestDB1' originally suspended for snapshot backup in session 86 successfully resumed in session 86.\nProcessed 0 pages for database 'TestDB1', file 'test_data_01' on file 12.\nProcessed 0 pages for database 'TestDB1', file 'test_data_02' on file 12.\nProcessed 0 pages for database 'TestDB1', file 'test_data_03' on file 12.\nProcessed 0 pages for database 'TestDB1', file 'test_data_04' on file 12.\nProcessed 0 pages for database 'TestDB1', file 'test_data_05' on file 12.\nProcessed 0 pages for database 'TestDB1', file 'test_data_06' on file 12.\nProcessed 0 pages for database 'TestDB1', file 'test_data_07' on file 12.\nProcessed 0 pages for database 'TestDB1', file 'test_data_08' on file 12.\nBACKUP DATABASE successfully processed 0 pages in 0.004 seconds (0.000 MB\/sec).\n\nSnapshot backup successful. Snapshot Name: aen-sql-25-a-pg.17\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"wrapping-things-up\">Riepilogo delle cose<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Questo esempio illustra come la nuova <code>sp_invoke_external_rest_endpoint<\/code>procedura di SQL Server 2025 trasforma l&#8217;automazione del backup. In precedenza, l&#8217;integrazione con i sistemi di storage richiedeva PowerShell o strumenti esterni. Ora possiamo effettuare chiamate API REST in modo nativo da T-SQL, semplificando i workflow e riducendo la complessit\u00e0.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Vantaggi principali:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Integrazione REST nativa<\/strong>: Infine, possiamo effettuare chiamate API direttamente da T-SQL senza passare a PowerShell o ad altri linguaggi di scripting<\/li>\n\n\n\n<li><strong>Automazione semplificata<\/strong>: Crea l&#8217;intero flusso di lavoro di backup in un unico posto, senza passare pi\u00f9 dal contesto a strumenti diversi<\/li>\n\n\n\n<li><strong>Dipendenze ridotte<\/strong>: Elimina i livelli intermedi tra SQL Server e i sistemi di storage: meno parti mobili significa meno potenziali punti di guasto<\/li>\n\n\n\n<li><strong>Sicurezza migliorata<\/strong>: Mantieni l&#8217;autenticazione centralizzata all&#8217;interno di SQL Server invece che in file di script esterni<\/li>\n\n\n\n<li><strong>Performance migliori<\/strong>: L&#8217;esecuzione delle operazioni all&#8217;interno di SQL Server comporta costi generali di gestione inferiori e tempi di esecuzione pi\u00f9 rapidi<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Questa funzionalit\u00e0 elimina il passaggio dal contesto all&#8217;altro e introduce funzionalit\u00e0 di automazione moderna nel motore di database. Assicurati di archiviare in modo sicuro i token API e di implementare una corretta gestione degli errori in produzione.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In sintesi, l&#8217;integrazione REST di SQL Server 2025 \u00e8 una grande vittoria per i DBA che gestiscono ambienti complessi e su larga scala.<\/p>\n\n\n\n<div class=\"wp-block-group mobile-lighten-5 box-shadow position-relative banner-cta-until-blocks-img is-layout-flow wp-block-group-is-layout-flow has-background\" style=\"margin-top:20px;margin-bottom:20px;padding-top:20px;padding-right:20px;padding-bottom:10px;padding-left:20px;background-image:url(&apos;https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2024\/04\/defeat-randsomeware-fast-clean-recovery-data.png&apos;);background-size:cover;\">\n<div class=\"wp-block-columns are-vertically-aligned-center gap-0 banner-cta-until-blocks flex-direction-column is-layout-flex wp-container-core-columns-is-layout-7387b849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-vertically-aligned-center flex-basisis is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:190px\">\n<div class=\"wp-block-group is-vertical is-content-justification-center is-layout-flex wp-container-core-group-is-layout-c3aed785 wp-block-group-is-layout-flex\" style=\"padding-top:10px;padding-bottom:10px\">\n<div class=\"wp-block-group is-layout-flow wp-block-group-is-layout-flow\">\n<figure class=\"wp-block-image size-full is-resized\"><img decoding=\"async\" src=\"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2024\/04\/pure-logo-cropped.svg\" alt=\"Logo - Pure Storage - Cropped\" class=\"wp-image-139836\" style=\"width:160px;height:auto\"\/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-buttons is-content-justification-center is-nowrap is-layout-flex wp-container-core-buttons-is-layout-e31d464f wp-block-buttons-is-layout-flex block-visibility-hide-medium-screen block-visibility-hide-small-screen\" id=\"banner-cta-until-blocks-button\" style=\"margin-top:10px;margin-bottom:10px\">\n<div class=\"wp-block-button has-custom-font-size text-align-center banner-cta-until-blocks-button\" style=\"font-size:clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.208), 1rem);line-height:1.2\"><a class=\"wp-block-button__link has-tertiary-background-color has-background has-text-align-center wp-element-button\" href=\"https:\/\/www.purestorage.com\/solutions\/data-protection.html?utm_medium=ppc&amp;utm_source=google&amp;utm_campaign=brand&amp;utm_region=ams_all&amp;utm_content=refresh_brand_data_protection&amp;utm_creative=default&amp;utm_term=default&amp;utm_keyword=default&amp;cq_con=161076222155&amp;cq_term=pure%20storage%20ransomware&amp;cq_plac=&amp;cq_net=g&amp;cq_plt=gp&amp;gad_source=1&amp;gbraid=0AAAAADq2vDtaagpWlHD0GDJvd4bOl2VHL&amp;gclid=Cj0KCQjw0Oq2BhCCARIsAA5hubUxe0gvkfFsIkMXfQ5TxzXIcYQWNCUtGXSW3AdvjXp4f43Bthm60rwaAkoaEALw_wcB&amp;gclsrc=aw.ds\" style=\"padding-top:10px;padding-right:14px;padding-bottom:10px;padding-left:14px\">Mantieni la calma e<br\/>Ripristina il<\/a><\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<div class=\"wp-block-group is-vertical is-layout-flex wp-container-core-group-is-layout-f4c6b382 wp-block-group-is-layout-flex\">\n<h2 class=\"wp-block-heading has-contrast-color has-text-color has-link-color wp-elements-830ce30262892c5df6a773a25666abc8\" id=\"h-recover-your-data-before-you-have-to-tell-anyone-you-had-to-recover-it\" style=\"font-size:clamp(1.146rem, 1.146rem + ((1vw - 0.2rem) * 1.09), 1.8rem);line-height:1.2\">Recupera i tuoi dati prima di dover dire a chiunque che hai dovuto ripristinarli.<\/h2>\n\n\n\n<p class=\"has-contrast-color has-text-color has-link-color wp-elements-1d27300e3a3125774940d14c1f62027d wp-block-paragraph\" style=\"font-size:clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.208), 1rem);\">Sconfiggi il Ransomware con un ripristino rapido e pulito dei tuoi dati.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-buttons is-content-justification-center is-nowrap is-layout-flex wp-container-core-buttons-is-layout-e1dda8a7 wp-block-buttons-is-layout-flex block-visibility-hide-large-screen\" style=\"margin-top:30px;margin-bottom:30px\">\n<div class=\"wp-block-button has-custom-font-size banner-cta-until-blocks-button\" style=\"font-size:clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.208), 1rem);line-height:1.2\"><a class=\"wp-block-button__link has-tertiary-background-color has-background wp-element-button\" href=\"https:\/\/www.purestorage.com\/solutions\/data-protection.html?utm_medium=ppc&amp;utm_source=google&amp;utm_campaign=brand&amp;utm_region=ams_all&amp;utm_content=refresh_brand_data_protection&amp;utm_creative=default&amp;utm_term=default&amp;utm_keyword=default&amp;cq_con=161076222155&amp;cq_term=pure%20storage%20ransomware&amp;cq_plac=&amp;cq_net=g&amp;cq_plt=gp&amp;gad_source=1&amp;gbraid=0AAAAADq2vDtaagpWlHD0GDJvd4bOl2VHL&amp;gclid=Cj0KCQjw0Oq2BhCCARIsAA5hubUxe0gvkfFsIkMXfQ5TxzXIcYQWNCUtGXSW3AdvjXp4f43Bthm60rwaAkoaEALw_wcB&amp;gclsrc=aw.ds\" style=\"padding-top:10px;padding-right:14px;padding-bottom:10px;padding-left:14px\">Mantieni la calma e ripristina<\/a><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:30%\">\n<div class=\"wp-block-group sticky-content has-mint-green-500-background-color has-background is-layout-flow wp-block-group-is-layout-flow\" style=\"border-radius:20px;padding-top:20px;padding-right:20px;padding-bottom:20px;padding-left:20px\">\n<h2 class=\"wp-block-heading has-text-align-center has-ash-gray-500-color has-text-color has-link-color wp-elements-c52ce96d7a06ba1237ac97e8eff8f4e9\" id=\"h-title\" style=\"font-size:px\">Dynamic Storage<\/h2>\n\n\n\n<p class=\"has-text-align-center has-ash-gray-500-color has-text-color has-link-color wp-elements-f79abaa5ec76df2d4a63100ce3c33cfe wp-block-paragraph\" style=\"font-size:clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.208), 1rem);\">Learn more about high-performance, all-flash storage.<\/p>\n\n\n\n<div class=\"wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-f8bdad00 wp-block-buttons-is-layout-flex\" style=\"margin-top:1em;margin-bottom:1em\">\n<div class=\"wp-block-button is-style-outline button-sticky is-style-outline--2\"><a class=\"wp-block-button__link has-cloud-white-500-color has-basil-green-500-background-color has-text-color has-background has-link-color has-inter-font-family has-custom-font-size wp-element-button\" href=\"https:\/\/www.purestorage.com\/products\/unified-block-file-storage.html\" style=\"border-style:none;border-width:0px;border-radius:4px;padding-top:14px;padding-right:16px;padding-bottom:14px;padding-left:16px;font-size:clamp(14px, 0.875rem + ((1vw - 3.2px) * 0.208), 16px);\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">Explore FlashArray<\/a><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>SQL Server 2025 offre una nuova e potente funzionalit\u00e0 che semplifica la chiamata delle API REST direttamente da T-SQL. Qui vediamo come usarlo con l&#8217;API Pure Storage per orchestrare le operazioni di snapshot.<\/p>\n","protected":false},"author":602,"featured_media":163561,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[13130],"tags":[15171,13983,15191,14037,13032,16135],"content-position":[],"ppma_author":[14448],"class_list":["post-164909","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-purely-technical","tag-cyber-resiliency-it","tag-data-backup-and-recovery-it","tag-database-it","tag-pure-safemode-it","tag-sql-server","tag-sql-server-it"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.4 (Yoast SEO v28.0) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Semplificazione dei backup delle snapshot T-SQL | Pure Storage Blog<\/title>\n<meta name=\"description\" content=\"Qui vedremo come utilizzare una nuova funzionalit\u00e0 SQL Server 2025 con l&#039;API Pure Storage per semplificare i backup delle snapshot T-SQL\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.everpuredata.com\/it\/purely-technical\/sql-server-2025-streamlining-t-sql-snapshot-backups\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Integrazione delle API REST T-SQL in SQL Server 2025: Semplificazione dei backup delle snapshot T-SQL\" \/>\n<meta property=\"og:description\" content=\"Qui vedremo come utilizzare una nuova funzionalit\u00e0 SQL Server 2025 con l&#039;API Pure Storage per semplificare i backup delle snapshot T-SQL\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.everpuredata.com\/it\/purely-technical\/sql-server-2025-streamlining-t-sql-snapshot-backups\/\" \/>\n<meta property=\"og:site_name\" content=\"Pure Storage Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/PureStorage\" \/>\n<meta property=\"article:published_time\" content=\"2025-05-19T17:33:50+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-17T14:58:01+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2025\/05\/Streamlining-T-SQL-Snapshot-Backups.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"1650\" \/>\n\t<meta property=\"og:image:height\" content=\"1064\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"Anthony Nocentino\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@purestorage\" \/>\n<meta name=\"twitter:site\" content=\"@purestorage\" \/>\n<meta name=\"twitter:label1\" content=\"Scritto da\" \/>\n\t<meta name=\"twitter:data1\" content=\"Anthony Nocentino\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo di lettura stimato\" \/>\n\t<meta name=\"twitter:data2\" content=\"16 minuti\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/purely-technical\\\/sql-server-2025-streamlining-t-sql-snapshot-backups\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/purely-technical\\\/sql-server-2025-streamlining-t-sql-snapshot-backups\\\/\"},\"author\":{\"name\":\"Anthony Nocentino\",\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/#\\\/schema\\\/person\\\/cada41552b5f5d21b7bb1313929412eb\"},\"headline\":\"Integrazione delle API REST T-SQL in SQL Server 2025: Semplificazione dei backup delle snapshot T-SQL\",\"datePublished\":\"2025-05-19T17:33:50+00:00\",\"dateModified\":\"2025-06-17T14:58:01+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/purely-technical\\\/sql-server-2025-streamlining-t-sql-snapshot-backups\\\/\"},\"wordCount\":1187,\"publisher\":{\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/purely-technical\\\/sql-server-2025-streamlining-t-sql-snapshot-backups\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blog.everpuredata.com\\\/wp-content\\\/uploads\\\/2025\\\/05\\\/Streamlining-T-SQL-Snapshot-Backups.webp\",\"keywords\":[\"Cyber Resilience\",\"Data Backup and Recovery\",\"Database\",\"SafeMode Snapshots\",\"SQL Server\",\"SQL Server\"],\"articleSection\":[\"Purely Technical\"],\"inLanguage\":\"it-IT\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/purely-technical\\\/sql-server-2025-streamlining-t-sql-snapshot-backups\\\/\",\"url\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/purely-technical\\\/sql-server-2025-streamlining-t-sql-snapshot-backups\\\/\",\"name\":\"Semplificazione dei backup delle snapshot T-SQL | Pure Storage Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/purely-technical\\\/sql-server-2025-streamlining-t-sql-snapshot-backups\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/purely-technical\\\/sql-server-2025-streamlining-t-sql-snapshot-backups\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/blog.everpuredata.com\\\/wp-content\\\/uploads\\\/2025\\\/05\\\/Streamlining-T-SQL-Snapshot-Backups.webp\",\"datePublished\":\"2025-05-19T17:33:50+00:00\",\"dateModified\":\"2025-06-17T14:58:01+00:00\",\"description\":\"Qui vedremo come utilizzare una nuova funzionalit\u00e0 SQL Server 2025 con l'API Pure Storage per semplificare i backup delle snapshot T-SQL\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/purely-technical\\\/sql-server-2025-streamlining-t-sql-snapshot-backups\\\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/purely-technical\\\/sql-server-2025-streamlining-t-sql-snapshot-backups\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/purely-technical\\\/sql-server-2025-streamlining-t-sql-snapshot-backups\\\/#primaryimage\",\"url\":\"https:\\\/\\\/blog.everpuredata.com\\\/wp-content\\\/uploads\\\/2025\\\/05\\\/Streamlining-T-SQL-Snapshot-Backups.webp\",\"contentUrl\":\"https:\\\/\\\/blog.everpuredata.com\\\/wp-content\\\/uploads\\\/2025\\\/05\\\/Streamlining-T-SQL-Snapshot-Backups.webp\",\"width\":1650,\"height\":1064,\"caption\":\"Streamlining T-SQL Snapshot Backups\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/purely-technical\\\/sql-server-2025-streamlining-t-sql-snapshot-backups\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Integrazione delle API REST T-SQL in SQL Server 2025: Semplificazione dei backup delle snapshot T-SQL\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/#website\",\"url\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/\",\"name\":\"Everpure Blog\",\"description\":\"Unleash the power of your data with an intelligent, unified storage and data management platform built for resilience and AI.\",\"publisher\":{\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"it-IT\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/#organization\",\"name\":\"Pure Storage\",\"url\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/blog.everpuredata.com\\\/wp-content\\\/uploads\\\/2019\\\/08\\\/download-5.png\",\"contentUrl\":\"https:\\\/\\\/blog.everpuredata.com\\\/wp-content\\\/uploads\\\/2019\\\/08\\\/download-5.png\",\"width\":302,\"height\":167,\"caption\":\"Pure Storage\"},\"image\":{\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/PureStorage\",\"https:\\\/\\\/x.com\\\/purestorage\",\"https:\\\/\\\/www.instagram.com\\\/purestorage\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/pure-storage\",\"https:\\\/\\\/www.youtube.com\\\/user\\\/purestorage\",\"https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/Pure_Storage\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/#\\\/schema\\\/person\\\/cada41552b5f5d21b7bb1313929412eb\",\"name\":\"Anthony Nocentino\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\\\/\\\/blog.everpuredata.com\\\/wp-content\\\/uploads\\\/2024\\\/12\\\/Anthony-Noncentino.png001f31d95d657c3ea42649b1b5d81d07\",\"url\":\"https:\\\/\\\/blog.everpuredata.com\\\/wp-content\\\/uploads\\\/2024\\\/12\\\/Anthony-Noncentino.png\",\"contentUrl\":\"https:\\\/\\\/blog.everpuredata.com\\\/wp-content\\\/uploads\\\/2024\\\/12\\\/Anthony-Noncentino.png\",\"caption\":\"Anthony Nocentino\"},\"description\":\"Anthony is a Principal Field Solution Architect at Everpure as well as a Pluralsight Author, a Microsoft Data Platform MVP, Linux Expert, and Corporate Problem Solver. Anthony designs solutions, deploys the technology, and provides expertise on business system performance, architecture, and security. Anthony has a Bachelors and Masters in Computer Science with research publications in high performance\\\/low latency data access algorithms and spatial database systems.\",\"url\":\"https:\\\/\\\/blog.everpuredata.com\\\/it\\\/author\\\/anthony-nocentino\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Semplificazione dei backup delle snapshot T-SQL | Pure Storage Blog","description":"Qui vedremo come utilizzare una nuova funzionalit\u00e0 SQL Server 2025 con l'API Pure Storage per semplificare i backup delle snapshot T-SQL","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:\/\/blog.everpuredata.com\/it\/purely-technical\/sql-server-2025-streamlining-t-sql-snapshot-backups\/","og_locale":"it_IT","og_type":"article","og_title":"Integrazione delle API REST T-SQL in SQL Server 2025: Semplificazione dei backup delle snapshot T-SQL","og_description":"Qui vedremo come utilizzare una nuova funzionalit\u00e0 SQL Server 2025 con l'API Pure Storage per semplificare i backup delle snapshot T-SQL","og_url":"https:\/\/blog.everpuredata.com\/it\/purely-technical\/sql-server-2025-streamlining-t-sql-snapshot-backups\/","og_site_name":"Pure Storage Blog","article_publisher":"https:\/\/www.facebook.com\/PureStorage","article_published_time":"2025-05-19T17:33:50+00:00","article_modified_time":"2025-06-17T14:58:01+00:00","og_image":[{"width":1650,"height":1064,"url":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2025\/05\/Streamlining-T-SQL-Snapshot-Backups.webp","type":"image\/webp"}],"author":"Anthony Nocentino","twitter_card":"summary_large_image","twitter_creator":"@purestorage","twitter_site":"@purestorage","twitter_misc":{"Scritto da":"Anthony Nocentino","Tempo di lettura stimato":"16 minuti"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blog.everpuredata.com\/it\/purely-technical\/sql-server-2025-streamlining-t-sql-snapshot-backups\/#article","isPartOf":{"@id":"https:\/\/blog.everpuredata.com\/it\/purely-technical\/sql-server-2025-streamlining-t-sql-snapshot-backups\/"},"author":{"name":"Anthony Nocentino","@id":"https:\/\/blog.everpuredata.com\/it\/#\/schema\/person\/cada41552b5f5d21b7bb1313929412eb"},"headline":"Integrazione delle API REST T-SQL in SQL Server 2025: Semplificazione dei backup delle snapshot T-SQL","datePublished":"2025-05-19T17:33:50+00:00","dateModified":"2025-06-17T14:58:01+00:00","mainEntityOfPage":{"@id":"https:\/\/blog.everpuredata.com\/it\/purely-technical\/sql-server-2025-streamlining-t-sql-snapshot-backups\/"},"wordCount":1187,"publisher":{"@id":"https:\/\/blog.everpuredata.com\/it\/#organization"},"image":{"@id":"https:\/\/blog.everpuredata.com\/it\/purely-technical\/sql-server-2025-streamlining-t-sql-snapshot-backups\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2025\/05\/Streamlining-T-SQL-Snapshot-Backups.webp","keywords":["Cyber Resilience","Data Backup and Recovery","Database","SafeMode Snapshots","SQL Server","SQL Server"],"articleSection":["Purely Technical"],"inLanguage":"it-IT"},{"@type":"WebPage","@id":"https:\/\/blog.everpuredata.com\/it\/purely-technical\/sql-server-2025-streamlining-t-sql-snapshot-backups\/","url":"https:\/\/blog.everpuredata.com\/it\/purely-technical\/sql-server-2025-streamlining-t-sql-snapshot-backups\/","name":"Semplificazione dei backup delle snapshot T-SQL | Pure Storage Blog","isPartOf":{"@id":"https:\/\/blog.everpuredata.com\/it\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blog.everpuredata.com\/it\/purely-technical\/sql-server-2025-streamlining-t-sql-snapshot-backups\/#primaryimage"},"image":{"@id":"https:\/\/blog.everpuredata.com\/it\/purely-technical\/sql-server-2025-streamlining-t-sql-snapshot-backups\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2025\/05\/Streamlining-T-SQL-Snapshot-Backups.webp","datePublished":"2025-05-19T17:33:50+00:00","dateModified":"2025-06-17T14:58:01+00:00","description":"Qui vedremo come utilizzare una nuova funzionalit\u00e0 SQL Server 2025 con l'API Pure Storage per semplificare i backup delle snapshot T-SQL","breadcrumb":{"@id":"https:\/\/blog.everpuredata.com\/it\/purely-technical\/sql-server-2025-streamlining-t-sql-snapshot-backups\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.everpuredata.com\/it\/purely-technical\/sql-server-2025-streamlining-t-sql-snapshot-backups\/"]}]},{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/blog.everpuredata.com\/it\/purely-technical\/sql-server-2025-streamlining-t-sql-snapshot-backups\/#primaryimage","url":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2025\/05\/Streamlining-T-SQL-Snapshot-Backups.webp","contentUrl":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2025\/05\/Streamlining-T-SQL-Snapshot-Backups.webp","width":1650,"height":1064,"caption":"Streamlining T-SQL Snapshot Backups"},{"@type":"BreadcrumbList","@id":"https:\/\/blog.everpuredata.com\/it\/purely-technical\/sql-server-2025-streamlining-t-sql-snapshot-backups\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/blog.everpuredata.com\/it\/"},{"@type":"ListItem","position":2,"name":"Integrazione delle API REST T-SQL in SQL Server 2025: Semplificazione dei backup delle snapshot T-SQL"}]},{"@type":"WebSite","@id":"https:\/\/blog.everpuredata.com\/it\/#website","url":"https:\/\/blog.everpuredata.com\/it\/","name":"Everpure Blog","description":"Unleash the power of your data with an intelligent, unified storage and data management platform built for resilience and AI.","publisher":{"@id":"https:\/\/blog.everpuredata.com\/it\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.everpuredata.com\/it\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"it-IT"},{"@type":"Organization","@id":"https:\/\/blog.everpuredata.com\/it\/#organization","name":"Pure Storage","url":"https:\/\/blog.everpuredata.com\/it\/","logo":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/blog.everpuredata.com\/it\/#\/schema\/logo\/image\/","url":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2019\/08\/download-5.png","contentUrl":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2019\/08\/download-5.png","width":302,"height":167,"caption":"Pure Storage"},"image":{"@id":"https:\/\/blog.everpuredata.com\/it\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/PureStorage","https:\/\/x.com\/purestorage","https:\/\/www.instagram.com\/purestorage","https:\/\/www.linkedin.com\/company\/pure-storage","https:\/\/www.youtube.com\/user\/purestorage","https:\/\/en.wikipedia.org\/wiki\/Pure_Storage"]},{"@type":"Person","@id":"https:\/\/blog.everpuredata.com\/it\/#\/schema\/person\/cada41552b5f5d21b7bb1313929412eb","name":"Anthony Nocentino","image":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2024\/12\/Anthony-Noncentino.png001f31d95d657c3ea42649b1b5d81d07","url":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2024\/12\/Anthony-Noncentino.png","contentUrl":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2024\/12\/Anthony-Noncentino.png","caption":"Anthony Nocentino"},"description":"Anthony is a Principal Field Solution Architect at Everpure as well as a Pluralsight Author, a Microsoft Data Platform MVP, Linux Expert, and Corporate Problem Solver. Anthony designs solutions, deploys the technology, and provides expertise on business system performance, architecture, and security. Anthony has a Bachelors and Masters in Computer Science with research publications in high performance\/low latency data access algorithms and spatial database systems.","url":"https:\/\/blog.everpuredata.com\/it\/author\/anthony-nocentino\/"}]}},"authors":[{"term_id":14448,"user_id":602,"is_guest":0,"slug":"anthony-nocentino","display_name":"Anthony Nocentino","avatar_url":{"url":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2024\/12\/Anthony-Noncentino.png","url2x":"https:\/\/blog.everpuredata.com\/wp-content\/uploads\/2024\/12\/Anthony-Noncentino.png"},"author_category":"","first_name":"Anthony","last_name":"Nocentino","user_url":"","job_title":"","description":"Anthony is a Principal Field Solution Architect at Pure Storage as well as a Pluralsight Author, a Microsoft Data Platform MVP, Linux Expert, and Corporate Problem Solver. Anthony designs solutions, deploys the technology, and provides expertise on business system performance, architecture, and security. Anthony has a Bachelors and Masters in Computer Science with research publications in high performance\/low latency data access algorithms and spatial database systems."}],"_links":{"self":[{"href":"https:\/\/blog.everpuredata.com\/it\/wp-json\/wp\/v2\/posts\/164909","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.everpuredata.com\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.everpuredata.com\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.everpuredata.com\/it\/wp-json\/wp\/v2\/users\/602"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.everpuredata.com\/it\/wp-json\/wp\/v2\/comments?post=164909"}],"version-history":[{"count":0,"href":"https:\/\/blog.everpuredata.com\/it\/wp-json\/wp\/v2\/posts\/164909\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.everpuredata.com\/it\/wp-json\/wp\/v2\/media\/163561"}],"wp:attachment":[{"href":"https:\/\/blog.everpuredata.com\/it\/wp-json\/wp\/v2\/media?parent=164909"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.everpuredata.com\/it\/wp-json\/wp\/v2\/categories?post=164909"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.everpuredata.com\/it\/wp-json\/wp\/v2\/tags?post=164909"},{"taxonomy":"content-position","embeddable":true,"href":"https:\/\/blog.everpuredata.com\/it\/wp-json\/wp\/v2\/content-position?post=164909"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/blog.everpuredata.com\/it\/wp-json\/wp\/v2\/ppma_author?post=164909"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}