Больше прагматических причин может также влиять на Ваш выбор лицензии - если Вы хотите пользоваться библиотекой GPL, необходимо использовать GPL сами, или если Вы предназначаете свое программное обеспечение, чтобы быть частью большего проекта тогда, необходимо посмотреть на их требования.
Я вижу здесь несколько ответов, которые в основном говорят: "Нет, вы не должны использовать Hadoop для моделирования, потому что он не был создан для моделирования". Я считаю, что это довольно недальновидный взгляд, и он сродни тому, как если бы в 1985 году кто-то сказал: "Вы не можете использовать ПК для работы с текстом, ПК предназначены для электронных таблиц!".
Hadoop - это фантастическая основа для создания механизма моделирования. Я использую его для этой цели уже несколько месяцев и добился большого успеха в решении проблем, связанных с небольшими данными и большими вычислениями. Вот 5 основных причин, по которым я перешел на Hadoop для моделирования (используя R в качестве языка для моделирования):
Hadoop can be made to perform your simulation if you already have a Hadoop cluster, but it's not the best tool for the kind of application you are describing. Hadoop is built to make working on big data possible, and you don't have big data -- you have big computation.
I like Gearman (http://gearman.org/) for this sort of thing.
Поскольку вы уже используете Java, я предлагаю взглянуть на GridGain , который, я думаю, особенно хорошо подходит для вашей проблемы.
Проще говоря, хотя Hadoop может решить вашу проблему здесь, это не тот инструмент для ваших целей.
Хотя вы могли бы обойтись с помощью MapReduce с Hadoop, похоже, что то, что вы делаете, лучше подходит для планировщика сетки / заданий, такого как Condor или Sun Grid Engine . Hadoop больше подходит для чего-то, где вы берете один (очень большой) ввод, разделяете его на части для обработки рабочими машинами, а затем уменьшаете его для получения вывода.