СУБД Firebird: Краткий обзор, Дмитрий Еманов (in Russian)
Upcoming SlideShare
Loading in...5
×
 

СУБД Firebird: Краткий обзор, Дмитрий Еманов (in Russian)

on

  • 4,586 views

Небольшая презентация Дмитрия Еманова, ведущего разработчика Firebird, посвящена обзору СУБД Firebird, в том числе ...

Небольшая презентация Дмитрия Еманова, ведущего разработчика Firebird, посвящена обзору СУБД Firebird, в том числе текущему состоянию и планам развития.

Statistics

Views

Total Views
4,586
Views on SlideShare
4,570
Embed Views
16

Actions

Likes
0
Downloads
29
Comments
0

2 Embeds 16

http://www.slideshare.net 15
http://www.slideee.com 1

Accessibility

Categories

Upload Details

Uploaded via as OpenOffice

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

СУБД Firebird: Краткий обзор, Дмитрий Еманов (in Russian) СУБД Firebird: Краткий обзор, Дмитрий Еманов (in Russian) Presentation Transcript

  • Slide СУБД Firebird: краткий обзор Дмитрий Еманов mailto:dimitr@firebirdsql.org The Firebird Project http://www.firebirdsql.org
  • Slide История
      • 1981: MVCC от Bernstein и Goodman
      • 1984: Rdb/ELN vs Rdb/VMS в DEC
      • 1984: основание Groton Database Systems
      • 1986: продажа в Ashton-Tate
      • 1991: продажа в Borland
      • 2000: выпуск InterBase в Open Source
      • 2000: создание проекта Firebird
      • 2001: возврат InterBase в коммерческое русло
      • 2002: FB 1.0, создание Firebird Foundation
      • 2004-н.в.: дальнейшее развитие проекта
  • Slide Концепция СУБД
      • Простота установки и настройки one-click setup, авто-установка, файловое копирование
      • Минимальное сопровождение отказ от выделенного администратора, автоматизация процедур
      • Встраивание в приложения распространяемость в составе приложения
      • Бесконфликтность в конкурентной среде Multi-Generational Architecture, полная поддержка транзакций
      • Отказоусточивость мгновенное восстановление после сбоя
      • Кроссплатформенность Windows, Linux, Unix-like OS
      • Интернациональность порядка 50 кодировок (включая UTF8)
  • Slide Архитектура сервера
      • Classic Server
        • выделенный процесс на соединение
        • приватный кеш
        • синхронизация через общий менеджер блокировок
        • способность работы в кластерной среде
      • Super Server
        • многопоточный сервер
        • общий кеш для всех соединений
        • однако: неэффективная синхронизация
      • Embedded Server
        • клиент + сервер в одной .dll/.so
        • нет зависимостей от реестра и прочих глобалей
  • Slide Особенности ядра
      • MGA
        • писатели не блокируют читателей
        • бэк-версии хранятся в файле базе данных
        • кооперативная и фоновая сборка мусора
      • Careful Writes
        • построение графа зависимости страниц
        • сброс кэша на диск в строгом порядке
        • отсутствие необходимости в redo-логе
      • Эффективный индексный доступ
        • префиксная компрессия ключей
        • битовые карты и оптимизация дискового I/O
        • jump nodes, обработка NULL и т.д.
  • Slide Поддерживаемые платформы
      • 32-bit
        • Windows (x86)
        • Linux (x86, Sparc, PowerPC, MIPS/MIPSEL)
        • Solaris (x86, Sparc)
        • FreeBSD (x86)
        • MacOS Darwin (x86, PowerPC)
        • HP-UX (PA-RISC)
        • AIX (PowerPC)
        • Sinix-Z (Siemens)
      • 64-bit
        • Windows (x86_64)
        • Linux (x86_64)
        • Solaris (Sparc)
        • MacOS Darwin (x86_64)
        • HP-UX (PA-RISC)
  • Slide Средства доступа к СУБД (connectivity)
      • “ Родные” проекты
        • C/C++ API
        • Jaybird: Class 4 JCA/JDBC Driver
        • ODBC Driver
        • ADO.NET Provider
      • Сторонние проекты
        • IBPP C++ Wrapper
        • OLE-DB Provider
        • IBX, FIBPLus, IBObjects для Delphi
        • dbExpress Firebird Driver для Delphi
        • Gemini ODBC, EasySoft ODBC
        • модуль для PHP, плюс экспериментальный PDO_FIREBIRD
        • kinterbasdb для Python
        • FireRuby
  • Slide Преимущества
      • Самой СУБД
        • принцип “one size fits all”
        • высокая производительность ядра, включая PSQL
        • полнота функциональности SQL (стандарты 1999 и 2003)
        • невысокие системные требования
        • минимум администрирования
        • простота в освоении, использовании и распространении
      • Инфраструктуры
        • очень либеральная лицензия
        • вся функциональность в едином базовом комплекте
        • ориентация на бинарные дистрибутивы
        • высокий уровень бесплатной техподдержки от community
  • Slide Недостатки
      • Самой СУБД
        • масштабируемость vs ресурсоемкость
        • недостаточный интеллект оптимизатора
        • отсутствие PITR (Point-In-Time Recovery)
        • недостаточно средств мониторинга и контроля
        • простая модель безопасности
        • наследие “тяжелого детства” :-)
      • Инфраструктуры
        • отсутствие полноценной документации
        • нет интегрированного дистрибутива (“все-в-одном”)
        • нет штатных GUI инструментов
        • слабый маркетинг
  • Slide Примеры использования
      • AVARDA, Россия
        • ПО AVARDA.RetailNetwork
        • более 1000 соединений, размер БД 120ГБ
        • Firebird Classic Server 2.0 на Linux
      • SAS, США
        • аналитические решения
        • до 200 соединений, БД размером до 7ТБ
        • Firebird Embedded 2.0, кроссплатформенный сервер приложений
      • Прочие
        • Distributel (биллинг, Канада), Bas-X (ERP, Австралия)
        • Английские железные дороги, ВМФ США
        • ММВБ, Аэрофлот, Пражская муниципальная библиотека
  • Slide Планы развития
      • Стратегия
        • унификация архитектуры (2.5, 3.0)
        • повышение масштабируемости SuperServer (2.5, 3.0)
        • оптимизация версионного ядра (пост-3.0)
        • Point-In-Time Recovery (пост-3.0)
      • Функциональность
        • внешние процедуры (2.5, 3.0)
        • гетерогенные запросы (2.5, 3.0)
        • массовая загрузка данных (3.0)
        • методы доступа к данным и оптимизация (3.0 и далее)
        • расширение политики безопасности (3.0 и далее)
  • Slide Roadmap 2008
      • Сопровождение
        • исправление ошибок: версии 1.5.6, 2.0.4, 2.0.5
      • Выпуск версии 2.1
        • мониторинг активности и асинхронная отмена запросов
        • сетевой протокол оптимизирован для медленных сетей
        • множество SQL-улучшений, более 50 новых функций
        • сейчас на стадии релиз-кандидата
      • Разработка версии 2.5
        • улучшения масштабируемости
        • расширения средств мониторинга
        • запросы к внешним БД
        • регулярные выражения в SQL
        • альфа-версия в первом квартале
  • Slide Вопросы?