Tibero

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 06:31, 22 января 2018.
Open book.svg Авторство
В. М. Виноградова
Согласовано: 22 января 2018 года
Tibero
20150602102941150 IRMLWW4F.jpg
Разработчики: TmaxSoft
Выпущена: 2003
Написана на: PSM
Операционная система: Linux, Windows, Solaris, HP-UX, AIX
Платформа: Кросс-платформенное
Тип ПО: RDBMS база данных
Лицензия: Проприетарное
Веб-сайт tmaxsoft.com

Tibero - этo реляционная корпоративная СУБД, выпущенная и продаваемая корпорацией TIBERO, входящей в состав TmaxSoft, принадлежащей Южной Корее. TIBERO разрабатывает Tibero с 2003 года, а в 2008 году она стала второй компанией в мире, предлагающей кластер с общим диском. С момента своего создания 10 лет назад TIBERO сосредоточился на исследованиях и разработках продуктов и теперь перешел на лидирующие позиции среди мировых поставщиков СУБД. Основными продуктами являются Tibero, Tibero MMDB, Tibero ProSync, Tibero InfiniData и Tibero DataHub[1].

Tibero - система управления реляционными базами данных (RDBMS) считается альтернативой базам данных Oracle, благодаря своей полной совместимости с продуктами Oracle, включая SQL.

Tibero гарантирует надежность транзакций базы данных (которые являются продуманным набором SQL выражений) обеспечиваемой поддержкой ACID (атомарность, согласованность, изолированность, долговечность). Обеспечивая улучшенную синхронизацию между базами данных, Tibero 5 обеспечивает надежную работу службы базы данных в среде с несколькими узлами.

Tibero реализовала уникальную архитектуру потоков (Tibero Thread Architecture) для устранения недостатков предыдущих СУБД. В результате Tibero может эффективно использовать системные ресурсы, такие как CPU и память,используя меньшее количество серверных процессов. Это позволяет Tibero предлагать сочетание производительности, стабильности и масштабируемости, и облегчение процесса разработки и настройки. Дополнительно, СУБД позволяет пользователям и разработчикам используя множество стандартных интерфейсов легко интегрироваться с другими СУБД и приложениями.

В дополнение, для улучшения 'Tibero Active Cluster' (система кластеризации БД похожая на Oracle RAC) была применена технология передачи информации блоками. Tibero поддерживает самонастраивающуюся оптимизацию производительности, надежную систему мониторинга базы данных и систему управления производительностью.

По состоянию на июль 2011 года в Корее Тиберо был принят более чем 450 компаниями из ряда отраслей промышленности из финансов, производства и связи, в государственный сектор и в глобальном масштабе более чем 14 компаниями.

Особенности и преимущества

  • Гибкая модель лицензирования позволяет предприятиям максимизировать свои инвестиции в виртуализацию, только лицензируя вычислительную мощность, связанную с данной виртуальной машиной (VM), а не на 100% -ной модель лицензирования Oracle, независимо от количества ресурсов, потребляемых базой данных
  • Высокая совместимость с Oracle - в некоторых случаях до 97% совместимости
  • Активная кластеризация с активным кластером Tibero (TAC)
  • Активное хранилище Tibero (TAS)
  • Tibero EE (Enterprise Edition) является всеобъемлющим, без дополнительных продуктов для покупки
  • Весы с товарным оборудованием, а не с дорогостоящими запатентованными серверами баз данных
  • Возможность активной или пассивной резервной базы данных
  • Архитектура гиперпотоков
  • Шифрование базы данных с высокой степенью защиты
  • Многоузловое параллельное восстановление
  • Надежный общий сервер

Совместимость с другими СУБД

