Cursor Pagination in Fauna: Trading Page Numbers for Per-Page Consistency
Fauna replaces offset paging with an opaque, index-backed cursor: each page is its own ACID transaction, page numbers disappear, and cost stays flat at any depth.
ReadMeFeed / Community knowledge
Real questions. Useful conversations. Find the people who know your stack.
Fauna replaces offset paging with an opaque, index-backed cursor: each page is its own ACID transaction, page numbers disappear, and cost stays flat at any depth.
Learn how to move from manual data filtering to Row-Level Security (RLS) to enforce per-user data isolation transparently without rewriting application logic.
Appwrite's relationship attributes bring referential integrity and automatic expansion to a document store — but expansion depth caps, dual permission checks, and an opaque junction collection change how you should model your data.
Learn how to define, use, and control Mongoose virtuals for clean API responses, and understand why they can’t be queried or indexed. A step‑by‑step example and trade‑offs included.
Decide between Firestore subcollections and top-level collections based on ownership and query patterns. Learn how to balance security rules with global discoverability.
Use PostgreSQL declarative RANGE partitioning on a timestamp with constraint exclusion pruning to cut I/O for time-series queries, while accepting per-partition vacuum and planner requirements.
PostgreSQL generated columns automatically compute and store values within the same transaction as source data, eliminating trigger complexity for full-text search, denormalized metrics, and other derived data.
Stop treating RocksDB as a single bucket. Learn how Column Families provide isolated namespaces, independent compaction, and atomic writes to optimize your storage layer.
A single FQL request is Fauna's transaction boundary. Here is how to group a debit and a credit atomically, plus the contention and index traps that make it slow.