Bài tóm tắt

Tóm tắt bằng lời riêng, luôn dẫn về bài gốc. 979 bài. Đọc miễn phí.

Nguồn dữ liệu danh sách bài viết của blog công ty

Danh sách bài trên trang công ty gồm 10.013 bài. Khoảng 73,6% (7.365 bài) do SWE Wiki thu thập thủ công từ kho lưu trữ blog chính chủ của các công ty, kèm ngày đăng. Phần còn lại lấy từ các danh sách công khai trên GitHub: binhnguyennus/awesome-scalability (667), abhivaikar/howtheytest (551), upgundecha/howtheysre (499), eugeneyan/applied-ml (376), Engineer1999/ML-System-Design-Case-Studies (239), upgundecha/howtheyaws (149) và một số danh sách nhỏ khác. Mọi link luôn dẫn về bài gốc trên blog của tác giả; SWE Wiki không sao chép nội dung bài. Hiện 9.115 bài thuộc 135 công ty có trang wiki riêng và 897 bài thuộc 261 trang danh sách bài viết (công ty chưa có trang wiki); thành viên xem được toàn bộ danh sách. Cảm ơn những người duy trì các danh sách đó.

Mọi giai đoạn 1. Khởi đầu2. Tăng trưởng3. Quy mô lớn4. Điều chỉnh
Mọi độ khó DễCơ bảnTrung bìnhKhóNâng cao
Bài tóm tắt · LinkedIn · 2014 Trung bình

Real-time Analytics at Massive Scale with Pinot

Khoảng 2012, các sản phẩm phân tích chạy trên Oracle và Voldemort, không hợp với OLAP; dữ liệu tăng theo cả chiều rộng lẫn chiều sâu. Ví dụ Jobs Analytics: xử lý và nén trên Hadoop rồi đẩy lại vào Oracle, nên không gần…

Bài tóm tắt · LinkedIn · 2014 Trung bình

Questioning the Lambda Architecture

Lambda architecture (Nathan Marz): cùng một luồng dữ liệu bất biến được đưa song song vào hệ batch (MapReduce) và hệ stream (Storm); logic biến đổi viết hai lần, kết quả hai bên ghép lại lúc truy vấn.

Bài tóm tắt · Meta · 2014 Nâng cao

Lessons from Deploying MySQL GTID at Scale

Replication MySQL truyền thống dựa trên toạ độ tương đối (tên file binlog + vị trí). GTID (MySQL 5.6) gán cho mỗi transaction một ID duy nhất, nên replica tự biết mình đã chạy tới đâu (auto-positioning).

Bài tóm tắt · Netflix · 2014 Trung bình

Using Presto in our Big Data Platform on AWS

Nền big data của Netflix (2014) đặt data warehouse trên S3: compute tách khỏi storage, nhiều cluster (chạy dài hay tạm) cùng đọc chung dữ liệu. User viết job Pig hoặc Hive cho ETL và phân tích; một phần nhỏ kết quả và…

Bài tóm tắt · Pinterest · 2014 Trung bình

Behind the Pins: Building Analytics

8/2014 Pinterest ra bản 2 của công cụ analytics cho doanh nghiệp (analytics theo domain, profile, audience; phân theo quốc gia, ứng dụng; impression, click, repin).

Bài tóm tắt · SoundCloud · 2014 Khó

Roshi: a CRDT system for timestamped events

Stream của SoundCloud: các event (thời điểm, ai làm, làm gì) từ những người mình follow, xếp mới nhất trước.

Bài tóm tắt · Twilio · 2014 Trung bình

How We Replaced Our Data Pipeline With Zero Downtime

Mỗi cuộc gọi hay tin nhắn đi qua các trạng thái in-flight (đổ chuông, đang gọi, xếp hàng), rồi thành bản ghi post-flight để lưu lâu dài và phân tích. Trước đây cả hai nằm chung một cluster MySQL.

Bài tóm tắt · Twitter · 2014 Khó

How Twitter Uses Redis to Scale - 105TB RAM, 39MM QPS, 10,000+ Instances

Năm 2014 cache của Twitter: khoảng 105 TB RAM, 39 triệu QPS, hơn 10.000 instance; Redis từ 2010 cho Timeline (danh sách ID tweet), rồi Ads. Dịch vụ cache tăng từ một project lên gần trăm project dùng.

Bài tóm tắt · WhatsApp · 2014 Dễ

Open Whisper Systems partners with WhatsApp to provide end-to-end encryption

Open Whisper Systems đã phát triển giao thức mã hoá mở cho nhắn tin bất đồng bộ (TextSecure, sau đổi tên Signal Protocol) trong ba năm. Hai bên đã làm việc với nhau nửa năm trước khi thông báo.

Bài tóm tắt · WhatsApp · 2014 Khó

The WhatsApp Architecture Facebook Bought For $19 Billion

450 triệu user hoạt động, hơn 1 triệu đăng ký mỗi ngày, 50 tỉ tin nhắn/ngày (vào + ra), với 32 kỹ sư (một kỹ sư trên 14 triệu user). Hàng trăm node, hơn 8.000 core, hàng trăm TB RAM, hơn 70 triệu message Erlang mỗi giây.