Полная совместимость Tibero с другими СУБД определяется следующими факторами:

  1. поддержкой глобальных стандартов:
    • SQL standard (SQL-92 Entry Level, SQL99 Core Level);
    • JDBC-, ODBC- и OLE DB интерфейсов;
    • XA-интерфейса на базе X/Open стандартов;
    • DB Links for Sybase, Oracle, DB2 и MS SQL;
  2. совместимостью с СУБД Oracle за счёт:
    • поддержки нестандартных SQL (Oracle’s SQL), например, подсказок;
    • совместимости приложений за счёт поддержки Oracle Stored Procedures (PL/SQL) и Oracle Embedded SQL (Pro*C);
  3. совместимостью с Oracle Call Interface (OCI) в части: типов данных – CHAR, VARCHAR, VARCHAR2,NUMBER, DATE, TIMESTAMP; типов колонок – BLOB, CLOB, LONG; RAW, ROWID, NVARCHAR и NCLOB.

Помимо поддержки полной совместимости с другими СУБД (с Oracle в большей степени), TmaxSoft активно развивает собственный функционал (в сравнении с альтернативным, представленным на рынке) в части повышения его эффективности, масштабируемости, производительности, доступности и др. на основе собственных патентованных технологий и методов[Источник 1].

Архитектура и технологии Tibero 6

TmaxSoft объявила о доступности Tibero 6 в июле 2015 г. Среди ключевых нововведений:

  • поддержка многопотоковой архитектуры (Hyper Thread Architecture), что во многом позволяет снять ограничения по производительности предыдущей версии;
  • новые решения, дополняющие Tibero 6:
  • ZetaData – аналог Oracle Exadata:
    1. обеспечивает возможность интеграции OLTP(OnLine Transaction Processing) и OLAP-приложений (OnLine Analytical Processing) на одной платформе;
    2. включает дополнительный функционал, например, поколоночное сжатие;
    3. предоставляет возможность развёртывания на платформах от третьих компаний) и др.;
  • AnyMiner и DataHub.

К концу 2015 г. должна была появиться 7я версия Tibero с поддержкой следующей функциональности:

  • in-memory-технологии (с возможностью и чтения, и записи);
  • потоковой аналитики (для обработки данных с сенсорных датчиков), развиваемой в рамках направления "интернет-вещей" (IoT – The Internet of Thing);
  • расширенной совместимости с MS SQL Server и IBM DB2.

Но не появилась.

Чтобы отвечать современным бизнес-вызовам, архитектура Tibero 6 изменилась в двух направлениях: во-первых, возросла масштабируемость СУБД: по объёму БД – до сотен терабайт), по количеству одновременно работающих пользователей – до сотен тысяч, по производительности – до миллиардов транзакций ежедневно; во-вторых, появилась расширенная функциональность по управлению как самих БД, так и их информационной безопасностью[Источник 2].

Интегрированная и улучшенная структура Процессов

Улучшение выполнения всех процессов по эффективности, скорости в/в, доступности, безопасности, в частности, рабочих процессов, кластерного менеджера, агентных процессов было достигнуто на базе расширенной многопотоковой архитектуры (Hyper Thread Architecture), которая стала одним из ключевых нововведений в составе Tibero 6.

Надёжный разделяемый сервер

С увеличением числа сессий возрастают накладные затраты (ОП, процессорное время) на их обработку. В Tibero 6 все запросы объединяются в группы и затем распределяются по рабочим потокам. Благодаря этому, в Tibero 6 сотни процессов могут обрабатываться одновременно, используя всего несколько рабочих потоков, при существенном увеличении производительности и снижении накладных затрат в сравнении с альтернативными решениями[Источник 2].

Дополнительный функционал для высокой масштабируемости БД

Высокая масштабируемость БД в Tibero 6 также поддерживается за счёт дополнительного функционала: параллельной обработки функций/запросов, различного типа партиций, компрессии, стартрансформации, оптимизации индексов для OLAP приложений и др.

Повышение безопасности данных

