Postgresの活用方法
(github.com/Olshansk)目標と着想
- このリポジトリの目標は、あらゆるものにPostgresを使う方法を示すこと。
- Amazing CTOの記事と @cpursley のGitHub gistから着想を得た。
なぜこの一覧を維持するのか?
- 毎週、Postgres上の新しいツールや活用方法が登場するため、それらを記録する場所が必要。
- 他にも例があれば、PRを提出できる。
目次
- ブログ投稿と記事
- cronジョブ
- メッセージキュー
- 分析
- GISとマッピング
- 監査ログ
- アクセス制御と認可
- 検索
- 全文検索
- ベクトル
- 時系列
- 列指向
- NoSQL
- グラフデータ
- 外部データ
- 代替クエリ言語
- HTTP
- API
- イベント、レプリケーション、CDC
- キャッシュ
- 単体テスト
- HTMLとアプリケーション
- グラフィックスと可視化
- マイグレーション
- パフォーマンスチューニング
- 拡張とスケーリング
- ダッシュボードとUI
- データ可視化
- パッケージ管理
- 言語サーバー
- その他
- ボーナス: Supabaseを含む項目数
ブログ投稿と記事
- コードをデータベース関数へ移して単純化する
- あらゆるものにPostgresを使う
- PostgreSQLは世界最高のデータベース
- Postgresがデータベースの世界を席巻している
- Hacker Newsでの議論
cronジョブ
- citusdata/pg_cron
- cybertec-postgresql/pg_timetable
メッセージキュー
- Postgresのキュー技術の選定に関する記事
- tembo-io/pgmq
- SKIP LOCKED
- riverqueue/river
- sequinstream/sequin: PostgresでCDCを行うためのツールで、Postgresの行や変更をKafkaやSQSのようなストリーミングプラットフォームやキューへ簡単にストリーミングできる。
- janbjorge/pgqueuer: PostgreSQLを活用した効率的なジョブキューイングのためのPythonライブラリ
分析
- pg_analytics: Postgresを高速なOLAPデータベースに変換
- pg_duckdb: DuckDB向けの公式Postgres拡張
GISとマッピング
- postgis/postgis
監査ログ
- arkhipov/temporal_tables
- supabase/supa_audit
- pgMemento/pgMemento
- pgaudit/pgaudit
アクセス制御と認可
- arkhipov/acl
- pgcryptoドキュメント
- michelp/pgjwt
- supabase.comのデータベースセキュリティガイド
検索
全文検索
- Postgres全文検索に関する有用なリンク集
- paradedb/paradedb
- Postgres全文検索と他の検索技術の比較
ベクトル
- pgvector/pgvector
- tensorchord/VectorChord: スケーラブルで高性能なベクトル類似検索のためのPostgreSQL拡張
- timescale/pgai: Postgres内でRAG、セマンティック検索、その他のAIアプリケーション開発を可能にするPostgreSQL拡張
- timescale/pgvectorscale: pgvectorを補完するDiskANNベクトルインデックス実装
時系列
- timescale/timescaledb
- tembo-io/pg_timeseries
- pg_timeseriesの紹介: PostgreSQL向けのオープンソース時系列拡張
列指向
- hydradatabase/hydra
- citusdata/cstore_fdw
NoSQL
- JSONデータの保存とインデックス作成に関するPostgreSQLドキュメント
- robconery/dox
- ferretdb.com
- PostgreSQLでJSONBを効率的に保存・インデックスする方法
グラフデータ
- age.apache.org
外部データ
- supabase/wrappers
代替クエリ言語
- kaspermarstal/plprql
- supabase.github.io/pg_graphql
- dosco/graphjin
HTTP
- pramsey/pgsql-http
- supabase/pg_net
API
- PostgREST/postgrest
- hasura/graphql-engine
- postgraphile.org
- supabase.github.io/pg_graphql
イベント、レプリケーション、CDC
- Postgresを使うアプリケーションのためのNotifierパターン
- SQL NOTIFYドキュメント
- cpursley/walex
- PeerDB-io/peerdb
- debezium/debezium
- 2ndQuadrant/pglogical
キャッシュ
- martinheinz.dev ブログ
- readysettech/readyset
単体テスト
- theory/pgtap
- peterldowns/pgtestdb
HTMLとアプリケーション
- SQLpage
- Omnigres
- pg_render
- plmustache
グラフィックスと可視化
- pgSVG
マイグレーション
- purcell/postgresql-migrations
- bytebase.com
- xataio/pgroll
- stripe/pg-schema-diff
パフォーマンスチューニング
- Supabase Index Advisor
- Dexter
- HypoPG
- pg_hint_plan
- PGHero
拡張とスケーリング
- Cloudflareが15のPostgreSQLクラスターで毎秒5,500万リクエストを処理した方法
- supabase/supavisor
- pg-sharding/spqr
- orioledb.com: ディスクエンジンとメモリエンジンの利点を組み合わせたPostgreSQL拡張
ダッシュボードとUI
- Baserow
- NocoDB
- AppSmith
データ可視化
- Evidence
- Metabase
パッケージ管理
- pgxman/pgxman
- supabase/dbdev
言語サーバー
- supabase/postgres_lsp
その他
- 非常に包括的なPostgresツール一覧
- Aurora DSQLでサポートされていないPostgreSQL機能の一覧
ボーナス: Supabaseを含む項目数
- 11件
1件のコメント
Hacker Newsの意見
\u0000)を含められない点が不便である