SlideShare ist ein Scribd-Unternehmen logo
1 von 55
Downloaden Sie, um offline zu lesen
Новый PostgreSQL 8.3



  SHIFT_expectations

     Иван Золотухин
Иван Золотухин
            Новый PostgreSQL 8.3




Ну, 8.3 - понятно
Иван Золотухин
         Новый PostgreSQL 8.3




А что такое
PostgreSQL?
Иван Золотухин
            Новый PostgreSQL 8.3




Самая продвинутая
open-source СУБД,
Иван Золотухин
          Новый PostgreSQL 8.3




   быстрая и
функциональная
Иван Золотухин
                Новый PostgreSQL 8.3




Подробности — в буклете
Иван Золотухин
             Новый PostgreSQL 8.3




ОК, PostgreSQL 8.3
Иван Золотухин
        Новый PostgreSQL 8.3




15 месяцев
Иван Золотухин
          Новый PostgreSQL 8.3




   десятки
разработчиков
Иван Золотухин
       Новый PostgreSQL 8.3




18 стран
Иван Золотухин
        Новый PostgreSQL 8.3




280 патчей
Иван Золотухин
            Новый PostgreSQL 8.3




титанический труд
Иван Золотухин
             Новый PostgreSQL 8.3




совершенная система
Иван Золотухин
            Новый PostgreSQL 8.3




Как мы мигрировали
    МирТесен.ру
Иван Золотухин
             Новый PostgreSQL 8.3




дело было в четверг
    вечером...
Иван Золотухин
             Новый PostgreSQL 8.3




...в пятницу днем я
       поседел
Иван Золотухин
                 Новый PostgreSQL 8.3




Я не поверил своим глазам
Иван Золотухин
                 Новый PostgreSQL 8.3




Я не поверил своим глазам
Иван Золотухин
                 Новый PostgreSQL 8.3




Я не поверил своим глазам
Иван Золотухин
                 Новый PostgreSQL 8.3




Я не поверил своим глазам
Иван Золотухин
             Новый PostgreSQL 8.3




...и только потом я
 поседел обратно
Иван Золотухин
          Новый PostgreSQL 8.3




Ммм, супер!
А как оно так
получилось?
Иван Золотухин
                Новый PostgreSQL 8.3




      HOT
   (читается ХОТ)
Heap Only Tuples
Иван Золотухин
                                                           Новый PostgreSQL 8.3




                                Было
                 Index      1      2   3



            Page Header         Item1 Ptr Item2 Ptr Item3 Ptr




Heap Page
      8kb


                                                 Item 3: row #1, v3

              Item 2: row #1, v2                 Item 1: row #1, v1
Иван Золотухин
                                                           Новый PostgreSQL 8.3




                                Стало
                 Index      1      3



            Page Header         Item1 Ptr Item2 Ptr Item3 Ptr




Heap Page
      8kb




              Item 2: row #1, v2                 Item 3: row #1, v3
Иван Золотухин
                     Новый PostgreSQL 8.3




             HOT

-   ускорение UPDATE
-   ускорение VACUUM
-   ускорение SELECT COUNT(*)
-   уменьшение размера таблиц
Иван Золотухин
             Новый PostgreSQL 8.3




Asynchronous commit
Иван Золотухин
         Новый PostgreSQL 8.3




Асинхронные
 транзакции
Иван Золотухин
            Новый PostgreSQL 8.3




        SET
synchronous_commit
      TO OFF;
Иван Золотухин
             Новый PostgreSQL 8.3




Checkpoint smoothing
Иван Золотухин
            Новый PostgreSQL 8.3




   Сглаживание
контрольных точек
Иван Золотухин
                            Новый PostgreSQL 8.3




Synchronized Scans


Сессия 1

Сессия 2



           синхронизированный просмотр
Иван Золотухин
            Новый PostgreSQL 8.3




Autovacuum включён
   по умолчанию
Иван Золотухин
            Новый PostgreSQL 8.3




Запуск нескольких
    процессов
   autovacuum
