東京のオフラインイベントとしては 2020/2 のデブサミ以来、2 年 9 ヶ月ぶりの遠征をしました。
今回は午後から、チュートリアルトラックと懇親会に参加してきました。
会場を目指して移動中(さっき通過した)。#pgcon22j pic.twitter.com/0Q60DMl6QM
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
今回はチュートリアルに定価で申し込んでみた。
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
(澤田さんを目の前にして待機中)#pgcon22j
※ほぼ「自分のツイートまとめ」になっています。
【T1】PostgreSQL開発者がPostgreSQL 15の新機能を徹底解説
バージョン10のコミュニティEoLは昨日だったのか。#pgcon22j
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
PostgreSQL 10、2022/11/10 に出たバージョン 10.23 で最後のリリース、のようです。
MySQLだったらどう行ロックが掛かるかつい考えてしまう(PostgreSQLのMERGE)。#pgcon22j
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
PostgreSQL 15 では新たにMERGE
がサポートされましたが、休み時間に立ち話をしていた感じでは、PostgreSQL でもロックには気を遣っているようで(当たり前か)。
チュートリアルトラックでもロジカルレプリケーションの話。#pgcon22j
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
2相コミットの情報が複製可能になった。#pgcon22j
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
ロジカルレプリケーションは他にも行フィルタ・列フィルタなど色々進化しているようです。
pg_basebackupではサーバ側・クライアント側でlz4、zstd圧縮が可能に。#pgcon22j
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
WAL圧縮にもlz4とzstdが追加。#pgcon22j
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
圧縮系は今時のハードウェアだと IO 負荷 > CPU 負荷 な感じで、利用したほうがスループットが上がるみたいですね。
排他バックアップ廃止で関数名が変わるのでいろいろ大変、という話は以前 #
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
pgunconf でもしてた。
#pgcon22j
タグをミスりましたが、影響が大きそうです。
JSON_TABLEなどのJSON強化、問題が見つかってRevertされた、と。#pgcon22j
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
残念。
【T2】PostgreSQLのバグとの付き合い方 ~バグの調査からコミュニティへの報告、修正パッチ投稿まで~
「ポスグレってバグ少ないよね」
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
一方、MySQL()
(○racleさん、マイナーバージョンアップで新機能追加やめてください…)#pgcon22j
MySQLer としてはこれ of これ。
ドキュメントに書かれていないもの→バグとみなされない例、確かMySQLでもコスト計算の係数設定(バッファプールとストレージで係数を変える)なんかも5.7で「設定はできるが動かない(マニュアルには記載がない)」→8.0で正式サポートされてた例があるので、分かる気がする。#pgcon22j
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
ドキュメントに書かれていなくても機能実装の痕跡がある→試したらうまく使えない→バグじゃね?…となることもありそうですが、基本的にそれはバグじゃないとのこと。
ちなみにツイートで触れた MySQL の話は↓に
なお、コストモデルのテーブル自体はMySQL 5.7から存在し、設定値の変更も可能ですが、ストレージ(ディスク)/バッファプール(メモリ)のコスト係数は実際の実行計画には反映されず、同一のものとみなされるようです。
と書いた件です。
PostgreSQL開発コミュニティにはバグ管理システムがない、と。
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
関係各社が個々に独自で持ってたりして議論がまとまらない、とかもあるのかな?#pgcon22j
コミュニティとしてはメーリングリストでバグの管理をしているので、既知のバグを調べるにはメーリングリストを当たるのが良いそうです(修正済みに限るなら GitHub リポジトリの履歴を見る方法なども)。
MySQLには公式のBugsがあるけど、ちょっとしたことでレポートが非公開になるのでなかなか辛い。https://t.co/moOd0KnQql#pgcon22j
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
MySQLer としては…(略)
※PostgreSQL でも MySQL でもセキュリティ関連のバグは基本的に非公開の場所で管理されますが、MySQL ではそれ以外の「非公開」が多いような…?(気のせい?)
バグ報告に推測や憶測を含めるな(事実だけ書け)というのはその通りだし、含めたくなるのも分かる気がする。#pgcon22j
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
報告しても「バグじゃないよ」「再現できないよ」と言われるとつい余計なことを言いたく(書きたく)なりますが、推測ではなく事実を伝えろ、と。
#pgunconf はセッション終了後のロスタイムが良い相談時間かも。#pgcon22j
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
PostgreSQL アンカンファレンスは本編への参加が間に合わない場合にもロスタイムを狙って参加すると良い話が聞ける(相談できる)…かも?
【T3】PostgreSQLの権限管理 ~ アカウントの操作とRow Level Securityの活用 ~
- 資料
- 登壇内容のブログ記事
加藤さんのスライド推しn回目。#pgcon22j
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
そーだいさんがセッションの中で何度も推していた加藤さんの資料(ロール管理)はこちらです。
「とにかく公式ドキュメントを読みましょう」#pgcon22j
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
これがメインテーマだったらしいです。
ついでにおまけ。
RLSのパフォーマンスの話、昨日こんな記事が。https://t.co/Hzq9YHQSUN#pgcon22j
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
どうでもいいけど今日のそーだいさんのスライドの配色が(会場のプロジェクターで見ると)まれにSupabaseぽい。
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
(SupabaseでRLSをミスると確かに惨事が…)#pgcon22j
【T4】PostgreSQLパラメータチューニング入門
さいきんのクラウドのマネージドだとパラメータは初期値で「いい感じ」にしてあるのでいじる機会は少ないかも。#pgcon22j
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
…とツイートしましたが、性能問題の他に、障害などで調査が必要なときのパラメータなども話のテーマの中に含まれていたようです。
チューニング間違えるとWAL一周しちゃう問題とか出るのか。#pgcon22j
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
MySQL と比べて設定できる容量の上限が小さい気がしたのですが、実際のところ、トランザクション ID が一周する問題とどちらが先に来るのだろう…?
AuroraとかAlloyDBとかの方式が一般化すると、チェックポイント処理のチューニングとかやる機会はなくなりそうだな…。#pgcon22j
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
ストレージを分離して「ログ送っとくからデータの保存はよしなにやっておいてね」方式だと、そもそもチェックポイント処理で「平常時のスループットを優先するか Stop the World のリスクを下げるのか」バランスを探るようなことはやらないですからね。
クロージングセッションは LT ではなく「国内データベース利用動向調査報告 2022」でした。
DBは特に…(高齢化問題)。#pgcon22j
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日
その後の懇親会では NTT グループ若手連合軍(?)のテーブルのあたりで話をしていました。
そしてうっかり、まぐろさんに挨拶しそびれました(ちょっとは歩き回ったほうが良かったかな?)。
翌日は 東京国立博物館「国宝 東京国立博物館のすべて」 へ。
ただ、気づいたタイミングが遅く 11/12(土)の予約は 14:30 〜 15:30 の回まで全て埋まってしまっていたので、昼過ぎまでどこかで時間を潰すことに。
予約が15:30~以降しか空いてなかったので、午前中は地味そう(失礼)なところへちょっと足を延ばして。 pic.twitter.com/0JhiBZmZwG
— hmatsu47(まつ) (@hmatsu47) 2022年11月12日
残念ながら🐱さんたちは居なかった(七五三で人が多かったから?) pic.twitter.com/uzyoqUj4cs
— hmatsu47(まつ) (@hmatsu47) 2022年11月12日
無駄(?)に新幹線(と在来線とコミュニティバス)で小遠征してきました。
昼過ぎに上野に戻ってきて常設展(総合文化展)を先にさらっと見てからいよいよ本編の特別展へ。
今日はこちらへ。 pic.twitter.com/7PpHp9ta8h
— hmatsu47(まつ) (@hmatsu47) 2022年11月12日
特に刀のあたりが大人気だったようですが、個人的にはそれほどでもないので刀はさらっと流して見て大体 1 時間弱ほどでした。
東京国立博物館(というか上野公園周辺)、やっぱり人が多かったです。
特にミュージアムショップ(常設のほうも特別展のほうも)が大混雑!だったので、別の場所で単独で販売していた図録だけ買って帰りました。
次の東京遠征予定はこちら↓ですが、コロナ第 8 波で中止にならないことを祈ります…。
追伸:アドベントカレンダーへの参加をお願いします
こちらです。
今年のアドカレ宣伝しとかなきゃ(みなさま書いてください!)。https://t.co/Kp4xlgnDxh#pgcon22j
— hmatsu47(まつ) (@hmatsu47) 2022年11月11日