SQL

8 bài viết

NoSQL không phải là 'kẻ thay thế RDBMS' mà là công cụ bổ sung cho từng loại bài toán. Bài này dựng mô hình tinh thần: vì sao NoSQL ra đời, bốn họ chính (document, key-value, wide-column, graph), khác biệt SQL vs NoSQL (schema, ACID vs BASE, scale dọc vs ngang), định lý CAP/PACELC và eventual consistency giải thích trực giác, cùng tư duy query-driven và polyglot persistence trong bối cảnh ngân hàng.

13 thg 7, 2026 1

MongoDB lưu dữ liệu dưới dạng document JSON/BSON linh hoạt thay vì hàng-cột. Bài này dựng mô hình tinh thần document/collection/database và ánh xạ (cẩn trọng) với RDBMS, giải thích BSON và các kiểu dữ liệu quan trọng, schema validation bằng JSON Schema, và đi sâu vào quyết định thiết kế cốt lõi: embedding vs referencing cùng các mẫu subset, computed, bucket, extended reference áp dụng cho bài toán ngân hàng.

13 thg 7, 2026 1

Hướng dẫn thao tác dữ liệu trong MongoDB cho người quen SQL: insert/find/update/delete với các query operator và update operator, projection và sort/limit/skip. Trọng tâm là Aggregation Pipeline — công cụ tổng hợp mạnh hơn GROUP BY của SQL — qua các stage $match/$group/$lookup/$unwind/$facet, kèm đối chiếu với câu SQL tương đương, transaction đa document và các cạm bẫy hiệu năng.

13 thg 7, 2026 1

Đi sâu vào index MongoDB (single/compound theo quy tắc ESR, multikey, text, geo, TTL, partial/sparse), cách đọc explain() và query planner để phân biệt COLLSCAN với IXSCAN, covered query, và các nguyên tắc hiệu năng. Phần cuối bàn về mở rộng: replica set (oplog, failover, write/read concern) và sharding (chọn shard key, hashed vs ranged, mongos & config server), có đối chiếu với index/replication của RDBMS.

13 thg 7, 2026 1

Redis là kho key-value chạy trong RAM, xử lý lệnh đơn luồng nên nhanh và tuần tự dưới mili-giây. Bài này giải thích vì sao Redis nhanh, đi sâu vào các kiểu dữ liệu cốt lõi (String, Hash, List, Set, Sorted Set, Bitmap/HyperLogLog, Stream, Geo) kèm lệnh và use case ngân hàng, cùng TTL/expiration, quy ước đặt tên key, tính nguyên tử của lệnh, transaction MULTI/EXEC, Lua script và pipeline.

13 thg 7, 2026 1

Từ các kiểu dữ liệu Redis đến những mẫu ứng dụng thực chiến: caching (cache-aside, read/write-through, write-behind), session store, rate limiting, distributed lock, leaderboard/counter, queue/Pub-Sub/Streams và idempotency key. Mỗi mẫu đi theo trục vấn đề → giải pháp Redis → cạm bẫy, đặt trong bối cảnh ngân hàng: cache số dư/hạn mức, rate limit API, chống double-submit giao dịch.

13 thg 7, 2026 1

Dù chạy in-memory, Redis vẫn bền vững được qua RDB (snapshot) và AOF (append-only log), hai cơ chế đánh đổi tốc độ với an toàn dữ liệu. Bài này đi sâu persistence, replication primary-replica, Redis Sentinel (tự động failover), Redis Cluster (sharding 16384 hash slot), eviction policy, quản lý bộ nhớ, giám sát (INFO/slowlog/latency), an toàn (ACL/TLS) và backup — góc nhìn vận hành Redis HA cho hệ ngân hàng.

13 thg 7, 2026 1

Bài tổng kết series: không có 'một cỡ cho tất cả'. Trình bày tư duy polyglot persistence — chọn đúng store cho từng nhu cầu (RDBMS, MongoDB, Redis, ClickHouse, Elasticsearch), một bảng quyết định, kiến trúc tham chiếu ngân hàng nhiều store, cách giữ nhất quán giữa các store (CDC/event, cache invalidation), và các cạm bẫy khi dùng NoSQL trong môi trường tài chính.

13 thg 7, 2026 1