みなさんこんにちは! 過去1年はPostgresのユーザーと開発者にとって非常に忙しかった。 そして2018年は、これほど面白くなく活気に満ちたものになることを約束します。 カットの下で、コミュニティにとって最初の注目度の高いイベントの1つであるPGConf.Russia 2018と、昨年のAvito DBAチームの記憶に残っていることについてお話します。
PGConf.Russia 2018:発表
2月5日から8日まで、モスクワ州立大学の経済学部の敷地で。 M.V. ロモノソフは、 PGConf.Russia 2018を開催します 。 これは、PostgreSQLのオープンDBMSに関する国際的な技術会議であり、毎年500人以上の開発者、データベース管理者、ITマネージャーが集まり、経験と専門的なコミュニケーションを交換していることを思い出させてください。 このプログラムには、一流の国際専門家によるマスタークラス、3つのテーマストリームのレポート、ベストプラクティスとエラー分析の例、開発者ラウンジ、聴衆からの電撃戦レポートが含まれています。
プログラム
一般的に、テーマレポートの3つのストリームから選択する必要があるため、 プログラムを慎重に研究することを全員に勧めます。 ここに私が間違いなく到達しようとするレポートのリストがあります。
PG 11では何が期待できますか?
2017年には、多くの興味深い新機能を備えた新しいPostgreSQL 10がリリースされました。 ユーザーがそれらをどのように認識し、どのように使用し始めたのか、新しい第11バージョンで何を期待するのかを理解することは非常に重要です。 オレグ・バルトゥノフは、これらの問題や他の多くの問題について、彼の報告中に開催される会議で検討することを約束しました。
Credereum-ブロックチェーンをサポートするPostgres
Alexander Korotkovは、ブロックチェーンの証明可能性と不変性を従来のDBMSのパフォーマンスと効率性と組み合わせる方法を説明します。
外部攻撃からPostgreSQLを保護する
Bruce Momgian-攻撃者がパスワードを盗み、リクエストとその結果を確認し、セッションを置き換えて偽データを返す方法について
マスタークラス:Patroniを使用した高可用性PostgreSQLクラスターの管理
Alexey KlyukinとAlexander Kukushkinが、Patroniの仕組みを詳しく説明し、それに基づいてアクセスしやすいクラスターの構成を示し、さまざまな追加機能を導入して問題を診断します。
最新のPostgreSQL高可用性
PostgreSQLの自動クラッシュ解決を実装することを考えていて、マスターサーバーが落ちて予約に切り替える必要があるために夜間に呼び出されたくない場合は、vlvaroHernándezのレポートをお見逃しなく。PostgreSQLHAのソリューションの比較レビューを行います。
プラグ可能なストレージ
PostgreSQLのプラガブルストレージのトピックは、すでに言い替えになっています。 このレポートでは、Alexander Korotkovは次の問題を検討します。接続されたリポジトリの結果のインターフェイスの概要。 このインターフェイスの実装に必要なPostgreSQLカーネルの変更。 アンドゥログおよびインメモリOLTPエンジンを備えたヒープを含む、このインターフェイスの現在および潜在的なアプリケーション。 パッチの現在の状態とカーネルでのパッチの採用の見通し。 プラグ可能なストレージの機能を拡張するためのインターフェースのさらなる開発(カラムナー、インデックス編成、LSMなど)。
さらに、聴衆からの電撃のセッションを待っています。 レポートを申請する時間がない場合は、経験を共有する機会があります。 そしてもちろん、プログラムには他にも非常に興味深いパフォーマンスがたくさんあります。
PGConf.Russia 2018でのAvito
会議の設立以来、DBA Avitoは常に会議に参加しています。 今回は、「 PostgreSQL 10でのデータリカバリに論理レプリケーションを使用するケース 」という調査結果を共有します。 このレポートは、私、Mikhail Tyurin、およびSergey BurladyanがPostgreSQL 10のアルファ版がリリースされて今日に至るまで実施された調査に基づいています。
レポートでは、Mikhail Tyurinと私は、分散データ処理システムのLondiste(特にPGQ)の災害復旧とマッチングのケースを、PostgreSQL 10の新しい論理レプリケーションサブシステムに実装する方法を示します。自明でないソリューション。
10-keで論理レプリケーションをセットアップするのと同じくらい簡単に、リカバリメカニズムを実装しやすくするために、コミュニティで多くの問題を開くことができます。 決定の実装は、レプリケーションキューのイベントの再生、レプリケーションソースに対するサブスクライバーイベントの受信の位置の変更、サブスクライバーを到達不能な「未来」から事故後に受信者に対して「過去」にあるソースの位置に「巻き戻す」ことに関連しています。
- 別のサブスクライバからのサブスクライバの再初期化。
- ソースREDOメカニズム-「巻き戻し」レプリケーションキューの実装。
- UNDOメカニズム-レプリケーションのコンシューマ側でのリカバリの実装。
AvitoとPostgreSQL:Retro 2017
今後のイベントをお待ちしていますが、2017年、Postgresコミュニティの生涯、そして(Avito)の参加についてお話しします。
2017年3月、PGConf.Russia 2017で、Dmitry Vaginは、Avitoがデータベース負荷を収集および監視する方法について話しました。 このレポートから、ストアドプロシージャからGrafanaにメトリックを送信し、Grafanaに表示されるpg_stat *メトリックを収集する方法を学習できます。 人生の例-このビデオでは 。
2017年5月、長年の夢を実現し、カナダのオタワで開催されたPGCon 2017を訪れました。 これは、2007年以来開催されているPostgreSQLのユーザーおよび開発者による最初の年次会議です。
同僚とのミーティング、議論、関係の構築、貴重な情報の学習、そして原則としてPostgreSQLで発生する仕事について話すための非常に雰囲気のある場所です。 Unconference Dayはあなた自身について最も鮮明な印象を残し、一般的に会議全体は同僚や友人の大きな会議のようです。
最も記憶に残る報告の1つ: 腐敗戦争のストーリー現実の腐敗の問題と回復 。 そして最後に-ダンランジールからのチャリティーオークション 。
この会議に参加する場合は、このイベントにとどまってください-信じてください、たくさんの印象があります。
同僚のViktor Yagofarovは、 PG DAY Russia 17 、 PostgresOpen 2017 、 Swiss PGDay 2017で 「1台のマシンで1秒あたりのPgBouncerと20,000トランザクション:微調整、ハッキング、一般的および異常な問題の解決」というレポートを作成しました 。
スイスPGDay 2017
...そして、PG DAY RUSSIAとPGConf.Russiaの会議は非常に高いレベルの組織とレポートを持ち、多くの点でヨーロッパやアメリカを超えていることにも注目しました。
9月に、一部のブログ読者が覚えているように、PGHACKを組織しました。
この競争は、情報セキュリティの専門家向けのCTFコンテストに少し似ています。 違いは、PGHACKはデータベーススペシャリストが直面するタスクを考慮して開発されたということです。 そして、これは競争だけでなく、専門的なコミュニケーションでもあります。 この形式で同様のテーマイベントを開催している人はいませんでした。これはこの種の最初の競技会です。 参加者のフィードバックから:参加者の100%が再び#PGHACKにアクセスしたいと考えています。
どうだった?
- 多くのPostgres。
- 競争への情熱;
- 参加者の目に火をつける。
- 傍観者のクールな議論。
- 明るい感情と良い気分。
Pkorobeinikovがまとめた独自のプラットフォームに関するストーリーは、 ここで見ることができます 。 Facebookに投稿された写真レポート。 そして、ここに勝者のEnvek による競争の概要とタスクの分析があります。
その後、HL 2017でこのイベントを繰り返しました。
Postgres 10リリースの保留中、Peter Korobeinikovがリリースノートを翻訳しました。
Highload 2017では、Sergey BurladyanとMikhail TyurinとともにLogical ReplicationとAvitoというマスタークラスを開催しました。 それからビデオを見ることができます。
マスタークラスHL 2017後の研究の熱い議論
Nikolai Vorobyovは、ベストプラクティスの展開コードと、plpgsqlからメトリックを収集するツールを共有しました。
- PostgreSQLコードのバージョン管理と展開。 数百のデータベースと数千のストアドプロシージャを作成、テスト、および24x7ハイローダーで迅速にロールバックして死なないようにする機能を備えた多くのサーバーに展開する方法のストーリー 。
- PGメトリクス。 plpgsqlコードからメトリックを収集するか、3行のコードでどのように作業が楽になったか。 リンク: blog 、 pg_metricus_python 、 pg_metricus_c 、 https://pgxn.org/dist/pg_metricus
開発-pgqの上に構築されたPostgreSQL RPCを共有しました 。
Nikolay SamokhvalovとRuPostgres LiveでAvitoの「内部キッチン」について話しました。 テキストのトランスクリプトはここで読むことができます 。
彼らは多くのエラーを診断し、バグレポートでそれらを説明しました:
- バグ#15006:現在のユーザーが「user」の場合、「make check」エラー 。
- スタンバイがいくつかのWALをアーカイブから何度も復元するのはなぜですか? ;
- バグ#14879:テーブル構造の変更とトリガー関数のクエリプランの無効化に関連するバグ 。
- バグ#14699:ステートメントトリガーと論理複製 。
- バグ#14710:Function now()および論理複製 。
- 再:壊れたヒントビット(フリーズ) 。
- setReadOnlyは、pgbouncerおよびトランザクションプーリングモード#848では機能しません 。
- DBE-5693デフォルトのsearch_pathを再度尊重します 。
- Debianバグレポートログ-#868367。 postgresql-common:スタンバイは「configディレクトリで見つかったrecovery.confファイル」で開始できません 。
- トリガー関数のpgカタログキャッシュの無効化 。
pgbouncerを介してListen / Notifyエラーを発見し、Sergey Burladyanがバウンサー用のパッチを作成しました 。
2017年は非常に興味深く実り多かった。 2018年はさらに波乱に富むことを約束します! 彼らが言うように、継続する。 PGConf.Russia 2018でお会いしましょう!