5.10 Informazioni sulle associazioni e i notebook degli interpreti

Un interprete è un plugin che consente di utilizzare un backend specifico del linguaggio di elaborazione dati.

Per i notebook Zeppelin nell'interfaccia utente di Oracle Machine Learning, utilizzare gli interpreti SQL, PL/SQL, Python e R all'interno di un gruppo di interpreti Oracle Database e l'interprete Markdown per la sintassi di formattazione del testo normale in modo che possa essere convertito in HTML. L'interprete Conda viene utilizzato per connettersi all'ambiente Conda e utilizzare i pacchetti di librerie di terze parti Python.

Per utilizzare questi interpreti, è necessario utilizzare queste direttive all'inizio del paragrafo in un blocco appunti
  • SQL - %sql
  • PL/SQL: %script
  • Python - %python
  • R - %r
  • Ribasso - %md
  • Conda - %conda
I notebook contengono un elenco interno di associazioni che definiscono l'ordine delle associazioni di interpreti in un gruppo di interpreti. L'ordine predefinito delle associazioni di interpreti nel gruppo di interpreti di Oracle Database è:
  • Basso: fornisce il livello minimo di risorse per le operazioni nel database, in genere l'esecuzione seriale (non parallela). Supporta il numero massimo di operazioni concorrenti nel database da parte di più utenti. L'interprete con priorità bassa viene elencato nella parte superiore dell'elenco degli interpreti, quindi è l'impostazione predefinita.
  • Media: fornisce un numero fisso di CPU per eseguire operazioni nel database in parallelo, ove possibile. Supporta un numero limitato di utenti concorrenti, in genere 1,25 volte il numero di CPU allocate al pluggable database.
  • Alta: fornisce il livello più elevato di CPU per eseguire operazioni nel database in parallelo, fino al numero di CPU allocate al pluggable database. Offre le prestazioni più elevate, ma supporta il numero minimo di operazioni concorrenti nel database, in genere 3.
Per quanto riguarda le associazioni di interpreti, è possibile eseguire i task riportati di seguito.
  • Associa e annulla l'associazione degli interpreti: se non si associa alcun interprete specifico al notebook, viene visualizzato il messaggio di errore:
    Not supported interpreter <name of interpreter>
  • Impostare e riordinare le associazioni degli interpreti. È possibile impostare e riordinare le associazioni di interpreti se si desidera utilizzare un interprete specifico per un paragrafo specifico in un blocco appunti. In tal caso, è necessario selezionare l'interprete specifico per tale paragrafo.
  • Modificare l'associazione dell'interprete per qualsiasi paragrafo specifico in un blocco appunti
È necessario prendere nota dell'ordine di associazione dell'interprete nei seguenti scenari:
  • Creazione blocco note: quando si crea un blocco note, il blocco note eredita l'ordine di associazione iniziale dell'interprete, che è basso (predefinito), medio, alto.
  • Importazione blocco note: quando si importa un blocco note, il blocco note eredita le associazioni di interpreti definite. Tuttavia, dopo aver importato un blocco appunti, verificare l'ordine delle associazioni di interpreti e selezionare gli interpreti richiesti.
  • Esportazione blocco note: quando si esporta un blocco note, il blocco note eredita le associazioni di interpreti definite.
  • Creazione di blocchi appunti dai modelli: quando si crea un blocco appunti dai modelli, il blocco appunti eredita l'ordine predefinito delle associazioni di interpreti.

5.10.1 Modifica delle associazioni degli interpreti per paragrafi specifici in un blocco note

L'ordine di associazione dell'interprete impostato per un blocco appunti si applica a tutti i paragrafi di tale blocco appunti. È tuttavia possibile sostituire l'associazione dell'interprete per gli interpreti SQL, PL/SQL, R, Python e Conda per qualsiasi paragrafo specifico del blocco note.

Per utilizzare questi interpreti, è necessario utilizzare queste direttive all'inizio del paragrafo in un blocco appunti
  • SQL - %sql
  • PL/SQL: %script
  • Python - %python
  • R - %r
  • Ribasso - %md
  • Conda - %conda

Nota

