title

text

Alex Lustin
Alex Lustin SilverBulleters, LLC
: December
45 мин

Docker, PostgreSQL, Production ....

I would like to share experience in runing PostgreSQL in dockerized environments, describe the specific issues and tools you will need to solve them.

  • Which problems could be solved by Docker for PostgreSQL, e.g. PostgreSQLPro.9.6
  • Work of IT team with Docker in development, testing and production environments
    • Using image repository and build servers for image testing
  • Issues in production environment:
    • With network activity
    • With persistent repositories for Docker
    • With additional services
    • With load balancing and fail-safety
  • Running PostgreSQL-base applications, such as:
    • SonarQube
    • Gitlab
    • 1С platform

Слайды

Видео

Другие доклады

  • Dmitry Belyavskiy
    Dmitry Belyavskiy ТЦИ
    22 мин

    Crypto-related parameters of PostgreSQL

    The presentation describes crypto-related parameters of PostgreSQL configuration (both authentication and TLS-protection of the connection to DB) and what do they mean

  • Konstantin Knignik
    Konstantin Knignik Postgres Professional
    45 мин

    VOPS: vectorized executor for Postgres

    PostgreSQL looks very competitive with other mainstream databases on OLTP workload (execution of large number of simple queries). But on OLAP queries, requiring processing of larger volumes of data, DBMS-es oriented on analytic queries processing can provide an order of magnitude better speed. The following factors limit Postgres OLAP performance:

    • Unpacking tuple overhead (tuple_deform)
    • Interpretation overhead (Postgres executor has to interpret query execution plan)
    • Abstraction penalty (support of abstract data types)
    • Pull model overhead (operators are pulling tuples from heap page one-by-one, resulting numerous repeated accesses to the page)
    • MVCC overhead (extra per-tuple storage + visibility check cost)

    All this issues can be solved using vectorized executor, which proceed bulk of values at once. In this presentation I will show how vector operations can be implemented in Postgres as standard Postgres extension, not affecting Postgres core. The approach is based on introducing special types: tile types, which can be used instead of normal (scalar) types and implement vector operations. Postgres extension mechanism, such as UDT (user-defined type), FDW (foreign data wrappers), executor hooks are used to let users work with vectorized tables almost in the same way as with normal tables. But more than 10 times faster because of vector operations.

  • Марк Локшин
    Марк Локшин Мэйл Ру
    45 мин

    Migration of high loaded game projects from MySQL into PostgreSQL

    The speaker will share his experience of transferring high-loaded game projects that were originally developed to work with MySQL into PostgreSQL. Problems that had been expected and ones that were actually faced. Tricky bugs that were found in production servers after the migration. Solutions that were used to deal with problems. PostgreSQL features that were very useful and desirable ones that were missing.

  • Alexander Korotkov
    Alexander Korotkov Postgres Professional
    45 мин

    Pluggable storages

    Pluggable storages is hot subject in PostgreSQL development. The period of heated debates about whether we need them is over. Skepticism about pluggable storages, based on concern that they may be source of inconsistent behavior, was weakened after criticism of PostgreSQL MVCC implementation from Uber side. It became widely understandable that pluggable storages are needed at least for an alternative MVCC implementation. And that is one of way-points for pluggable storages interface design.

    At the moment, work on pluggable storages is in the practical stage. There is a thread is pgsql-hackers where few people are developing patchset and several people are doing review.

    This talk will cover following subjects:

    • overview of pluggable storages interface;
    • changes in PostgreSQL core required to implement this interface;
    • current and potential implementations of pluggable storages including heap with undo-log and in-memory OLTP engine;
    • current state of patchset and prospective of its commit
    • further development of interface allowing more possibilities in pluggable storages (columnar, index-organized, LSM and so on).