ИНТЕЛТЕК ПЛЮС

Содержание

Слайд 2

Тема доклада

Внутренняя организация ОСУБД на примере Versant, Poet, ODB-Jupiter

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Тема доклада Внутренняя организация ОСУБД на примере Versant, Poet, ODB-Jupiter НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Слайд 3

Области применения ОСУБД

САПР, Case-средства
Автоматизация производственных процессов
Автоматизация управления предприятием
Геоинформационные, картографические системы
Телекоммуникации
Internet приложения

НПЦ «ИНТЕЛТЕК

Области применения ОСУБД САПР, Case-средства Автоматизация производственных процессов Автоматизация управления предприятием Геоинформационные,
ПЛЮС» www.inteltec.ru

Слайд 4

ОСУБД Versant

Компания Versant представляет программные продукты:
Versant Developer Suite - сервер ОСУБД

ОСУБД Versant Компания Versant представляет программные продукты: Versant Developer Suite - сервер
+ комплект разработчика;
Versant enJin - сервер объектно-ориентированного промежуточного уровня, ориентированный на обработку Java-объектов.
Основной акцент делается на разработку приложений средствами Java, хотя при этом обеспечивается работа с ОСУБД на языках C, C++, Smalltalk.
http://www.versant.com

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Слайд 5

ОСУБД Poet

POET Software представляет следующие продукты:
Poet Database - сервер хранилища данных;
Poet Object

ОСУБД Poet POET Software представляет следующие продукты: Poet Database - сервер хранилища
Server - диспетчер объектов ОСУБД;
SQL Object Factory - сервер объектно-ориентированного промежуточного уровня, обеспечивающий прозрачную работу пользователей как с собственным сервером ОСУБД, так и с инородными для нее СУБД типа Oracle, DB2, MS SQL.
Значительное внимание уделяется на разработку Java-приложений.
http://www.poet.com, http://support.poet.de

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Слайд 6

ОСУБД ODB-Jupiter

Компания НПЦ «ИНТЕЛТЕК ПЛЮС» представляет ОСУБД ODB-Jupiter. В состав которой входят

ОСУБД ODB-Jupiter Компания НПЦ «ИНТЕЛТЕК ПЛЮС» представляет ОСУБД ODB-Jupiter. В состав которой
компоненты:
сервер хранилища объектов;
сервер-диспетчер объектов, также реализующий функции объектно-ориентированного промежуточного уровня
В настоящее время на основе ОСУБД ODB-Jupiter создан коммерческий продукт - информационно-поисковая система ODB-Text.
http://www.inteltec.ru

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Слайд 7

Особенности построения ОСУБД. Модель данных.

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Требования ODMG 3.0
Объектная модель, предписывающая

Особенности построения ОСУБД. Модель данных. НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru Требования ODMG 3.0
формат представление данных, их однозначную идентифицируемость, методы типизации данных и построения иерархий типов;
Язык запросов OQL для ОСУБД;
Набор служебных функций для организации доступа к базе данных, получения схемы данных, работы с транзакциями;
Библиотеки программиста для работы с ОСУБД для языков Java, C++, Smalltalk

Слайд 8

Особенности построения ОСУБД. Модель данных.

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Основные элементы объектной модели

Особенности построения ОСУБД. Модель данных. НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru Основные элементы объектной модели

Слайд 9

Особенности построения ОСУБД. Модель данных.

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Особенности построения ОСУБД. Модель данных. НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Слайд 10

Идентификаторы объектов ОСУБД.

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

