У меня есть код matlab, который обрабатывает изображения. Я хочу создать сопоставитель Hadoop, который использует этот код. Я наткнулся на следующие решения, но не уверены, какой из них лучше (как это очень трудно установить MatLab выполнения компилятор на каждого подчиненного узла в Hadoop для меня):Как использовать код MATLAB в mapper (Hadoop)?
вручную преобразовать этот код MatLab в OpenCV в C++ и вызвать его exe/dll (и предоставить ему соответствующие параметры) из устройства отображения. Не уверен, поскольку в кластере Linux установлен на каждом узле, а не на Windows.
Использование Hadoop Streaming. Но для потоковой передачи Hadoop требуется исполняемый файл в качестве обработчика, а для исполняемого файла Matlab также требуется время выполнения Matlab Compiler Runtime, которое очень сложно установить на каждом подчиненном узле.
Преобразуйте его автоматически в код C/C++ и создайте его exe автоматически (не уверен, что это правильно, потому что либо exe потребует выполнения runtime matlab, либо могут возникнуть проблемы с компилятором при преобразовании, которые очень трудно исправить)
Использование Matlab Java Builder. Но созданный таким образом файл jar потребует времени выполнения.
Любые предложения?
Заранее спасибо.
Великий предложение! Я попробую это. – Harsh
Но я думаю, что мне нужно установить октаву в каждом рабочем узле кластера hadoop для этого, верно? Разве нет способа создать файл .out из октавного кода? Это было бы очень полезно .. – Harsh
Да, это будет так: -/В настоящий момент невозможно скомпилировать Octave или даже транслитерировать октавный код на что-то исполняемое. См. [This] (http://stackoverflow.com/questions/5101219/how-do-i-convert-octave-code-to-c-or-c) и [это] (http: //octave.1599824 .n4.nabble.com/octave-to-independent-C-code-td1630298.html) (я не продолжил второй в течение длительного времени). Вам нужен какой-то контроль над вашими работниками ... Может быть, администраторы вашего сервиса могут помочь получить наиболее жизнеспособные из вышеперечисленных вариантов работы (?). –