Автор поделится опытом боевого использовании XML базы данных Marklogic
Сервисы электронной коммерции, которые позволяют издательствам предоставлять и продавать он-лайн доступ к изданиям, оперируют большими объемами слабо-структурированных данных. Перед подобными системами стоят вопросы доступности, поиска и преобразования информации, производительности, масштабируемости системы в-целом.
"XML база данных? Впервые слышу!". Если это про вас, то приходите на доклад и узнаете:
- чем XML базы данных могут помочь именно вам
- что за зверь - Marklogic
ответ на главный вопрос жизни, вселенной и всего такого
3. О чем проект?
• обрабатывать данные из различных источников
• позволять искать по сложным запросам
• показывать слабо-структурированную информацию
• бизнес логика
• e-commerce (продажи, куда без них)
• social
• etc..
2/21
4. О чем проект?
• 15 млн документов с перспективой в 100 млн
• предоставлять удобный способ поиска
• масштабироваться горизонтально
• гибкость к изменению формата данных VS валидация данных
на соответствие базовым правилам
• обладать высокой отказоустойчивостью
3/21
5. «MarkLogic Server is a document-centric, transactional,
search-centric, structure-aware, schema-agnostic,
XQuery- and XSLT-driven, high performance, clustered,
database server»
4/21
6. «MarkLogic Server is a document-centric, transactional,
search-centric, structure-aware, schema-agnostic,
XQuery- and XSLT-driven, high performance, clustered,
database server»
… масштабируемое транзакционное …
4/21
7. «MarkLogic Server is a document-centric, transactional,
search-centric, structure-aware, schema-agnostic,
XQuery- and XSLT-driven, high performance, clustered,
database server»
… масштабируемое транзакционное хранилище
документов …
4/21
8. «MarkLogic Server is a document-centric, transactional,
search-centric, structure-aware, schema-agnostic,
XQuery- and XSLT-driven, high performance, clustered,
database server»
… масштабируемое транзакционное хранилище
документов с обширными возможностями поиска
используя языки XQuery и/или XSLT…
4/21
9. Marklogic
• актуальный релиз - 6 (19 сентября, 2012)
• номер один XML хранилище в мире *
Среди клиентов:
• Организаторы летних олимпийских игр в Лондоне 2012
• Федеральное управление гражданской авиации США
• Департамент транспорта США
• The Defense Information Systems Agency
5/21
14. Schema Agnostic
• слабо-структурированные
данные VS схема!
• фокус на элементы, а не на
структуру
10/21
15. Search Centric
• XDBC
• HTTP
• WebDAV
• клиентская библиотека
• REST API
• web интерфейс
11/21
16. Search Centric
• полнотекстовый поиск
search:search("blackjack and hookers")
• поиск по значениям элемента или аттрибута
• range индексы (искать с используя сравнения - “>”, “<”, “=”)
• fields - alias для набора элементов
• facets, подсказки, геолокационные запросы
• и еще около сотни поисковых функций
12/21
19. Масштабируемость
Forest - это репозиторий документов (папка на диске)
Host / Node - это один экземпляр Marklogic Server
Роли: Data Node (d-node) и Evaluator Node (e-node)
15/21