Bài tóm tắt · WhatsApp · 2014 Khó

How WhatsApp Grew to Nearly 500 Million Users, 11,000 cores, and 70 Million Messages a Second

465 triệu user/tháng; 19 tỉ tin vào và 40 tỉ tin ra mỗi ngày; 600 triệu ảnh, 200 triệu voice, 100 triệu video mỗi ngày.

Bài tóm tắt · Go · 2013 Nâng cao

Inside the Go Playground

Playground (9/2010) cho chạy chương trình Go bất kỳ từ trình duyệt, dùng trong tài liệu, tour, slide. Ba phần: backend trên máy của Google (compile + chạy, trả output qua RPC), frontend trên App Engine (nhận HTTP, gọi…

Bài tóm tắt · Instagram · 2013 Trung bình

Handling Growth with Postgres: 5 Tips From Instagram

Postgres vẫn là kho dữ liệu chuẩn (canonical) cho phần lớn dữ liệu user. Từ 90 like/giây (bài sharding năm 2011, ) lên hơn 10.000 like/giây lúc cao điểm (đầu 2013) mà công nghệ lưu trữ lõi không đổi.

Bài tóm tắt · Jepsen · 2013 Khó

Call me maybe: Cassandra

Cassandra theo mô hình Dynamo (hash ring, N bản, quorum điều chỉnh được, hinted handoff, anti-entropy) nhưng bỏ vector clock để dùng last-write-wins thuần: một round-trip mỗi ghi thay vì hai.

Bài tóm tắt · Jepsen · 2013 Khó

Call me maybe: Kafka

Kafka 0.8 thêm replication: mỗi partition một leader (bầu qua ZooKeeper) giữ ISR (in-sync replica); ghi commit khi mọi node trong ISR ack. LinkedIn tuyên bố chịu được f−1 lỗi với f node vì theo kinh nghiệm vận hành của…

Bài tóm tắt · LinkedIn · 2013 Trung bình

Open sourcing Databus: LinkedIn's low latency change data capture system

LinkedIn có nhiều hệ lưu trữ chuyên biệt: DB OLTP nhận ghi; search index, cache, read replica phục vụ đọc. Các hệ dẫn xuất này phải theo kịp DB chính một cách đáng tin cậy và giữ thứ tự transaction.

Bài tóm tắt · LinkedIn · 2013 Dễ

Rest.li: RESTful Service Architecture at Scale

LinkedIn cần một cách chuẩn để mô tả resource trong kiến trúc SOA cho client viết bằng nhiều ngôn ngữ, chịu được vài nghìn QPS mỗi instance, bất đồng bộ, và cho phép interface tiến hoá lâu dài.

Bài tóm tắt · LinkedIn · 2013 Trung bình

The Log: What every software engineer should know about real-time data's unifying abstraction

Khoảng 2007 LinkedIn bắt đầu chạm giới hạn của một database tập trung, chuyển sang một danh mục hệ phân tán chuyên biệt: search, social graph, Voldemort (key-value), Espresso (document), recommendation, OLAP, Hadoop,…

Bài tóm tắt · Meta · 2013 Trung bình

Under the Hood: Building out the infrastructure for Graph Search

Facebook có nhiều hệ search cũ chồng nhau: PPS (theo từ khoá, cá nhân hoá, lọc theo loại entity); Typeahead (2009–2010, tìm theo tiền tố khi gõ, viết lại toàn bộ backend và frontend để đạt hiệu năng, nhưng index bị giới…

Bài tóm tắt · Netflix · 2013 Khó

Active-Active for Multi-Regional Resiliency

Theo Netflix, tỉ lệ hỏng phụ thuộc hai thứ: quy mô deploy và tốc độ thay đổi; chạy lớn mà vẫn đổi nhanh thì "lúc nào cũng có thứ hỏng". Mục tiêu nội bộ là 99,99%. Mất trọn một region rất hiếm, nhưng chính tốc độ thay…

Bài tóm tắt · Netflix · 2013 Trung bình

Scryer: Netflix's Predictive Auto Scaling Engine

Netflix dùng Amazon Auto Scaling (AAS): tăng giảm số instance theo metric hiện tại (thường là load average). Theo Netflix, AAS hiệu quả cho availability và chi phí, nhưng phản ứng sau khi tải đã đổi.

Bài tóm tắt · Pinterest · 2013 Trung bình

Scaling Pinterest - From 0 To 10s Of Billions Of Page Views A Month In Two Years

3/2010: 2 nhà sáng lập, 1 kỹ sư, Rackspace, 1 web engine nhỏ, 1 MySQL nhỏ.

Bài tóm tắt · Quora · 2013 Cơ bản

Quora's Distributed Cron Architecture

Thời đầu, mỗi tần suất (mỗi phút, 5 phút, giờ, ngày, tuần) có một script chạy tuần tự mọi job của tần suất đó, tất cả trên một máy.

Bài tóm tắt · Stack Overflow · 2013 Dễ

What it takes to run Stack Overflow

Nick Craver mô tả Stack Overflow là chạy "with scale" nhưng không "at scale": vận hành rất hiệu quả nhưng chưa "lớn". Số liệu một ngày (12/11/2013), chỉ tính data center đang hoạt động, không tính CDN: