Домашний сервер для аналитики и математических вычислений?

Доброго времени.

Имеется огромные базы данных, вес баз данных составляет от 50 ГБ до 1 ТБ, соответственно - данных миллионы. Необходимо проводить различные вычисления и их анализ, к примеру за раз получить 500 миллионов записей и работать с ними (подсчитывать различные данные в зависимости от параметров, записывать обработанные данные и возможно работать ещё и с ними).

Всё это кушает очень много ОЗУ и ресурсов диска (SSD), что на рабочем ПК довольно проблемно (32 ГБ, постоянно занята на 100% и образуется огромный файл подкачки), процессор обычно сильно не нагружен (i9-10900 нагружается максимум на 15%).

Исходя из данных проблем задумался о покупке домашнего сервера о котором думал и ранее для различных файлов, локального web-сервера и git-хранилища, соответственно и под данные вычисления, которые не будут загружать рабочий ПК и в момент обработки данных можно будет спокойно им пользоваться.

Для примера. Работа с базой данных весом 300 ГБ занимает ~трое суток обработки и сохранения данных.

Далее по теме сервера: есть ли смысл в покупке бюджетного Б\У сервера под конкретные задачи? Будет ли это производительнее, чем моя текущая конфигурация? Присматриваюсь к вторичке (ddr3 вместо ddr4, но при этом большой объем 64GB+, рейд из пары SSD), какой нибудь материнке и процессору Xeon с Ali (так как бюджет довольно ограничен).

Хотел бы услышать тех людей, которые занимались подобными сборками, имеет ли это вообще смысл?
Будут ли это производительнее для моих задач?
  • Вопрос задан
  • 416 просмотров
Пригласить эксперта
Ответы на вопрос 8
CityCat4
@CityCat4
Внимание! Изменился адрес почты!
По поводу содержания сервера дома я еще три года назад писал такой ответ. С тех пор ничего не поменялось.

Берете бу сервер в конторах, которые торгуют списанным (ну как списанным - снятым с гарантии после того как пять лет отходили) серверным оборудованием - несмотря на то, что оно как бы списано, оно еще пахать будет и пахать. Берете к нему рейд-контроллер если надо и винты (винты у них могут довольно дорогими оказаться). Ставите, что надо и вуаля.

Вот контора, где я себе брал, но разумеется можно и другие найти. Серверный проц без серверной памяти - это просто понты типа прямотока, который ставят себе "чоткие пасаны".
Ответ написан
Комментировать
@rPman
Вопрос номер один - критично ли для твоей задачи наличие ecc памяти? Это определит, можешь ли ты получить ответ с ошибкой? можешь ли ты его проверить?

Вопрос номер два, может ли твоя задача быть оптимизирована использование многопоточности, т.е. сможешь ли ты решить ее с помощью GPU?

Если что современные десктопные процессоры просто замечательные, какой-нибудь intel 12600 и оперативку на 64гб по деньгам будет очень даже нормально, и при этом с гарантией... а новый lga1700 позволит некоторую свободу в апгрейдах (правда зная интель - не долго), хочешь можешь amd ryzen прикупить, чуть дешевле и чуть медленее.

p.s. вопрос номер три 500 миллионов записей обычно влезают в оперативку (хеши и индексы), зачем насиловать базы данных? (это сарказм, в реалиях все от задачи конечно зависит, но когда данных много с вероятностью в 90% нужна агрегация)
Всё это кушает очень много ОЗУ и ресурсов диска (SSD), что на рабочем ПК довольно проблемно (32 ГБ, постоянно занята на 100% и образуется огромный файл подкачки), процессор обычно сильно не нагружен (i9-10900 нагружается максимум на 15%).
скорее всего алгоритм обработки этих данных очень не эффективный, в первую очередь орекомендую решить это проблему а не искать решение в железе, прошли времена, когда апгрейд повышает скорость в несколько раз.
i9-10900 ... 32Гб озу
нормальная у тебя машина, добавить оперативки и радоваться
сервера это не про производительность, это про надежность и многопоточность (бывают задачи, когда много медленных процессоров выгоднее и удобнее чем мало быстрых)
Ответ написан
nava2002
@nava2002
Инженер
Задача специфическая.
"Сервер" - узко специализированное устройство. Его задача быстро получать и обрабатывать сетевые запросы.
Я думаю, что в данной ситуации речь идет о "Специализированном" компьютере для решения вашей задачи, вероятно с использованием серверной материнки и установке на этот компьютер вашего специфического ПО.
Ответ написан
Комментировать
@Drno
Врятли «сепвер» будет быстрее

Вам надо - максимум оперативки взять+ Raid 1 а лучше raid10 из ssd

Либо ssd nvme
Ответ написан
Комментировать
mayton2019
@mayton2019
Bigdata Engineer
Всё это кушает очень много ОЗУ и ресурсов диска (SSD), что на рабочем ПК довольно проблемно (32 ГБ, постоянно занята на 100% и образуется огромный файл подкачки), процессор обычно сильно не нагружен (i9-10900 нагружается максимум на 15%).

С большой вероятностью новый сервер который стоит миллион денег также скушает все ваше ОЗУ.
Потому что нет оснований не скушать. Лимиты на использование в ОЗУ зашиваются в программное обеспечение.
Следовательно даже на 32 и на 16 Г вашу задачу можно решать.

Если она нерешаема - то интересно почему. Что за алгоритм? Может язык и виртуальная машина неоптимальны? Python например. Тот никогда не хвастался экономией памяти.
Ответ написан
VoidVolker
@VoidVolker
Dark side eye. А у нас печеньки! А у вас?
Имеется огромные базы данных, вес баз данных составляет от 50 ГБ до 1 ТБ

i9-10900 нагружается максимум на 15%

В таком случае, имеет смысл использовать конфигурацию с оптимизацией по памяти: много памяти, далее кэш из SSD в рейде, младший или средний процессор. В идеале - 1ТБ памяти и более, чтобы БД влезла целиком плюс результаты. Хорошим вариантом будет аренда сервера. Хотя бы для проверки конкретной конфигурации. Если бюджет не позволяет - то, тут по советам CityCat4 брать б/у сервер с кучей оперативки и ссд.
Следующий шаг - оптимизация ПО и алгоритмов под железо, чтобы оно могло более эффективно использовать ОЗУ, ССД кэш и основное хранилище, а не надеяться на ОС.
Ответ написан
Комментировать
@kalsc12345
Неизвестный человек.
64 гб RAM мало как-то с запасом берите всегда 128 gb RAM оптимальное решение и про процессор с ALI Взять Xeon такое себе чудеса они не гарантируют ваш безперебойку БУ же, Рекомендую взять под игровую процессор и охлаждение нормальную.
Ответ написан
@Catt96
курить люблю пипец...
Тут можно посоветовать двухголового монстра хуанана. Серверное железо за низкие деньги)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы