Dela och ta emot data från Azure SQL Database och Azure Synapse Analytics

GÄLLER FÖR: Azure SQL Database Azure Synapse Analytics (tidigare Azure SQL DW) Azure Synapse Analytics (arbetsyta) SQL-pool

Med Azure Data Share kan du på ett säkert sätt dela ögonblicksbilder av data från dina Azure SQL Database- och Azure Synapse Analytics-resurser till andra Azure-prenumerationer. Inklusive Azure-prenumerationer utanför din klientorganisation.

I den här artikeln beskrivs delning av data från Azure SQL Database och Azure Synapse Analytics.

Den här artikeln vägleder dig genom:

Du kan använda innehållsförteckningen för att gå vidare till det avsnitt du behöver, eller fortsätta med den här artikeln för att följa processen från början till slut.

Image showing the data flow between data owners and data consumers.

Det finns stöd för

Dela data

Azure Data Share stöder delning av fullständiga dataögonblicksbilder från flera SQL-resurser i Azure. Inkrementella ögonblicksbilder stöds för närvarande inte för dessa resurser.

Resurstyp Dela tabeller Dela vyer
Azure SQL Database Ja Ja
Azure Synapse Analytics (tidigare Azure SQL DW) Ja Ja
Synapse Analytics-dedikerad SQL-pool (arbetsyta) Ja Nej

Kommentar

Azure Data Share stöder för närvarande inte delning från dessa resurser:

  • Serverlös SQL-pool i Azure Synapse Analytics (arbetsyta)
  • Azure SQL-databaser med Always Encrypted konfigurerade

Ta emot data

Datakonsumenter kan välja att acceptera delade data i flera Azure-resurser:

  • Azure Data Lake Storage Gen2
  • Azure Blob Storage
  • Azure SQL Database
  • Azure Synapse Analytics

Delade data i Azure Data Lake Storage Gen 2 eller Azure Blob Storage kan lagras som en csv- eller parquet-fil. Fullständiga dataögonblicksbilder skriver över innehållet i målfilen om det redan finns.

Delade data i Azure SQL Database och Azure Synapse Analytics lagras i tabeller. Om måltabellen inte redan finns skapar Azure Data Share SQL-tabellen med källschemat. Om det redan finns en måltabell med samma namn tas den bort och skrivs över med den senaste fullständiga ögonblicksbilden.

Kommentar

För SQL-källtabeller med dynamisk datamaskering visas data maskerade på mottagarsidan.

Datatyper som stöds

När du delar data från en SQL-källa används följande mappningar från SQL Server-datatyper till interimsdatatyper för Azure Data Share under ögonblicksbildsprocessen.

Kommentar

  1. För datatyper som mappas till decimal interimstypen har ögonblicksbilder för närvarande stöd för precision upp till 28. Om du har data som kräver en precision som är större än 28 kan du överväga att konvertera till en sträng.
  2. Om du delar data från Azure SQL Database till Azure Synapse Analytics stöds inte alla datatyper. Mer information finns i Tabelldatatyper i en dedikerad SQL-pool.
SQL Server-datatyp Mellanliggande datatyp för Azure Data Share
bigint Int64
binary Byte[]
bit Booleskt
char Sträng, tecken[]
datum Datum/tid
Datetime Datum/tid
datetime2 Datum/tid
Datetimeoffset DateTimeOffset
Decimal Decimal
FILESTREAM-attribut (varbinary(max)) Byte[]
Flyttal Dubbel
bild Byte[]
heltal Int32
money Decimal
nchar Sträng, tecken[]
ntext Sträng, tecken[]
numeric Decimal
nvarchar Sträng, tecken[]
real Enstaka
Rowversion Byte[]
smalldatetime Datum/tid
smallint Int16
smallmoney Decimal
Sql_variant Objekt
text Sträng, tecken[]
time TimeSpan
timestamp Byte[]
tinyint Int16
uniqueidentifier GUID
varbinary Byte[]
varchar Sträng, tecken[]
xml String

