Tìm kiếm
40 kết quả cho “SQL join”. Tìm không phân biệt dấu.
- Sharding Pinterest: How we scaled our MySQL fleet Bài tóm tắt · Pinterest · 2015
…interest Engineering/sharding-pinterest-how-we-scaled-our-mysql-fleet-3f341e96ca6f) Bối cảnh - 2011 Pinterest tăng trưởng cực nhanh; khoảng 9/2011 mọi tầng hạ tầng quá tải, vài hệ…
- PostgreSQL Stories: From slow query to fast, via stats Bài tóm tắt · Render · 2024
…khó: Trung bình — [bài gốc](https://render.com/blog/postgresql-slow-query-to-fast-via-stats) Phần 2 của một câu chuyện; phần 1 (tìm ra query làm treo pipeline deploy staging) chưa…
- Scaling to 100M: MySQL is a Better NoSQL Bài tóm tắt · Wix · 2015
…bài gốc](https://www.wix.engineering/post/scaling-to-100m-mysql-is-a-better-nosql) Bối cảnh - Mỗi request tới một site Wix (domain riêng hoặc subdomain) phải phân giải URL → site :…
- MySQL sharding at Quora Bài tóm tắt · Quora · 2020
…cao — [bài gốc](https://www.quora.com/q/quoraengineering/MySQL-sharding-at-Quora) Quora chặn crawler; đọc toàn văn qua trình duyệt ngày 2026-10-21, Wayback lúc đó offline. Bối cản…
- The evolution of SQL-based Observability Bài tóm tắt · ClickHouse · 2024
…g bình — [bài gốc](https://clickhouse.com/blog/evolution-of-sql-based-observability-with-clickhouse) Bài của nhà cung cấp, cập nhật một năm sau bài "state of SQL-based observabilit…
- Working with PostgreSQL Bài tóm tắt · Zerodha · 2021
…h — [bài gốc](https://zerodha.tech/blog/working-with-postgresql/) Bối cảnh - Các database của Console (báo cáo, lịch sử giao dịch) tự host trên EC2: hàng trăm tỷ dòng, gần 20 TB, 4…
- How We Partitioned Airbnb's Main Database in Two Weeks Bài tóm tắt · Airbnb · 2015
…ks-55f7e006ff21) Bối cảnh - Trước mùa du lịch hè 2015, DB MySQL chính (trên RDS, còn từ thời Airbnb là một app Rails) phải giảm tải. Airbnb chọn tách dọc theo chức năng thay vì sha…
- Near real-time features for near real-time personalization Bài tóm tắt · LinkedIn · 2022
…ạt), timestamp. - Samza đọc event từ Kafka, viết bằng Samza SQL để giới hạn ở lọc, join stream-table (thuộc tính lấy từ Venice), projection, nên processor luôn nhẹ. Kết quả qua Kaf…
- PostgreSQL Stories: A simple query with a big problem Bài tóm tắt · Render · 2024
…khó: Trung bình — [bài gốc](https://render.com/blog/postgresql-simple-query-big-problem) Phần 1 của câu chuyện hai phần. Phần này tìm ra query gây tắc và gỡ tắc; phần 2 () giải th…
- From Homegrown to Flink: Migrating a Stateful Ad Event Join at Scale Bài tóm tắt · Zalando · 2026
…pod để tránh rescale. Thay đổi chính - Chọn Flink: - Nakadi SQL bị loại vì PoC chỉ ghép được khoảng 50%; - Spark bị loại vì các team khác báo Flink tốt hơn về latency và autoscale;…
- Instacart's Item Availability Architecture: Solving for scale and consistency Bài tóm tắt · Instacart · 2023
…iểm vào DB phục vụ , đặt cạnh dữ liệu retrieval để lọc bằng SQL join , với hai đường nạp: - Full sync: dịch vụ chấm điểm cập nhật một bảng Snowflake nhiều lần mỗi ngày; worker đọc…
- Partitioning GitHub's relational databases to handle scale Bài tóm tắt · GitHub · 2021
…i cảnh - Hơn 10 năm trước GitHub bắt đầu bằng Rails + một MySQL . - Các bước tiến hoá trước 2019: tách vài tính năng (ví dụ statuses) sang DB riêng; thêm read replica; dùng ProxySQ…
- Scaling Pinterest - From 0 To 10s Of Billions Of Page Views A Month In Two Years Bài tóm tắt · Pinterest · 2013
…: 2 nhà sáng lập, 1 kỹ sư, Rackspace, 1 web engine nhỏ, 1 MySQL nhỏ. - 1/2011: EC2 + S3 + CloudFront, 4 web engine (để dự phòng), 1 MySQL + 1 read slave, 1 MongoDB cho counter, 2 k…
- Introducing Flint: A Time-Series Library for Apache Spark Bài tóm tắt · Two Sigma · 2018
…chuỗi thời gian lớn duy nhất (khác rolling window của Spark SQL). - Ví dụ: lợi suất ngày của S&P 500, hỏi "lợi suất hôm qua có dự báo hôm nay không". Self-join bị null vào thứ Hai…
- Snowflake Optima Planning: cross-query performance Bài tóm tắt · Snowflake · 2026
…ột join cụ thể) trên kết quả của optimizer , không trên chữ SQL. Truy vấn khác về sau chứa fragment/operator cùng hash thì dùng feedback thực thi của truy vấn trước cho phần đó, kể…
- LIquid: The soul of a new graph database, Part 2 Bài tóm tắt · LinkedIn · 2020
…hưng DB quan hệ truyền thống chạy rất tệ với schema này, và SQL khó dùng để dựng ứng dụng. - Workload của LinkedIn là browsing : một trang cần một subgraph nhỏ nhưng phức tạp, tức…
- Beyond synthetic testing: Capturing and replaying real database workloads at Airbnb Bài tóm tắt · Airbnb · 2026
…ying-real-database-workloads-at-airbnb/) Bối cảnh - Fleet MySQL-compatible của Airbnb (2026): hàng trăm cụm , hàng nghìn use case, hàng triệu QPS . Bài toán: định cỡ cụm cho tăng t…
- Journey to the cloud part II: Migrating Stack Overflow for Teams to Azure Bài tóm tắt · Stack Overflow · 2023
…chậm một API. Sửa bằng cấu hình cho phép nhiều alias hơn. - SQL Server: on-prem là một availability group trải hai data center (4 node; đọc chỉ-đọc từ secondary cùng region, DR ở r…
- How Discord Automates ScyllaDB Clusters at Scale Bài tóm tắt · Discord · 2026
…đa N node" để không mất quorum. - Trạng thái job lưu trong SQLite cạnh binary: bị gián đoạn thì resume đúng chỗ, task đã xong không chạy lại. Chọn file DB vì đơn giản, không phụ t…
- Building Scalable Real Time Analytics, Alerting and Anomaly Detection Architecture at Dream11 Bài tóm tắt · Dream11 · 2019
…gian, và có thể bỏ sót transaction chạy lâu. - Enrich bằng KSQL (join stream, lọc, tổng hợp). Theo Dream11 KSQL lúc đó còn non: có lần mất dữ liệu; chạy ở chế độ CLI đôi khi sinh b…
- Centrifuge: a reliable system for delivering billions of events per day Bài tóm tắt · Segment · 2018
…đổi chính - Queue ảo trên database: thứ tự giao nằm trong MySQL (RDS), nên đổi chất lượng dịch vụ hay thứ tự giao chỉ là một câu SQL , không phải chép lại hàng TB dữ liệu như với q…
- Automating Periodic Data Transfer from an Operational Database to a Data Warehouse Bài tóm tắt · Allegro · 2024
…dữ liệu ngắn hơn ở DB production. - Ràng buộc: nguồn PostgreSQL , đích BigQuery ; dòng bất biến (chỉ thêm, không sửa xoá); GCP không kết nối thẳng được tới Postgres (kể cả VPN/Inte…
- From Batch Snapshots to Near-Real-Time Data Bài tóm tắt · Doximity · 2026
…h, là mốc phục hồi và kiểm tra); CDC (Debezium đọc binlog MySQL → Kafka → sink Snowflake) tối ưu độ tươi. Một bảng CDC có thể tươi hơn, nhưng hai bảng CDC liên quan có thể không cù…
- Stream processing Chủ đề Thành viên
Khi batch hằng ngày hay hằng giờ không còn đủ tươi (chi tiêu quảng cáo phải dừng đúng lúc chạm ngân sách, dashboard MRR không được trễ 24 giờ, alert phải bắn khi contest sắp đầy), hệ phải tính liên tục trên luồng sự…
- Pushing Postgres beyond storage: scaling performance at Optiver Bài tóm tắt · Optiver · 2026
Một số database của Optiver chứa bảng nhỏ đổi rất thường xuyên, như cấu hình và dữ liệu giá, nằm thẳng trên đường đi của các hệ tự động; có thể có hàng nghìn process cần đồng bộ với chúng.
- Query planner và hiệu năng truy vấn Chủ đề Thành viên
Database quan hệ không chạy SQL theo đúng cách nó được viết. Query planner chọn một plan (dùng index nào, join kiểu gì: nested loop, merge, hash; dừng sớm khi có LIMIT hay không) dựa trên thống kê về dữ liệu: số dòng,…
- Sharding và tách database Chủ đề Thành viên
Một database quan hệ duy nhất là điểm khởi đầu của hầu hết sản phẩm. Đến một lúc nó không chịu nổi lượng ghi, dữ liệu không còn vừa một máy, hoặc một sự cố ở DB đó làm sập mọi tính năng.
- Chọn database theo workload Chủ đề Thành viên
Không có database tốt nhất, chỉ có database hợp với mẫu đọc/ghi ở một quy mô cụ thể. Mẫu đó thay đổi khi sản phẩm lớn lên. Ngoài ra, chuyên môn vận hành của đội cũng là một phần của "workload".
- Giao dịch phân tán và nhất quán xuyên service Chủ đề Thành viên
Với một DB quan hệ, BEGIN … COMMIT lo hết. Khi dữ liệu bị chia (shard, tách service, thêm Redis bên cạnh Postgres), một thao tác nghiệp vụ chạm nhiều nơi, và câu hỏi khó nhất trở thành "timeout rồi, việc đó đã xảy ra…
- Migration không downtime Chủ đề Thành viên
Hệ thống đang chạy thật (gọi xe, chat, thiết kế) không được dừng, nhưng phải đổi ngôn ngữ, database hoặc hạ tầng bên dưới.
- Pipeline dữ liệu và analytics Chủ đề Thành viên
Lúc đầu, báo cáo chạy thẳng trên DB production. Đến một lúc truy vấn phân tích làm chậm giao dịch, dữ liệu cần gộp từ nhiều nguồn, và có thêm người dùng mới (analyst, ML, khách hàng xem dashboard). Khi đó cần một mặt…
- Scale dọc trước khi scale ngang Chủ đề
Thêm máy (scale ngang) kéo theo độ phức tạp phân tán. Bắt mỗi máy làm được nhiều hơn (scale dọc, tối ưu) thì đơn giản hơn, nhưng có trần và dễ thành một điểm hỏng.
- Event-driven, message queue và Kafka Chủ đề Thành viên
Khi một hệ có nhiều bên cần biết "có gì vừa xảy ra" (đơn hàng đổi trạng thái, tin đăng được sửa, ticket được cập nhật), gọi đồng bộ từng bên một làm producer phải biết mọi consumer, và một consumer chậm kéo chậm cả…
- Cache và invalidation Chủ đề Thành viên
Cache là cách rẻ nhất để một DB chịu được lượng đọc tăng nhiều lần. Vì vậy nó xuất hiện ngay từ giai đoạn đầu (Instagram 2011, Facebook 2004–2010). Cái giá đến sau, và lặp lại ở hầu hết các nguồn:
- Chi phí hạ tầng và build vs buy Chủ đề Thành viên
Khi còn nhỏ, chi phí hạ tầng là chuyện phụ và cloud là lựa chọn hiển nhiên. Khi lớn lên, hoá đơn có thể chiếm phần lớn giá vốn. Hai câu hỏi xuất hiện: tối ưu chi phí trên nền đang có thế nào, và khi nào nên tự xây (hoặc…
- Hot partition và thundering herd Chủ đề Thành viên
Chia dữ liệu và tải ra nhiều máy chỉ hiệu quả khi tải chia đều. Thực tế tải lệch: một khách hàng khổng lồ, một kênh có @everyone, một bài của người nổi tiếng. Có hai dạng hay gặp:
- Nền tảng ML (feature, training, serving, giám sát model) Chủ đề Thành viên
Model ML đầu tiên của một công ty thường được nhúng thẳng vào một service có sẵn, với feature tính trong vài script và train bằng một job riêng. Khi số model và số người làm model tăng, bốn chỗ cùng hỏng:
- Wix Công ty Thành viên
Năm 2015 Wix dùng MySQL như một kho key/value (blob, không join, không transaction, GUID do client sinh) cho bảng phân giải URL → site, active-active 3 DC, đọc khoảng 1 ms; theo Wix, "MySQL là NoSQL tốt hơn" . Năm 2021,…
- How Figma's databases team lived to tell the scale Bài tóm tắt · Figma · 2024
…ay đổi chính - Loại CockroachDB, TiDB, Spanner, Vitess và NoSQL: - migration giữa hai kho dữ liệu phức tạp; - mất chuyên môn RDS Postgres tích luỹ nhiều năm; - chỉ còn vài tháng đư…
- LinkedIn Công ty Thành viên
Bài khung là bài nhìn lại năm 2015 . LinkedIn bắt đầu năm 2003 là một monolith tên Leo. Service đầu tiên tách ra là member graph, vì đồ thị kết nối có profile tải khác hẳn; DB profile được đỡ bằng scale dọc rồi replica…