Non eseguire l'override delle associazioni dell'interprete dei paragrafi Python poiché non condivideranno lo stesso backend del motore Python.
Per modificare l'associazione dell'interprete per un paragrafo specifico in un blocco appunti:
  1. Aprire il notebook e fare clic sull'icona a forma di ingranaggio per visualizzare le associazioni dell'interprete e il relativo ordine.
    Opzioni editor notebook
    In questo esempio, tutti e tre gli interpreti SQL sono associati al blocco appunti e l'interprete con l'allocazione di risorse low adwpcwdp_low %sql è l'impostazione predefinita, in quanto è il primo interprete della lista. L'interprete Markdown non è associato al notebook

    Nota

    I nomi degli interpreti sono nel formato databasename_low, databasename_medium e databasename_high, che è lo stesso del nome dell'ordine di associazione dell'interprete.
    In questo esempio, i nomi degli interpreti sono:
    • adwp_low % sql(default),%script, %python, %r, %conda
    • adwp_medium % sql(default),%script, %python, %r, %conda
    • adwp_high % sql(default), %script,%python, %r, %conda
    • md %md(default)

    Figura 5-9 Associazioni interprete

    Associazioni interprete
    Il primo interprete Python della lista viene utilizzato per eseguire tutti i paragrafi Python nel notebook. Ad esempio, se si seleziona l'associazione low, tutti i paragrafi Python vengono eseguiti utilizzando l'interprete Python di associazione low. Tutti gli altri paragrafi con associazioni di interpreti SQL e Script vengono eseguiti utilizzando il servizio dei nomi del database low, ovvero adwp_low. Se uno script Python esegue le query sul database, tali query vengono eseguite utilizzando il servizio di denominazione del database low, ovvero adwp_low in questo esempio.
  2. Per modificare l'ordine di associazione dell'interprete per un determinato paragrafo nel blocco appunti:
    • Scorrere fino al paragrafo per il quale si desidera modificare l'interprete
    • Chiama l'interprete con il vincolo specifico
    • Esegui il paragrafo
    Ad esempio, chiamare l'interprete con un'allocazione di risorse media digitando %adwp_medium per il primo paragrafo nel blocco appunti ed eseguire il paragrafo. In questo esempio, adwp è il nome del database.
    Ordine di associazione interprete modificato
    Si noti che il primo paragrafo viene eseguito senza errori dopo aver modificato l'associazione dell'interprete. Il secondo paragrafo di questo blocco appunti ha l'associazione predefinita.
  3. Convalidare l'associazione dell'interprete per il primo paragrafo di questo notebook digitando l'istruzione SQL SELECT SYS_CONTEXT ('USERENV', 'SERVICE_NAME') FROM DUAL;
    L'istruzione SQL restituisce le seguenti informazioni sull'interprete con associazione media:
    LGKFDTOOBOQK48I_CWDP_medium.adwc.oraclecloud.com
    Convalida l'associazione dell'interprete di un paragrafo dopo la modifica
    In questo esempio, con riferimento allo screenshot:
    • LGKFDTOOBOQK48I è il nome del tenant
    • CWDP è il nome del database
    • medium è il nome del servizio
    • adwc.oraclecloud.com è il dominio

    Nota

    Per il resto dei paragrafi di questo blocco appunti, l'associazione dell'interprete è predefinita. È possibile convalidare le associazioni per ciascun paragrafo eseguendo il passo 3.
    Ciò completa il compito di modificare l'associazione dell'interprete per un determinato paragrafo nel blocco appunti. Il resto dei paragrafi del blocco appunti ha l'associazione predefinita per l'interprete.

5.10.2 Impostazione delle associazioni degli interpreti per i notebook

È necessario associare un notebook a un interprete per recuperare i dati dal database o da qualsiasi origine dati. È disponibile un set predefinito di associazioni di interpreti.

È possibile impostare l'ordine delle associazioni di interpreti se sono disponibili più set. Per impostare l'ordine delle associazioni di interpreti:
  1. Nella pagina Notebook, fare clic sul blocco appunti per il quale si desidera impostare le associazioni di interpreti.
    Il blocco appunti viene aperto in modalità di modifica.
  2. Fare clic sull'icona a forma di ingranaggio nel pannello superiore.
    Opzioni editor NB
    Viene visualizzato il riquadro Impostazioni in cui sono elencate le associazioni dell'interprete per il blocco appunti.
  3. Trascinare e rilasciare gli interpreti per riordinare le associazioni degli interpreti. Il primo interprete dell'elenco è quello predefinito. L'ordine delle associazioni di interpreti è:
    • Basso (predefinito): fornisce il livello minimo di risorse per le operazioni nel database, in genere l'esecuzione seriale (non parallela). Supporta il numero massimo di operazioni concorrenti nel database da parte di più utenti. L'interprete con priorità bassa viene elencato nella parte superiore dell'elenco degli interpreti, quindi è l'impostazione predefinita.
    • Medio: fornisce un numero fisso di CPU per eseguire operazioni nel database in parallelo, ove possibile. Supporta un numero limitato di utenti concorrenti, in genere 1,25 volte il numero di CPU allocate al pluggable database.
    • Alto: fornisce il livello più elevato di CPU per eseguire operazioni nel database in parallelo, fino al numero di CPU allocate al pluggable database. Offre le prestazioni più elevate, ma supporta il numero minimo di operazioni concorrenti nel database, in genere 3.
    Questo è l'ordine vincolante iniziale degli interpreti. È possibile modificare l'ordine delle associazioni dell'interprete.
  4. Fare clic su Salva.

5.10.3 Verificare le associazioni degli interpreti

Dopo aver impostato e modificato l'ordine delle associazioni di interpreti, è possibile verificare le associazioni di interpreti se si utilizza un interprete SQL, PL/SQL, R o Python in un determinato blocco note. Utilizzare un'istruzione SQL per visualizzare e verificare le informazioni di associazione dell'interprete sul notebook.

Per i notebook Python, l'associazione dell'interprete viene utilizzata per tutti i paragrafi python.

Nota

Per i notebook Python, non ignorare l'associazione dell'interprete a livello di paragrafo.
Per verificare l'associazione dell'interprete dei notebook:
  1. Aprire il blocco appunti per il quale si desidera controllare l'associazione dell'interprete.
  2. Eseguire l'istruzione SQL riportata di seguito.
    %sql
    SELECT SYS_CONTEXT ('USERENV', 'SERVICE_NAME') FROM DUAL;

    L'istruzione SQL fornisce il nome del servizio a cui è connessa una determinata sessione.

  3. Fare clic su Esegui.
    L'istruzione SQL restituisce le informazioni sull'interprete, l'ordine dell'associazione e il nome del servizio. Il risultato viene visualizzato nel seguente formato: tenantname__databasename_ servicename.domain. Fare clic qui:
    • HDY7RUSKGDMPHN2 è il nome del tenant
    • PDB1 è il nome del database
    • low è l'ordine di associazione dell'interprete
    • adwc.oraclecloud.com è il nome del dominio
    Convalida associazione interprete