Иван Золотухин
            Новый PostgreSQL 8.3




Заметная (до 10%!)
экономия дискового
   пространства
Иван Золотухин
          Новый PostgreSQL 8.3




  Читающие
транзакции не
  мотают xid
Иван Золотухин
           Новый PostgreSQL 8.3




Значит, светлое
будущее совсем
    близко!
 (Master-Slave)
Иван Золотухин
          Новый PostgreSQL 8.3




Top-N Sorting
Иван Золотухин
             Новый PostgreSQL 8.3




Значительно ускорен
 ORDER BY ... LIMIT
Иван Золотухин
             Новый PostgreSQL 8.3




Миграция tsearch2 в
      ядро!
Иван Золотухин
            Новый PostgreSQL 8.3




Это фантастика:
1.5МБ (в гзипе),
   патч v.59
Иван Золотухин
         Новый PostgreSQL 8.3




Поддержка XML
Иван Золотухин
            Новый PostgreSQL 8.3




 Тип данных, DTD,
публикация, XPath,
     индексы
Иван Золотухин
        Новый PostgreSQL 8.3




И даже это
еще не всё
Иван Золотухин
                      Новый PostgreSQL 8.3




  Автоматическая инвалидация
плана, RETURN QUERY, Updatable
    Cursors, ORDER BY NULLS
     FIRST/LAST, NULL в GiST,
 GUID/UUID, enum, композитные
массивы, больше информации в
     EXPLAIN, GSSAPI (Active
  Directory), contrib/pg_standby
Иван Золотухин
                     Новый PostgreSQL 8.3




ALTER FUNCTION log_data(text)
    COST 10000 ROWS 1;

 ALTER FUNCTION log_data(text)
SET synchronous_commit TO OFF;

    CREATE TABLE dict2 (LIKE
dictionary INCLUDING INDEXES);
Иван Золотухин
            Новый PostgreSQL 8.3




Производительность
   на платформе
      Windows
Иван Золотухин
           Новый PostgreSQL 8.3




Сборка с помощью
  Microsoft VC++
Иван Золотухин
              Новый PostgreSQL 8.3




Debugger + profiler
Иван Золотухин
           Новый PostgreSQL 8.3




И многие другие
сопутствующие
    проекты
     (skype)
Иван Золотухин
           Новый PostgreSQL 8.3




Промышленный тест
      от Sun
 (опубликовано на
     spec.org)
Иван Золотухин
            Новый PostgreSQL 8.3




PostgreSQL быстрее
 MySQL и сравним с
       Oracle
Иван Золотухин
              Новый PostgreSQL 8.3




    PostgreSQL
    при той же
производительности
 дешевле на
   $118 500
Иван Золотухин
             Новый PostgreSQL 8.3




PostgreSQL — это не
только модно, но и
      быстро
Иван Золотухин
                Новый PostgreSQL 8.3




   Задавайте вопросы


 iz@postgresmen.ru
http://postgresmen.ru

Weitere ähnliche Inhalte

Andere mochten auch

#noBackend, или Как выжить в эпоху толстеющих клиентов
#noBackend, или Как выжить в эпоху толстеющих клиентов#noBackend, или Как выжить в эпоху толстеющих клиентов
#noBackend, или Как выжить в эпоху толстеющих клиентовNikolay Samokhvalov
 
2014.12.23 Александр Андреев, Parallels
2014.12.23 Александр Андреев, Parallels2014.12.23 Александр Андреев, Parallels
2014.12.23 Александр Андреев, ParallelsNikolay Samokhvalov
 
PostgreSQL Moscow Meetup - September 2014 - Nikolay Samokhvalov
PostgreSQL Moscow Meetup - September 2014 - Nikolay SamokhvalovPostgreSQL Moscow Meetup - September 2014 - Nikolay Samokhvalov
PostgreSQL Moscow Meetup - September 2014 - Nikolay SamokhvalovNikolay Samokhvalov
 
