Помню лет 15 назад на хабре была статья (
нашёл. 9 лет) про то как чувак с помощью грепа, awk и немного консольной магии написал подсчет аналитики в 250 раз быстрее чем это делает кластер хадупа. Понятно что случай вырожденый и бла-бла-бла, но сам факт.
Эта статья довольно сильно повлияла на меня как специалиста. Более сложные инструменты, ориентированные на обработку больших данных имеют оверхед, а затраты на обучение как их использовать оптимально часто превосходят любые экономии на времени выполнения. Так что если можешь просто побегать по массивам в памяти, то вероятно лучше так и сделать.
Потом была
ещё статья о том что даже если у тебя реально большие данные то часто научиться правильно их готовить для больших систем аналитических оказывается очень сложно и старый добрый awk все равно зарулит.
А теперь я вот столкнулся с ситуацией когда мне самому надо проектировать решения, которые на одну машину не влезают. Точнее как. Вполне себе влезают. Сейчас можно арендовать сервер на 48 ядер, 2 терабайта оперативки и 20 TB nvme ssd за $2000 баксов в месяц - пол базы просто влезет в память. Даже с оптимистичными темпампи роста это хватит на несколько лет. Это даже будет дешевле (причем ощутимо), чем разбивать на много серверов.
Проблема в том, что это становится плохо операбельно. Сложно найти железо, новое железо можно ждать несколько дней, новая копия наливается долго и квант масштабирования становится очень большим. По этому волей не волей начинаешь смотреть в сторону трино и аналогов (слава богу хадуп мертв).
Но там возникают другие проблемы. Во-первых это всё конструкторы из кучи частей с миллионом ручек, которые чтоб админить надо штат инжереров увеличивать или брать хостед версии которые внезапно еще больше увеличат стоимость. Во-вторых мне не нравится технологии на которых всё это собрано. В качестве стораджа у тебя будут или s3 или hdfs (оба хуже). Весь софт написан на джаве, а это значит (обычно) дикое потребление ресурсов (с другой стороны типовые машины доступные в большинстве хостингов имеют баланс cpu-память-диск такой что если не брать тяжелое говно то цпу будет простаивать при полных дисках). Модель контроля доступа или отсуствует или кроваво-энтерпрайзно что-то.
Вот и вроде хочешь простоты в одном месте а сложность вылезает в другом месте. Вот и оттягиваешь момент перехода на что-то типа трино до последнего.