Förutsättningar för att dela data

Om du vill dela ögonblicksbilder av data från dina Azure SQL-resurser måste du först förbereda din miljö. Du behöver:

Krav för källspecifika

Det finns också förutsättningar för delning som beror på var dina data kommer ifrån. Välj din dataresurskälla och följ stegen:

Förutsättningar för delning från Azure SQL Database eller Azure Synapse Analytics (tidigare Azure SQL DW)

Du kan använda någon av dessa metoder för att autentisera med Azure SQL Database eller Azure Synapse Analytics (tidigare Azure SQL DW):

Microsoft Entra-autentisering

Dessa krav omfattar den autentisering du behöver så att Azure Data Share kan ansluta till din Azure SQL Database:

  • Du behöver behörighet att skriva till databaserna på SQL Server: Microsoft.Sql/servers/databases/write. Den här behörigheten finns i deltagarrollen.
  • Sql Server Microsoft Entra-administratörsbehörigheter .
  • Åtkomst till SQL Server-brandväggen:
    1. Gå till DIN SQL-server i Azure-portalen. Välj Brandväggar och virtuella nätverk i det vänstra navigeringsfältet.
    2. Välj Ja för Tillåt att Azure-tjänster och resurser får åtkomst till den här servern.
    3. Välj +Lägg till klient-IP. Klientens IP-adress kan ändras, så du kan behöva lägga till din klient-IP igen nästa gång du delar data från portalen.
    4. Välj Spara.

SQL-autentisering

Du kan följa demovideon steg för steg för att konfigurera autentisering eller slutföra var och en av dessa krav:

  • Behörighet att skriva till databaserna på SQL Server: Microsoft.Sql/servers/databases/write. Den här behörigheten finns i deltagarrollen.

  • Behörighet för Azure Data Share-resursens hanterade identitet att komma åt databasen:

    1. Gå till SQL-servern i Azure-portalen och ange dig själv som Microsoft Entra-administratör.

    2. Anslut till Azure SQL Database/Data Warehouse med hjälp av Power Query-redigeraren eller SQL Server Management Studio med Microsoft Entra-autentisering.

    3. Kör följande skript för att lägga till resurshanterad identitet för dataresurs som en db_datareader. Anslut med Hjälp av Active Directory och inte SQL Server-autentisering.

      create user "<share_acct_name>" from external provider;     
      exec sp_addrolemember db_datareader, "<share_acct_name>"; 
      

      Kommentar

      > Share_acc_name <är namnet på dataresursen.

  • En Azure SQL Database-användare med åtkomsten "db_datareader" för att navigera och välja de tabeller eller vyer som du vill dela.

  • Åtkomst till SQL Server-brandväggen:

    1. Gå till SQL-servern i Azure-portalen. Välj Brandväggar och virtuella nätverk i det vänstra navigeringsfältet.
    2. Välj Ja för Tillåt att Azure-tjänster och resurser får åtkomst till den här servern.
    3. Välj +Lägg till klient-IP. Klientens IP-adress kan ändras, så du kan behöva lägga till din klient-IP igen nästa gång du delar data från portalen.
    4. Välj Spara.

