Dmitry Yuhtimovsky
Dmitry Yuhtimovsky Gilev.ru
17:30 04 February
22 мин


PGConf1602_Дмитрий Юхтимовский.pptx


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

  • D
    Dmitry Melnik ИСП РАН
    22 мин

    Speeding up query execution in PostgreSQL using LLVM JIT compiler

    Currently, PostgreSQL uses the interpreter to execute SQL-queries. This yields an overhead caused by indirect calls to handler functions and runtime checks, which could be avoided if the query were compiled into the native code "on-the-fly" (i.e. JIT-compiled): at a run time the specific table structure is known as well as data types used in the query. This is especially important for complex queries, which performance is CPU-bound. At the moment there are two major projects that implement JIT-compilation in PostgreSQL: a commercial database Vitesse DB and an open-source project PGStorm. The former uses LLVM JIT to achieve up to 8x speedup on selected TPC-H benchmarks, while the latter JIT-compiles the query using CUDA and executes it on GPU, which allows to speed up execution of specific query types by an order.

    Our work is dedicated to adding support for SQL query JIT-compilation to PostgreSQL using LLVM compiler infrastructure. In the presentation we'll discuss how JIT-compilation can be used to speed up various stages of query execution in PostgreSQL, and the specifics of translating an SQL query into LLVM bitcode to achieve good performing native code. Also we'll present preliminary results for our JIT-compiler on TPC-H benchmark.

  • Ronan Dunklau
    Ronan Dunklau Dalibo
    45 мин

    Multicorn: writing FDWs in Python

    Multicorn is a generic Foreign Data Wrapper which goal is to simplify development of FDWs by writing them in Python.

    We will see:

    • what is an FDW what Multicorn is trying to solve how to use it, with a brief tour of the FDWs shipping with Multicorn.
    • how to write your own FDW in python, including the new 9.5 IMPORT FOREIGN SCHEMA api.
    • the internals: what Multicorn is doing for you behind the scenes, and what it doesn't

    After a presentation of FDWs in general, and what the Multicorn extension really is, we will take a look at some of the FDWs bundled with Multicorn.

    Then, a complete tour of the Multicorn API will teach you how to write a FDW in python, including the following features:

    • using the table definition
    • WHERE clauses push-down
    • output columns restrictions
    • influencing the planner
    • writing to a foreign table
    • ORDER BY clauses pushdown
    • transaction management

    This will be a hands-on explanation, with code snippets allowing you to build your own FDW in python from scratch.

  • D
    Dennis Ivanov 2ГИС
    22 мин

    Evolution of PostgreSQL usage in 2gis directory API

    • First aquaintance
    • Fight with replication
    • Partitioning and migration
    • Cross data-center use
    • v8, json, jsonb, jsquery
    • Version upgrade

  • Юрий Соболев
    Юрий Соболев ООО "МедиаТех"