Это не так легко ответить, потому что ограничения довольно специализированы.
Могут быть сделаны следующие соображения:
- BIGQuery еще не опубликован. Таким образом, при небольшой базе использования, даже если вы находитесь в группе предварительного просмотра, вам будет сложнее получить совет по улучшению.
- Каждый из ваших ответов спрашивал о системе моделирования и системе хранения. Apache Mahout не является механизмом хранения, поэтому он не обязательно будет работать сам по себе. Раньше я считал, что его реализации машинного обучения были подделкой нескольких Google Summer of Code, но я обновил эту точку зрения по предложению комментатора. Похоже, что он имеет довольно неравномерный и точный охват различных алгоритмов, и не очень понятно, как компоненты поддерживаются или поддерживаются. Я побуждаю евангелиста Махута заняться этим.
В результате этого исключаются 1-й, 2-й и 4-й варианты.
Что я не совсем понимаю, так это потребность в сервере реального времени для использования Hadoop и RHIPE. Это следует делать в пакетной обработке для разработки моделей рекомендаций, а не в режиме реального времени. Я полагаю, вы могли бы использовать RHIPE как простой универсальный интерфейс для запуска запросов.
Я бы рекомендовал использовать RApache вместо RHIPE, потому что вы можете предварительно загрузить свои пакеты и модели. Я не вижу никакого преимущества в использовании Hadoop в передней части, но это была бы очень естественная внутренняя система для подгонки модели.
(Обновление 1) Другие опции интерфейса включают RServe (http://www.rforge.net/Rserve/) и, возможно, RStudio в режиме сервера. Существуют интерфейсы R / PHP (см. Комментарии ниже), но я подозреваю, что было бы лучше получить доступ к R через HTTP или TCP / IP.
(Обновление 2) Обращаясь ко всему процессу, основная идея, которую я вижу, состоит в том, что вы можете запросить данные из PHP и перейти к R или, если вы хотите сделать запрос изнутри R, посмотреть ссылку в комментариях (чтобы инструменты OmegaHat) или опубликуйте новый вопрос о R & SimpleDB - я уверен, что кто-то еще на SO сможет лучше понять эту конкретную связь. RApache позволит вам создать множество процессов R, уже подготовленных с загруженными пакетами и данными в ОЗУ; таким образом, вам нужно будет передать только те данные, которые необходимо использовать для прогнозирования. Если ваши новые данные представляют собой небольшой вектор, то с RApache все должно быть в порядке, и, похоже, это правильно для данных, обрабатываемых в режиме реального времени.