Este FAQ aborda problemas comuns e tarefas de configuração do Alluxio no E-MapReduce (EMR).
Por que a mensagem "No FileSystem for scheme: alluxio" é exibida?
Como acelerar o acesso a dados do OSS com o cache do Alluxio?
Por que a mensagem "No FileSystem for scheme: alluxio" é exibida?
Esse erro ocorre ao adicionar o Alluxio a um cluster EMR existente sem reiniciar o serviço em seguida. Reinicie o Alluxio para carregar as configurações do Hadoop.
Após adicionar o Alluxio, reinicie o serviço. Consulte Reiniciar um serviço.
Esse erro não ocorre se você selecione o Alluxio entre os serviços opcionais durante a criação do cluster.
Por que o Alluxio não funciona conforme o esperado?
Identifique o nó com problema e verifique o log do serviço Alluxio nesse nó. Geralmente, o log está em /mnt/disk1/log/alluxio/.
Como acelerar o acesso a dados do OSS com o cache do Alluxio?
Por padrão, o HDFS atua como Under File System (UFS) do Alluxio no EMR. Para armazenar dados do OSS em cache, monte um diretório do OSS como ponto de montagem:
alluxio fs mount --option fs.oss.accessKeyId=<OSS_ACCESS_KEY_ID> \
--option fs.oss.accessKeySecret=<OSS_ACCESS_KEY_SECRET> \
--option fs.oss.endpoint=<OSS_ENDPOINT> \
/oss_dir <path>/
|
Espaço reservado |
Descrição |
|
|
AccessKey ID da sua conta Alibaba Cloud. Obtenha-o no console de gerenciamento de AccessKey. |
|
|
AccessKey secret da sua conta Alibaba Cloud. |
|
|
Endpoint do OSS no formato |
|
|
Caminho do OSS no formato |
Como modifique parâmetros do Alluxio?
Há duas abordagens: configuração global pelo console do EMR ou configuração dinâmica em tempo de execução.
Configuração global
Acesse a página do serviço Alluxio no console do EMR e modifique os parâmetros. As alterações exigem reinicialização do serviço para entrar em vigor. Para mais detalhes, consulte Gerencie parâmetros de serviços.
Configuração dinâmica
Passe parâmetros em tempo de execução usando o formato -Dproperty=value. Os exemplos abaixo defina o tipo de gravação como CACHE_THROUGH.
Shell do Alluxio
Adicione flags -Dproperty=value diretamente ao comando:
alluxio fs copyFromLocal hello.txt /dir/tmp -Dalluxio.user.file.writetype.default=CACHE_THROUGH
O arquivo local é hello.txt e o diretório de destino no Alluxio é /dir/tmp. Para outros comandos disponíveis, consulte Comandos comuns.
Jobs do Spark
Inclua a flag -Dproperty=value em spark.driver.extraJavaOptions e spark.executor.extraJavaOptions:
spark-submit \
--conf 'spark.driver.extraJavaOptions=-Dalluxio.user.file.writetype.default=CACHE_THROUGH' \
--conf 'spark.executor.extraJavaOptions=-Dalluxio.user.file.writetype.default=CACHE_THROUGH'
Jobs do MapReduce
Acrescente a flag -Dproperty=value ao comando hadoop jar ou yarn jar:
hadoop jar <HADOOP_HOME>/share/hadoop/mapreduce/hadoop-mapreduce-examples-x.x.x.jar wordcount \
-Dalluxio.user.file.writetype.default=CACHE_THROUGH \
-libjars /<PATH_TO_ALLUXIO>/client/alluxio-x.x.x.-client.jar \
<path1> <path2>
O caminho de entrada corresponde a <path1> e o de saída a <path2>. A versão do pacote JAR é representada por x.x.x.