Förutsättningar för delning från Sql-pool för Azure Synapse Analytics (arbetsyta)

  • Behörighet att skriva till SQL-poolen i Synapse-arbetsytan: Microsoft.Synapse/workspaces/sqlPools/write. Den här behörigheten finns i deltagarrollen.

  • Behörighet för dataresursens hanterade identitet för åtkomst till Synapse-arbetsytans SQL-pool:

    1. I Azure-portalen navigerar du till din Synapse-arbetsyta. Välj SQL Active Directory-administratör i det vänstra navigeringsfältet och ange dig själv som Microsoft Entra-administratör.

    2. Öppna Synapse Studio och välj Hantera i det vänstra navigeringsfältet. Välj Åtkomstkontroll under Säkerhet. Tilldela dig själv rollen SQL-administratör eller arbetsyteadministratör .

    3. Välj Utveckla i det vänstra navigeringsfältet i Synapse Studio. Kör följande skript i SQL-poolen för att lägga till resurshanterad identitet för dataresurs som en db_datareader.

      create user "<share_acct_name>" from external provider;     
      exec sp_addrolemember db_datareader, "<share_acct_name>"; 
      

      Kommentar

      > Share_acc_name <är namnet på dataresursen.

  • Åtkomst till Synapse-arbetsytans brandvägg:

    1. Gå till Synapse-arbetsytan i Azure-portalen. Välj Brandväggar i det vänstra navigeringsfältet.
    2. Välj för Tillåt att Azure-tjänster och resurser får åtkomst till den här arbetsytan.
    3. Välj +Lägg till klient-IP. Klientens IP-adress kan ändras, så du kan behöva lägga till din klient-IP igen nästa gång du delar data från portalen.
    4. Välj Spara.

Skapa en resurs

  1. Gå till översiktssidan för dataresursen.

    Screenshot showing the data share overview.

  2. Välj Börja dela dina data.

  3. Välj Skapa.

  4. Fyll i informationen för din resurs. Ange namn, resurstyp, beskrivning av resursinnehåll och användningsvillkor (valfritt).

    Screenshot of the share creation page in Azure Data Share, showing the share name, type, description, and terms of used filled out.

  5. Välj Fortsätt.

  6. Om du vill lägga till datauppsättningar i din resurs väljer du Lägg till datauppsättningar.

    Screenshot of the datasets page in share creation, the add datasets button is highlighted.

  7. Välj den datamängdstyp som du vill lägga till. Det finns en annan lista över datamängdstyper beroende på resurstyp (ögonblicksbild eller på plats) som du valde i föregående steg.

    Screenshot showing the available dataset types.

  8. Välj din SQL-server eller Synapse-arbetsyta. Om du använder Microsoft Entra-autentisering och kryssrutan Tillåt dataresurs att köra sql-skriptet "skapa användare" för min räkning visas markerar du kryssrutan . Om du använder SQL-autentisering anger du autentiseringsuppgifter och ser till att du har följt förutsättningarna så att du har behörighet.

    Välj Nästa för att navigera till det objekt som du vill dela och välj Lägg till datauppsättningar. Du kan välja tabeller och vyer från Azure SQL Database och Azure Synapse Analytics (tidigare Azure SQL DW) eller tabeller från en dedikerad SQL-pool i Azure Synapse Analytics (arbetsyta).

    Screenshot showing the Azure SQL Database dataset window with a SQL server selected.

  9. På fliken Mottagare anger du i e-postadresserna till datakonsumenten genom att välja +Lägg till mottagare. E-postadressen måste vara mottagarens e-postadress för Azure-inloggning.

    Screenshot of the recipients page, showing a recipient added.

  10. Välj Fortsätt.

  11. Om du har valt resurstyp för ögonblicksbilder kan du konfigurera schemat för ögonblicksbilder för att tillhandahålla uppdateringar av dina data till datakonsumenten.

    Screenshot of the settings page, showing the snapshot toggle enabled.

  12. Välj ett starttids- och upprepningsintervall.

  13. Välj Fortsätt.

  14. På fliken Granska + skapa granskar du ditt paketinnehåll, Inställningar, mottagare och synkronisering Inställningar. Välj Skapa.

Din Azure Data Share har nu skapats och mottagaren av din dataresurs kan nu acceptera din inbjudan.

Förutsättningar för att ta emot data

Innan du kan acceptera en dataresursinbjudan måste du förbereda din miljö.

Bekräfta att alla krav är slutförda innan du godkänner en inbjudan till dataresurs:

Det finns också förutsättningar för resursen där mottagna data ska lagras. Välj din resurstyp och följ stegen:

Krav för mållagringskonto