#PostgreSQLRussia в банке Тинькофф, доклад №1
#PostgreSQLRussia в банке Тинькофф, доклад №1#PostgreSQLRussia в банке Тинькофф, доклад №1
#PostgreSQLRussia в банке Тинькофф, доклад №1Nikolay Samokhvalov
 
PostgreSQL Moscow Meetup - September 2014 - Ilya Kosmodemyansky
PostgreSQL Moscow Meetup - September 2014 - Ilya KosmodemyanskyPostgreSQL Moscow Meetup - September 2014 - Ilya Kosmodemyansky
PostgreSQL Moscow Meetup - September 2014 - Ilya KosmodemyanskyNikolay Samokhvalov
 
2014.10.15 Мурат Кабилов, Avito.ru #PostgreSQLRussia
2014.10.15 Мурат Кабилов, Avito.ru #PostgreSQLRussia2014.10.15 Мурат Кабилов, Avito.ru #PostgreSQLRussia
2014.10.15 Мурат Кабилов, Avito.ru #PostgreSQLRussiaNikolay Samokhvalov
 
2014.10.15 Сергей Бурладян, Avito.ru
2014.10.15 Сергей Бурладян, Avito.ru2014.10.15 Сергей Бурладян, Avito.ru
2014.10.15 Сергей Бурладян, Avito.ruNikolay Samokhvalov
 

Andere mochten auch (8)

#noBackend, или Как выжить в эпоху толстеющих клиентов
#noBackend, или Как выжить в эпоху толстеющих клиентов#noBackend, или Как выжить в эпоху толстеющих клиентов
#noBackend, или Как выжить в эпоху толстеющих клиентов
 
2014.12.23 Александр Андреев, Parallels
2014.12.23 Александр Андреев, Parallels2014.12.23 Александр Андреев, Parallels
2014.12.23 Александр Андреев, Parallels
 
PostgreSQL Moscow Meetup - September 2014 - Nikolay Samokhvalov
PostgreSQL Moscow Meetup - September 2014 - Nikolay SamokhvalovPostgreSQL Moscow Meetup - September 2014 - Nikolay Samokhvalov
PostgreSQL Moscow Meetup - September 2014 - Nikolay Samokhvalov
 
#PostgreSQLRussia в банке Тинькофф, доклад №1
#PostgreSQLRussia в банке Тинькофф, доклад №1#PostgreSQLRussia в банке Тинькофф, доклад №1
#PostgreSQLRussia в банке Тинькофф, доклад №1
 
PostgreSQL Moscow Meetup - September 2014 - Ilya Kosmodemyansky
PostgreSQL Moscow Meetup - September 2014 - Ilya KosmodemyanskyPostgreSQL Moscow Meetup - September 2014 - Ilya Kosmodemyansky
PostgreSQL Moscow Meetup - September 2014 - Ilya Kosmodemyansky
 
2014.10.15 Мурат Кабилов, Avito.ru #PostgreSQLRussia
2014.10.15 Мурат Кабилов, Avito.ru #PostgreSQLRussia2014.10.15 Мурат Кабилов, Avito.ru #PostgreSQLRussia
2014.10.15 Мурат Кабилов, Avito.ru #PostgreSQLRussia
 
2014.10.15 Сергей Бурладян, Avito.ru
2014.10.15 Сергей Бурладян, Avito.ru2014.10.15 Сергей Бурладян, Avito.ru
2014.10.15 Сергей Бурладян, Avito.ru
 
20071113 Msu Vasenin Seminar
20071113 Msu Vasenin Seminar20071113 Msu Vasenin Seminar
20071113 Msu Vasenin Seminar
 

Mehr von Nikolay Samokhvalov

Эксперименты с Postgres в Docker и облаках — оптимизация настроек и схемы ва...
 Эксперименты с Postgres в Docker и облаках — оптимизация настроек и схемы ва... Эксперименты с Postgres в Docker и облаках — оптимизация настроек и схемы ва...
Эксперименты с Postgres в Docker и облаках — оптимизация настроек и схемы ва...Nikolay Samokhvalov
 
