Открыть сервис

MarkLogic

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

MarkLogic — это многомодельная система управления базами данных (СУБД) и платформа для интеграции данных, разработанная одноимённой американской компанией. Основное назначение MarkLogic заключается в обработке и индексировании неструктурированных, полуструктурированных и структурированных данных в масштабах предприятия, обеспечивая возможности для построения операционных data-хабов (over-data-hub — операционный узел данных) и систем управления мастер-данными (MDM — Master Data Management). Система позиционируется для задач, требующих консолидации больших объёмов разнородной информации из множества источников с сохранением полного контекста (так называемый подход «сохранить всё»).

История

Компания MarkLogic (изначально — Cerisent) была основана в 2001 году Кристофером Линдблом, Полом Хипом и другими разработчиками, ранее работавшими над системой для полнотекстового поиска. Первая коммерческая версия продукта была выпущена в 2003 году. Изначально база данных позиционировалась как «XML-база данных с поддержкой XQuery» — языка запросов к XML-документам.

Ключевыми ранними заказчиками выступили правительственные и разведывательные службы США, которым требовалась система, способная индексировать гигантские объёмы текстовой и документированной информации, сохраняя связи между сущностями. Впоследствии сфера применения расширилась: в 2010-е годы MarkLogic активно внедрялась в финансовом секторе (например, в банках для верификации клиентов — KYC, Know Your Customer), здравоохранении и медиа-индустрии.

В 2015 году компания привлекла 102 миллиона долларов в ходе раунда финансирования. В 2020-е годы, с ростом популярности облачных решений и конкурентов (например, MongoDB, Elasticsearch), MarkLogic столкнулась с вызовами. В 2023 году компания была приобретена частной инвестиционной фирмой Vector Capital, после чего начался процесс ребрендинга и смены бизнес-модели с лицензирования на подписку (SaaS).

Ключевые характеристики и архитектура

Многомодельность и поддержка форматов

В отличие от традиционных реляционных СУБД (Oracle, PostgreSQL), MarkLogic не требует приведения всех данных к строгой схеме таблиц. Она позволяет хранить, индексировать и запрашивать данные в нескольких форматах одновременно:

Принцип «сохранить всё» (Store Everything)

Это философское и архитектурное отличие MarkLogic от многих других систем. Вместо того чтобы преобразовывать данные в унифицированную структуру (например, разбить документ на множество связанных таблиц), MarkLogic хранит оригинальные документы целиком. Все метаданные, семантические связи и полнотекстовый индекс строятся поверх этих исходных документов. Это позволяет вернуться к исходному состоянию в любой момент и не терять информацию при ETL-процессах.

ACID-транзакции

В отличие от многих NoSQL-решений, которые жертвуют кислотностью для производительности, MarkLogic поддерживает строгие транзакционные свойства (ACID): атомарность, согласованность, изоляцию и долговечность. Это делает её пригодной для критически важных бизнес-операций.

Полнотекстовый поиск

MarkLogic наследует мощный движок полнотекстового поиска. Индексы строятся не только по точным совпадениям, но и по лингвистике: поддерживаются лемматизация, стемминг, синонимы, нечёткий поиск и поиск по фразам. Система может обрабатывать естественно-языковые запросы и давать релевантные результаты, ранжированные по алгоритму, схожему с TF-IDF (term frequency–inverse document frequency).

Горизонтальное масштабирование

MarkLogic является распределённой системой. Кластер состоит из нескольких серверов (узлов). Данные автоматически шардируются (распределяются по частям) и реплицируются между узлами для обеспечения отказоустойчивости. Добавление нового узла в кластер позволяет линейно наращивать как объём хранимых данных, так и производительность чтения/записи.

Семантический граф

С версии 8.0 (2015 г.) в платформу была встроена поддержка семантической сети на базе стандартов W3C: RDF, SPARQL и технологий рассуждений (reasoning). Это позволяет строить графы знаний, связывающие сущности разного типа (людей, организации, события) не по жёстким внешним ключам, а по семантическим предикатам («является частью», «находится под контролем»).

Классификация и виды

С точки зрения классификации баз данных, MarkLogic относится к классам:

До приобретения Vector Capital коммерческие продукты делились на редакции:

После смены модели в 2024 году все предложения были объединены в единую облачную платформу под новым брендом (подробности на момент написания статьи не раскрыты).

Языки запросов и интерфейсы

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

Применение и значение

Операционный Data Hub

Главная ниша MarkLogic — создание операционных узлов данных. В отличие от аналитических data lakes (озёр данных) на Hadoop или Spark, которые оптимизированы для исторической аналитики, OT-Data Hub (Operational Data Hub) позволяет бизнес-приложениям читать и записывать данные в режиме реального времени с гарантиями консистентности. Типичный сценарий — консолидация данных из сотен унаследованных систем (CRM, ERP, биллинг, HR) в единую точку истины (single source of truth).

Управление мастер-данными (MDM)

Благодаря семантическому графу и поддержке нечёткого поиска, MarkLogic эффективно решает задачу идентификации и сшивания записей, относящихся к одному и тому же объекту (например, «Петров И.И.» и «Ivan Petrov» — один и тот же клиент). Система может автоматически обнаруживать дубликаты и объединять их в золотую запись (golden record).

Федеральный поиск и разведка

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

Интересные факты

Критика

Основные претензии со стороны профессионального сообщества и разработчиков касаются:

Источники

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →