interbase xe7 - универсальная субд для windows linux mac ios android

Post on 28-Jan-2018

537 Views

Category:

Software

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

INTERBASE XE7 - УНИВЕРСАЛЬНАЯ СУБД ДЛЯ WINDOWS, LINUX, MAC, IOS, ANDROID

Андрей СовцовEmbarcadero,Москваemail: Andrew.sovtsov@embarcadero.com

Дмитрий КузьменкоEmbarcadero MVP, Генеральный директор iBase.ru, Москваemail: kdv@ibase.ru

Содержание

1. Достоинства

2. Платформы

3. Применение

4. Редакции

5. Архитектура приложений и СУБД

6. ChangeViews

7. Разработка и отладка

8. Специфика мобильных устройств

9. Настройка InterBase

10. Разработка на Linux

11. Важная функциональность (online dump и другое

12. Шифрование

Главные достоинства

• Минимум требований к аппаратному обеспечению

• Минимум требований к ОС – десктопная или серверная

• Минимум администрирования

–Может работать годами без обслуживания

–Для больших баз с большим количеством пользователей обслуживание требуется для достижения максимальной производительности

• Идентичность БД для разных платформ

InterBase XE7 - платформы

• Исторически – InterBase был создан для Unix. Версия для Windows появилась только в 1994 году

• 64-bit– Windows 7, 8, Server 2008, 2012 (R2)– Linux RHEL 6, 7 SuSE 11.3, Ubuntu 14

• 32-bit– Windows 7, 8, Server 2008, 2012– Linux RHEL 6, SuSE 11.3, Ubuntu 14

• OS X, Android, iOS– InterBase XE3– InterBase XE7 – Update 1, выпущен 6 марта 2015

http://cc.embarcadero.com/item/30155http://www.youtube.com/watch?v=l5fu2HXERbE

Платформы

• Вся функциональность одинакова

–Кроме ограничений IBLite

• Разница

–Пути установки и к БД (отличия Windows и Linux)server:c:\dir/data.ib, server:\usr/data\data.ib

–Сторонние UDF

–Производительность?вечный вопрос, кто лучше - Windows или Linux

InterBase - Применение

• Длительная история использования – с 1985 годаПервый коммерческий сервер с многоверсионностью

• Базы данных в среднем до 200 гигабайт• база данных может иметь размер до 131 терабайт

• До 500 одновременных пользователей• чаще является лимитом операционной системы

• Бухгалтерия, склад, системы денежных переводов, биллинг, торговля, системы учета …

• Однопользовательские и многопользовательские приложения

Редакции InterBase

• InterBase Server / InterBase Developer Edition

–Windows, Linux, Os X

• InterBase Desktop

–Windows

• IBToGo

–Windows, Os X

• IBLite, IBToGo

–Windows, iOs, Android

• Разработка для мобильных устройств

• RAD Studio XE Professional и выше

• Delphi/C++Builder Enterprise и выше

• Delphi/C++Builder Professional + Mobile Pack

Какую СУБД выбрать для простой БД?

• Ту, которую вы лучше знаете

• Оценить перспективы роста

–Сегодня на смартфоне, завтра на сервере

–Сегодня 1 пользователь, завтра 5, послезавтра 100

–Сегодня БД 100мб, завтра 100гб

–Сегодня вы разрабатываете на Windows, а завтра – на Linux

• Клиент-сервер, драйверы

Клиент-сервер

ПриложениеКлиентская

часть InterBase

Сервер InterBase База данных

сеть

gds32.dllIBLiteIBToGo

IBLite, IBToGo – и клиент, и встроенный сервер

ПриложениеКлиентскаячастьInterBase

Сервер InterBase

Локальная база данных

IBLite, IBToGoсервер в dll/so

Пакетный режим

ПриложениеIBLite

IBToGo

Сервер InterBase База данных

Сеть – локальная,wifi, gprs…

Локальная база данных

Синхронизация

IBLiteIBToGo

Сервер InterBase

База данныхЛокальная база данных

изменения

изменения

ChangeViews

Отслеживание изменений по подписке

• Subscription – определяет какие изменения (insert/update/delete) и для каких таблиц мы хотим отслеживать

• Активация подписки – какую подписку и с какого устройства хотим использовать

–После активации все запросы показывают только измененные данные

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

Активация подписки

• start transaction

• select …

– Получаем обычные данные

• set subscription … active

• select …

– Получаем изменения, на которые подписались

• set subscription … inactive

• select

– Получаем обычные данные

• …

• commit – информация о просмотренных изменениях будет удалена

• rollback – просмотренные изменения подписки не удаляются

Разработка - компоненты

• FireDAC (предпочтительно)

• dbExpress

• IBX

Разработка

• Создаем и разрабатываем базу данных– IBConsole, IBExpert, SQL Manager, DatabaseWorkbench

– База должна быть в юникоде. Т.е. создана с кодировкой UTF8

• Создаем мобильное приложение, с целевой платформой Win32– Для упрощения начального старта

• Используем InterBase Developer Edition, подсоединяемся к БД как к серверу– Server_name, tcp, c:\db\database.ib

– Чарсет коннекта – UTF8

– Видим данные в design-time

• Запускаем приложение– Для проверки работоспособности вообще – на win32

– На эмуляторе, если нет устройства

– На устройстве

Отладка

• С IBLite, IBToGo - это неудобно– IBLite придется поместить в bin установки Delphi

– При отладке изменения, которые будут сделаны на устройстве или в эмуляторе, потеряются (deployment перезаписывает все файлы)

• Как проще– Использовать сервер InterBase на своем компьютере

– Прописать в свойстве Databasecomputername:c:\dbpath\database.ib, подключиться

– Включить на устройстве wifi, подключиться к локальной сети, чтобы устройство могло обратиться к InterBase на вашем компьютере

– В этом случае и Delphi и устройство будут работать с одной БД

– По окончании отладки указать локальный путь для БД на устройстве и поменять deployment (не забыв выключить InterBase, чтобы копируемая на устройство БД не оказалась битой)

Специфика мобильных устройств

• Где находится локальная БД?

• На какой «диск» ее поместить?

• Как скачать БД?

• Как делать бэкап?

• Как обновлять данные в БД, или получать оттуда изменения?

Настройка

• IBCONFIG

• Характеристики аппаратного обеспечения

• Настройки операционной системы

–Windows – никакие (за исключением виртуальной памяти и temp)

– Linux – для увеличения критических значений требуется перекомпиляция ядра

• Мониторинг tmp$

– tmp$attachments, tmp$transactions, tmp$statements

• Мониторинг окружения ОС – память, процессор, диски

Linux

• InterBase – RHEL 6, SuSE 11.3, Ubuntu 14

• FireDAC

• Разработка - все то же самое

• Инструменты – увы, на линуксе почти ничего нет

–Wine, или windows-tools в виртуальной машине

Важная функциональность

• ChangeViews

• Идентичность функциональности на всех платформах

• Абсолютная совместимость БД – можно переносить между разными платформами

Резервирование или распределение нагрузки через online dump

Сервер InterBase

База данныхDump 1

read-onlyDump 2

Сервер InterBase

2

1 раз в час1 раз в сутки

Производительность online dump

• Online dump – физическое копирование файла БД во время работы

–Скорость копирования практически равна скорости копирования файла БД

–БД 16 гигабайт (tpc-r)backup – 17 минут, restore – 51 минутаonline dump – 2 минуты 20 секунд (116 мегабайт в секунду на конкретном устройстве).

–При повторе вычитывает только измененные страницы – не сканирует всю БД

Шифрование

• Появилось с версии 2009

• 3 части

–Шифрование соединения (OTW, ssl v3 tls v 1)

–Шифрование БД – всей и/или отдельных столбцов

–Шифрование бэкапов

• Ключи DES и AES (128 бит)

• http://www.ibase.ru/ib-encrypt/

Спасибо за внимание!

Андрей СовцовEmbarcadero

Email: Andrew.Sovtsov@Embarcadero.com

Blog: http://embt.co/ASovtsovTel: +7(495)708 4393

Записи вебинаров: http://embt.co/MrAndySova

Блоги Embarcadero (все языки):

http://community.embarcadero.com/index.php/ru/blogs

+7(495) 953-13-34, sales@ibase.ru, support@ibase.ru

Кузьменко ДмитрийiBase.ru

Генеральный директор IT-эксперт

Delphi, C++Builder, RAD Studio

• InterBase Developer Edition

–Бесплатен для использования только при разработке

• IBLite

–Бесплатен для использования после регистрации

• IBToGo

– test deployment license

–Для распространения на устройствах требуется VAR-соглашение

Описание

возможностиIBLite InterBase ToGo

InterBase

DesktopInterBase Server

Платформы Android, iOSAndroid, iOS,

Windows, OS XWindows

Windows, OS X,

Linux, Solaris

Лицензирование

ядер ЦП1 4 4 8+

Максимальное

число

одновременных

пользователей

1 2 2 Не ограничено

Число

подключений

одного

пользователя

1 4 4 4

Удаленный доступ

клиентовДа Да Да Да

TCP-сервер с

сетевым доступомНет Нет Нет Да

Описание

возможностиIBLite InterBase ToGo

InterBase

DesktopInterBase Server

TCP-сервер с

сетевым доступомНет Нет Нет Да

Строгое

шифрование баз

данных и

столбцов (AES)

Нет Да Да Да

Строгое

шифрование

сетей (SSL)Нет Да Да Да

Ограничение

размера файла

базы данных100МБ

Без

ограничений

Без

ограничений

Без

ограничений

Возможность

импорта

дополнительных

лицензий

Нет Нет Нет Да

top related