ОСУБД Versant
OID = { Storage ID :

Идентификаторы объектов ОСУБД. НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru ОСУБД Versant OID = {
Object ID }
Storage ID - 4 байта
Object ID - 8 байт

ОСУБД Poet
OID = { Class ID : Object ID }
Class ID, Object ID - 4 байта

ОСУБД ODB-Jupiter
OID = { Storage ID : Class ID : Object ID }
Storage ID - 4 байта
Object ID - 8 байт
Class ID - строка без ограничения длины

Слайд 11

Особенности построения ОСУБД. Методы организации клиент-серверного взаимодействия.

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Клиент-серверная архитектура ОСУБД

Особенности построения ОСУБД. Методы организации клиент-серверного взаимодействия. НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru Клиент-серверная архитектура ОСУБД

Слайд 12

Особенности построения ОСУБД. Методы организации клиент-серверного взаимодействия.

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Клиент-серверные архитектуры СУБД

Особенности построения ОСУБД. Методы организации клиент-серверного взаимодействия. НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru Клиент-серверные архитектуры СУБД

Слайд 13

Организация хранилищ данных

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

системное хранилище используется для хранения системы классов.

Организация хранилищ данных НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru системное хранилище используется для хранения
Системное хранилище создается на этапе создания базы данных и содержит информацию о классах, о наличии и месторасположении пользовательских хранилищах;
пользовательское хранилище для хранения пользовательских объектов;
служебное хранилище, функция которого - хранение временной информации, например о заблокированных объектах, об активных транзакциях, различного вида списки запросов пользователей и т.д.

Слайд 14

Организация хранилищ данных в ОСУБД Versant

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Классификация по типу базы

Организация хранилищ данных в ОСУБД Versant НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru Классификация по
данных:
1) Групповые базы данных;
2) Персональные базы данных.
Классификация по типу функциональному назначению:
системный раздел (system volume) - создается автоматически при формировании базы данных;
раздел данных (data volumes) - может быть добавлен для увеличения доступного объема базы;
раздел логического протокола (logical log volume) и раздел физического протокола (physical log volume) предназначены для хранения служебной информации о транзакциях, блокировках для обеспечения возможности отката транзакций и восстановления базы.

Слайд 15

Организация хранилищ данных в ОСУБД ODB-Jupiter

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

системное хранилище, которое содержит

Организация хранилищ данных в ОСУБД ODB-Jupiter НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru системное хранилище,
описатели схемы данных и ряд служебных объектов;
хранилище безопасности, хранящее информацию о группах, пользователях и их прав доступа;
пользовательские хранилища для хранения объектов пользователей.

Слайд 16

Организация хранилищ данных в ОСУБД ODB-Jupiter

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Варианты организации взаимодействия
серверов

Организация хранилищ данных в ОСУБД ODB-Jupiter НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru Варианты организации
ОСУБД и сервера данных

Единая ЭВМ

Различные ЭВМ

Слайд 17

Некоторые функции ОСУБД

ведение схемы данных
ведение версий объектов;
транзакции и блокировки;
длинные транзакции и блокировки;
разделение

Некоторые функции ОСУБД ведение схемы данных ведение версий объектов; транзакции и блокировки;
доступа к объектам.

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Слайд 18

Ведение схемы данных ОСУБД

Схема данных является основой функционирования ОСУБД, содержит описание хранимых

Ведение схемы данных ОСУБД Схема данных является основой функционирования ОСУБД, содержит описание
типов, их иерархии и взаимосвязи.
Изменение схемы данных ОСУБД, как правило, не требует изменения хранимых данных.
ОСУБД предусматривают динамическое изменение схемы данных.

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Слайд 19

Ведение схемы данных ОСУБД ODB-Jupiter

выполнение функций, предусмотренных ODMG;
возможность ведения группы алиасов атрибута;
возможность

Ведение схемы данных ОСУБД ODB-Jupiter выполнение функций, предусмотренных ODMG; возможность ведения группы
работы с «анонимными» объектами.

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Слайд 20

Некоторые характеристики ОСУБД на примере ODB-Jupiter
количество типов в схеме данных: до 216
количество

Некоторые характеристики ОСУБД на примере ODB-Jupiter количество типов в схеме данных: до
атрибутов типа: до 216
количество объектов в одном хранилище: до 250
количество объектов одного типа и хранилища: до 264
объем данных, содержащихся в объекте: до 264
количество хранилищ: до 232

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Слайд 21

Ведение версий объектов

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Управление версиями в ОСУБД Versant

Ведение версий объектов НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru Управление версиями в ОСУБД Versant

Слайд 22

Разделение доступа к объектам

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

