Перейти к основному содержимому
Перейти к основному содержимому

Миграция из Rockset

Rockset — это база данных для аналитики в реальном времени, приобретенная OpenAI в июне 2024 года.
Пользователи имеют возможность до 30 сентября 2024 года, 17:00 PDT отключиться от сервиса.

Мы считаем, что ClickHouse Cloud станёт отличной альтернативой для пользователей Rockset, и в этом руководстве мы рассмотрим несколько моментов, которые следует учитывать при миграции из Rockset в ClickHouse.

Давайте начнём!

Немедленная помощь

Если вам нужна немедленная помощь, пожалуйста, свяжитесь с нами, заполнив эту форму, и с вами свяжется оператор!

ClickHouse против Rockset - Сравнение на высоком уровне

Начнем с краткого обзора сильных сторон ClickHouse и тех преимуществ, которые вы можете обнаружить по сравнению с Rockset.

ClickHouse сосредоточен на производительности в реальном времени и экономической эффективности благодаря подходу с предварительным определением схемы.
Хотя полуструктурированные данные поддерживаются, наша философия заключается в том, что пользователи должны сами определять, как структурировать свои данные для максимизации производительности и эффективности ресурсов.
Как результат применения данного подхода, в наших бенчмарках ClickHouse превосходит Rockset по масштабируемости, пропускной способности загрузки, производительности запросов и экономической эффективности.

Что касается интеграции с другими системами данных, ClickHouse обладает широкими возможностями, которые превосходят возможности Rockset.

Rockset и ClickHouse оба предлагают облачный продукт и сопутствующие услуги поддержки.
В отличие от Rockset, ClickHouse также имеет продукт с открытым исходным кодом и сообщество.
Исходный код ClickHouse можно найти на github.com/clickhouse/clickhouse, и на момент написания в проекте задействовано более 1,500 участников.
В ClickHouse Community Slack более 7,000 участников, которые делятся своим опытом и лучшими практиками, а также помогают друг другу с любыми возникшими проблемами.

Это руководство по миграции сосредоточено на миграции из Rockset в ClickHouse Cloud, но пользователи могут обратиться к остальной части нашей документации по возможностям с открытым исходным кодом.

Ключевые концепции Rockset

Начнем с рассмотрения ключевых концепций Rockset и объясним их эквиваленты (где они существуют) в ClickHouse Cloud.

Источники данных

Rockset и ClickHouse оба поддерживают загрузку данных из различных источников.

В Rockset вы создаете источник данных, а затем создаёте коллекцию на основе этого источника данных.
Существуют полностью управляемые интеграции для платформ потокового события, OLTP баз данных и облачного хранилища.

В ClickHouse Cloud эквивалентом полностью управляемых интеграций являются ClickPipes.
ClickPipes поддерживает непрерывную загрузку данных из платформ потокового события и облачного хранилища.
ClickPipes загружает данные в таблицы.

Трансформации при загрузке

Трансформации при загрузке в Rockset позволяют вам преобразовывать сырые данные, поступающие в Rockset, прежде чем они будут сохранены в коллекции.
ClickHouse Cloud делает то же самое с помощью ClickPipes, который использует функцию материализованных представлений ClickHouse для преобразования данных.

Коллекции

В Rockset вы выполняете запросы к коллекциям. В ClickHouse Cloud вы выполняете запросы к таблицам.
В обоих сервисах запросы выполняются с помощью SQL.
ClickHouse добавляет дополнительные функции к стандартным функциям SQL для того, чтобы предоставить вам больше возможностей для манипуляции и преобразования ваших данных.

Lambda-запросы

Rockset поддерживает lambda-запросы — именованные параметризованные запросы, хранящиеся в Rockset и которые могут быть выполнены из специальной конечной точки REST.
API-эндпоинты Query API ClickHouse Cloud предлагают аналогичную функциональность.

Представления

