Perché ricevo l'errore “Il token immesso non è corretto o valido” quando avvio un cluster Amazon EMR utilizzando Hive e Presto nella regione AWS Cina (Pechino)?

2 minuti di lettura
0

Ho lanciato un cluster Amazon EMR nella regione AWS Cina (Pechino) (cn-north-1). Ho usato Presto e Apache Hive per creare una tabella esterna a un bucket Amazon Simple Storage Service (Amazon S3). Quando eseguo una query della tabella utilizzando Hive e Presto, ricevo un errore simile al seguente: presto:default> select * from mydata; Query 20200912_072348_00009_qqx96, FAILED, 1 node Splits: 1 total, 0 done (0.00%) 0:03 [0 rows, 0B] [0 rows/s, 0B/s] Query 20200912_072348_00009_qqx96 failed: Il token fornito non è valido o non è valido in altro modo. (Service: Amazon S3; Status Code: 400; Error Code: InvalidToken; Request ID: 811359ED1D9F8250)

Breve descrizione

Nelle versioni precedenti di Amazon EMR, Presto non utilizza automaticamente la regione in cui si trova il bucket S3. Utilizza una delle seguenti opzioni per risolvere questo errore:

  • Esegui l'upgrade alla versione 5.12.0 o successiva di Amazon EMR.
  • Per utilizzare la versione 5.11.x o precedente di Amazon EMR, imposta la proprietà hive.s3.pin-client-to-current-region su true.

Risoluzione

Esegui l'upgrade alla versione 5.12.0 o successiva di Amazon EMR

Avvia un nuovo cluster e scegli la versione 5.12.0 o successiva di Amazon EMR. Per ulteriori informazioni, consulta Informazioni sulle versioni di Amazon EMR .

Imposta la proprietà hive.s3.pin-client-to-current-region su true (versione 5.11.x o precedente)

1.    Su ogni nodo, apri il file hive.properties, quindi imposta la proprietà hive.s3.pin-client-to-current-region su true. Esempio:

sudo vim /etc/presto/conf/catalog/hive.properties
hive.s3.connect-timeout=2m
hive.s3.max-backoff-time=10m
...
hive.s3.pin-client-to-current-region=true

2.    Riavvia Presto su ogni nodo:

sudo restart presto-server

3.    Per verificare che la nuova configurazione funzioni come previsto, eseguire una query su una tabella utilizzando Hive e Presto nella regione della Cina (Pechino).


Informazioni correlate

Apache Hive

Presto e Trino

AWS UFFICIALE
AWS UFFICIALEAggiornata 2 anni fa