1. РАСПРЕДЕЛЕННАЯ ОБЪЕКТНО-КОМПОНЕНТНАЯ СУБД
В данной части мы изучим основы работы с технологией odant,
что позволит понять общую концепцию, и впоследствии,
эффективно использовать всю мощь этого инструмента.
1Часть 1. Основы
2. Данные
• Данные хранятся в XML объектах.
• На самом деле, для хранения используется
бинарный аналог XML -> OBX.
• Это позволяет радикально
уменьшить время открытия
и парсинга файлов, при этом
увеличить допустимый
размер каждого файла до 1Гб.
Часть 1. Основы 2
3. Объекты
• Объекты могут иметь сложную древовидную структуру
с неограниченным количеством уровней и полей на
каждом уровне, включая вложенные массивы
(таблицы).
• Структура объектов описывается в классах,
экземплярами которых они
являются, и в которых они
хранятся или отображаются.
• Объекты могут ссылаться
друг на друга,
наследоваться и объединяться
в древовидные иерархии.
Часть 1. Основы 3
4. Классы
• Классы являются
одновременно структурными,
информационными и
функциональными
элементами, типами данных
для полей, а так же могут
предоставлять свой
функционал соседним классам.
• Классы могут объединяться в
домены по функциональному,
прикладному, отраслевому или
другим принципам.
• С большой натяжкой классы
можно считать аналогами
таблиц, а объекты записями.
Часть 1. Основы 4
5. Домены
• Домены - структурные элементы, необходимые для
группировки и изоляции классов.
• Если сравнивать с РСУБД,
то можно считать, что
домены это отдельные
базы данных, обладающие
собственной структурой
и системой безопасности.
• Домены бывают 3 типов:
разделы,
сервисы,
компоненты.
• Системные домены содержат
в себе классы с системными данными и функционалом,
например - систему безопасности.
Часть 1. Основы 5
6. Домены - разделы
• Разделы – это домены верхнего уровня (корневые),
предназначенные для группировки доменов по
различному назначению.
• Public – открытый раздел, предназначен для
публикации компонентов в облако.
• Work – раздел для размещения хранилищ.
• Debug – отладочный раздел.
• Users – раздел для личных кабинетов.
• Archive – архивный раздел.
• System – раздел для хранения системных настроек
сервера, сертификатов и лицензий.
Часть 1. Основы 6
7. Домены - сервисы
• Сервисы - это главные рабочие домены, т.к. в
них сосредотачиваются все компоненты и
классы хранящие данные.
• Именно они и являются приложениями и
базами данных, с которыми работают
конечные пользователи.
• Каждое хранилище обладает выделенной
учетной записью и может выступать в качестве
пользователя для внешних сервисов.
Часть 1. Основы 7
8. Домены - компоненты
• Компоненты бывают трех типов: модули,
решения и конфигурации.
• Компоненты могут быть опубликованы в
общем разделе любого сервера в сети
odant.clouds , а затем установлены в
хранилища (опять же, на любой сервер).
• Компоненты как и классы поддерживают
распределенное наследование.
Часть 1. Основы 8
9. Хосты
• Хост – это отдельный
физический сервер.
• Каждый хост имеет
собственный IP-
адрес или URL.
• Хосты могут
объединяться в
бизнес-сети.
Часть 1. Основы 9
10. Элементы
• Каждый элемент odant - хост, домен, класс, объект, имеет
глобальный идентификатор (присваивается системой) в виде
15-значного кода _id (например, 1CEEAB285FDB6FC)
• Из иерархической последовательности идентификаторов
строится полный идентификатор _fullid, указывающий точное
расположение каждого элемента в глобальной сети.
• Конфигурация для каждого пользователя формируется
динамически, из набора доступных для него элементов.
Часть 1. Основы 10
11. XQuery
• Для выполнения
запросов используется
язык XQuery. Благодаря
ему можно создавать
очень сложные и
емкие запросы.
• XQuery очень прост в
изучении, а сами
запросы получаются
очень
структурированные и
информативные.
Часть 1. Основы 11