Accesso diretto ai database cloud con Direct Query | Guida di Qlik Cloud
Vai al contenuto principale Passa a contenuto complementare

Accesso diretto ai database cloud con Direct Query

Utilizzare Direct Query per leggere i database SQL senza dover importare o caricare i dati in memoria.

Direct Query offre all'utente più opzioni su come accedere ai propri dati per soddisfare le proprie esigenze individuali. L'accesso ai dati tramite Direct Query consente all'utente di mantenere i dati nella sorgente dati sottostante. Ciò aumenta la velocità con cui gli utenti possono interagire con i propri dati, a scapito della flessibilità offerta da un'applicazione Qlik Cloud in memoria.

In generale, si consiglia di importare i dati in Qlik Cloud ogni volta che sia possibile. Le applicazioni Qlik Cloud in memoria consentono di personalizzare al meglio l'esperienza e ottenere il massimo dai dati. Tuttavia, se ci si trova in una situazione in cui gli obiettivi non possono essere raggiunti importando i dati, Direct Query potrebbe essere la soluzione ideale. Grazie alla loro funzionalità semplificata, le applicazioni Direct Query possono anche aiutare i nuovi utenti a compiere i primi passi verso la creazione di applicazioni in memoria rapide e completamente funzionali.

È possibile creare l'applicazione Direct Query utilizzando Gestione modello dati per facilitare la selezione di tabelle e campi e definire le relazioni tra di essi. Per ulteriori informazioni, vedere Creazione di un'Direct Query applicazione.

È inoltre possibile utilizzare SQL personalizzato nello script di caricamento per definire il modello dati per l'applicazione Direct Query. Questo consente di utilizzare variabili ed espressioni Qlik durante la creazione del modello dati. Per ulteriori informazioni, vedere Creazione di un'applicazione Direct Query con SQL personalizzato.

Esempi di casi d'uso di Direct Query

Si potrebbe considerare l'uso di Direct Query anziché di applicazioni in memoria nei seguenti casi:

Casi d'uso di Direct Query
Caso d'uso Scopo e descrizione
Grandi sorgenti dati Direct Query è più veloce da inizializzare e richiede meno risorse per le applicazioni con più di 20 milioni di righe. Questo può essere molto utile quando le applicazioni vengono utilizzate principalmente per il monitoraggio o la reportistica dello stato, in cui vengono effettuate solo poche o nessuna selezioni.
Applicazioni in memoria efficienti Direct Query fornisce funzionalità per estrarre rapidamente e facilmente porzioni di dati nel motore di Qlik Cloud con filtri applicati a tutte le tabelle interessate. Per ulteriori informazioni, vedere Esportazione delle impostazioni dell'Direct Query applicazione in un'applicazione modello
Direct Query per writeback Quando il writeback basato su Qlik Automate è configurato per modificare i dati del database sottostante, Direct Query può mostrare direttamente i risultati del database modificati. La stessa funzionalità in un'applicazione in memoria richiederebbe all'utente di importare nuovamente le tabelle modificate.
Esplorazione di nuovi database e tabelle Direct Query può essere utilizzato per esplorare database e tabelle nuovi o non familiari. Ciò consente all'utente di prendere una decisione informata sull'opportunità di importare i dati dalla sorgente dati sottostante.

Tutorial

Per un tutorial su come utilizzare le applicazioni Qlik Sense, vedere Tutorial - Concetti di base.

Per un tutorial su Direct Query, vedere quanto segue:

Nota informaticaLa funzionalità Direct Query in Qlik Cloud è diversa dall'istruzione Direct Query in QlikView. Per ulteriori informazioni, vedere Direct Query.

Funzionalità supportate

Le applicazioni Direct Query presentano funzionalità diverse rispetto alle applicazioni in memoria.

