Prima di iniziare a utilizzare gli endpoint SQL del flusso di dati

Rivedere i prerequisiti per gli endpoint SQL di Data Flow.

Per utilizzare gli endpoint SQL del flusso di dati, è necessario disporre dei seguenti elementi:

  • Un account Oracle Cloud Infrastructure. Gli account di prova possono essere utilizzati per mostrare il flusso dati.
  • Ruolo di amministratore del servizio per i servizi Oracle Cloud. Quando il servizio viene attivato, le credenziali e l'URL vengono inviati all'amministratore account scelto. L'amministratore account crea un account per ogni utente che deve accedere al servizio.
  • Un browser supportato, ad esempio:
    • Microsoft Internet Explorer 11.x o successiva

    • Mozilla Firefox ESR 38 o versione successiva

    • Google Chrome 42 o successivo

    Nota

    Per l'interfaccia utente di Spark, utilizzare solo Google Chrome.
  • Dati per l'elaborazione caricati nello storage degli oggetti. I dati possono essere letti da origini dati esterne o da servizi cloud. Gli endpoint SQL di flusso dati ottimizzano le prestazioni e la sicurezza per i dati memorizzati nello storage degli oggetti.

Nota

Evita di inserire informazioni riservate durante l'assegnazione di descrizioni, tag o nomi descrittivi alle risorse cloud tramite la console, l'API o l'interfaccia CLI di Oracle Cloud Infrastructure. Si applica quando si creano o si modificano applicazioni in Data Flow.

Informazioni sugli endpoint SQL

L'endpoint SQL di Data Flow è un'entità di servizio che utilizza cluster di computazione con tempi di esecuzione lunghi nella tenancy. Scegli una forma di computazione e quante istanze vuoi usare. Ogni cluster viene eseguito finché un amministratore non lo arresta. Spark viene eseguito nel cluster. Il motore SQL è veloce, si integra con Data Flow e supporta i dati non strutturati. È possibile connettersi utilizzando ODBC o JDBC, eseguire l'autenticazione con le credenziali IAM.

Descrizione degli endpoint SQL del flusso di dati

Gli endpoint SQL di Data Flow sono progettati per consentire a sviluppatori, data scientist e analisti avanzati di eseguire query interattive sui dati direttamente nella posizione in cui risiedono nel data lake. Questi dati sono relazionali, semistrutturati e non strutturati, ad esempio log, flussi di sensori e flussi video in genere memorizzati nell'area di memorizzazione degli oggetti. Man mano che il volume e la complessità dei dati aumentano, gli strumenti per esplorare e analizzare i dati nel data lake in formati nativi, anziché trasformarli o spostarli, diventano importanti. Gli endpoint SQL di Data Flow consentono di elaborare in modo economico grandi quantità di dati non elaborati, con la sicurezza cloud nativa utilizzata per controllare l'accesso. Puoi accedere agli insight di cui hanno bisogno in modo self-service, senza dover coordinare progetti IT complessi o preoccuparti di dati obsoleti. Le query negli endpoint SQL di flusso dati interagiscono perfettamente con il batch di flussi di dati per le pipeline di produzione pianificate. Consentono un'analisi rapida dei dati e utilizzano cluster di computazione a scalabilità automatica con tempi di esecuzione lunghi, che vengono corretti ed eseguiti fino all'arresto dell'amministratore.

Endpoint SQL di Data Flow:

  • Fornisci analytics interattivi direttamente sul data lake.
  • Sono basati su Spark per lo scale-out, la lettura e la scrittura di dati non strutturati e l'interoperabilità con il flusso di dati esistente.
  • Utilizza SQL per semplificare l'analisi.
  • Supporta i principali strumenti di Business Intelligence (BI) utilizzando connessioni ODBC o JDBC con le credenziali IAM.
  • Utilizzare i dati per l'elaborazione caricata nello storage degli oggetti. I dati possono essere letti da origini dati esterne o da servizi cloud.

Gli endpoint SQL di Data Flow supportano tutti gli stessi tipi di file supportati da Spark. Ad esempio, JSON, Parquet, CSV e Avro.

Considerazioni sull'integrazione del metastore di Data Catalog

Una stretta integrazione tra gli endpoint SQL di Data Flow e il metastore del Data Catalog ("metastore") è fondamentale per fornire un accesso coerente, affidabile e governato sia alle tabelle esterne che a quelle gestite. Attraverso questa integrazione, un endpoint SQL utilizza il metastore come repository affidabile per schemi, definizioni di tabella, metadati di partizione e posizioni di storage, consentendo di pianificare e ottimizzare le query senza eseguire più volte la scansione dei file sottostanti.

Per le tabelle esterne, il metastore garantisce che le informazioni sullo schema e sulla partizione rimangano coerenti con i layout dello storage degli oggetti, mentre per le tabelle gestite e Delta tiene traccia delle operazioni di metadati transazionali, derivazione e ciclo di vita. Questo livello di metadati unificato consente a Spark SQL di fornire prestazioni prevedibili, applicare controlli di governance e accesso, supportare l'evoluzione dello schema e mantenere la compatibilità tra carichi di lavoro e cluster.

Il metastore utilizza un meccanismo di blocco leggero per garantire che le operazioni DDL (Data Definition Language) concorrenti eseguite tramite un endpoint SQL non danneggiano i metadati o non creino stati di tabella incoerenti. Quando viene eseguita un'istruzione DDL, ad esempio CREATE/ALTER TABLE/PARTITION o DROP TABLE/PARTITION, il metastore acquisisce un lock esclusivo, impedendo ad altre sessioni di modificare lo schema o i metadati finché l'operazione non viene completata.

Questo coordinamento dei blocchi protegge dalle condizioni di gara, ad esempio due utenti che modificano contemporaneamente la stessa tabella, e garantisce che l'endpoint SQL operi su una vista coerente e serializzata dei metadati. Associando l'esecuzione DDL all'applicazione del blocco a livello di metastore, l'endpoint SQL mantiene l'integrità transazionale per le operazioni dei metadati anche in ambienti multiutente altamente concorrenti.

Tuttavia, i blocchi bloccano temporaneamente l'accesso ai metadati delle tabelle e le operazioni DDL a esecuzione prolungata possono causare ritardi notevoli per le query di altri utenti che richiedono letture dei metadati, in particolare in ambienti condivisi o altamente concorrenti.

Per ridurre al minimo questi impatti, coordinare l'attività DDL durante le finestre di manutenzione a basso traffico o tramite flussi di lavoro orchestrati che garantiscono che le modifiche dello schema si verifichino al di fuori dei periodi di esecuzione delle query di picco.