Om du väljer att ta emot data till Azure Storage slutför du dessa krav innan du godkänner en dataresurs:

  • Ett Azure Storage-konto.
  • Behörighet att skriva till lagringskontot: Microsoft.Storage/storageAccounts/write. Den här behörigheten finns i deltagarrollen.
  • Behörighet att lägga till rolltilldelning av dataresursens hanterade identitet till lagringskontot: som finns i Microsoft.Authorization/role assignments/write. Den här behörigheten finns i ägarrollen.

Förutsättningar för att ta emot data till Azure SQL Database eller Azure Synapse Analytics (tidigare Azure SQL DW)

För en SQL-server där du är Microsoft Entra-administratör för SQL-servern slutför du dessa krav innan du accepterar en dataresurs:

  • En Azure SQL Database eller Azure Synapse Analytics (tidigare Azure SQL DW).
  • Behörighet att skriva till databaserna på SQL Server: Microsoft.Sql/servers/databases/write. Den här behörigheten finns i deltagarrollen.
  • Åtkomst till SQL Server-brandväggen:
    1. Gå till DIN SQL-server i Azure-portalen. Välj Brandväggar och virtuella nätverk i det vänstra navigeringsfältet.
    2. Välj Ja för Tillåt att Azure-tjänster och resurser får åtkomst till den här servern.
    3. Välj +Lägg till klient-IP. Klientens IP-adress kan ändras, så du kan behöva lägga till din klient-IP igen nästa gång du delar data från portalen.
    4. Välj Spara.

För en SQL-server där du inteär Microsoft Entra-administratör slutför du dessa krav innan du accepterar en dataresurs:

Du kan följa demovideon steg för steg eller stegen nedan för att konfigurera förutsättningar.

  • En Azure SQL Database eller Azure Synapse Analytics (tidigare Azure SQL DW).

  • Behörighet att skriva till databaser på SQL-servern: Microsoft.Sql/servers/databases/write. Den här behörigheten finns i deltagarrollen.

  • Behörighet för dataresursens hanterade identitet för åtkomst till Azure SQL Database eller Azure Synapse Analytics:

    1. Gå till SQL-servern i Azure-portalen och ange dig själv som Microsoft Entra-administratör.

    2. Anslut till Azure SQL Database/Data Warehouse med hjälp av Power Query-redigeraren eller SQL Server Management Studio med Microsoft Entra-autentisering.

    3. Kör följande skript för att lägga till dataresursens hanterade identitet som en "db_datareader, db_datawriter, db_ddladmin".

      create user "<share_acc_name>" from external provider; 
      exec sp_addrolemember db_datareader, "<share_acc_name>"; 
      exec sp_addrolemember db_datawriter, "<share_acc_name>"; 
      exec sp_addrolemember db_ddladmin, "<share_acc_name>";
      

      Kommentar

      > Share_acc_name <är namnet på dataresursen.

  • Åtkomst till SQL Server-brandväggen:

    1. I Azure-portalen går du till SQL-servern och väljer Brandväggar och virtuella nätverk.
    2. Välj Ja för Tillåt att Azure-tjänster och resurser får åtkomst till den här servern.
    3. Välj +Lägg till klient-IP. Klientens IP-adress kan ändras, så du kan behöva lägga till din klient-IP igen nästa gång du delar data från portalen.
    4. Välj Spara.

