Индустрия

Возможности CrateDB в режиме реального времени в чувствительных к времени условиях

Возможности CrateDB в режиме реального времени в чувствительных к времени условиях

Несмотря на то, что за последние 20 лет скорость и мощность современных компьютеров значительно возросли, зачастую все еще существует заметная временная задержка между получением данных и возможностью действовать в соответствии с результатами их обработки и запросов.

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

Например, один из основных секторов, в котором работает CrateDB, - это производство. Здесь датчики IIoT на быстро движущемся оборудовании сообщают данные в режиме реального времени. Скорость получения, обработки и ослабления воздействия устройств - вот лишь один пример - имеет решающее значение. Аналогичные возможности необходимы для геопространственных приложений и некоторых функций финансовой обработки.

Мы поговорили с руководителем отдела по работе с разработчиками CrateDB Саймоном Прикеттом о платформе и некоторых ее уникальных возможностях.

«Мы хорошо подходим для минимизации задержки между получением информации и ее предоставлением для запросов», - сказал он. «Если вы получаете данные, ставите их в очередь и обрабатываете только спустя какое-то время, то время на то, чтобы понять, что, скажем, ваша конвейерная лента, работавшая круглосуточно [...], начинает слишком нагреваться, значительно увеличивается. Поэтому мы оптимизируем нагрузку на одновременное чтение и запись».

«У нее невероятно высокая скорость поступления данных. Для этого мы используем кластер. Кластер сам решает, что ему нужно делать, и вы можете добавлять в кластер новые узлы и увеличивать его масштаб. Поэтому мы говорим, что это аналитическая база данных реального времени».

Гибкость возможностей ввода и доступной вычислительной мощности дает пользователям CrateDB возможность увеличивать или уменьшать мощность операций с данными, но есть и дополнительные возможности расширения в плане ввода данных.

«У вас может быть что-то структурированное, например реляционная таблица, как в Postgres, где вы можете описать схему и поля, [данные] имеют типы, и все это довольно фиксировано. Или у вас может быть что-то полуструктурированное, как, скажем, JSON-документ, у которого есть номинальная схема, но ничто не обеспечивает ее соблюдение. А может быть что-то совершенно неструктурированное, например, двоичные или векторные данные. CrateDB - это одно место, где можно разместить все эти вещи».

CrateDB может заменить несколько экземпляров баз данных благодаря своей изменяемости, а также благодаря тому, что она может работать с новыми источниками данных. «Пользователь может описать схему таблицы для того, о чем вы знаете сейчас, а затем, если вы поместите туда записи, которые не соответствуют этой схеме, вы можете заставить базу данных автоматически расширить схему и начать индексировать все немедленно», - говорит Саймон.

«Либо хранить все и индексировать, либо индексировать только описанную часть схемы. Или вы можете заставить CrateDB отклонять записи, которые строго не соответствуют схеме, как это сделала бы традиционная база данных. [...] Если вы хотите, чтобы все было динамическим, оно может быть динамическим, но на уровне таблиц и полей вы также можете заблокировать его или индексировать только части».

Индексирование сопряжено с некоторыми накладными расходами, в основном связанными с хранением данных, но в производственных контекстах (например, при проверке финансовых транзакций в реальном времени или мониторинге быстро движущейся производственной линии) они незначительны.

«Мы считаем, что преимущества заключаются в гибкости запросов и снижении стоимости операций. Вам не нужно просить DBA добавить индекс к чему-то после того, как кто-то замедлил работу вашей базы данных, выполнив сложный запрос. [Замедления] не произошло», - говорит он.

Внедрение CrateDB в существующие среды упрощается, поскольку она совместима с Postgres wire. Есть вероятность, что существующие сотрудники смогут быстро освоиться, а для тех, кому нужна помощь, CrateDB работает по привычной бизнес-модели с открытым исходным кодом и платной поддержкой.

CrateDB обычно устанавливается вместе с другими технологиями баз данных и часто работает либо локально, либо в гибридной топологии, либо там, где любое решение должно продолжать работать даже при сбоях в работе Интернета или при разрыве соединения с облачными сервисами.

«Сможет ли CrateDB заменить существующую базу данных системы рекордов? Почти наверняка нет. [...] Будете ли вы использовать ее в качестве дополнения к чему-то другому, чтобы иметь возможность делать специализированные, новые и разные вещи? Да, безусловно».

Вы можете узнать больше о CrateDB здесь, а мы рекомендуем найти Саймона Прикетта [GitHub] или связаться с одним из членов команды по продвижению, чтобы обсудить технологию более подробно.

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

Читайте также