Скачать презентацию Postgre SQL 8 1 и дальше Скачать презентацию Postgre SQL 8 1 и дальше

0516137b515359f330fab3fccfb75ef8.ppt

  • Количество слайдов: 37

Postgre. SQL 8. 1 и дальше. . . Олег Бартунов, Федор Сигаев ГАИШ МГУ Postgre. SQL 8. 1 и дальше. . . Олег Бартунов, Федор Сигаев ГАИШ МГУ

Postgre. SQL - это свободно распространяемая объектно-реляционная система управления базами данных (ORDBMS), наиболее развитая Postgre. SQL - это свободно распространяемая объектно-реляционная система управления базами данных (ORDBMS), наиболее развитая из открытых СУБД в мире и являющаяся реальной альтернативой коммерческим базам данных.

Postgre. SQL произносится как post-gress-Q-L В разговоре часто употребляется postgres (пост-гресс). Также, употребляется сокращение Postgre. SQL произносится как post-gress-Q-L В разговоре часто употребляется postgres (пост-гресс). Также, употребляется сокращение pgsql (пэ-жэ-эс-ку-эль).

Postgre. SQL Генеалогия реляционных СУБД Postgre. SQL Генеалогия реляционных СУБД

Postgre. SQL Сравнение функциональности некоторых СУБД Postgre. SQL Сравнение функциональности некоторых СУБД

Postgre. SQL Некоторые ограничения Postgre. SQL Postgre. SQL Некоторые ограничения Postgre. SQL

Postgre. SQL Postgre. SQL

Postgre. SQL Postgre. SQL

Postgre. SQL Postgre. SQL

Postgre. SQL Postgre. SQL

Postgre. SQL Postgre. SQL

Postgre. SQL Postgre. SQL

Postgre. SQL Postgre. SQL

Postgre. SQL Postgre. SQL

Postgre. SQL Postgre. SQL

Postgre. SQL Postgre. SQL

Postgre. SQL Что нового в Postgre. SQL 8. 1 ? Postgre. SQL Что нового в Postgre. SQL 8. 1 ?

Postgre. SQL Что нового в Postgre. SQL 8. 1 ? ● ● ● SQL Postgre. SQL Что нового в Postgre. SQL 8. 1 ? ● ● ● SQL Двухфазный коммит (2 PC) PREPARE TRANSACTION COMMIT PREPARED ROLLBACK PREPARED JDBC драйвер поддержка XA (JTA)

Postgre. SQL Что нового в Postgre. SQL 8. 1? ● SQL Роли вместо пользователй Postgre. SQL Что нового в Postgre. SQL 8. 1? ● SQL Роли вместо пользователй и групп Управление доступом к объектам базы Database, table, function, language, schema, Tablespace, role Роли могут принадлежать другим ролям Роли могут быть владельцами объектов Роли могут наследоваться ● ALTER ROLE myname SET enable_indexscan TO off; ● ● ● ●

Postgre. SQL Что нового в Postgre. SQL 8. 1? ● ● ● Very large Postgre. SQL Что нового в Postgre. SQL 8. 1? ● ● ● Very large Database Bitmap index (in memory) Оптимизация работы с несколькими индексами Bitmap Index Scan – Bitmap Heap Scan GUC параметр: enable_bitmapscan

Postgre. SQL Q 3 C sky indexing algorithm ● SAI Catalog Access Services Postgre. SQL Q 3 C sky indexing algorithm ● SAI Catalog Access Services

Postgre. SQL Q 3 C Sky indexing algorithm Postgre. SQL Q 3 C Sky indexing algorithm

Postgre. SQL Что нового в Postgre. SQL 8. 1 ? ● ● ● Very Postgre. SQL Что нового в Postgre. SQL 8. 1 ? ● ● ● Very Large Database Table Partitioning Наследование таблиц – table inheritance Улучшение в планировщике CONSTRAIN EXCLUSION GUC параметр: constraint_exclusion (off)

Postgre. SQL Что нового в Postgre. SQL 8. 1 ? ● ● Table Partitioning Postgre. SQL Что нового в Postgre. SQL 8. 1 ? ● ● Table Partitioning (Пример) Создаем таблицы create table a ( i int primary key); create table a 1( check (i >=0 and i<=2000) ) inherits(a); create table a 2( check (i >=2001 and i<=4000) ) inherits(a); create table a 3( check (i >=4001 and i<=6000) ) inherits(a); create index a 1_idx on a 1(i); create index a 2_idx on a 2(i); create index a 3_idx on a 3(i);

Postgre. SQL Что нового в Postgre. SQL 8. 1 ? ● ● Table Partitioning Postgre. SQL Что нового в Postgre. SQL 8. 1 ? ● ● Table Partitioning Заполняем таблицы for ((i=0; i<2000; i++)) do echo $i; done| psql test -c "copy a 1 from stdin; " for ((i=2001; i<4000; i++)) do echo $i; done| psql test -c "copy a 2 from stdin; " for ((i=4001; i<6000; i++)) do echo $i; done| psql test -c "copy a 3 from stdin; "

