Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Utilizzo di Hive Live Long and Process (LLAP)
Amazon EMR 6.0.0 supporta la funzionalità Live Long and Process (LLAP) per Hive. LLAP utilizza daemon persistenti con memorizzazione nella cache intelligente in memoria per migliorare le prestazioni delle query rispetto alla precedente modalità di esecuzione predefinita del container Tez.
I demoni LLAP Hive sono gestiti ed eseguiti come servizio YARN. Poiché un servizio YARN può essere considerato un'applicazione YARN a esecuzione prolungata, alcune risorse del cluster sono dedicate a Hive LLAP e non possono essere utilizzate per altri carichi di lavoro. Per ulteriori informazioni, vedere LLAP
Abilitazione di Hive LLAP su Amazon EMR
Per abilitare Hive LLAP su Amazon EMR, occorre fornire la seguente configurazione quando si avvia un cluster.
[
{
"Classification": "hive",
"Properties": {
"hive.llap.enabled": "true"
}
}
]
Per ulteriori informazioni, consulta Configurazione delle applicazioni.
Per impostazione predefinita, Amazon EMR assegna circa il 60% delle risorse YARN cluster ai daemon LLAP Hive. È possibile configurare la percentuale di risorsa YARN cluster allocata a Hive LLAP e il numero di nodi di attività e core da considerare per l'allocazione LLAP Hive.
Ad esempio, la seguente configurazione avvia Hive LLAP con tre demoni su tre nodi task o core e assegna il 40% della risorsa YARN dei tre nodi core o task ai demoni LLAP Hive.
[
{
"Classification": "hive",
"Properties": {
"hive.llap.enabled": "true",
"hive.llap.percent-allocation": "0.4",
"hive.llap.num-instances": "3"
}
}
]
È possibile utilizzare le seguenti configurazioni hive-site
nell'API di classificazione per sovrascrivere le impostazioni di risorse LLAP predefinite.
Proprietà | Descrizione |
---|---|
hive.llap.daemon.yarn.container.mb | Dimensione totale del container del daemon LLAP (in MB) |
hive.llap.daemon.memory.per.instance.mb |
La memoria totale utilizzata dagli esecutori nel container daemon LLAP (in MB) |
hive.llap.io.memory.size |
Dimensione della cache per Input/Output LLAP |
hive.llap.daemon.num.executors |
Numero di esecutori per daemon LLAP |
Avvio manuale di Hive LLAP nel cluster
Tutte le dipendenze e le configurazioni utilizzate da LLAP vengono inserite nell'archivio tar LLAP come parte dello startup del cluster. Se LLAP è abilitato utilizzando "hive.llap.enabled": "true"
, si consiglia di utilizzare la riconfigurazione Amazon EMR per apportare modifiche alla configurazione LLAP.
In caso contrario, per eventuali modifiche manuali a hive-site.xml
, è necessario ricostruire l'archivio tar LLAP utilizzando il comando hive --service llap
, come illustrato nell'esempio seguente.
# Define how many resources you want to allocate to Hive LLAP
LLAP_INSTANCES=<how many llap daemons to run on cluster>
LLAP_SIZE=<total container size per llap daemon>
LLAP_EXECUTORS=<number of executors per daemon>
LLAP_XMX=<Memory used by executors>
LLAP_CACHE=<Max cache size for IO allocator>
yarn app -enableFastLaunch
hive --service llap \
--instances $LLAP_INSTANCES \
--size ${LLAP_SIZE}m \
--executors $LLAP_EXECUTORS \
--xmx ${LLAP_XMX}m \
--cache ${LLAP_CACHE}m \
--name llap0 \
--auxhbase=false \
--startImmediately
Controllo dello stato di Hive LLAP
Utilizzare il comando seguente per verificare lo stato di Hive LLAP tramite Hive.
hive --service llapstatus
Utilizzare il seguente comando per verificare lo stato di Hive LLAP utilizzando YARN.
yarn app -status (name-of-llap-service)
# example:
yarn app -status llap0 | jq
Avvio o arresto di Hive LLAP
Poiché Hive LLAP viene eseguito come servizio YARN persistente, per arrestare o riavviare Hive LLAP occorre arrestare o riavviare il servizio YARN. I comandi seguenti illustrano come funziona.
yarn app -stop llap0
yarn app -start llap0
Ridimensionamento del numero di daemon di Hive LLAP
Utilizzare il comando seguente per ridurre il numero di istanze LLAP.
yarn app -flex llap0 -component llap -1
Per ulteriori informazioni, vedere Flex di un componente di un servizio