Marklogic
Антон ЯзовскийТамтэк, Омск
как обуздать сотни гигабайт слабо-структурированных данных
О чем проект?
Антон Язовский 1/21
О чем проект?
Антон Язовский 2/21
• обрабатывать данные из различных источников
• позволять искать по сложным запросам
• показывать слабо-структурированную информацию
• бизнес логика
• e-commerce (продажи, куда без них)
• social
• etc..
О чем проект?
Антон Язовский 3/21
• 15 млн документов с перспективой в 100 млн
• предоставлять удобный способ поиска
• масштабироваться горизонтально
• гибкость к изменению формата данных VS валидация данных
на соответствие базовым правилам
• обладать высокой отказоустойчивостью
Антон Язовский 4/21
«MarkLogic Server is a document-centric, transactional, search-centric, structure-aware, schema-agnostic, XQuery- and XSLT-driven, high performance, clustered, database server»
Антон Язовский 4/21
«MarkLogic Server is a document-centric, transactional, search-centric, structure-aware, schema-agnostic, XQuery- and XSLT-driven, high performance, clustered, database server»
… масштабируемое транзакционное …
Антон Язовский 4/21
«MarkLogic Server is a document-centric, transactional, search-centric, structure-aware, schema-agnostic, XQuery- and XSLT-driven, high performance, clustered, database server»
… масштабируемое транзакционное хранилище документов …
Антон Язовский 4/21
«MarkLogic Server is a document-centric, transactional, search-centric, structure-aware, schema-agnostic, XQuery- and XSLT-driven, high performance, clustered, database server»
… масштабируемое транзакционное хранилище документов с обширными возможностями поиска используя языки XQuery и/или XSLT…
Marklogic
Антон Язовский
• актуальный релиз - 6 (19 сентября, 2012)
• номер один XML хранилище в мире *
Среди клиентов:
• Организаторы летних олимпийских игр в Лондоне 2012
• Федеральное управление гражданской авиации США
• Департамент транспорта США
• The Defense Information Systems Agency
5/21
Marklogic
Антон Язовский 6/21
Документо-ориентированная
Антон Язовский 7/21
<documentxsi:schemaLocation="http://yoursite.com/article article.xsd”xmlns:dc="http://yoursite.com/dc"xmlns="http://marklogic.com/articl"
uri=”/article/maxim/123”>
<meta><dc:type>journal-article</dc:type>
<dc:title>Анна Курникова</dc:title><source uri=”/journal/maxim”>MAXIM</source><pub_year>2004</pub_year>
</meta><body> images!!! </body>
</document>
Документо-ориентированная
Антон Язовский 8/21
• избыточный синтаксис
• ограниченность иерархической модели данных (где мои join'ы?!)
• неоднозначность структуры
• XML - прошлый век! JSON - рулит! :)
Документо-ориентированная
Антон Язовский 9/21
• открытый W3C стандарт
• простой, человеко-читаемый формат
• способы гибкой валидации (привет XSD, DTD)
• инструменты преобразования и визуализации (всемогущий XSL)
• языки запросов xQuery, xPath (W3C)
Schema Agnostic
• слабо-структурированные
данные VS схема!
• фокус на элементы, а не на
структуру
Антон Язовский 10/21
Search Centric
Антон Язовский 11/21
• XDBC
• HTTP
• WebDAV
• клиентская библиотека
• REST API
• web интерфейс
Search Centric
Антон Язовский
• полнотекстовый поиск
search:search("blackjack and hookers")
• поиск по значениям элемента или аттрибута
• range индексы (искать с используя сравнения - “>”, “<”, “=”)
• fields - alias для набора элементов
• facets, подсказки, геолокационные запросы
• и еще около сотни поисковых функций
12/21
Антон Язовский 13/21
Search Centric
Антон Язовский 14/21
Масштабируемость
Масштабируемость
Антон Язовский 15/21
Forest - это репозиторий документов (папка на диске)
Host / Node - это один экземпляр Marklogic Server
Роли: Data Node (d-node) и Evaluator Node (e-node)
Масштабируемость
Антон Язовский 16/21
Масштабируемость
Антон Язовский 17/21
• одна редакция Marklogic Server
• внешний load-balancer
• одна платформа на кластер
• shared nothing архитектура
Антон Язовский
Отказоустойчивость
• они настоящая команда!
• heartbeat внутри кластера
• автоматическое управление составом кластера
• взаимовыручка
18/21
Антон Язовский 19/21
«Один за всех - и все за одного!»д'Артаньян одобряет
Оно того стоит?
Антон Язовский 20/21
Антон Язовский 21/21
Top Related