Среди нового функционала, появившегося в составе Tibero 6 для повышения безопасности данных, можно отметить:

  • шифрование индексов без снижения общей производительности;
  • расширенную поддержку алгоритмов шифрования, не представленных в Oracle, например: ARIA128, ARIA192, ARIA256, SEED, SMS4;
  • защиту данных от модификации на основе цифровой подписи;
  • разделение прав доступа по пользователям, ролям, профилю управления.[Источник 2]

ZetaData – интеграция OLTP и OLAP Приложений

Тенденция интеграции OLTPи OLAP приложений с переносом обработки части SQLфункционала на уровень хранения вызвана несколькими ключевыми обстоятельствами:

  • возрастанием роли аналитики реального времени с использованием текущих данных продуктивных систем;
  • ростом сложности интеграции данных DW и OLPTхранилищ из-за стремительно увеличивающегося объёма операционных данных, и, соответственно, времени интеграции;
  • желанием минимизировать CAPEXи OPEXрасходы на OLTPи OLAP хранилища за счёт их интеграции на одной платформе;
  • устранением узкого места между СУБД сервером и DW.

ZetaData позволяет в полной мере решить эти проблемы, обеспечивая высокую производительность, масштабируемость и простоту управления решением за счёт:

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

Минимальное увеличение производительности за счёт использования ZetaData – 7 раз.

Особенности архитектуры ZetaData

Отметим основные особенности архитектуры ZetaData:

  • использование высокопроизводитель ной сети на базе Infiband (56 Гбит/с), что во многом снимает ограничения на этом уровне;
  • использование поколоночной компрессии (при поколоночном хранении) позволяет снизить объём хранимых данных на 82% и одновременно повысить производительность обработки;
  • ZetaData полностью поддерживает все протоколы Oracle, на которых взаимодействуют серверы БД и серверы хранения. На верхнем уровне это происходит на базе протокола iDB (Intelligent Database protocol). iDB реализован в ядре базы данных и прозрачно отображает операции базы данных к расширенным операциям серверов хранения. iDB построен на промышленном стандарте – Reliable Datagram Sockets (RDSv3, в терминологии OSI является транспортным протоколом 4го уровня 7 уровневой модели и работает "поверх" протокола IPv4, а если быть со всем точным – IPoIB) протоколе и работает на транспорте InfiniBand.

iDB позволяет серверу посылать в сторону сервера хранения некий упрощённый аналог SQL запроса, который, в свою очередь, будет обработан Storage Server'ом самостоятельно, и серверу вернётся уже конкретный ответ на запрос, а не просто набор "сырых" блоков данных.

Такой подход в обработке упрощённых запросов силами Storage Server'а Oracle называется "Smart Scans", или "Scan Offload"[Источник 2].

Использование этого механизма позволяет Storage Server'ам обрабатывать такие запросы, как:

  • фильтрация строк на основе "where" предиката;
  • фильтрация колонок;
  • фильтрация соединений (join);
  • фильтрация зашифрованных данных;
  • работа с функциями Data Mining;
  • возможность использования для серверов хранения разработки всех ключевых вендоров и все типы ОС;
  • быстрое самовосстановление в случае "падения" одного из серверов хранения за счёт использования технологии TAS.

Тестирование

В мае 2015 г. компании TmaxSoft и MERLION на базе технического центра MERLION провели тестирование СУБД Tibero 5 SP1 от TmaxSoft и СУБД PostgreSQL 9.4 с открытым исходным кодом. Тестирование проводилось на базе нагрузочного SQLсервера (Intel Xeon CUPE74830 2.13GHz, 8GB, Windows Server 2012 Standard 64bit, benchmarksql 3.0.9 /Benchmark Factory 7.1) и DBMS сервера – IBM Open Power 8Е (8 ядер; ОП – 32,45 Гбайт; Linux 3.10.0123.el7.ppc64 1 SMP), на которой развёртывались СУБД Tibero 5 SP1 и PostgreSQL 9.4.

Тестирование было разбито на три стадии – по 5, 10 и 15 мин. В каждом из потоков – свой набор и число параллельных задач.