Промышленный подход к тюнингу PostgreSQL: эксперименты над базами данных
Промышленный подход к тюнингу PostgreSQL: эксперименты над базами данныхПромышленный подход к тюнингу PostgreSQL: эксперименты над базами данных
Промышленный подход к тюнингу PostgreSQL: эксперименты над базами данныхNikolay Samokhvalov
 
The Art of Database Experiments – PostgresConf Silicon Valley 2018 / San Jose
The Art of Database Experiments – PostgresConf Silicon Valley 2018 / San JoseThe Art of Database Experiments – PostgresConf Silicon Valley 2018 / San Jose
The Art of Database Experiments – PostgresConf Silicon Valley 2018 / San JoseNikolay Samokhvalov
 
Nancy CLI. Automated Database Experiments
Nancy CLI. Automated Database ExperimentsNancy CLI. Automated Database Experiments
Nancy CLI. Automated Database ExperimentsNikolay Samokhvalov
 
#RuPostgresLive 4: как писать и читать сложные SQL-запросы
#RuPostgresLive 4: как писать и читать сложные SQL-запросы#RuPostgresLive 4: как писать и читать сложные SQL-запросы
#RuPostgresLive 4: как писать и читать сложные SQL-запросыNikolay Samokhvalov
 
#RuPostgresLive 4: как писать и читать сложные SQL-запросы
#RuPostgresLive 4: как писать и читать сложные SQL-запросы#RuPostgresLive 4: как писать и читать сложные SQL-запросы
#RuPostgresLive 4: как писать и читать сложные SQL-запросыNikolay Samokhvalov
 
Database First! О распространённых ошибках использования РСУБД
Database First! О распространённых ошибках использования РСУБДDatabase First! О распространённых ошибках использования РСУБД
Database First! О распространённых ошибках использования РСУБДNikolay Samokhvalov
 
#RuPostges в Yandex, эпизод 3. Что же нового в PostgreSQL 9.6
#RuPostges в Yandex, эпизод 3. Что же нового в PostgreSQL 9.6#RuPostges в Yandex, эпизод 3. Что же нового в PostgreSQL 9.6
#RuPostges в Yandex, эпизод 3. Что же нового в PostgreSQL 9.6Nikolay Samokhvalov
 
SFPUG 2015.11.20 lightning talk "PostgreSQL in Russia"
SFPUG 2015.11.20 lightning talk "PostgreSQL in Russia"SFPUG 2015.11.20 lightning talk "PostgreSQL in Russia"
SFPUG 2015.11.20 lightning talk "PostgreSQL in Russia"Nikolay Samokhvalov
 
2014.10.15 блиц-доклад PostgreSQL kNN search
2014.10.15 блиц-доклад PostgreSQL kNN search2014.10.15 блиц-доклад PostgreSQL kNN search
2014.10.15 блиц-доклад PostgreSQL kNN searchNikolay Samokhvalov
 
2014.09.24 история небольшого успеха с PostgreSQL (Yandex)
2014.09.24 история небольшого успеха с PostgreSQL (Yandex)2014.09.24 история небольшого успеха с PostgreSQL (Yandex)
2014.09.24 история небольшого успеха с PostgreSQL (Yandex)Nikolay Samokhvalov
 
20080424 Cdb2008 Postgresql8.3 Samokhvalov
20080424 Cdb2008 Postgresql8.3 Samokhvalov20080424 Cdb2008 Postgresql8.3 Samokhvalov
20080424 Cdb2008 Postgresql8.3 SamokhvalovNikolay Samokhvalov
 
20080330 Postgresqlconference2008 Pg In Web2.0 Samokhvalov
20080330 Postgresqlconference2008 Pg In Web2.0 Samokhvalov20080330 Postgresqlconference2008 Pg In Web2.0 Samokhvalov
20080330 Postgresqlconference2008 Pg In Web2.0 SamokhvalovNikolay Samokhvalov
 

Mehr von Nikolay Samokhvalov (14)

Эксперименты с Postgres в Docker и облаках — оптимизация настроек и схемы ва...
 Эксперименты с Postgres в Docker и облаках — оптимизация настроек и схемы ва... Эксперименты с Postgres в Docker и облаках — оптимизация настроек и схемы ва...
