В динамичной среде анализа данных выбор аналитической платформы может существенно повлиять на прибыль вашего бизнеса. В этой образовательной статье мы пытаемся изучить трех серьезных конкурентов в области аналитики: Snowflake, BigQuery и ClickHouse. Мы углубимся в их модели затрат и раскроем ценные стратегии, которые помогут вам овладеть искусством экономически эффективной аналитики — это путешествие по изучению идей, которые могут изменить вашу игру с данными!
Чтобы принимать экономически эффективные решения в области анализа данных, крайне важно понимать модели затрат, лежащие в основе аналитических систем управления базами данных (СУБД). Обычной отправной точкой является изучение структуры затрат облачного бизнеса.
Итак, сначала давайте поговорим об облачных аналитических базах данных и о том, как они справляются с затратами при работе в облаке. Представьте себе: на дворе 2013 год, и создание хранилища данных может занять до нескольких месяцев работы с несколькими поставщиками, узкими местами в оборудовании и конфигурациями. Затем в 2013 году появился Amazon Redshift , который позволил вам создать хранилище данных менее чем за 20 минут с помощью кредитной карты — настоящий шаг вперед. Это открыло путь для других облачных хранилищ данных, таких как BigQuery , Snowflake и облачных сервисов, которые используют Snowflake.
Большинство разработчиков узнают о важности экономической эффективности, как только начинают получать счета за облако. Например, вы можете выполнить длительный запрос в BigQuery, который в конечном итоге будет стоить вам сотни, а часто и тысячи долларов. Возьмите это из следующего сообщения твита/X; это не единичный случай.
Недавно мы провели вебинар, на котором более подробно обсуждалась эта тема, где Роберт Ходжес (генеральный директор Altinity Inc.) подробно анализирует стоимость каждого варианта и в конце показывает альтернативное решение «сделай сам». Не стесняйтесь посмотреть запись этого вебинара по запросу, как только вы закончите читать эту статью!
Итак, давайте углубимся в то, как работают эти базы данных и, что более важно, как они оценивают свои услуги.
Мы начнем со Snowflake, но прежде чем перейдем к его архитектуре, поговорим о деле. Snowflake, будучи публичной компанией, дает нам возможность изучить ее финансовые показатели. Согласно недавнему отчету , общий доход компании составил колоссальные 2 миллиарда долларов. Что интригует, так это стоимость предоставления их услуг, составляющая примерно 717 миллионов долларов. Эта стоимость, также известная как стоимость проданных товаров, — это то, что нужно Снежинке, чтобы управлять всем.
Понимание стоимости эксплуатации облачных сервисов Snowflake похоже на поиск скрытых сокровищ. Если подсчитать, это примерно треть, а может и чуть больше, их общего дохода. Итак, говоря простым языком, если бы все эти затраты пошли непосредственно на покрытие расходов на облако и ничего больше, они бы увеличили наценку примерно в три раза, когда взимают с вас плату.
Но, конечно, все не так просто! Фактические затраты на эксплуатацию такой мощной системы, как Snowflake, выходят за рамки простого запуска виртуальных машин и хранения данных в Amazon S3. Теперь, если мы еще раз посчитаем, какая наценка на их затраты? Это больше похоже на 5х.
Это отличный ориентир, который можно носить в заднем кармане. Если на что-то наценка превышает 5 раз, что ж, в мире цен Snowflake это хорошо. С другой стороны, если оно меньше 5х, вы ищете более экономичный вариант. Это похоже на секретное кольцо-декодер для расшифровки ценовой головоломки.
Чтобы освоить экономичную аналитику, давайте проанализируем модели затрат Snowflake, BigQuery и ClickHouse.
Теперь давайте разберем затраты Снежинки. Они используют модель «виртуального хранилища данных», где ваши данные находятся в объектном хранилище S3. Когда вы выполняете запросы SQL, вы создаете виртуальные хранилища данных, работающие за счет кредитов, по сути, размещенные процессоры, извлекающие данные из хранилища. Цены на эти виртуальные машины варьируются от 2–4 долларов в час, как указано в их ценах. Имейте в виду: это не самый экономный выбор.
На этом наш анализ затрат Snowflake можно было бы завершить, если бы не этот интригующий поворот: недавняя ошибка в Snowflake показала, что кредиты на виртуальные хранилища данных часто переводятся на большие экземпляры c5d2x, стоящие около 38 центов в час. Примечательно, что Snowflake не делает существенной наценки на объектное хранилище, оценивая его в 23–40 долларов за терабайт в месяц, что аналогично стоимости S3 у Amazon. Вместо этого реальная наценка возникает в сфере вычислений, которые могут быть в 5–10 раз дороже, чем хранилище.
Давайте подробнее рассмотрим BigQuery, еще одного тяжеловеса в области аналитики облачных баз данных. BigQuery предлагает отдельную модель ценообразования, известную как «бессерверная» или «по требованию». В этой настройке вы храните свои данные в уникальной распределенной системе хранения, а не в обычном объектном хранилище, используемом большинством облачных сервисов. Тем не менее, цены вполне конкурентоспособны, как и тарифы на объектное хранилище, по крайней мере, для несжатых данных. Цены на хранилище начинаются от 0,016–0,023 доллара США за ГБ в месяц — теперь это более экономично.
Вот в чем загвоздка: когда вы запускаете запрос, BigQuery динамически распределяет вычислительные ресурсы по мере необходимости. Он взимает 6,25 доллара США за каждый терабайт данных, просканированных во время обработки запроса. Такая структура ценообразования означает, что даже, казалось бы, невинные запросы могут привести к увеличению затрат, если они предполагают сканирование большого объема данных из распределенного хранилища.
Теперь сравнить затраты BigQuery со стандартными облачными ресурсами непросто. Ваши фактические расходы зависят от различных факторов, таких как частота выполнения запросов и методы хранения данных. Например, если вы выполняете запросы время от времени, BigQuery может оказаться экономически эффективным. Но если вы выполняете запросы 24 часа в сутки, 7 дней в неделю, это может оказаться дорогостоящим. Поэтому очень важно понимать свою рабочую нагрузку и тщательно оценивать реальные затраты.
Предыдущие модели, которые мы обсуждали, обычно полагаются на объектное хранилище или что-то подобное для обработки данных. Однако существует еще один подход к работе с облачными базами данных, впервые представленный Redshift десять лет назад. Назовем это моделью «Купи коробку».
Вот в чем дело: вы арендуете виртуальную машину (VM ), например, dc28x big, к которой подключено блочное SSD-хранилище. Например, в Amazon us-west-2 эта виртуальная машина обойдется вам примерно в 4,80 цента в час. Теперь давайте разберем фактические затраты. Эта виртуальная машина, вероятно, соответствует большому экземпляру i38x, более старому типу экземпляра Amazon, который поставляется с локальным хранилищем SSD. Этот тип экземпляра стоит примерно 2,50 доллара в час и предлагает почти такой же объем оперативной памяти.
С точки зрения наценки Redshift на 92 % дороже, но при этом предоставляет на 66 % меньше места для хранения, чем если бы вы настраивали аналогичную виртуальную машину самостоятельно. Интересно, что наценка Redshift относительно ниже по сравнению с некоторыми другими сервисами, такими как Snowflake, которые, как правило, берут больше за вычислительные ресурсы.
Чтобы улучшить предыдущие модели с точки зрения экономической эффективности, позвольте нам сначала познакомить вас с ClickHouse. Это бесплатная, известная, аналитическая база данных с открытым исходным кодом, работающая в режиме реального времени. Архитектура ClickHouse основана на взаимосвязанных серверах, способных осуществлять беспрепятственную репликацию данных, особенно с реплицируемыми таблицами. В этой системе используется эффективное столбчатое хранилище, где данные хранятся в сжатых массивах, что не только снижает затраты на хранение, но и повышает производительность запросов.
Первоначально ClickHouse ограничивался блочным хранилищем, но теперь он поддерживает S3-совместимое объектное хранилище, что делает его универсальным и открытым для интеграции с любым решением объектного хранилища, оснащенным S3 API. Для эффективного управления консенсусом репликации ClickHouse использует либо ClickHouseKeeper, либо ZooKeeper.
Вы можете прочитать больше о Clickhouse
Теперь давайте представим себе это как парадигму облачных услуг, которую мы называем «модернизированной Buy-the-Box». Слева на изображении ниже — традиционная архитектура Redshift, а справа — инновации. Мы заменяем старые экземпляры i3 более быстрыми процессорами Intel m6is, что обеспечивает значительный прирост скорости. Революционным моментом является использование хранилища EBS (Elastic Block Storage) gp3, предоставляющего контроль над пропускной способностью и пропускной способностью. В сочетании с эффективными виртуальными машинами, такими как Redshift, это дает приблизительную стоимость 2,64 цента в час.
Настоящее волшебство происходит с разделением хранилища и вычислений. Этот гибкий подход позволяет легко настраивать типы ЦП и виртуальных машин, сохраняя при этом то же хранилище, что позволяет увеличивать или уменьшать затраты. Наш опыт управления приложениями ClickHouse в Altinity.Cloud отражает эту эффективность.
На графике ниже вы увидите общую стоимость услуги по требованию для
Подводя итог, мы исследовали три модели аналитических баз данных, размещенных в облаке, и их финансовые последствия. Для нашего сравнения мы создали таблицу размером с бумажник, чтобы прояснить, как эти модели соотносятся друг с другом.
Подход «Купи коробку» предлагает экономичные вычисления, но более дорогое хранилище из-за использования блочного хранилища. Snowflake и BigQuery, с другой стороны, предлагают экономичное хранилище, но могут быть дорогостоящими по разным причинам. Snowflake имеет тенденцию быть относительно дорогим с точки зрения вычислений, в то время как модель запросов BigQuery может стать дорогостоящей при обработке обширных сканирований данных. У каждой модели есть свои сильные и слабые стороны, поэтому важно согласовать их с вашими конкретными аналитическими потребностями. «Buy-the-Box» подходит для аналитики, ориентированной на клиентов, с непредсказуемыми рабочими нагрузками, в то время как модель виртуального хранилища данных и BigQuery превосходны в конкретных сценариях, но требуют тщательного управления затратами, чтобы избежать неожиданностей. Этот обзор поможет вам эффективно ориентироваться в ландшафте.
Когда дело доходит до аналитики, экономия имеет первостепенное значение. Понимание моделей затрат на популярных платформах, таких как Snowflake, BigQuery и ClickHouse, необходимо для принятия обоснованных решений. Оценивая сильные и слабые стороны каждой платформы и учитывая структуру затрат, организации могут разрабатывать экономически эффективные аналитические решения, адаптированные к их конкретным потребностям. Использование решений с открытым исходным кодом и образовательных ресурсов может еще больше оптимизировать затраты, гарантируя, что организации достигнут своих аналитических целей, не забывая при этом о своих бюджетах.
Эта статья была взята из вебинара Altinity.com .