Целью тестирования было не только показать производительность систем, но и сравнить эти СУБД по таким показателям, как:

  • особенности миграции с других СУБД;
  • функциональность инструментария;
  • особенности лицензионной политики;
  • областям применений;
  • возможности поддержания ИБ и др.

Защита данных в Tibero

Защита чувствительных данных в СУБД Tibero возможна на базе совместного решения компании "Аладдин Р.Д." и TmaxSoft, интегрирующее сертифицированный модуль "Крипто БД" от "Аладдин Р.Д." в БД СУБД Tibero.

Для Tibero будут доступны два способа работы с решением Aladdin: в виде от дельного модуля – все те задачи по шифрованию данных выполняются через PL/SQL и через интеграцию на уровне ядра Tibero. Последний вариант реализации во много производительнее первого[Источник 2].

Лицензионная политика

TmaxSoft в отношении Tibero проводит гибкую лицензионную политику, что позволяет экономить более 50% при закупке лицензий. Более того, на Tibero отсутствуют штрафы (что, например, практикуется у Oracle) в случае непродления лицензии на техподдержку[Источник 1].

Внедрения Tibero в России

Простота внедрения Tibero – одно из ключевых преимуществ, отмечаемых Gartner (Magic Quadrant for Operational Database Management Systems, 16 October 2014).

В 2014 г. были успешно реализованы проекты в финансовом, государственном и промышленном секторах. Представительство TmaxSoft в Москве имеет в своем составе квалифицированных инженеров, способных оказывать техподдержу и принимать участие в проектах миграции.

В настоящее время в России в реализации находятся около 50 проектов в самых различных областях. Для ряда заказчиков (например, Федерального центра информатизации Счетной палаты РФ) одной из причин поиска альтернативных решений на азиатском направлении (где компания TmaxSoft является лидером) стали введённые санкции со стороны США, касающиеся ИТ-отрасли, которые TmaxSoft не поддерживает. Среди заказчиков Tibero в России: МТС, Министерство обороны РФ, МосЭнергоСбыт, Счётная палата РФ, Банк России, Федеральная служба по тарифам и др..

Tibero позволяет автоматически мигрировать SQL, процедуры и метаданные с Oracle, DB2, SQL Server, Sybase, MySQL и PostgreSQL, используя инструменты миграции. Стандартная процедура перехода с Oracle на Tibero требует от 5% до 10% доработок. В ряде случаев усилия по доработке ПО ещё меньше. Так, при миграции с Oracle на Tibero в одной крупной энергетической компании вся процедура была проведена за 2,5 месяца, включая автоматизацию трудоемкого процесса тестирования и отладку плавного процесса перехода с Oracle на Tibero. Использование собственного инструмента tbMigrator позволило выполнить без потерь перенос 100% данных и 98% бизнеслогики (таблицы, пакеты, триггеры, процедуры, функции и т.п.). В 2% случаев встречается пока не поддер живаемый функционал, который был адаптирован таким образом, что позволило получить для бизнеслогики системы взаимную совместимость для Tibero и Oracle.

Установка Tibero

В данной статье будет рассмотрена установка Tibero на операционную систему RedHat.

Подготовка к установке

Прежде всего нужно внести следующие изменения параметров ядра.

Параметр Ядра Значение Файл
semmsl 10 000 /proc/sys/kernel/sem
semmns 32 000 /proc/sys/kernel/sem
semmni 10 000 /proc/sys/kernel/sem
semopm 10 000 /proc/sys/kernel/sem
shmall ceil(shmmax/PAGE_SIZE) /proc/sys/kernel/shmall
shmmax Half of physical memory (byte) /proc/sys/kernel/shmmax
shmmni 4096 /proc/sys/kernel/shmmni
file-max 6815744 /proc/sys/fs/file-max
ip_local_port_range 1024 ~ 65000 /proc/sys/net/ipv4/ip_local_port_range

[Источник 3]

Вносим изменения в файл /proc/sys/kernel/sem:

