タグ

postgresqlとjsonに関するmsakamoto-sfのブックマーク (6)

  • 【PostgreSQL】いかにして JSONB を安全に扱うか

    はじめに Postgres には JSON/JSONB というデータ型がありますが,JSONB はデータをバイナリ形式で格納するためインサート時に変換のオーバーヘッドがあるものの,その後の処理が非常に高速である上に,インデックスを貼ることができるため,実用上は JSONB を使うのが一般的です. 一方で,そもそも RDB のようなスキーマの厳格な型付けをしているシステムで半構造化データである JSON を扱うこと自体がアンチパターンであるという指摘もあります. しかしながら,適切に設計,運用することで厳格な RDB で柔軟なデータを扱うことができ,アプリケーションの表現の幅を広げることができます. 記事では,JSONB を可能な限り安全に扱うための実践的な工夫を紹介します. JSON Schema を使ったバリデーションを Check Constraint にする Postgres では

    【PostgreSQL】いかにして JSONB を安全に扱うか
  • PostgreSQL 12が正式リリース。Bツリー周りの改善による性能向上、JSONパスによる抽出可能など

    オープンソースのリレーショナルデータベース「PostgreSQL 12」の正式版がリリースされました。PostgreSQL 11の登場から約1年ぶりのメジャーバージョンアップです(日語プレスリリース)。 PostgreSQL 12では、Bツリーインデックス周りの改善、サイズ縮小などにより全体的な性能向上を実現。パーティション化されたテーブルに対するクエリでは、テーブル管理情報を効率的に作成、操作することにより、特に数千もの多くのパーティションから構成されるテーブルに対する検索での性能向上につながっています。 jsonb型のデータに対して、SQLでの問い合わせにJSONパスが利用可能になりました。これによりJSONデータに対する部分指定での抽出が可能になりました。 インデックスへの書き込みをブロックせずにインデックスを再構築するReindex Concurrentlyコマンドが導入されたた

    PostgreSQL 12が正式リリース。Bツリー周りの改善による性能向上、JSONパスによる抽出可能など
  • PostgreSQL JSON型についての使い勝手とパフォーマンス、時々ハマりどころの調査 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    PostgreSQL JSON型についての使い勝手とパフォーマンス、時々ハマりどころの調査 - Qiita
  • PostgreSQL 9.3 の JSON サポートについて(長いよッ) - Qiita

    Postgresql 9.3でJSON関連のサポートが強化されている。 JSON型 (>=9.2) JSON演算子 (読み込み専用アクセッサ) JSONサポート関数 (JSON データ変換) 9.3リリースの目玉機能だが、使ってみた人が少ないのか一向に情報が上がってこない。 ドキュメントを見てもなんだか面倒くさそうで自分から使う気は起きない。 実際の使い勝手はどうなのか、たまたま開発で触る機会があったのでまとめておく。 PostgreSQL自体そんなに詳しいわけではないので、間違いがあったら突っ込んでほしい。 追記: PostgreSQL 9.4 のリリースで jsonb の登場するなど状況がかなり変わっている。 9.4 ついてもフォローしたので参考にしてほしい。 PostgreSQL 9.4 の JSON サポートについて PostgreSQL JSON の応用メモ テーブルデータをJS

    PostgreSQL 9.3 の JSON サポートについて(長いよッ) - Qiita
  • PostgreSQLのアンチパターン : 何でもかんでもjsonに入れる | Yakst

    PostgreSQL 9.2より追加されたJSON型だが、特徴を理解して適切に使わないと色々な副作用に悩まされることになる。その問題点を挙げると共に、どのような場合に使うべきかの指針を示す。 PostgreSQLは、データ型としてjsonをサポートしています。しかし、やりたいことがある時に何でもかんでもjson型を使ってしまうというのはやめるべきです。これは、hstoreや新しく登場したjsonb型にも同じことが言えます。これらの型は必要な時には便利なツールになりますが、PostgreSQLでデータのモデリングを行う際に最初に検討すべきものではありません。 なぜなら、データを呼び出したり操作したりするのが難しくなってしまうためです。 何もかも同じところに入れてしまおうとすることによるアンチパターンをご存知の読者もいるでしょう。EAVアンチパターンは、長らくデータベーススキーマにおける必要悪

    PostgreSQLのアンチパターン : 何でもかんでもjsonに入れる | Yakst
  • PostgreSQL 9.4 GINインデックスの評価、JSONBデータ型の使い方

    PostgreSQL 9.4 GINインデックスの評価、JSONBデータ型の使い方:PostgreSQLガイダンス(1)(1/2 ページ) PostgreSQL 9.4は実務ニーズに即した機能追加が豊富 PostgreSQLは、その名の通りSQL言語で問い合わせをするリレーショナルデータベースマネジメントシステム(RDBMS)です。近年、NoSQLと総称されるスケールアウト拡張の容易さに強みのあるキーバリューストア型のデータベースが注目されていますが、汎用性、データ整合性、データ保全性、蓄積されたデータ設計技法との親和性、などの強みから、システム中核要素としてのリレーショナルデータベースの地位は揺らぎそうにありません。 PostgreSQLは長い歴史を持つオープンソースソフトウェアです。組織立ったコミュニティによって開発とメンテナンスが活発に継続されており、年に数度のバグ修正リリースの他、

    PostgreSQL 9.4 GINインデックスの評価、JSONBデータ型の使い方
  • 1