OSS Development

行パターン認識の概要とその実装について

行パターン認識とは

SQL標準では「行パターン認識」(英語では Row Pattern Recognition, 略してRPR)という機能が定義されており、従来からあるWHERE句やHAVINGなどを使った検索機能では対応が難しかった、ある種の問い合わせに対応しています。

行パターン認識がよく使われる検索対象データは、一定の順で行が並んだデータ、とりわけ時系列データです。すなわち、時間とともに変化するデータです。
たとえば毎日の最高気温が記録されたテーブルがあるとします。

続きを読む

PostgreSQL におけるマテリアライズドビューの高速更新技術(Incremental View Maintenance)の提案

SRA OSS は PostgreSQL 関連サービスを提供しているだけではなく、PostgreSQL の開発にも参加しています。過去には再帰SQLの実装や、ラージオブジェクトの64bit化などを行ってきました。

そして、最近は Incremental View Maintenance という機能の実装を提案することを検討しています(2018年12月末にPostgreSQL開発MLにて議論開始)。これはマテリアライズドビューの更新を高速に行うための技術です。PostgreSQLが大規模システムの採用が増加する中、マテリアライズドビューの利用は増えていると考えており、またその高速リフレッシュは喫緊の課題であると考えています。

これに関する発表を昨年の10月にポルトガルのリスボンで開催された PostgreSQL Conference Europe (PGConf.EU) 2018 で発表してきました(レポートはこちら)。本記事では、その内容について解説します。

続きを読む