#  cd /proc/sys/kernel
#  nano sem
Файл, содержащий настройки ядра

Для того, чтобы посчитать /proc/sys/kernel/shmmax необходимо узнать размер физической памяти. Объем физической памяти, следует поделить пополам и перевести в байты, а полученное число внести в файл /proc/sys/kernel/shmmax.

#  cd /proc/sys/kernel
#  nano shmmax

Параметр PageSize можно узнать с помощью команды:

#  getconf PAGESIZE

Далее следует число в файле shmmax поделить на PageSize и округлить вверх до целого [Источник 3] .В файл /proc/sys/kernel/shmall следует записать получившееся число.

По аналогии действуем с файлами /proc/sys/kernel/shmmni, /proc/sys/fs/file-max, /proc/sys/net/ipv4/ip_local_port_range, занося в них числа, указанные в таблице.

Файл, содержащий настройки относящиеся к сети

Установка необходимых пакетов

Без следующих пакетов установка Tibero невозможна[Источник 3].

# yum install -y gcc-*l
# yum install -y gcc-c++-*
# yum install -y libgcc-*
# yum install -y libstdc++-*
# yum install -y libstdc++-devel-*
# yum install -y compat-libstdc++-*
# yum install -y libaio-*
# yum install -y libaio-devel-*

Создание группы и пользователя

# /usr/sbin/groupadd -g 502 dba
# /usr/sbin/useradd -u 502 -g dba tibero
# passwd tibero 

Создание директории

Создание директории, где будет находиться Tibero и все, что с ней связано.

# mkdir /home/Tibero
# tar -xvf /tmp/tibero6-bin-6_rel_FS02-linux64-109628-opt-tested.tar.gz -C /home/Tibero/
# chown -R tibero dba /home/Tibero

Настройка переменных среды

Это очень важный этап установки Tibero. Если в нем допустить ошибку, то процесс установки закончится провалом. Файл /home/tibero/.bash_profile должен выглядеть следующим образом.

Настройка Bash профиля

Лицензия

Для того, чтобы установить Tibero следует скачать с официального сайта лицензию. После этого переместить файл license.xml в папку $TB_HOME/licenses и разрешить читать пользователю tibero.

# chown -R tibero :dba $TB_HOME/licenses/license.xml
# chmod u+r $TB_HOME/licenses/license.xml

Установка и запуск Tibero

$ $TB_HOME/config/gen_tip.sh
$ tbboot nomount
$ tbsql sys/tibero

После этого произойдет соединение с сервером и в консоле можно будет использовать SQL команды, предложенные Tibero. Полный список команд можно получить, используя команду help. Подробное описание команды можно получить, используя "help название команды".

Создание первой БД

$ tbboot
$ $TB_HOME/scripts/system.sh

По умолчанию в Tibero следующие пароли:[Источник 4]

  • sys -> tibero
  • syscat -> syscat

Удаление БД

Чтобы удалить базу данных следует выполнить следующие команды:

$ tbdown
$ rm -rf $TB_HOME/database/TB_SID/*

Источники

  1. 1,0 1,1 TmaxSoft [Электронный ресурс]: Tibero: 22.10.2017 /Режим доступа: http://ru.tmaxsoft.com/products/tibero/
  2. 2,0 2,1 2,2 2,3 2,4 Аладдин-рд [Электронный ресурс]:Tibero 6 – "золотая середина" СУБД — Дата обращения: 22.10.2017 /Режим доступа: [1]
  3. 3,0 3,1 3,2 TmaxSoft [Электронный ресурс]: Tibero 6 Online Manual: 22.10.2017 /Режим доступа: [2]
  4. SysDBA [Электронный ресурс]: Installing Tibero 6 RDBMS on Scientific Linux 7.1: 22.10.2017 /Режим доступа: [3]
  1. Wikipedia [Электронный ресурс]: Tibero: 22.10.2017 /Режим доступа: [4]