Эксперименты с Postgres в Docker и облаках — оптимизация настроек и схемы ва...
 
Промышленный подход к тюнингу PostgreSQL: эксперименты над базами данных
Промышленный подход к тюнингу PostgreSQL: эксперименты над базами данныхПромышленный подход к тюнингу PostgreSQL: эксперименты над базами данных
Промышленный подход к тюнингу PostgreSQL: эксперименты над базами данных
 
The Art of Database Experiments – PostgresConf Silicon Valley 2018 / San Jose
The Art of Database Experiments – PostgresConf Silicon Valley 2018 / San JoseThe Art of Database Experiments – PostgresConf Silicon Valley 2018 / San Jose
The Art of Database Experiments – PostgresConf Silicon Valley 2018 / San Jose
 
Nancy CLI. Automated Database Experiments
Nancy CLI. Automated Database ExperimentsNancy CLI. Automated Database Experiments
Nancy CLI. Automated Database Experiments
 
#RuPostgresLive 4: как писать и читать сложные SQL-запросы
#RuPostgresLive 4: как писать и читать сложные SQL-запросы#RuPostgresLive 4: как писать и читать сложные SQL-запросы
#RuPostgresLive 4: как писать и читать сложные SQL-запросы
 
#RuPostgresLive 4: как писать и читать сложные SQL-запросы
#RuPostgresLive 4: как писать и читать сложные SQL-запросы#RuPostgresLive 4: как писать и читать сложные SQL-запросы
#RuPostgresLive 4: как писать и читать сложные SQL-запросы
 
Database First! О распространённых ошибках использования РСУБД
Database First! О распространённых ошибках использования РСУБДDatabase First! О распространённых ошибках использования РСУБД
Database First! О распространённых ошибках использования РСУБД
 
2016.10.13 PostgreSQL in Russia
2016.10.13 PostgreSQL in Russia2016.10.13 PostgreSQL in Russia
2016.10.13 PostgreSQL in Russia
 
#RuPostges в Yandex, эпизод 3. Что же нового в PostgreSQL 9.6
#RuPostges в Yandex, эпизод 3. Что же нового в PostgreSQL 9.6#RuPostges в Yandex, эпизод 3. Что же нового в PostgreSQL 9.6
#RuPostges в Yandex, эпизод 3. Что же нового в PostgreSQL 9.6
 
SFPUG 2015.11.20 lightning talk "PostgreSQL in Russia"
SFPUG 2015.11.20 lightning talk "PostgreSQL in Russia"SFPUG 2015.11.20 lightning talk "PostgreSQL in Russia"
SFPUG 2015.11.20 lightning talk "PostgreSQL in Russia"
 
2014.10.15 блиц-доклад PostgreSQL kNN search
2014.10.15 блиц-доклад PostgreSQL kNN search2014.10.15 блиц-доклад PostgreSQL kNN search
2014.10.15 блиц-доклад PostgreSQL kNN search
 
2014.09.24 история небольшого успеха с PostgreSQL (Yandex)
2014.09.24 история небольшого успеха с PostgreSQL (Yandex)2014.09.24 история небольшого успеха с PostgreSQL (Yandex)
2014.09.24 история небольшого успеха с PostgreSQL (Yandex)
 
20080424 Cdb2008 Postgresql8.3 Samokhvalov
20080424 Cdb2008 Postgresql8.3 Samokhvalov20080424 Cdb2008 Postgresql8.3 Samokhvalov
20080424 Cdb2008 Postgresql8.3 Samokhvalov
 
20080330 Postgresqlconference2008 Pg In Web2.0 Samokhvalov
20080330 Postgresqlconference2008 Pg In Web2.0 Samokhvalov20080330 Postgresqlconference2008 Pg In Web2.0 Samokhvalov
20080330 Postgresqlconference2008 Pg In Web2.0 Samokhvalov
 

20080415 Rit2008 Postgresql8.3 Zolotukhin