Impala - Shell

Nei capitoli precedenti, abbiamo visto l'installazione di Impala utilizzando cloudera e la sua architettura.

  • Shell Impala (prompt dei comandi)
  • Hue (interfaccia utente)
  • ODBC e JDBC (librerie di terze parti)

Questo capitolo spiega come avviare Impala Shell e le varie opzioni della shell.

Impala Shell Command Reference

I comandi della shell Impala sono classificati come general commands, query specific options, e table and database specific options, come spiegato di seguito.

Comandi generali

  • help
  • version
  • history
  • shell (o)!
  • connect
  • uscita | smettere

Opzioni specifiche di query

  • Set/unset
  • Profile
  • Explain

Opzioni specifiche per tabella e database

  • Alter
  • describe
  • drop
  • insert
  • select
  • show
  • use

Avvio di Impala Shell

Apri il terminale cloudera, accedi come superutente e digita cloudera come password come mostrato di seguito.

[[email protected] ~]$ su
Password: cloudera
[[email protected] cloudera]#

Avvia la shell Impala digitando il seguente comando:

[[email protected] cloudera] # impala-shell 
Starting Impala Shell without Kerberos authentication 
Connected to quickstart.cloudera:21000 
Server version: impalad version 2.3.0-cdh5.5.0 RELEASE 
(build 0c891d79aa38f297d244855a32f1e17280e2129b)
********************************************************************* 

Welcome to the Impala shell. Copyright (c) 2015 Cloudera, Inc. All rights reserved.
(Impala Shell v2.3.0-cdh5.5.0 (0c891d7) built on Mon Nov 9 12:18:12 PST 2015)

Want to know what version of Impala you're connected to? Run the VERSION command to 
find out! 
********************************************************************* 
[quickstart.cloudera:21000] >

Impala - Comandi per uso generico

I comandi generali di Impala sono spiegati di seguito:

comando di aiuto

Il help Il comando della shell Impala ti fornisce un elenco dei comandi disponibili in Impala -

[quickstart.cloudera:21000] > help;
 
Documented commands (type help <topic>):
========================================================
compute  describe  insert  set     unset  with  version
connect  explain   quit    show    values use
exit     history   profile select  shell  tip 
  
Undocumented commands:
========================================= 
alter create desc drop help load summary

comando di versione

Il version Il comando fornisce la versione corrente di Impala, come mostrato di seguito.

[quickstart.cloudera:21000] > version;
Shell version: Impala Shell v2.3.0-cdh5.5.0 (0c891d7) built on Mon Nov 9 
12:18:12 PST 2015

Server version: impalad version 2.3.0-cdh5.5.0 RELEASE (build 
0c891d79aa38f297d244855a32f1e17280e2129b)

comando storico

Il historycomando di Impala mostra gli ultimi 10 comandi eseguiti nella shell. Di seguito è riportato l'esempio dihistorycomando. Qui abbiamo eseguito 5 comandi, ovvero version, help, show, use e history.

[quickstart.cloudera:21000] > history;
[1]:version;
[2]:help;
[3]:show databases;
[4]:use my_db;
[5]:history;

comando quit / exit

Puoi uscire dal guscio Impala usando il quit o exit comando, come mostrato di seguito.

[quickstart.cloudera:21000] > exit; 
Goodbye cloudera

comando di connessione

Il connectcomando viene utilizzato per connettersi a una determinata istanza di Impala. Nel caso in cui non specifichi alcuna istanza, si connette alla porta predefinita21000 come mostrato di seguito.

[quickstart.cloudera:21000] > connect; 
Connected to quickstart.cloudera:21000 
Server version: impalad version 2.3.0-cdh5.5.0 RELEASE (build 
0c891d79aa38f297d244855a32f1e17280e2129b)

Opzioni specifiche della query Impala

I comandi specifici della query di Impala accettano una query. Sono spiegati di seguito:

Spiegare

Il explain restituisce il piano di esecuzione per la query data.

[quickstart.cloudera:21000] > explain select * from sample;
Query: explain select * from sample
+------------------------------------------------------------------------------------+ 
| Explain String                                                                     | 
+------------------------------------------------------------------------------------+ 
| Estimated Per-Host Requirements: Memory = 48.00MB VCores = 1                       | 
| WARNING: The following tables are missing relevant table and/or column statistics. |
| my_db.customers                                                                    | 
| 01:EXCHANGE [UNPARTITIONED]                                                        | 
| 00:SCAN HDFS [my_db.customers]                                                     | 
| partitions = 1/1 files = 6 size = 148B                                             | 
+------------------------------------------------------------------------------------+ 
Fetched 7 row(s) in 0.17s

Profilo

Il profileIl comando visualizza le informazioni di basso livello sulla query recente. Questo comando viene utilizzato per la diagnosi e l'ottimizzazione delle prestazioni di una query. Di seguito è riportato l'esempio di un fileprofilecomando. In questo scenario, ilprofile restituisce le informazioni di basso livello di explain query.

[quickstart.cloudera:21000] > profile;

Query Runtime Profile: 
Query (id=164b1294a1049189:a67598a6699e3ab6): 

   Summary: 
      Session ID: e74927207cd752b5:65ca61e630ad3ad
      Session Type: BEESWAX 
      Start Time: 2016-04-17 23:49:26.08148000 End Time: 2016-04-17 23:49:26.2404000 
      Query Type: EXPLAIN 
      Query State: FINISHED 
      Query Status: OK 
      Impala Version: impalad version 2.3.0-cdh5.5.0 RELEASE (build 0c891d77280e2129b) 
      User: cloudera 
      Connected User: cloudera 
      Delegated User: 
      Network Address:10.0.2.15:43870 
      Default Db: my_db 
      Sql Statement: explain select * from sample 
      Coordinator: quickstart.cloudera:22000 
      : 0ns 
      Query Timeline: 167.304ms 
         - Start execution: 41.292us (41.292us) - Planning finished: 56.42ms (56.386ms) 
         - Rows available: 58.247ms (1.819ms) 
         - First row fetched: 160.72ms (101.824ms) 
         - Unregister query: 166.325ms (6.253ms)
         
   ImpalaServer: 
      - ClientFetchWaitTimer: 107.969ms 
      - RowMaterializationTimer: 0ns

Opzioni specifiche per tabelle e database

La tabella seguente elenca la tabella e le opzioni specifiche dei dati in Impala.

Suor n Comando e spiegazione
1

Alter

Il alter comando viene utilizzato per modificare la struttura e il nome di una tabella in Impala.

2

Describe

Il describeil comando di Impala fornisce i metadati di una tabella. Contiene le informazioni come le colonne e i loro tipi di dati. Ildescribe comando ha desc come scorciatoia.

3

Drop

Il drop comando viene utilizzato per rimuovere un costrutto da Impala, dove un costrutto può essere una tabella, una vista o una funzione di database.

4

insert

Il insert il comando di Impala è abituato,

  • Aggiungi dati (colonne) in una tabella.
  • Sostituisci i dati di una tabella esistente.
  • Sostituisci i dati di una tabella esistente.
5

select

Il selectviene utilizzata per eseguire un'operazione desiderata su un particolare set di dati. Specifica il set di dati su cui completare alcune azioni. È possibile stampare o memorizzare (in un file) il risultato dell'istruzione select.

6

show

Il show L'istruzione di Impala viene utilizzata per visualizzare il metastore di vari costrutti come tabelle, database e tabelle.

7

use

Il use L'istruzione di Impala viene utilizzata per modificare il contesto corrente nel database desiderato.