Condividi tramite


Procedura: Modificare un database Lake

Questo articolo descrive come modificare un database Lake esistente in Azure Synapse usando la finestra di progettazione del database. La finestra di progettazione del database consente di creare e distribuire facilmente un database senza scrivere codice.

Prerequisiti

  • Nell'area di lavoro Synapse è necessario disporre delle autorizzazioni del ruolo Amministratore di Synapse o Collaboratore di Synapse per la creazione di un database Lake.
  • Le autorizzazioni del ruolo Collaboratore ai dati per i BLOB di archiviazione sono necessarie nel data lake quando si usa l'opzione di creazione delle tabelle dal data lake.

Modificare le proprietà del database

  1. Nell'hub Home hub dell'area di lavoro Azure Synapse Analytics, selezionare la scheda Dati a sinistra. Verrà visualizzata la scheda Dati contenente l'elenco dei database già esistenti nell'area di lavoro.

  2. Passare il puntatore del mouse sulla sezione Database e selezionare i puntini di sospensione ... accanto al database da modificare, quindi scegliere Apri.

    Screenshot showing how to open an existing database

  3. La scheda Progettazione database verrà aperta con il database selezionato caricato nell'area di disegno.

  4. La finestra di progettazione del database include il riquadro Proprietà che può essere aperto selezionando l'icona Proprietà in alto a destra della scheda. Screenshot showing the location of the properties icon

    • Nomi: i nomi non possono essere modificati dopo la pubblicazione del database; assicurarsi pertanto che il nome scelto sia corretto.
    • Descrizione: l'impostazione di una descrizione del database è facoltativa, ma consente agli utenti di comprendere lo scopo del database.
    • Impostazioni di archiviazione del database: sezione contenente le informazioni di archiviazione predefinite per le tabelle del database. Vengono applicate le impostazioni predefinite a ogni tabella del database, a meno che non venga sottoposto a override nella tabella stessa.
    • Servizio collegato: servizio collegato predefinito usato per archiviare i dati in Azure Data Lake Storage. Verrà visualizzato il servizio collegato predefinito associato all'area di lavoro Synapse, ma è possibile modificare il servizio collegato in qualsiasi account di archiviazione ADLS desiderato.
    • Cartella di input: cartella usata per impostare il percorso predefinito del contenitore e della cartella all'interno del servizio collegato mediante il browser di file o la modifica manuale del percorso con l'icona a forma di matita.
    • Formato dati: come formati di archiviazione dei dati, i database Lake in Azure Synapse supportano Parquet e testo delimitato.
  5. Per aggiungere una tabella al database, selezionare il pulsante + Tabella.

    • L'opzione Personalizzato aggiungerà una nuova tabella all'area di disegno.
    • L'opzione Da modello visualizzerà la raccolta, dove sarà possibile selezionare un modello di database da usare per l'aggiunta di una nuova tabella. Per altre informazioni, vedere Creare un database Lake dal modello di database.
    • L'opzione Da data lake consente di importare uno schema di tabella usando i dati già presenti nel data lake.
  6. Seleziona Personalizza. Verrà visualizzata una nuova tabella nell'area di disegno denominata Table_1.

  7. È quindi possibile personalizzare Table_1, inclusi il nome della tabella, la descrizione, le impostazioni di archiviazione, le colonne e le relazioni. Vedere la sezione Personalizzare le tabelle all'interno di un database di seguito.

  8. Aggiungere una nuova tabella dal data lake selezionando + Tabella e quindi Da data lake.

  9. Verrà visualizzato il riquadro Crea tabella esterna da data lake. Compilare il riquadro con i dettagli seguenti e selezionare Continua.

    • Nome tabella esterna: nome che si vuole assegnare alla tabella in fase di creazione.
    • Servizio collegato: servizio collegato contenente il percorso di Azure Data Lake Storage in cui si trova il file di dati.
    • File o cartella di input: usare il browser di file per individuare e selezionare un file nel data lake in cui si vuole creare una tabella. Screenshot showing the options on the create external table from data lake pane
    • Nella schermata successiva, Azure Synapse visualizzerà l'anteprima del file e rileverà lo schema.
    • Verranno visualizzate la pagina Nuova tabella esterna in cui è possibile aggiornare tutte le impostazioni relative al formato dati e l'area Anteprima dati per verificare se Azure Synapse ha identificato il file correttamente.
    • Quando si è soddisfatti delle impostazioni, selezionare Crea.
    • Verrà aggiunta una nuova tabella con il nome selezionato all'area di disegno, mentre nella sezione Impostazioni di archiviazione per la tabella verrà visualizzato il file specificato.
  10. Dopo aver personalizzato il database, è ora possibile pubblicarlo. Se si usa l'integrazione di Git con l'area di lavoro Synapse, è necessario eseguire il commit delle modifiche e unirle nel ramo di collaborazione. Altre informazioni sul controllo del codice sorgente in Azure Synapse. Se si usa la modalità Live di Synapse, è possibile selezionare "Pubblica".

    • Prima della pubblicazione, gli eventuali errori del database verranno convalidati. Nella scheda Notifiche verranno visualizzati gli eventuali errori rilevati assieme alle istruzioni su come risolverli.

      Screenshot of the validation pane showing validation errors in the database

    • La pubblicazione creerà lo schema del database nel metastore di Azure Synapse. Dopo la pubblicazione, gli oggetti di database e tabella saranno visibili ad altri servizi di Azure e consentiranno ai metadati del database di passare ad app come Power BI o Microsoft Purview.