Postgre. SQL Что нового в Postgre. SQL 8. 1 ? ● ● Table Partitioning Postgre. SQL Что нового в Postgre. SQL 8. 1 ? ● ● Table Partitioning Без CONSTRAINT EXCLUSION test=# explain select * from a where i = 10; QUERY PLAN Result (cost=0. 00. . 42. 70 rows=34 width=4) -> Append (cost=0. 00. . 42. 70 rows=34 width=4) -> Index Scan using a_pkey on a (cost=0. 00. . 4. 82 rows=1 width=4) Index Cond: (i = 10) -> Bitmap Heap Scan on a 1 a (cost=2. 04. . 12. 63 rows=11 width=4) Recheck Cond: (i = 10) -> Bitmap Index Scan on a 1_idx (cost=0. 00. . 2. 04 rows=11 width=0) Index Cond: (i = 10) -> Bitmap Heap Scan on a 2 a (cost=2. 04. . 12. 63 rows=11 width=4) Recheck Cond: (i = 10) -> Bitmap Index Scan on a 2_idx (cost=0. 00. . 2. 04 rows=11 width=0) Index Cond: (i = 10) -> Bitmap Heap Scan on a 3 a (cost=2. 04. . 12. 63 rows=11 width=4) Recheck Cond: (i = 10) -> Bitmap Index Scan on a 3_idx (cost=0. 00. . 2. 04 rows=11 width=0) Index Cond: (i = 10)

Postgre. SQL Что нового в Postgre. SQL 8. 1 ? ● ● Table Partitioning Postgre. SQL Что нового в Postgre. SQL 8. 1 ? ● ● Table Partitioning CONSTRAINT EXCLUSION !!! test=# explain select * from a where i = 10; QUERY PLAN Result (cost=0. 00. . 17. 45 rows=12 width=4) -> Append (cost=0. 00. . 17. 45 rows=12 width=4) -> Index Scan using a_pkey on a (cost=0. 00. . 4. 82 rows=1 width=4) Index Cond: (i = 10) -> a 1 Bitmap Heap Scan on Recheck Cond: (i = 10) -> width=0) (8 rows) Bitmap Index Scan on a (cost=2. 04. . 12. 63 rows=11 width=4) a 1_idx Index Cond: (i = 10) (cost=0. 00. . 2. 04 rows=11

Postgre. SQL Что нового в Postgre. SQL 8. 1 ? ● ● ● Производительность Postgre. SQL Что нового в Postgre. SQL 8. 1 ? ● ● ● Производительность SMP – улучшение конкурентности доступа к разделяемой памяти Clock-sweep алгоритм

Postgre. SQL Что нового в Postgre. SQL 8. 1 ? ● ● Производительность Gi. Postgre. SQL Что нового в Postgre. SQL 8. 1 ? ● ● Производительность Gi. ST (Generalized Search Tree) стал конкурентным ! Gi. ST WAL – восстановление после сбоев Tsearch 2, ltree, intarray, Pos. GIS

Postgre. SQL Что нового в Postgre. SQL 8. 1 ? ● ● Улучшенная поддержка Postgre. SQL Что нового в Postgre. SQL 8. 1 ? ● ● Улучшенная поддержка функций IN, OUT, INOUT, совместимость с ORACLE CREATE FUNCTION foo(IN x integer, INOUT y integer, OUT z integer) AS $$ BEGIN y : = y + 5; z : = x + 5; END; $$ LANGUAGE plpgsql IMMUTABLE STRICT; SELECT foo(10, 20); foo ----(25, 15) (1 row) SELECT (foo(10, 20)). *; y | z ----+---25 | 15 (1 row)

Postgre. SQL Что нового в Postgre. SQL 8. 1 ? ● ● Интегрированный autovacuum Postgre. SQL Что нового в Postgre. SQL 8. 1 ? ● ● Интегрированный autovacuum MVCC -> VACUUM # select xmin, xmax, i from a where i=5999; xmin | xmax | i ----+------+-----185789 | 0 | 5999 # begin; BEGIN =# delete from a where i=5999; DELETE 1 # select xmin, xmax, i from a where i=5999; xmin | xmax | i --------+-----185789 | 185809 | 5999

Postgre. SQL Что ожидается в Postgre. SQL 8. 2 ? Postgre. SQL Что ожидается в Postgre. SQL 8. 2 ?

Postgre. SQL Что ожидается ? ● ● ● ● PITR – незаполненные WAL-логи, встроенная Postgre. SQL Что ожидается ? ● ● ● ● PITR – незаполненные WAL-логи, встроенная репликация Иерархические запросы Updateable view Улучшенная сортировка – 40% Bitmap indices (on-disk) Gin – обобщенный обратный индекс Tsearch 2 – UTF-8, обратный индекс, query rewriting, улучшенная релевация Индексная поддержка any array

Postgre. SQL Что ожидается ? Postgre. SQL Что ожидается ?

Postgre. SQL Что ожидается ? Рецепты Postgre. SQL Алексей Борзов, Олег Бартунов ● Postgre. SQL Что ожидается ? Рецепты Postgre. SQL Алексей Борзов, Олег Бартунов ●

Postgre. SQL ● ● ● Sony Online Entertainment Enterprise DB, 1. 5 mln. Oracle Postgre. SQL ● ● ● Sony Online Entertainment Enterprise DB, 1. 5 mln. Oracle -> Postgre. SQL 8. 1 SUN Microsystems Solaris 10 поддержка 24 x 7 Beeline (Вымпелком) SAI CAS - Catalog Access Service Терабайты vo. astronet. ru Rx 1620 HP RUSSIA Itanium 2, Linux 2. 6

Postgre. SQL Благодарности ● ● РФФИ Astronet (www. astronet. ru), 05 -07 -90225 -в Postgre. SQL Благодарности ● ● РФФИ Astronet (www. astronet. ru), 05 -07 -90225 -в Научная сеть (nature. web. ru), 03 -07 -90187 -в HP Russia