В Rockset вы можете создавать представления - виртуальные коллекции, определенные SQL-запросами.
ClickHouse Cloud поддерживает несколько типов представлений:

  • Обычные представления не хранят никаких данных. Они просто выполняют чтение из другой таблицы во время выполнения запроса.
  • Параметризованные представления похожи на обычные представления, но могут быть созданы с параметрами, разрешаемыми во время выполнения запроса.
  • Материализованные представления хранят данные, преобразованные соответствующим запросом SELECT. Они действуют как триггер, который срабатывает, когда новые данные добавляются к исходным данным, на которые они ссылаются.

Псевдонимы

Псевдонимы Rockset используются для ассоциации нескольких имен с коллекцией.
ClickHouse Cloud не поддерживает аналогичную функцию.

Рабочие пространства

Рабочие пространства Rockset являются контейнерами, которые содержат ресурсы (т.е. коллекции, lambda-запросы, представления и псевдонимы) и другие рабочие пространства.

В ClickHouse Cloud вы можете использовать различные службы для полной изоляции.
Вы также можете создавать базы данных для упрощения контроля доступа на основе ролей к различным таблицам/представлениям.

Учет проектирования

В этом разделе мы рассмотрим некоторые ключевые функции Rockset и узнаем, как справиться с ними при использовании ClickHouse Cloud.

Поддержка JSON

Rockset поддерживает расширенную версию формата JSON, которая позволяет использовать специфические для Rockset типы.

Существует несколько способов работы с JSON в ClickHouse:

  • Вывод JSON
  • Извлечение JSON во время выполнения запроса
  • Извлечение JSON во время его вставки

Чтобы понять наилучший подход для вашего случая, смотрите нашу документацию по JSON.

Кроме того, ClickHouse скоро получит тип данных для полуструктурированного столбца.
Этот новый тип должен предоставить пользователям ту гибкость, которую предлагает тип JSON в Rockset.

Rockset поддерживает полнотекстовый поиск с помощью функции SEARCH.
Хотя ClickHouse не является поисковой системой, он имеет различные функции для поиска в строках.
ClickHouse также поддерживает фильтры Блума, которые могут помочь во многих сценариях.

Rockset имеет индекс сходства, который может использоваться для индексации векторных представлений, используемых в приложениях для векторного поиска.

ClickHouse также может использоваться для векторного поиска, используя линейные сканирования:

ClickHouse также имеет индекс сходства векторного поиска, но этот подход в настоящее время находится в экспериментальной стадии и еще не совместим с новым анализатором запросов.

Загрузка данных из OLTP-баз данных

Управляемые интеграции Rockset поддерживают загрузку данных из OLTP-баз данных, таких как MongoDB и DynamoDB.

Если вы загружаете данные из DynamoDB, следуйте руководству по интеграции с DynamoDB здесь.

Разделение вычислений

Разделение вычислений — это архитектурный шаблон проектирования в системах аналитики в реальном времени, который позволяет справляться с резкими всплесками поступающих данных или запросов.
Предположим, что один компонент обрабатывает как загрузку, так и выполнение запросов.
В этом случае мы увидим, что задержка загрузки увеличивается, если происходит всплеск запросов, и задержка запросов увеличивается, если происходит всплеск данных для загрузки.

Разделение вычислений отделяет пути обработки загрузки данных и выполнения запросов, чтобы избежать этой проблемы, и эта функция была реализована в Rockset в марте 2023 года.

Эта функция в настоящее время реализуется в ClickHouse Cloud и находится на стадии близкой к частному предварительному просмотр. Пожалуйста, свяжитесь со службой поддержки, чтобы активировать её.

Услуги бесплатной миграции

Мы понимаем, что это трудное время для пользователей Rockset — никто не хочет перемещать производственную базу данных за такой короткий срок!

Если ClickHouse может стать хорошим решением для вас, мы предоставим бесплатные услуги миграции, чтобы облегчить переход.