最も興味深いPostgreSQLニュースを引き続き紹介します。
ニュース
今月のメインイベントは、もちろん、 フィーチャーフリーズです。 3月のcommitfestは終了します。 PostgreSQL 12のメインルックが決定されました。 さらに改善と修正がありますが、機能の変更はありません。 近い将来のバージョン12の最も重要な機能については、別の出版物を作成します。
「脆弱性」は脆弱ですか?
暗号コードCVE-2019-9193は、コミュニティにとって政治的に重要な懸念の原因を隠しています。 これは9.3で登場したCOPY ... PROGRAMの構築に関するもので、リクエストでOSファイルを実行し、標準入力への書き込みまたは標準プログラム出力からの読み取りを可能にします。
脆弱性が脆弱性でない場合
ただし、古典的なPostgreSQLの古典的なMagnus Hagander は彼のブログで次のように説明しています。
この「脆弱性」は、典型的なUnixシステムではルートとしてログインし、ファイルを作成または編集し、ルートとしてコマンドを実行できるという事実と同等です。 <...>スーパーバイザーとして、COPY ... PROGRAMだけでなく、OS上でファイルを実行できます 。
リリース
pgAdmin4 V4.5
このバージョンではほとんど変更がありません。 その中でも、Python psycopg2 v2.8のアダプターサポート(下記参照)およびESLinterのサポート。 このページからダウンロードできます 。
それ以前は、 pgAdmin4 4.4 (前回のレビュー後にリリース)で35個のバグが修正されました。 4.4の新機能:
- クエリツールのクエリ履歴は、さまざまなセッションから利用できます。
- IDENTITY列のサポート。
- ドキュメントはePub形式で作成できます
- データストレージディレクトリの場合、左側だけでなく、完全な電子メールがベースとして使用されます。
PgAdminページの詳細。
これより前のバージョン4.3では、クエリツールに[コミット]ボタンと[ロールバック]ボタンが追加されました。 これで、コンテナでいくつかのバージョンのPostgreSQLユーティリティを実行できます。 そのバージョンの他の5つの新機能は、 PgAdmin ページにあります 。
レポ
PostgreSQLベースのクラウドrepodsプラットフォームが登場しました。 主な目的は分析です。 データベーススキーマなどの興味深い視覚化。
pg_activity 1.5.0
このバージョンの監視ツールには新しい機能が追加されています。
- 活性化合物の概要;
- アプリケーション名
- アクティブなリクエストのリストをCSVファイルに保存できます。
- PGSERVICEサポート。
- 接続が失われると、PostgreSQLクラスターへの接続を再試行します。
githubとpyriの 両方からダウンロードできます。
バーマン2.7
並行コピーエラーを修正しました。 以前は、並列バックアップで致命的なエラーが発生したため、プロセスを手動で強制終了し、バックアップの失敗の結果からサーバーをクリーンアップする必要がありました。
地理冗長モードで作業している場合、同期中にネットワークが切断されたときにcronが落ちていました。 したがって、次のタスクは実行されませんでした。 また、UTF-8での入出力の操作のバグを修正しました。 sourceforgeでダウンロードする詳細とファイル。
Pgpool-II
バージョン4.0.4がリリースされ、さらに3.7.9、3.6.16、3.5.20、3.4.23もリリースされました。 技術革新から:暗号のクライアントリスト-ssl_ciphersを設定することが可能です。 したがって、Pgpool-IIは対応するPostgreSQL機能をサポートします。 リリースはここにあり、RPMはここ からダウンロードできます 。 「記事」セクションでは、PostgreSQLのベテランである石井達夫による、次のリリースであるPgpool-II 4.1のイノベーションに関する2つの出版物に言及しています。
パドナグ1.2.4
PostgreSQLロールをユーザーおよびActive Directoryグループと同期するためのこのツールの新しいバージョンが登場しました。
- Ubuntu 1804 LTSではなくUbuntu 1604。
- AWS CodeCommitとCodeBuildへの切り替え
- Windows 2012R2との適切な統合のための自動テスト。
- PostgreSQLバージョン9.4まではテストされなくなりました。
temboard 3.0
Dalibo Labs PostgreSQL リモート監視ツールには、データベース、チャート、テーブル、インデックスを監視するメンテナンスプラグインがあります。 ベースの膨張を検出し、VACUUM、ANALYZE、またはREINDEXを効果的に管理できます。
psycopg 2.8
Python用のPostgreSQLアダプターのこのバージョン(Python DB API 2.0を完全に実装)は注目すべきイベントです。前のバージョンは2年前にリリースされました。 このバージョンでは 、とりわけ、登場しました
- Python例外のPostgreSQLエラーマッピング。
- 一部の機能強化により、接続ステータスとクエリ結果情報が充実しました。
- 非同期相互作用と同時実行性の改善。
- 廃止されたバージョンのPython(2.6、3.2、3.3)のサポートの拒否により、コードを大幅に作り直すことができました。
pg2arrow
PostgreSQLクエリを送信し、結果をApache Arrow形式にパックするユーティリティ 。
pgMustard
分析を説明するためのインターフェイス。クエリを高速化するための推奨事項も提供できます。 pgMustard-商用ソフトウェア、7日間の試用期間。 開発者によると、フィードバックは大歓迎です。 バージョン1.0は、PostgreSQL 9.6以降で動作します。
pg_snakeoil 1.0
PostgreSQL ウイルス対策拡張機能 。 スキャンには、PostgreSQLの速度を低下させないClamAVを使用します。
vipsql
psqlで作業するためのVimプラグイン 。
マイグラ
このツールは、差分PostgreSQLスキーマで機能します。
dbdot
データベーススキーマに基づいてDOT記述を生成するコマンドラインユーティリティ 。 さまざまなプラットフォーム用のバイナリパッケージで配布されます。
Zedstore-圧縮されたインコアカラムナーストレージ
これはかなり粗雑なパッチですが、注意する必要があります。 わずか数週間で、カラムストレージが作成されました。 将来的に、PostgreSQLにはさまざまなタイプのプラガブルストレージがあり、tableam(テーブルアクセス方式)パッチはストレージを接続するためのAPIの重要な部分です。 新しいリポジトリの1つはすでによく知られています: Zheap with UNDO、動作中です。 今-円柱状(そしてベクトル化されたコンピューティングのためのVOPS拡張がまだあります )。
記事とブログ
接続プーラーのベンチマーク
Postgresのプラー。 Postgres のさまざまなプラーのパフォーマンスの比較テスト :人気のpgbouncerから始めて、新参者-Odysseyと新しい開発-Postgres Professionalの組み込みプラーまで。 Konstantin Knizhnikによりテスト済み。
命令から宣言への命令
ブルース・モムジャンは、DBMS構造の哲学的トピックについて今でも喜んで語っています。命令型プログラムに変換して実行できる出力)。
ブルースはここで彼の主張を述べ、ピーター・ジオゲガンとクリス・トラヴァースが話したスレッドの議論を参照しました。
監視のためのSQLとNoSQLの統合:PostgreSQLがPrometheusの究極のデータストアである理由
この記事のサブタイトル(短すぎることもありません) では、 「Prometheus、PostgreSQL + TimescaleDB、およびGrafanaを使用してメトリックを保存、分析、視覚化する方法」 について説明しています。
PostgreSQL 11の新機能
PostgreSQL Performance Explained本の著者であるMarkus Winandは、未来(PostgreSQL 12)についてではなく、現在について、「PostgreSQL 11のメインテーマ-ウィンドウ関数」について書いています。 2018年までは、PostgreSQLだけで彼らと戦っていました(オープンソースDBMSについて話す場合)が、それ以降、それらのいくつかは追いついて追い越されました。 そして再び11で、急に前進しました。 図と機能マトリックスを使用した例で説明します。
SQLがNoSQLに勝つ理由と、これがデータの将来にとって意味すること
TimescaleDBのWebサイトには、データ支配をめぐるSQLとNoSQLの戦いの歴史に関する素晴らしい記事があります-70年代に遡り、リレーショナル代数の例です。
PostgreSQLのCTEに注意してください
CTEの危険性に関する独立開発者のHaki Benitaによる記事。 Oracleと比較して、具体化、代替としてのサブクエリ、CTEインライン化、ヒントなどについて説明します。 この記事は秋に公開され、それ以来いくつかの変更が行われていますが、多くの問題が依然として関連しています。
側面に参加
以前はGeneralBitsの人気著者だったElaine Musteinは、JOIN LATERALの機能に関する2ndQuadrantブログ投稿を思い出します。 また、制限、関連する要求の監視、およびJOIN LATERALを使用する意味がある場所、そうでない場所についても説明します。
Postgres-XLおよびグローバルMVCC
NTTで働き、2ndQuadrantに移行した鈴木浩一(鈴木zuki一) は 、分散トランザクションについて興味深い質問をし、今後の記事でそれらを議論する予定です。
PostgreSQL 12を待機しています-並行して再インデックスします
Depecz、つまりHubert Lubaszewskiは、この重要な技術革新の使用例を示し、例を挙げています。
PostGISのGeoJSON機能
Paul Ramseyが、PostgreSQLの既存のツールと独自の短いスクリプトからテーブルをGeoJSONに変換する方法について説明します。
PostgreSQLデータベースで監視するメトリック
この記事は別の記事のテーマである「ガイド:TelegrafとInfluxDBを使用してPostgreSQLを監視する方法」です。
SQL Server DBAのPostgreSQL:ツールの悪臭
この記事では、Postgresにあまり忠実ではありません-「PostgreSQL管理ツールは腐っています」-MS SQLのバックグラウンドを持つ人の観察。 著者は、ツールキットの移行MS SQL-> PostgreSQLの相対的貧困(私は穏やかな言葉を持っています)の主な貧困を考慮し、DBMS自体の欠点を考慮しません。 したがって、PgAdminだけでなく、DataGripとNovicatについても話します。
共有関係キャッシュとステートメントレベルの負荷分散
PostgreSQLとPgpool で 遊ぶ彼のブログで、石井龍夫は 、バージョン4.1で登場するPgpool-IIプロセスで共有されるシステムカタログキャッシュについて書いています。
続けるために-Pgpool-II 4.1ではセッションレベルで可能な負荷分散について話しています。 動作は、pgpool.confの新しいパラメーターstatement_level_load_balanceによって決定されます。
カンファレンス
Saint HighLoad ++ 2019(サンクトペテルブルク)
会議では、彼らは未来について多くのことを話しました。 Oleg Bartunovが今後のバージョンの技術革新を要約したレポートのスライドを以下に示します。 会議は4月8日から9日に開催されました。
ドイツ語を話すPostgreSQL Conference 2019
ドイツ語を練習してライプツィヒを訪れたい人のために: この会議は5月10日に開催されます。
PGDayワルシャワ
この会議は、5月14日のOpenSource Dayのコンテキストで開催されます。
PGDay.IT 2019
イタリアPGデーは 5月16〜17日にボローニャで開催されます。
PGCon 2019オタワ
カナダ会議は5月28〜31日に開催されます。
スイスPGDay 2019
6月28日にチューリッヒの近くのRappertsvilleで開催されるこの会議では、レポートの申請を送信して登録することができます(4月18日まで)。
Postgres London 2019
この会議は 7月1〜3日(ワークショップのオプションの1日目)に開催されます。
PGConf。ブラジル2019
サンパウロは8月1〜3日にゲストをお待ちしています 。
オーストリアのpgDay
新しいイベント 、それは9月6日に開催されます。
PostgresConf南アフリカ2019
10月8〜9日にヨハネスブルグで開催されます。 申し込みは7月30日まで受け付けています。
企業スタイルの会議もあります。
Percona Live Open Source Database Conference 2019
ペルコナは、5月28〜30日にこの会議をテキサス州オースティンで開催しています。
Postgres Vision 2019
この会議は、6月24〜26日にボストンのEnterpriseDB によって開催されます。
以上です。 じゃあね!
postgressoチャンネルに登録してください!
アイデアや提案をメールに送信:news_channel@postgrespro.ru
以前の問題: #14 、 #13 、 #12 、 #11(特別) 、 #10 、 #9 、 #8 、 #7 、 #6 、 #5 、 #4 、 #3 、 #2 、 #1