Personalizzare le tabelle all'interno di un database

La finestra di progettazione del database consente di personalizzare a tutti i livelli qualsiasi tabella nel database. Quando si seleziona una tabella sono disponibili tre schede, ognuna contenente le impostazioni relative allo schema o ai metadati della tabella.

Generali

La scheda Generale contiene informazioni specifiche della tabella stessa.

  • Nome: nome della tabella. Il nome della tabella può essere personalizzato in base a qualsiasi valore univoco all'interno del database. Non sono consentite più tabelle con lo stesso nome.

  • Ereditato da: (facoltativo) questo valore sarà presente se la tabella è stata creata da un modello di database. Non può essere modificato e indica all'utente il modello da cui la tabella è stata derivata.

  • Descrizione: descrizione della tabella. Se la tabella è stata creata da un modello di database, conterrà una descrizione del concetto rappresentato da questa tabella. Questo campo è modificabile in modo che corrisponda alla descrizione conforme ai requisiti aziendali.

  • Cartella di visualizzazione: riporta il nome della cartella dell'area aziendale in cui la tabella è stata raggruppata come parte del modello di database. Per le tabelle personalizzate, questo valore sarà "Altro".

    Screenshot of the General tab

  • È inoltre disponibile una sezione comprimibile denominata Impostazioni di archiviazione per la tabella che fornisce le impostazioni delle informazioni di archiviazione sottostanti usate dalla tabella.

  • Eredita da impostazione predefinita del database: casella di controllo che determina se le impostazioni di archiviazione seguenti vengono ereditate dai valori impostati nella scheda Proprietà del database o se vengono impostate singolarmente. Per personalizzare i valori di archiviazione, deselezionare questa casella.

    • Servizio collegato: servizio collegato predefinito usato per archiviare i dati in Azure Data Lake Storage. Modificare questa opzione per selezionare un account ADLS diverso.
    • Cartella di input: cartella in ADLS in cui verranno visualizzati i dati caricati in questa tabella. È possibile esplorare il percorso della cartella o modificarlo manualmente usando l'icona a forma di matita.
    • Formato dati: formato dei dati dell'opzione Cartella di input; i database Lake in Azure Synapse supportano i formati Parquet e testo delimitato come formati di archiviazione dei dati. Se il formato dei dati non corrisponde ai dati nella cartella, le query sulla tabella avranno esito negativo.
  • Se si imposta Formato dati su Testo delimitato, sono disponibili altre impostazioni:

    • Intestazioni di riga: selezionare questa casella se i dati hanno intestazioni di riga.
    • Abilita più righe nei dati: selezionare questa casella se i dati hanno più righe in una colonna di tipo stringa.
    • Carattere virgolette: specificare il carattere virgolette personalizzato per un file di testo delimitato.
    • Carattere di escape: specificare il carattere di escape personalizzato per un file di testo delimitato.
    • Compressione dei dati: tipo di compressione utilizzato nei dati.
    • Delimitatore: delimitatore di campo utilizzato nei file di dati. I valori supportati sono: virgola (,), tabulazione (\t) e pipe (|).
    • Colonne di partizione: l'elenco di colonne di partizione verrà visualizzato qui.
    • Accodamento: selezionare questa casella se si eseguono query sui dati di Dataverse da SQL Serverless.
  • Per i dati Parquet, è disponibile l'impostazione seguente:

    • Compressione dei dati: tipo di compressione utilizzato nei dati.

Colonne