ОСУБД Poet, ОСУБД Versant - необходима

Разделение доступа к объектам НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru ОСУБД Poet, ОСУБД Versant
самостоятельная реализация механизма разделения доступа к объектам.
ОСУБД ODB-Jupiter - реализует разделение доступа в соответствии с классом «B3» Orange book и классом «5» ГОСТ Р 51241-98.

Слайд 23

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Транзакции и блокировки

Транзакции:
короткие;
длинные;
вложенные;
параллельные.

Блокировки:
короткие;
продолжительные;
оптимистические.

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru Транзакции и блокировки Транзакции: короткие; длинные; вложенные; параллельные. Блокировки: короткие; продолжительные; оптимистические.

Слайд 24

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Язык запросов ОСУБД

Группа ODMG для связи с ОСУБД разработала

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru Язык запросов ОСУБД Группа ODMG для связи с
язык OQL:
Язык опирается на объектную модель ODMG;
основная конструкция языка - это конструкция SELECT...FROM...WHERE…GROUP BY…HAVING…ORDER BY...;
результат запросов представляет собой множество объектов. Сложные взаимосвязи объектов могут напрямую указываться в запросе, что является одной из отличительных особенностей OQL от языка SQL;
язык является функциональным, операторы могут объединятся в выражение в качестве операндов;
может использоваться в качестве языка программирования;
возможно увеличение его функциональности.

Слайд 25

Язык запросов ОСУБД

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Группы операторов OQL:
операторы сравнения - операторы типа

Язык запросов ОСУБД НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru Группы операторов OQL: операторы сравнения
равно, не равно, больше, меньше и их комбинации;
строковые операции, позволяющие указывать требование на полное совпадение, частичное совпадение или на соответствие некоторой последовательности;
операции с классами, конструкторы стандартных типов set, bag, list, array(..), struct(..), а также конструкторы типов пользователя;
операции с множествами объектов типа пересечения, объединения, дополнения и др.;
предикаты объединения типа AND, OR, NOT, используемые для указания условия на поиск данных;
простые выражения типа сложения, вычитания, умножения, деления, остаток от деления;

Слайд 26

Язык запросов ОСУБД

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Пример запроса в OQL:
select distinct struct( name:

Язык запросов ОСУБД НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru Пример запроса в OQL: select
x.name, hps:(select y from x.subordinates as y where y.salary>100000))
from Employees x
Тип результата:
set)>

Слайд 27

Язык запросов ОСУБД. Расширение языка OQL в СУБД Versant:

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Язык запросов ОСУБД. Расширение языка OQL в СУБД Versant: НПЦ «ИНТЕЛТЕК ПЛЮС»
В функциональных библиотеках ОСУБД добавлены операции с классами, позволяющие указать, возвращать ли объекты непосредственно базового класса, или только объекты классов потомков;
возможно управление логическими путями в запросах;
введены дополнительные конструкции SQL;
введено понятие «виртуальный атрибут».

Слайд 28

Язык запросов ОСУБД. Расширение языка OQL в СУБД Versant:

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Управление

Язык запросов ОСУБД. Расширение языка OQL в СУБД Versant: НПЦ «ИНТЕЛТЕК ПЛЮС»
логическими путями в запросах

car color == «red», 0("exists")
Sue - Одна ссылка со значением «red».
Rob - Одна ссылка со значением «red».
car color == «red», O_ALL_PATHS
Sue - Две завершенные ссылки, все ссылки имеют значение «red».
car color == «red», O_EMPTY_TRUE
Sue - Одна ссылка со значением «red».
Rob - Одна ссылка со значением «red».
Ned - Нет завершенных ссылок.

Слайд 29

Язык запросов ОСУБД. Расширение языка OQL в СУБД Versant:

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Конструкции

Язык запросов ОСУБД. Расширение языка OQL в СУБД Versant: НПЦ «ИНТЕЛТЕК ПЛЮС»
Versant Query Language(VQL):
COMMIT Commit transaction.
DELETE Delete objects.
INSERT Insert objects.
QUIT Terminate application.
ROLLBACK Roll back transaction.
SELECT Find objects.
UPDATE Update objects.

