title

text

Viktor Egorov
Viktor Egorov Data Egret
10:00 07 February
45 мин

PostgreSQL and ORACLE Architecture — comparative review

This talk will compare architectural decisions that are made in PostgreSQL vs. ORACLE and will provide a closer look at the following components of both DBMSs:

  1. The ins and outs of the working DBMS, its processes and their function
  2. Structures that DBMS manages
  3. Durability mechanics of each respective DBMS
  4. MVCC design and database restoration options
  5. Storage of data on the physical media

Each architectural decision will be evaluated based on the experience with DBMS of choice, ease of administration and future improvement possibilities.

This review will demonstrate the notable strengths of PostgreSQL as an open-source DBMS compared to the commercial solution in many cases.

This talk will be interesting for:

  • PostgreSQL users, as it will allow to take a closer look into an alternative DBMS;
  • PostgreSQL administrators, that will be able to see huge administration possibilities that ORACLE offers and that could be adopted in PostgreSQL;
  • PostgreSQL hackers, as Postgres is being actively developed and this talk will review new development segments;
  • Those who are willing to migrate from ORACLE (or any other commercial DBMS) into an open-source project, as this talk will show the features of PostgreSQL compared to the commercial product.

Слайды

Видео

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

  • Kamil Islamov
    Kamil Islamov Stickeroid Ai
    22 мин

    PostgreSQL and MQTT as IoT data processing solution

    MQTT is an effective data exchange protocol for IOT devices. Based on own modified EMQTT plug-in, the IoT project architecture uses PostgreSQL as a central processing and storing system for data coming from sensors in real time. The report will provide an example of the IoT hardware and software platform solution, based up on the MQTT protocol, where PostgreSQL is responsible for key functionality, providing processing, collecting and storage of data from a distributed network of IoT devices.

  • Dmitry Cremer
    Dmitry Cremer МИА "Россия Сегодня"
    22 мин

    Cases for monitoring & troubleshooting at highload PosgreSQL DB

    A database is one of the key components in any information system, requiring the monitoring of multiple metrics. The talk highlights examples and approaches of monitoring and analysis of PostgreSQL performance that allow to minimize the load on the database server from the monitoring and data collection system for the subsequent analysis of problem situations.

    • Quantum effects or as an observer affect the observed system
    • Features of collecting metrics while monitoring the database with Zabbix
    • Data collection for analytics and visualization PostgreSQL queries with rsyslog + kafka + clickhouse + grafana
    • Operational Analysis Tools for DB loglile

  • Игорь Успенский
    Игорь Успенский Rambler&Co
    45 мин

    PostgreSQL SaaS in the Rambler&Co

    Rambler & Co is a lot of publications, services and projects. Appear new and grow existing. This environment requires a reliable, fault-tolerant, scalable, automated system.

    I'll tell you about the structure of our PostgreSQL SaaS, what tools and technologies we use. Quorum of 3 Data Centers. A single entry point for clients based on dynamic routing. Emergency switching of the primary server. Transparent scaling for reading. Create a replica without load on the cluster. Transparent transfer of PostgreSQL cluster to other servers. Update dev environment from prod for development. Backup with compression and the use of multiple CPUs on the side of the database, the restoration of one database from basebackup. Monitoring of sql queries.

  • Nikita Glukhov
    Nikita Glukhov Postgres Professional
    Oleg Bartunov
    Oleg Bartunov Postgres Professional
    45 мин

    Jsonb flexible indexing. Parameterized access methods operator classes.

    Jsonb is a popular data type in PostgreSQL, it provides the web developers an ability to work with ubiquitous json inside the database and use all the power of proven relational database. Fast querying of jsonb data is a challenge for database and PostgreSQL provides several options for indexing jsonb. We present the new way of efficient indexing of jsonb, based on improvement of indexing infrastructure.

    It's known, that json is a greedy data type, it may contains many auxiliary data not interesting for searching and that affects the size of index. Partial index will not helps, since it filters the rows before indexing, while we are interested in extracting of parts of jsonb. Functional indexes on specific keys could introduce too big overhead. We present an improvement of indexing infrastructure, which allows to control the index behaviour by passing parameters to operator class at index creation. For example, to index a user-defined subset of jsonb it is possible to pass to operator class the powerful path expression (either jsonpath of upcoming sql/json or jspath from jsquery extension), which can be used to extract the parts of jsonb tree. That makes index more effective and reduces the overhead of its maintaining.

    Another use of parameterized operator classes is to allow a user to specify parameters instead of hard coding them, for example, the GiST signature size is currently hard coded inside the implementations of several opclasses (tsvector, hstore, intarray, pg_trgm, ltree), while it is natural to use different signature length for different data to have optimal size of index and its performance.

    Full text search on parts of document can be improved by passing labels to the operator class and letting him index only specified parts of document, that allow to avoid currently used recheck of the rows returned by the index.