La scheda Colonne è la posizione modificabile in cui sono elencate le colonne della tabella. In questa scheda sono presenti due elenchi di colonne: colonne standard e colonne di partizione. La colonne standard è qualsiasi colonna che archivia i dati, una chiave primaria e in ogni caso non viene usata per il partizionamento dei dati. La colonna di partizione archivia anche i dati, ma viene usata per partizionare i dati sottostanti in cartelle in base ai valori contenuti nella colonna. Ogni colonna ha le proprietà seguenti. Screenshot of the Columns tab

  • Nome: nome della colonna. Deve essere univoco all'interno della tabella.
  • Chiavi: indica se la colonna è una chiave primaria (PK) e/o una chiave esterna (FK) della tabella. Non applicabile alle colonne di partizione.
  • Descrizione: descrizione della colonna. Se la colonna è stata creata da un modello di database, conterrà una descrizione del concetto rappresentato da questa colonna. Questo campo è modificabile in modo che corrisponda alla descrizione conforme ai requisiti aziendali.
  • Supporto dei valori Null: indica se in questa colonna possono essere presenti valori Null. Non applicabile alle colonne di partizione.
  • Tipo di dati: imposta il tipo di dati della colonna in base all'elenco disponibile di tipi di dati Spark.
  • Formato/Lunghezza: consente di personalizzare il formato o la lunghezza massima della colonna, a seconda del tipo di dati. I tipi di dati Data e Timestamp sono associati a elenchi a discesa dei formati, mentre altri tipi come Stringa hanno un campo con lunghezza massima. Non tutti i tipi di dati hanno un valore perché alcuni di essi sono a lunghezza fissa. Nella parte superiore della scheda Colonne è presente una barra dei comandi che può essere usata per interagire con le colonne.
  • Filtra per parola chiave: filtra l'elenco di colonne in base alla parola chiave specificata.
  • + Colonna: consente di aggiungere una nuova colonna. Esistono tre possibili opzioni.
    • Nuova colonna: crea una nuova colonna standard personalizzata.
    • Da modello: apre il riquadro di esplorazione, dove è possibile identificare le colonne di un modello di database da includere nella tabella. Se il database non è stato creato usando un modello di database, questa opzione non verrà visualizzata.
    • Colonna di partizione: aggiunge una nuova colonna di partizione personalizzata.
  • Clona: duplica la colonna selezionata. Le colonne clonate sono sempre dello stesso tipo della colonna selezionata.
  • Tipo di conversione: viene usato per modificare la colonna standard selezionata in una colonna di partizione e viceversa. Questa opzione verrà disattivata se sono state selezionate più colonne di tipi diversi o se la colonna selezionata non è idonea per la conversione a causa di un flag PK o Supporto dei valori Null impostato nella colonna.
  • Elimina: elimina le colonne selezionate dalla tabella. Questa azione è irreversibile.

È anche possibile modificare l'ordine delle colonne con il trascinamento della selezione usando i puntini di sospensione verticali doppi visualizzati a sinistra del nome della colonna quando si passa il puntatore del mouse o si fa clic sulla colonna come illustrato nell'immagine precedente.

Colonne di partizione

Le colonne di partizione vengono usate per partizionare i dati fisici nel database in base ai valori in tali colonne. Le colonne di partizione consentono di semplificare la distribuzione dei dati su disco in blocchi con prestazioni più elevate. Le colonne di partizione in Azure Synapse sono sempre alla fine dello schema della tabella. Inoltre, vengono usate dall'alto verso il basso durante la creazione delle cartelle di partizione. Ad esempio, se le colonne di partizione sono Anno e Mese, si otterrà una struttura in ADLS simile alla seguente:

Screenshot showing hierarchy of folders from partitioning: 2020 -> Jan, Feb -> files

Dove file1 e file2 contengono tutte le righe in cui i valori di anno e mese sono rispettivamente 2020 e Jan. Man mano che vengono aggiunte più colonne di partizione a una tabella, più file vengono aggiunti a questa gerarchia, rendendo più piccola la dimensione complessiva dei file delle partizioni.

Azure Synapse non applica o crea questa gerarchia aggiungendo colonne di partizione a una tabella. I dati devono essere caricati nella tabella usando le pipeline di Synapse o un notebook Spark per consentire la creazione della struttura di partizione.

Relazioni

La scheda Relazioni consente di specificare le relazioni tra le tabelle nel database. Le relazioni nella finestra di progettazione del database sono informative e non rappresentano un vincolo per i dati sottostanti. Le relazioni vengono lette da altre applicazioni Microsoft per accelerare le trasformazioni o fornire agli utenti aziendali informazioni dettagliate sul modo in cui le tabelle sono connesse. Nel riquadro Relazioni sono disponibili le informazioni seguenti. Screenshot of the Relationships tab

  • Relazioni da (tabella) si riferisce a quando una o più tabelle includono chiavi esterne connesse alla tabella in uso. A volte si tratta di una relazione padre.
  • Relazioni con (Tabella) si riferisce a quando una tabella include una chiave esterna ed è connessa ad altre tabelle. A volte si tratta di una relazione figlio.
  • Entrambi i tipi di relazione hanno le proprietà seguenti.
    • D tabella: tabella padre nella relazione o lato "uno" della relazione.
    • Da colonna: colonna nella tabella padre su cui si basa la relazione.
    • A tabella: tabella figlio nella relazione o lato "molti" della relazione.
    • A colonna: colonna nella tabella figlio su cui si basa la relazione. Nella parte superiore della scheda Relazioni è presente la barra dei comandi che può essere usata per interagire con le relazioni
  • Filtra per parola chiave: filtra l'elenco di colonne in base alla parola chiave specificata.
  • + Relazione consente di aggiungere una nuova relazione. Esistono due opzioni.
    • Da tabella consente di creare una nuova relazione dalla tabella su cui si sta lavorando a una tabella diversa.
    • A tabella consente di creare una nuova relazione da una tabella diversa alla tabella attualmente in uso.
    • Da modello: apre il riquadro di esplorazione, dove è possibile identificare le relazioni nel modello di database da includere nella database. Se il database non è stato creato usando un modello di database, questa opzione non verrà visualizzata.

Passaggi successivi

Continuare a esplorare le funzionalità della finestra di progettazione del database usando i collegamenti seguenti.