Слайд 30

Язык запросов ОСУБД. Расширение языка OQL в СУБД Versant:

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Виртуальные

Язык запросов ОСУБД. Расширение языка OQL в СУБД Versant: НПЦ «ИНТЕЛТЕК ПЛЮС»
атрибуты ОСУБД Versant:
Пример: выборка книг на немецком языке, имеющих названия, начинающиеся с букв определенного диапазона.
PClassObject::Object().select(NULL,FALSE, PPredicate(PAttribute("/national de_DE utf8 Book::title") > "U" && PAttribute("/national de_DE utf8 Book::title") == "V"));
Результат:
книги, имеющие названия, начинающиеся с букв диапазона ["U", "V"], то есть "U", "U" и "V".

..

Слайд 31

Язык запросов ОСУБД. Поиск текстовых данных

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

ОСУБД Versant: поддержка

Язык запросов ОСУБД. Поиск текстовых данных НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru ОСУБД Versant:
национальных кодировок;
ОСУБД Poet: хранение текста в формате Unicode, система Verity® для поиска с учетом морфологии языка, по лексикографической или фонетической близости;
ОСУБД ODB-Jupiter: изначально ориентирована на поиск текста на русском языке. Содержит специальный язык запроса с возможностью указания параметров запроса, позволяющий вводить запрос на естественном русском языке.

Слайд 32

Язык запросов ОСУБД. Поиск текстовых данных

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Язык запросов ОСУБД ODB-Jupiter

Язык запросов ОСУБД. Поиск текстовых данных НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru Язык запросов
включает конструкции, позволяющие обрабатывать текстовые данные, в частности, на русском языке:

Слайд 33

Язык запросов ОСУБД. Тенденции развития

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru
Унифицированный язык запросов СУБД;
Типовой набор

Язык запросов ОСУБД. Тенденции развития НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru Унифицированный язык запросов
функций, выполняемых СУБД (select, insert, update);
Типовой набор сервисных функций, выполняемых СУБД (sin, cos, ln);
Расширяемость за счет возможности создания пользовательских функций;
Поддержка расширений базового языка SQL за счет специализированных дополнений:
полнотекстовый поиск текстовых данных;
поиск не текстовых данных;
преобразование форматов данных;
Разделение прав доступа к данным к данным.

Слайд 34

Промежуточный объектно-ориентированный слой

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Использование данных из СУБД сторонних производителей;
расширение функциональных

Промежуточный объектно-ориентированный слой НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru Использование данных из СУБД сторонних
возможностей внешних СУБД за счет эмуляции отсутствующих функций;
обеспечение «прозрачного» интерфейса доступа к данным для пользователей ОСУБД;
оптимальное использование внешних баз данных для хранение классификаторов и т.д.;
использование таких СУБД как DB2, Oracle.

Слайд 35

Промежуточный объектно-ориентированный слой Poet SQL Object Factory

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Варианты организации внутреннего

Промежуточный объектно-ориентированный слой Poet SQL Object Factory НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru Варианты
взаимодействия ОСУБД Poet

Слайд 36

Отображение объектной схемы данных на реляционную структуру

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Описание класса на

Отображение объектной схемы данных на реляционную структуру НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru Описание
языке C++:
persistent class Person
{
PtString name;
int age;
PtDate birthDate;
};

Результат преобразования в запрос на языке определения данных РСУБД:
CREATE TABLE SCHEMA.PERSONC101V0(
-- Identity columns
OID NUMBER (38) not null,
CID NUMBER (38) not null,
–- Columns for class members
NAME0V0 VARCHAR2 (50),
AGE1V0 NUMBER (38),
BIRTHDATE2V0 DATE,
PRIMARY KEY ( OID ));

Слайд 37

Отображение объектной схемы данных на реляционную структуру

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Пример C++ POET

Отображение объектной схемы данных на реляционную структуру НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru Пример
Object Model:
persistent class Car
{
PtString make;
PtString model;
int year;
};
persistent class RichPerson
{
PtString name;
lset fleet;
lset villas;
};

