วิธีใช้ Postgres
(github.com/Olshansk)เป้าหมายและแรงบันดาลใจ
- เป้าหมายของรีโพซิทอรีนี้คือการแสดงให้เห็นว่า จะใช้ Postgres กับทุกสิ่งได้อย่างไร
- ได้รับแรงบันดาลใจจากบทความของ Amazing CTO และ GitHub gist ของ @cpursley
ทำไมจึงต้องดูแลรายการนี้ไว้?
- ทุกสัปดาห์จะมีเครื่องมือใหม่หรือวิธีการใช้งานใหม่บน Postgres ปรากฏขึ้น จึงจำเป็นต้องมีที่สำหรับบันทึกสิ่งเหล่านี้
- หากมีตัวอย่างอื่น ๆ ก็สามารถส่ง PR ได้
สารบัญ
- บล็อกโพสต์และบทความ
- งานครอน
- คิวข้อความ
- การวิเคราะห์
- GIS และการทำแผนที่
- บันทึกการตรวจสอบ
- การควบคุมการเข้าถึงและการกำหนดสิทธิ์
- การค้นหา
- ข้อความแบบเต็ม
- เวกเตอร์
- อนุกรมเวลา
- แบบคอลัมน์
- NoSQL
- ข้อมูลกราฟ
- ข้อมูลภายนอก
- ภาษาคิวรีทางเลือก
- HTTP
- API
- อีเวนต์ การจำลองแบบ CDC
- แคช
- การทดสอบหน่วย
- HTML และแอปพลิเคชัน
- กราฟิกและการแสดงผล
- ไมเกรชัน
- การปรับแต่งประสิทธิภาพ
- การขยายและการจัดเก็บ
- แดชบอร์ดและ UI
- การแสดงภาพข้อมูล
- การจัดการแพ็กเกจ
- เซิร์ฟเวอร์ภาษา
- อื่น ๆ
- โบนัส: จำนวนรายการที่มี Supabase
บล็อกโพสต์และบทความ
- ลดความซับซ้อนด้วยการย้ายโค้ดไปไว้ในฟังก์ชันของฐานข้อมูล
- ใช้ Postgres กับทุกสิ่ง
- PostgreSQL คือฐานข้อมูลที่ดีที่สุดในโลก
- Postgres กำลังครองโลกของฐานข้อมูล
- การสนทนาใน Hacker News
งานครอน
- citusdata/pg_cron
- cybertec-postgresql/pg_timetable
คิวข้อความ
- บทความเกี่ยวกับการเลือกเทคนิคคิวบน Postgres
- tembo-io/pgmq
- SKIP LOCKED
- riverqueue/river
- sequinstream/sequin: เครื่องมือสำหรับ CDC ใน Postgres ที่ช่วยให้สตรีมแถวและการเปลี่ยนแปลงจาก Postgres ไปยังแพลตฟอร์มสตรีมมิงและคิวอย่าง Kafka และ SQS ได้อย่างง่ายดาย
- janbjorge/pgqueuer: ไลบรารี Python สำหรับการจัดคิวงานอย่างมีประสิทธิภาพโดยใช้ PostgreSQL
การวิเคราะห์
- pg_analytics: เปลี่ยน Postgres ให้เป็นฐานข้อมูล OLAP ที่รวดเร็ว
- pg_duckdb: ส่วนขยาย Postgres อย่างเป็นทางการสำหรับ DuckDB
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: ส่วนขยาย PostgreSQL ที่ช่วยให้พัฒนา RAG การค้นหาเชิงความหมาย และแอปพลิเคชัน AI อื่น ๆ ภายใน Postgres ได้
- timescale/pgvectorscale: อิมพลีเมนเทชันของดัชนีเวกเตอร์ DiskANN ที่ทำงานเสริมกับ pgvector
อนุกรมเวลา
- timescale/timescaledb
- tembo-io/pg_timeseries
- แนะนำ pg_timeseries: ส่วนขยายอนุกรมเวลาโอเพนซอร์สสำหรับ PostgreSQL
แบบคอลัมน์
- hydradatabase/hydra
- citusdata/cstore_fdw
NoSQL
- เอกสาร PostgreSQL เกี่ยวกับการจัดเก็บและทำดัชนีข้อมูล JSON
- robconery/dox
- ferretdb.com
- วิธีจัดเก็บและทำดัชนี JSONB อย่างมีประสิทธิภาพใน PostgreSQL
ข้อมูลกราฟ
- 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
- แพตเทิร์น Notifier สำหรับแอปพลิเคชันที่ใช้ Postgres
- เอกสาร 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 รองรับคำขอ 55 ล้านรายการต่อวินาทีด้วย PostgreSQL คลัสเตอร์ 15 ชุด
- supabase/supavisor
- pg-sharding/spqr
- orioledb.com: ส่วนขยาย PostgreSQL ที่ผสานข้อดีของเอนจินดิสก์และหน่วยความจำเข้าด้วยกัน
แดชบอร์ดและ UI
- Baserow
- NocoDB
- AppSmith
การแสดงภาพข้อมูล
- Evidence
- Metabase
การจัดการแพ็กเกจ
- pgxman/pgxman
- supabase/dbdev
เซิร์ฟเวอร์ภาษา
- supabase/postgres_lsp
อื่น ๆ
- รายการเครื่องมือ Postgres ที่ครอบคลุมมาก
- รายการฟีเจอร์ PostgreSQL ที่ Aurora DSQL ไม่รองรับ
โบนัส: จำนวนรายการที่มี Supabase
- 11 รายการ
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
\u0000) ได้ก็ไม่สะดวกSKIP LOCKEDเพื่อให้การประมวลผลงานมีประสิทธิภาพและปลอดภัยLISTEN/NOTIFYยังด้อยกว่า แต่ก็น่าประหลาดใจที่ไล่ตามมาได้มาก ทั้งที่ในแอปแบบเลกาซีจำนวนมากก็ไม่ได้ใช้INSERTได้