Questa modalità consente di specificare un set di istruzioni SQL all'interno di un file di testo. È quindi possibile caricare il file nel server e consentire l'esecuzione delle istruzioni definite nel file.
La modalità batch è molto utile, soprattutto quando si automatizza una particolare attività SQL su più server.
In Apache Cassandra, hai due metodi per eseguire più istruzioni contemporaneamente:
Verranno eseguiti i comandi nel file e l'uscita corrispondente verrà visualizzata nell'output standard.
Esploriamo come possiamo usare questa funzione.
Sintassi del comando
Di seguito mostra la sintassi del comando:
Fonte "nome file"
Il comando accetta il percorso del file che si desidera eseguire come parametro. Tieni presente che il percorso del file deve essere un percorso relativo. I percorsi assoluti non sono supportati. È anche bene allegare il percorso del file tra virgolette.
Crea script CQL
Il primo passo è creare uno script contenente un set di istruzioni CQL.
A fini illustrativi, creeremo uno spazio di tastiera, passeremo allo spazio di tasti creato, creeremo una tabella e inserire i dati di esempio. Abiliteremo anche la modalità di espansione CQLSH e selezioneremo tutte le righe dalla tabella creata.
Inizia creando un file CQL:
$ touch ~/documenti/script.CQL
Successivamente, possiamo aggiungere le istruzioni che desideriamo eseguire nel file, come mostrato di seguito:
Drop Keyspace Se esiste zero_day;
Crea Keyspace Zero_Day
con replication =
'Class': 'SimpleStrategy',
'Replication_Factor': 1
;
Usa zero_day;
Crea record di tabelle (
id int,
Testo CVE_NUMBER,
Data report_date,
Testo interessato_vendor,
Gravità galleggia,
Chiave primaria (ID)
);
Inizia il lotto
INSERT IN RECORD (ID, CVE_NUMBER, report_date, interessato_vendor, gravità)
Valori (1, 'CVE-2021-33852', '2022-12-02', 'WordPress', 6.0);
INSERT IN RECORD (ID, CVE_NUMBER, report_date, interessato_vendor, gravità)
Valori (2, "CVE-2020-14723", "2020-01-11", "Oracle", 8.2);
INSERT IN RECORD (ID, CVE_NUMBER, report_date, interessato_vendor, gravità)
Valori (3, "CVE-2019-19306", "2019-10-14", "Zoho", 5.4);
INSERT IN RECORD (ID, CVE_NUMBER, report_date, interessato_vendor, gravità)
Valori (4, "CVE-2021-33850", "2021-10-18", "Microsoft", 5.0);
INSERT IN RECORD (ID, CVE_NUMBER, report_date, interessato_vendor, gravità)
Valori (5, "CVE-2020-24600", "2020-07-01", "Shilpi", 8.6);
applicare batch;
espandere;
Seleziona * da zero_day.registri;
Salva e chiudi il file.
Eseguire lo script
Per eseguire lo script, accedi al server:
$ cqlsh -u cassandra -p cassandra
Infine, usa il comando di origine per eseguire lo script come:
cassandra@cqlsh> sorgente '~/documenti/script.cql ';
L'esecuzione del comando precedente caricherà le istruzioni nel file di script e restituirà l'output (ove disponibile) sulla shell.
Un esempio di esempio è mostrato di seguito:
Nel nostro script, solo i comandi espandi e selezionati restituiscono un output, come mostrato sopra.
Conclusione
In questo post, abbiamo imparato a usare il comando di origine in Cassandra. Il comando di origine ci consente di definire le istruzioni CQL in un file ed eseguirle in sequenza nella shell CQL.