AWS или сильный сервер для вычислений с помощью Spark?
Здравствуйте у меня будет возможно немного абстрактный или холиварный вопрос.
Дело в том, что есть идея попробовать разработать сервис, который будет анализировать данные. Соответственно в голове крутится постоянный вопрос, как сие дело организовать.
Приблизительная суть такова, приходит пользователь, вводит данные, и гвоорит посчитай мне. В итоге расчеты без БигДейта могут занимать определенное время, поэтому хочется как можно быстрее посчитать и дать пользователю результат.
Поэтому если выбирать AWS, как считать биллинг для каждого пользователя, динамически увеличивать ресурсы по надобности из веб интерфейса и так д.. Это все возможно? Насколько тяжело?
Или для начала будет норм, если взять серьезный сервер в аренду? Например с 32-64 Гб оперативки и платить каждый месяц определенную цену.
Сергей Горностаев: Интересное заявление. Тогда имеет смысл не парится на счет кластера, а запустить Spark в как сингл кластер? Дело в том, что все алгоритмы будут написаны на спарке, так как он предлагает для этого соотв функционалитет. Тоисть вы считаете, что в данном случае, для старта и начала, лучше взять один мощный сервер и там все разворачивать, а когда прижмет, то переезжать?
Спасибо за ответ.
если речь о спарке то логичней тогда уже смотреть на databricks cloud, ну или на гугл, у него как я понял в отличие от aws платить в плоть до секунд счетчик.
при наличии databricks брать одиночный сервер имхо вообще не имеет смысла
Triffids: Спасибо за ответ. Да, я смотрел в сторону databricks, но немного не пойму, почему нет смысла?
Например самая проста арифметика из databricks 0.2*24*30 = 144$ в месяц по самому минимальному тарифу. "r3.xlarge 30GB / 4 cores".
Смотрим например сюда. https://contabo.de/?show=server "64GB/6 cores" = 90$
web_dev: а что делать с голым сервером ? самому поднимать всю хадуповскую инфраструктуру ? потом ее мониторить, решать проблемы, нанимать админа ? думаю разница в $50 не стоит таких приключений.
у гугла мне кажется вообще можно платить лишь за потребленные секунды, но я не уверен, что там как-то можно спарк пристроить.
Triffids: Да, я согласен, это может быть немного накладно.
Но я немного не понимаю как databricks работает..
У меня есть SpringBoot приложение, которое состоит из 2 модулей, соответственно один модуль должен работать со спарком, другому модулю нужна БД и так д.. Ентерпрайз проект. Как я там это все настрою? Насколько я понимаю databricks дает только ресурсы, но не доступ к ssh консоли.
web_dev: датабрикс как я понимаю заточен на чтение с amazon s3 сториджа просто файликов, типа json или parquet, т.е. данные твоего клиента кладешь на s3 и просчитываешь датабриксом
если тебя нужны еще какие-то базы данных то судя по этому https://www.oreilly.com/ideas/spark-comparison-aws...
лучше смотреть что есть у гугла.
за одно нам расскажешь :)
датабрикс как я понимаю заточен на чтение с amazon s3 сториджа просто файликов, типа json или parquet, т.е. данные твоего клиента кладешь на s3 и просчитываешь датабриксом
- Вот-вот я так и подумал. Поэтому, если у меня приложение, которое работает с данными клиентов которые храняться в БД, то я думаю для начала Spark с standalone cluster mode на достаточно сильной машине имеет смысл. Не надо будет "всю хадуповскую инфраструктуру" настраивать, а попозже, если будет надобность, то уже и решать.
Интересная статья, но еще больше наводит на мысль, что при старте проекта, лучше одиночный сервер с докер контейнерами, которые потом легко можно развернуть в другом месте, чем трусится над облаком..
web_dev, что в итоге выбрали? У меня похожая задача только еще надо красивые отчеты из данных клиента строить, т.е. генерить из спарка графики/отчетность автоматом типа.
Жаба Кодер, Проект заглох. Но я окунулся в мир Kubernetes. Поднял кубернетес кластер. Недавно была даже конференция, кубернетес вcё больше будет поддерживать и интегрировать Спарк. И без того уже больше года существует такая поддержка..