Blog
Além do Postgres: MongoDB (documents), Redis avançado (structures + streams), DynamoDB (single-table design), ClickHouse (analytics OLAP), SQLite moderno (embedded 2026), Vector DBs (pgvector/Pinecone/Weaviate/Qdrant). Quando usar cada, anti-patterns, casos reais.
Por que "NoSQL" é rótulo pobre: document (Mongo), KV (Redis/DynamoDB), wide-column (Cassandra), graph (Neo4j), time-series (InfluxDB), vector (Pinecone). Quando cada.
Schema design (embed vs reference), indexes compostos/parciais, aggregation pipeline, change streams, transactions multi-doc, Atlas. Anti-patterns (massive arrays, unbounded).
Data structures além STRING: SETs, SORTED SETs (leaderboard), HASHes, STREAMs (Kafka-lite), HyperLogLog. Lua scripts atomic. Cluster mode. Redis Stack (JSON, Search).
PK/SK, GSI, sparse indexes. Single-table design (Alex DeBrie). Access patterns first. Streams, TTL, DAX. Custo por RCU/WCU, on-demand vs provisioned.
Columnar storage, MergeTree engine, materialized views, dedup, compression. Queries ad-hoc em bilhões de linhas. vs Snowflake/BigQuery/Druid.
SQLite em 2026: Turso (edge replication), Litestream (streaming backup), Cloudflare D1, libSQL. Por que SQLite bate Postgres em leituras locais. WAL mode.
HNSW, IVF, scalar quantization. pgvector (quando Postgres basta), Pinecone (managed), Weaviate (hybrid), Qdrant (rust-based), Milvus. Custo per M vetors.
Projeto: app que usa Postgres (source of truth) + Redis (cache/sessions) + MongoDB (user-generated docs) + pgvector (semantic search). Sync estratégia. Trade-offs documentados.