PostgreSQL: промышленная разработка баз данных. Лекция 1
-
Upload
nikolay-samokhvalov -
Category
Documents
-
view
979 -
download
4
Transcript of PostgreSQL: промышленная разработка баз данных. Лекция 1
PostgreSQL: промышленнаяразработка баз данных
Лекция 1
Вводная лекция. PostgreSQL как современная объектно-реляционная система управления базами данных. Основные понятия.
PostgreSQL: промышленная разработка баз данных. Лекция 1
PostgreSQL – это...
PostgreSQL – свободно распространяемая объектно-реляционная система управления базами данных (ORDBMS), наиболее развитая из открытых СУБД в мире и являющаяся реальной альтернативой коммерческим базам данных.
PostgreSQL: промышленная разработка баз данных. Лекция 1
PostgreSQL – это...
PostgreSQL произносится как post-gress-Q-L
В разговоре часто употребляется postgres
(пост-гресс).
Также, употребляется сокращение
pgsql (пи-джи-эс-ку-эл).
PostgreSQL: промышленная разработка баз данных. Лекция 1
PostgreSQL: функциональность
Обычно все матрицы сравнения выглядят примерно так:
PostgreSQL: промышленная разработка баз данных. Лекция 1
PostgreSQL: ограничения
Макс. размер БД — нет ограничения Макс. размер таблицы — 32 TB Макс. размер строки — 1.6 TB Макс. размер поля — 1 GB Макс. колво строк в таблице — нет ограничения Макс. колво столбцов в таблице — 250..1600 Макс. колво индексов — нет ограничения
PostgreSQL: промышленная разработка баз данных. Лекция 1
PostgreSQL – это...
...самая развитая СУБД с открытым кодом ...надежность и устойчивость на очень больших нагрузках ...кроссплатформенность (FreeBSD, Linux, Solaris, Windows,
OS X) ...высокий уровень соответствия ISO/ANSI SQL 92, 99, 2003 ...интерфейсы для Tcl, Perl, C, C++, PHP, ODBC, JDBC,
Embedded SQL in C, Python, Ruby, ... ...расширяемость ...быстродействие
PostgreSQL: промышленная разработка баз данных. Лекция 1
Кто использует
SkypeSkype has been using PostgreSQL as the main DB for most of our business needs right from the start.
Hannu Krosing, Skype
Hi5.com (~60 млн. пользователей; Alexa's traffic rank: 8)
MyYearBook.comWe process over 18,000 queries per second on over 300GB of user data on our PostgreSQL
servers, and those numbers go up every month.
Gavin Roy, CTO of MyYearbook.com
PostgreSQL: промышленная разработка баз данных. Лекция 1
Кто использует: Россия
Рамблер 1C:Предприятие (наряду с MS SQL Server) MirTesen.ru — уже 8.3!
MoiKrug.ru (Яндекс) IRR.ru («Из рук в руки») rabota.ru, price.ru, webalta.ru, РБК, Мастерхост, Информмобил, ...
PostgreSQL: промышленная разработка баз данных. Лекция 1
Кто использует: Россия
udaff.com
PostgreSQL: промышленная разработка баз данных. Лекция 1
PostgreSQL: родословная
2007
PostgreSQL: промышленная разработка баз данных. Лекция 1
INGRES (1974 – н. в.)
University of California, Berkeley – Michael Stonebraker
Открытая система (BSD) К 1980 распространено ~1000 копий Собственный язык QUEL
PostgreSQL: промышленная разработка баз данных. Лекция 1
POSTGRES (1985 – 1993)
University of California, Berkeley – Michael Stonebraker
Открытая система (BSD) Изменённая модель данных (объектнореляционная)
Расширяемость Управление данными, объектами и знаниями Язык POSTQUEL
PostgreSQL: промышленная разработка баз данных. Лекция 1
PostgreSQL (1995 – н. в.)
1994: Выпускники Berkley Andrew You & Jolly Chen
1995: POSTQUEL —> SQL; Postgres95; сообщество
1996: PostgreSQL 1997: «слоны могут помнить», логотип PostgreSQL Global Development Group
PostgreSQL: промышленная разработка баз данных. Лекция 1
11 лет развития PostgreSQL
...1995 – «прошлая жизнь» (Postgres) 1996...1998 – стабильность 1998...2001 – стандарт SQL 2001...н. в. – выход на уровень Enterprise
производительность простота администрирования 24/7 множество проектов «вокруг»
1997
2007
PostgreSQL: промышленная разработка баз данных. Лекция 1
PostgreSQL 8.3
Более 280 патчей Десятки разработчиков из 18 стран 15 месяцев разработки и тестирования
PostgreSQL: промышленная разработка баз данных. Лекция 1
PostgreSQL: основные понятия, возможности и ограничения
PostgreSQL — объектнореляционная система управления базами данных
Модель «клиент/сервер»: PostgreSQLсессия — совместная работа двух процессов: серверный процесс (postgres) клиентский процесс (psql, GUIприложение, вебсервер, утилиты обслуживания и т. д.)
PostgreSQL: промышленная разработка баз данных. Лекция 1
ACID
Основной принцип работы системы — ACID: Atomicity Consistency Isolation Durability
PostgreSQL: промышленная разработка баз данных. Лекция 1
MVCC
Multiversion Concurrency Control (MVCC) используется для организации транзакций
Чтение и запись не конфликтуют! Конфликт только при конкурентных операциях записи
PostgreSQL: промышленная разработка баз данных. Лекция 1
PostgreSQL – реляционная система
Основные понятия реляционной теории: тип данных домен атрибут схема отношения схема базы данных кортеж отношение
PostgreSQL: промышленная разработка баз данных. Лекция 1
PostgreSQL – реляционная система.Термины, применяемые на практике
Основные понятия реляционной теории: тип данных домен атрибут — столбец схема отношения схема базы данных кортеж — строка (tuple — версия строки в хранилище)
отношение — отношение, таблица
Кроме того:Кластер (cluster) — коллекция баз данных
Схема (schema) группа объектов БД, пространство имён
PostgreSQL: промышленная разработка баз данных. Лекция 1
PostgreSQL – реляционная система.Фундаментальные свойства отношений
Отсутствие кортежейдубликатов Отсутствие упорядоченности кортежей Отсутствие упорядоченности атрибутов Атомарность значений атрибутов
... на практике реально «в силе» только второе свойство
PostgreSQL: промышленная разработка баз данных. Лекция 1
PostgreSQL – реляционная система.Реляционная модель данных
(1) Структурная часть модели нормализованное nарное отношение — таблица
(2) Манипуляционная часть модели реляционная алгебра, реляционное исчисление —
SQL (3) Целостная часть
целостность сущности — PK ссылочная целостность — FK
PostgreSQL: промышленная разработка баз данных. Лекция 1
Литература
● PostgreSQL Reference Manual - Volume 1: SQL Language Reference ―The PostgreSQL Global Development Group, 2007.
● Дейт, К.. Введение в системы баз данных. 7-е изд. ― М., СПб.: Вильямс, 2000.
● Кузнецов, С. Д. Основы баз данных ― М.: Интернет-университетинформационных технологий, http://intuit.ru, 2005.
● Бартунов О. Что такое PostgreSQL? // Корпоративные базы данных-2005― М.: ЦИТ, 2005. http://www.citforum.ru/database/postgres/what_is/
PostgreSQL: промышленная разработка баз данных. Лекция 1
Литература: рекомендации для данной лекции
● PostgreSQL Reference Manual — Preface, Part I
● Дейт, К.. Введение в системы баз данных — Главы 1-8 (внимание: гл. 3, 4, 5, 6, 8)
● Кузнецов, С. Д. Основы баз данных — Лекции 1-5 (внимание: лекция 2)
● Бартунов О. Что такое PostgreSQL? ― Полностью
PostgreSQL: промышленная разработка баз данных. Лекция 1
Контакты
● Blog: http://nikolay.samokhvalov.com
● XMPP/GTalk: [email protected]
● Skype: samokhvalov & postgresmen
● +7 905 783 9804