編集可能

PostgreSQL/MySQLにあったらいいなと思う機能

今後のDBに開発する機能の覚え書き。
エンタープライズ postgreSQL
0
中村 実 @nminoru_jp
最近、PostgreSQLと遠ざかっているけど、PostgreSQL/MySQLにあったらいいなと思う機能を列挙しておく。
中村 実 @nminoru_jp
Probabilistic AlgorithmsまたはApproximate Query Processing。Count-Min SketchやHyperLogLogみたいなの。 docs.pipelinedb.com/probabilistic.… PG9.6からbloom filterはあるけど。
中村 実 @nminoru_jp
Verticaで言うところのHistorical Queries, OracleのFlashback QueriesのようにDBの内容を過去の時刻に戻してクエリーを実行する機能。当然、過去のログが残っている必要があるが。
中村 実 @nminoru_jp
Copy-on-write table。BigQueryやVerticaに存在するが、既存のテーブルをcopy-on-writeでコピーテーブルを作る。瞬間的にコピーができて、更新差分だけが容量を消費する。会計の洗い替えなんかに便利。
中村 実 @nminoru_jp
Transform Statement。Apache Hiveに存在する。FROM句からの読み込んだ入力列をPythonのような適当なシェルスクリプトで動的に変換してSQLに戻す機能。あると便利。 cwiki.apache.org/confluence/dis…
中村 実 @nminoru_jp
Time-Series Analytics。Verticaにある。 my.vertica.com/get-started-ve… 同じことをPostgreSQLはSRF関数を使って書けるけど、性能が出ない。
中村 実 @nminoru_jp
Stretch Database。SQL Server 2016の実現した機能。オンプレミスDB内の古いデータをクラウドDBに転送。分割テーブルを使った分散DBの容量で、オンプレミスで実行したSQLは自動的に分散実行される。 azure.microsoft.com/ja-jp/services…
中村 実 @nminoru_jp
k-匿名化機能。生データのテーブルを持つけど、アクセス権限がない人がアクセスした場合にはk-匿名化した結果した受け取れない(NULLで秘匿化される)。例えば集約をしてもGROUP BYの件数がk行未満のレコードは表示されないようになる。
中村 実 @nminoru_jp
Apache Atlas+Ranger対応。PostgreSQL/MySQLのシステムカタログの延長としてApache Atlasのメタデータリポジトリから検索できるようにしたいのね。Apache Rangerのアクセス権限にも従うように。
中村 実 @nminoru_jp
Schema-on-read/-fly対応。DDL定義なしでJSONのフィールドがテーブルの列のように扱えるようになると嬉しい。
中村 実 @nminoru_jp
Map(連想配列)型。HiveやSparkSQLやPrestoなどSQL-on-Hadoopにはある。JSONの格納とかに便利。
中村 実 @nminoru_jp
いろいろ挙げたけど、他力本願ではなく自分で開発しよう。エクステンションで切れそうなところから。
中村 実 @nminoru_jp
あと思い出した。レコード単位のアクセス権限制御と言う奴がある。通常のロールベースのアクセス管理では、テーブル全体にACLがつくが、Personal Datastore的な使い方をするならレコード単位にACLをつけたいことがある。
中村 実 @nminoru_jp
あとRDBMSの暗号化は1つのキーでストレージ全体を暗号化するけど、ユーザー毎の情報をそれぞれ別のキーで暗号化したいという要求もあるらしい。この場合、どうやってデコーダーにどうやってキーを渡すのかという問題もある。

コメント

コメントがまだありません。感想を最初に伝えてみませんか?

ログインして広告を非表示にする
ログインして広告を非表示にする