PostgreSQL勉強会に行ってきました
昨日は、PostgreSQL勉強会@札幌に行ってきました。
1. 削除フラグ(syachiさん)
削除フラグと仲良くするために、
- テーブル作成時に部分インデックスを張る
- PKEYを別の用途に使って、親から子に伝搬する
- トリガーを使ってDELETE実行時に、
削除したレコードを違うテーブルに移動する(削除フラグどこいった?)
トリガーも最小限にしましょう。
遅れてくる刺客
- 一時保存フラグ
- 一時停止フラグ
これフラグじゃなくて、ステータスでしょ。
業務分析をちゃんとやりましょう。
2. XIDを周回させてみよう(iakioさん)
XID(トランザクションID)の周回とは、
- あるはずのデータが見えなくなってしまうという、
XIDの周回問題と呼ばれる現象があるらしい - でも、滅多にお目にかかれない
- 古いバージョンで20億回トランザクションを行うと見れたらしい
しかし、XIDの周回を防止する仕組みは、いくつか実装されている
XIDが周回させるデモンストレーション
- あるはずのレコードが見えなくなった!
- PostgreSQLが壊れた!
「定量的なバキューム操作」に目を通すといいよ!
感想
まずは、おつかれさまでした。
数年前にSQLを書いて以来、
DBはblogの設置程度にしか触っていなかったので、
こういう機会でもないと学べないと思い、参加しました。
特にPostgreSQLについては、ほとんど知らなかったのですが、
削除フラグとかトリガーのようなノウハウや、
XIDを周回させるようなプログラム内部の話が聞けて、
とってもカジュアルな勉強会だったと思います。
マイグレーションやpgTAPなどいろいろ気になったので、
次回もぜひ参加したいと思いました。
こういう機会を設けていただき、ありがとうございました!
おしまい。
Leave a Comment