Förutsättningar för att ta emot data till Azure Synapse Analytics -SQL-pool (arbetsyta)

  • En dedikerad SQL-pool för Azure Synapse Analytics (arbetsyta). Det finns för närvarande inte stöd för att ta emot data till en serverlös SQL-pool.

  • Behörighet att skriva till SQL-poolen i Synapse-arbetsytan: Microsoft.Synapse/workspaces/sqlPools/write. Den här behörigheten finns i deltagarrollen.

  • Behörighet för dataresursens hanterade identitet för åtkomst till Synapse-arbetsytans SQL-pool:

    1. Gå till Synapse-arbetsytan i Azure-portalen.

    2. Välj SQL Active Directory-administratör i det vänstra navigeringsfältet och ange dig själv som Microsoft Entra-administratör.

    3. Öppna Synapse Studio och välj Hantera i det vänstra navigeringsfältet. Välj Åtkomstkontroll under Säkerhet. Tilldela dig själv rollen SQL-administratör eller arbetsyteadministratör .

    4. I Synapse Studio väljer du Utveckla i det vänstra navigeringsfältet. Kör följande skript i SQL-poolen för att lägga till resurshanterad identitet för dataresurs som en "db_datareader, db_datawriter, db_ddladmin".

      create user "<share_acc_name>" from external provider; 
      exec sp_addrolemember db_datareader, "<share_acc_name>"; 
      exec sp_addrolemember db_datawriter, "<share_acc_name>"; 
      exec sp_addrolemember db_ddladmin, "<share_acc_name>";
      

      Kommentar

      > Share_acc_name <är namnet på dataresursen.

  • Åtkomst till Synapse-arbetsytans brandvägg:

    1. Gå till Synapse-arbetsytan i Azure-portalen. Välj Brandväggar i det vänstra navigeringsfältet.
    2. Välj för Tillåt att Azure-tjänster och resurser får åtkomst till den här arbetsytan.
    3. Välj +Lägg till klient-IP. Klientens IP-adress kan komma att ändras. Den här processen kan behöva upprepas nästa gång du delar SQL-data från Azure-portalen.
    4. Välj Spara.

Ta emot delade data

Öppna inbjudan

Du kan öppna inbjudan via e-post eller direkt från Azure-portalen.

Om du vill öppna en inbjudan från e-post markerar du inkorgen för en inbjudan från dataleverantören. Inbjudan kommer från Microsoft Azure med titeln Azure Data Share-inbjudan från yourdataprovider@domain.com. Välj Visa inbjudan för att se din inbjudan i Azure.

Om du vill öppna en inbjudan direkt från Azure-portalen söker du efter dataresursinbjudningar i Azure-portalen, vilket tar dig till listan över dataresursinbjudningar.

Om du är gästanvändare i en klientorganisation måste du verifiera din e-postadress för klientorganisationen innan du visar en dataresursinbjudan för första gången. När din e-post har verifierats är den giltig i 12 månader.

Screenshot of the invitations page, showing a pending invitation.

Välj sedan den resurs som du vill visa.

Acceptera inbjudan

  1. Kontrollera att alla fält granskas, inklusive användningsvillkoren. Om du godkänner användningsvillkoren måste du markera kryssrutan för att ange att du samtycker.

    Screenshot of the invitation acceptance page, showing the terms of use highlighted and the agreement selected.

  2. Under Måldataresurskonto väljer du den prenumeration och resursgrupp som du ska distribuera din dataresurs till.

  3. I fältet Dataresurskonto väljer du Skapa nytt om du inte har ett befintligt dataresurskonto. Annars väljer du ett befintligt Data Share-konto som du vill godkänna din dataresurs till.

  4. För fältet Mottaget resursnamn kan du lämna det standardvärde som anges av datamängden eller ange ett nytt namn för den mottagna resursen.

  5. När du har gått med på användningsvillkoren och angett ett Data Share-konto för att hantera din mottagna resurs väljer du Acceptera och konfigurera. En resursprenumeration skapas.

    Screenshot of the acceptance page, showing the target data share account information filled out.

Om du inte vill acceptera inbjudan väljer du Avvisa.

Konfigurera mottagen resurs

