2013-08-26 2 views
0

Я пытаюсь создать простую карту/редуктор работу для hdinsight, но у меня возникли проблемы с подключением работы в локальном hdinsight Hadoop кластера на локальный эмулятор хранения лазури через ASV: //Как установить пути ввода/вывода HDInsight, чтобы указать на Azure Storage Vault (ASV) в локальном хранилище?

Пример код, как это:

var hadoop = Hadoop.Connect(); 
HadoopJobConfiguration config = new HadoopJobConfiguration(); 
config.InputPath = @"asv://127.0.0.1:10000/devstoreaccount1/testcontainer/input"; 
config.OutputFolder = "asv://127.0.0.1:10000/devstoreaccount1/testcontainer/output"; 
hadoop.MapReduceJob.Execute<Mapper1>(config); 

или

var hadoop = Hadoop.Connect(); 
HadoopJobConfiguration config = new HadoopJobConfiguration(); 
config.InputPath = @"asv://testcontainer/input"; 
config.OutputFolder = "asv://testcontainer/output"; 
hadoop.MapReduceJob.Execute<Mapper1>(config); 

где testcontainer является существующий контейнер в б локального эмулятора хранилище. При выполнении этого кода я получаю StreamingException"Процесс потерпел неудачу ('Streaming Работа Failed!')"

И увидеть следующую ошибку в консоли вывода:

packageJobJar: [] [/C:/Hadoop/hadoop-1.1.0-SNAPSHOT/lib/hadoop-streaming.jar] C: \Users\user1\AppData\Local\Temp\1\streamjob6525516867576872971.jar tmpDir=null 
13/08/26 12:30:51 INFO util.NativeCodeLoader: Loaded the native-hadoop library 
13/08/26 12:30:51 WARN snappy.LoadSnappy: Snappy native library not loaded 
13/08/26 12:30:51 INFO mapred.JobClient: Cleaning up the staging area hdfs://loc alhost:8020/hadoop/hdfs/tmp/mapred/staging/user1/.staging/job_201308221229_0010 
13/08/26 12:30:51 ERROR security.UserGroupInformation: PriviledgedActionExceptio n as:user1 cause:org.apache.hadoop.mapred.InvalidInputException: Input path does not exist: hdfs:/devstoreaccount1/testcontainer/input 
13/08/26 12:30:51 ERROR streaming.StreamJob: Error Launching job : Input path do es not exist: hdfs:/devstoreaccount1/testcontainer/input 

Streaming Command Failed! 

Любые намеки?

ответ

0

Вы можете использовать один из следующих путей для доступа к локальному эмулятору хранилища.

wasb: // testcontainer @ storageemulator/вход

wasb: /// вход (при хранении эмулятор устанавливается как по умолчанию файловая система)

ASV: /// вход (при хранении эмулятор в качестве файловой системы по умолчанию, asv устарел, не рекомендуется)