Direct Query supporta quanto segue:

  • Tipi di connessione dati:

    Nota informaticaNon è possibile utilizzare le connessioni dati Qlik Data Gateway - Accesso diretto in Direct Query.
    • Amazon Redshift

    • Azure SQL

    • Azure Synapse Analytics

    • Databricks

    • Google BigQuery

    • Microsoft SQL Server

    • PostgreSQL

    • Snowflake

    • Nota informaticaNelle connessioni dati è supportato un sottoinsieme di funzioni scalari.
  • Emulazione dell'analisi dei dati in memoria:

    • Un sottoinsieme di set analysis.

    • Grafici multitabella su modelli complessi arbitrari. I requisiti dei modelli esistenti per le applicazioni in memoria rimarranno comunque validi. Ad esempio, non sono consentiti loop di associazione tra tabelle.

    • Tipi di aggregazione di base:

      • Somma

      • Conteggio

      • Min

      • Max

      • Media

      • Solo

    • Calcoli di pre- e post-aggregazione, basati sul set di funzioni e operazioni fornito dal database sottostante.

  • Tipi di relazione tra tabelle:

    • Inner join

    • Full outer join

  • Modellazione iterativa e creazione di dashboard.

  • Funzionalità di visualizzazione:

    • Grafici standard:

      • Grafico a barre

      • Grafico bullet

      • Pulsante

      • Grafico combinato

      • Contenitore

      • Pannello di filtro

      • Indicatore

      • KPI

      • Grafico a linee

      • Mappa

      • Grafico Mekko

      • Grafico a torta

      • Grafico a dispersione

      • Tabella

      • Testo e immagine

      • Grafico a cascata

    • Dashboard bundle:

      • Video player

      • Input variabile

    • Visualization bundle:

      • Funnel

      • Multi KPI

      • Radar

      • Sankey

      • Word cloud

  • Un sottoinsieme di funzionalità di ricerca nei campi:

    • Una stringa di ricerca senza simboli speciali (ad esempio, "*" e "?" per la ricerca di pattern, o "=" per la ricerca basata su espressioni) viene interpretata come una ricerca con prefisso sull'intero valore della stringa.

    • Simboli e funzionalità di ricerca di pattern:

      • "*" - qualsiasi numero di simboli (0 o più)

      • "?" - qualsiasi simbolo singolo

    • Ricerca basata su intervalli (basata su ">", "<", ">=", "<="):

      • Per i valori numerici, i limiti inferiore/superiore vengono rilevati in base al valore numerico. Ad esempio, >10<100 equivale a <100>10. Entrambi vengono interpretati come [SearchedField] > 10 AND [SearchedField] < 100.

      • Per altri tipi di dati, i limiti inferiore/superiore vengono rilevati in base al loro ordine nella condizione di ricerca. Ad esempio, >Value1<Value2 non equivale a <Value2>Value1. Nel secondo caso, si presuppone che Value2 corrisponda al limite inferiore e verrà interpretato come [SearchedField] < Value2 OR [SearchedField] > Value1.

    • Ricerca basata su espressioni, presupponendo che l'espressione soddisfi i limiti di Direct Query.

    Nota informaticaPer un elenco completo delle funzionalità di ricerca in memoria, vedere Ricerca all'interno di selezioni o visualizzazioni.
  • Funzioni dell'Engine di Qlik nelle espressioni $(=...) espressioni.

    All'interno di un KPI o di un'espressione SQL personalizzata in Direct Query, è possibile utilizzare le seguenti funzioni di script e di grafico di Qlik:

    Un'espressione che utilizza una o più delle opzioni sopra indicate verrà espansa esclusivamente all'interno dell'Engine di Qlik.

    Nota informaticaLa combinazione di funzioni SQL native remote e funzioni dell'Engine di Qlik all'interno della stessa singola espressione $(=...) non è supportata.

    Per combinare l'uso delle funzioni dell'Engine di Qlik e delle funzioni del database SQL remoto (incluso opzionalmente il set/selezioni +), utilizzare espressioni $(=...) nidificate:

    $(= ...<EngineFuncs> ... $(=... <set/selection &| Native SQL funcs>) ... )

    For example:

    '$(=Replace(GetUserAttr('userEmail'), '$(=Char(111))' , Chr(48)))'

    In the above nested expression example, the Replace(), GetUserAttr(), and Chr() functions are Qlik Engine functions and are enclosed in the outermost $(=…) expression. The nested $(=Char(111)) expression is not referencing an Engine function, however. It is a remote SQL database function (in MS SQL, for example).

    Assuming the user’s email in Qlik Cloud is 'root@qlik.com' then the above expression expansion would in this order,

    1. Expand the $(=CHAR(111)) non-Engine function via the remote SQL database, resulting in the lower-case letter o.

    2. Expand the CHR(48) Engine function to character "0'.

    3. Expand GetUserAttr('userEmail') to 'root@qlik.com'.

    4. Finally expand ‘$(=Replace('root@qlik.com', ‘o' , ‘0’)’ for a final result of 'r00t@qlik.com'.

Hai trovato utile questa pagina?

Se riscontri problemi con questa pagina o con il suo contenuto – un errore di battitura, un passaggio mancante o un errore tecnico – ti pregiamo di farcelo sapere!