Результат преобразования в запрос DDL СУБД Oracle:
CREATE TABLE SCHEMA.RICHPERSONC102V0
( OID NUMBER (38) not null, CID NUMBER (38) not null,
NAME0V0 VARCHAR2 (50), PRIMARY KEY ( OID )
);
CREATE TABLE SCHEMA.FLEETC102P0V0
( OID NUMBER (38) not null,
CID NUMBER (38) not null,
EID NUMBER (38) not null,
-– An Object ID points to the actual persistent object.
CAROID0V0 NUMBER (38), CARCID1V0 NUMBER (38),
PRIMARY KEY ( OID, EID )
);
CREATE TABLE SCHEMA.VILLASC102P1V0
( OID NUMBER (38) not null, CID NUMBER (38) not null,
EID NUMBER (38) not null,
DATA0V0 VARCHAR2 (50), –- PtString elements
PRIMARY KEY ( OID, EID )

Слайд 38

Варианты реализации наследования при отображении на реляционную структуру


Варианты организации наследования в

Варианты реализации наследования при отображении на реляционную структуру Варианты организации наследования в
Poet SQL Object Factory.

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Слайд 39

Заключение

Тенденции развития ОСУБД:
унификация языка запросов;
формализация методов работы с объектами и управления работой

Заключение Тенденции развития ОСУБД: унификация языка запросов; формализация методов работы с объектами
ОСУБД;
построение разделяемых компонентных систем;
создание объектных надстроек, позволяющих интегрировать разнородные СУБД в рамках единого интерфейса программиста

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Слайд 40

Научно-производственный центр «ИНТЕЛТЕК ПЛЮС»

Научно-производственный центр

ИНТЕЛТЕК ПЛЮС

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

http://www.inteltec.ru

Научно-производственный центр «ИНТЕЛТЕК ПЛЮС» Научно-производственный центр ИНТЕЛТЕК ПЛЮС НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru http://www.inteltec.ru

Слайд 41

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Язык запросов ОСУБД

Допустимые имена атрибутов

struct Date { int day; Base b;

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru Язык запросов ОСУБД Допустимые имена атрибутов struct Date

};
struct Base { int id; int code;
};
Допустимые:
Date::day Date::b.Base::id Date::b.Base::code

struct Date { int day; Base *b;
};
struct Base { int id; int code;
};
Допустимые:
Date::day Date::b->Base::id Date::b->Base::code

Слайд 42

Язык запросов ОСУБД

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Определение именованных запросов в OQL:
define age(x) as

Язык запросов ОСУБД НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru Определение именованных запросов в OQL:

select p.age
from Persons p
where p.name=x;
Определение типов в OQL и варианты создания их объектов:
typedef set vectint;
vectint(select distinct age from Persons where name=“John”)
vectint(set(1,3,10))

Слайд 43

Язык запросов ОСУБД

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Обработка элементов пронумерованных коллекций в OQL:
list(a,b,c,d)[1:3]
element(

Язык запросов ОСУБД НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru Обработка элементов пронумерованных коллекций в
select x from Courses x
where x.name=“OQL” and x.number=“101”).requires[0:2]
first(element( select x from Courses x
where x.name=“OQL” and x.number=“101”).requires)
list(1,2)+list(2,3) -> list(1,2,2,3)
Dict[“OQL”]

Слайд 44

Язык запросов ОСУБД

НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru

Операции с группами в OQL:
bag(2,2,3,3,3) union bag(2,3,3,3)

Язык запросов ОСУБД НПЦ «ИНТЕЛТЕК ПЛЮС» www.inteltec.ru Операции с группами в OQL:
-> bag(2,2,3,3,3, 2,3,3,3)
bag(2,2,3,3,3) intersect bag(2,3,3,3) -> bag(2,3,3,3)
bag(2,2,3,3,3) except bag(2,3,3,3) -> bag(2)
Имя файла: ИНТЕЛТЕК-ПЛЮС.pptx
Количество просмотров: 80
Количество скачиваний: 0