Följ stegen nedan för att konfigurera var du vill ta emot data.

  1. Välj fliken Datauppsättningar . Markera kryssrutan bredvid den datauppsättning som du vill tilldela ett mål till. Välj + Mappa som mål för att välja ett måldatalager.

    Screenshot of the received shares page with the map to target button highlighted.

  2. Välj målresursen för att lagra delade data. Alla datafiler eller tabeller i måldatalagret med samma sökväg och namn skrivs över. Om du tar emot data till ett SQL-arkiv och kryssrutan Tillåt dataresurs att köra sql-skriptet "skapa användare" för min räkning visas markerar du kryssrutan. Annars följer du anvisningarna i krav för att köra skriptet visas på skärmen. Detta ger dataresursskrivningsbehörighet till din SQL-måldatabas.

    Screenshot of the map datasets to target window, showing available targets in the dropdown.

  3. Om dataprovidern har skapat ett schema för ögonblicksbilder för att tillhandahålla regelbundna uppdateringar av data för ögonblicksbildbaserad delning, kan du även aktivera schema för ögonblicksbilder genom att välja fliken Schema för ögonblicksbilder. Markera kryssrutan bredvid schemat för ögonblicksbilder och välj + Aktivera.

    Kommentar

    Den första schemalagda ögonblicksbilden startar inom en minut efter schematiden och nästa ögonblicksbilder startar inom några sekunder efter den schemalagda tiden.

    Screenshot showing the snapshot schedule tab with the enable button selected.

Utlösa en ögonblicksbild

De här stegen gäller endast för ögonblicksbildbaserad delning.

  1. Du kan utlösa en ögonblicksbild genom att välja fliken Information följt av utlösarögonblicksbild. Här kan du utlösa en fullständig ögonblicksbild av dina data. Om det är första gången du tar emot data från dataleverantören väljer du fullständig kopia. När en ögonblicksbild körs startar inte nästa ögonblicksbilder förrän den föregående är klar.

    Screenshot of the received shares page, showing the trigger snapshot dropdown selected and the full copy option highlighted.

  2. När den senaste körningsstatusen lyckas går du till måldatalagret för att visa mottagna data. Välj Datauppsättningar och välj länken i målsökvägen.

    Screenshot of the datasets tab showing a successful dataset selected.

Visa historik

Det här steget gäller endast för ögonblicksbildbaserad delning. Om du vill visa historik för dina ögonblicksbilder väljer du fliken Historik . Här hittar du historik över alla ögonblicksbilder som har genererats under de senaste 30 dagarna.

Prestanda för ögonblicksbilder

Prestanda för SQL-ögonblicksbilder påverkas av många faktorer. Vi rekommenderar alltid att du utför dina egna prestandatester. Nedan visas några exempelfaktorer som påverkar prestanda.

  • Käll- eller måldatalagerindata/utdataåtgärder per sekund (IOPS) och bandbredd.
  • Maskinvarukonfiguration (till exempel virtuella kärnor, minne, DWU) för käll- och mål-SQL-datalagret.
  • Samtidig åtkomst till käll- och måldatalager. Om du delar flera tabeller och vyer från samma SQL-datalager, eller tar emot flera tabeller och vyer i samma SQL-datalager, påverkas prestandan.
  • Nätverksbandbredd mellan käll- och måldatalager och platsen för käll- och måldatalager.
  • Storleken på de tabeller och vyer som delas. SQL-ögonblicksbildsdelning gör en fullständig kopia av hela tabellen. Om tabellens storlek växer med tiden tar ögonblicksbilden längre tid.

För stora tabeller där inkrementella uppdateringar önskas kan du exportera uppdateringar till lagringskontot och använda lagringskontots inkrementella delningsfunktion för snabbare prestanda.

Felsöka fel med ögonblicksbilder

Den vanligaste orsaken till ögonblicksbildfel är att dataresursen inte har behörighet till käll- eller måldatalagret. För att ge dataresursbehörighet till källan eller målet för Azure SQL Database eller Azure Synapse Analytics (tidigare Azure SQL DW) måste du köra det angivna SQL-skriptet när du ansluter till SQL-databasen med Hjälp av Microsoft Entra-autentisering. Information om hur du felsöker andra SQL-ögonblicksbildfel finns i Felsöka fel med ögonblicksbilder.

Nästa steg

Du har lärt dig hur du delar och tar emot data från SQL-källor med hjälp av Azure Data Share-tjänsten. Om du vill veta mer om delning från andra datakällor fortsätter du till datalager som stöds.