/CASE STUDY/

Reddit di chuyển cơ sở dữ liệu lên Amazon Aurora

Với số lượng người dùng tăng hơn 30% mỗi năm, Reddit phải đối mặt với những thách thức trong việc đảm bảo cung cấp dịch vụ chất lượng cho người dùng, trong trường hợp này, họ phải thuê thêm kỹ sư hoặc đầu tư vào nhiều về tài nguyên hơn để đáp ứng lượng dữ liệu gia tăng này. Tuy nhiên, vẫn có một lựa chọn khác là chuyển sang dịch vụ cơ sở dữ liệu (CSDL) quan hệ được quản trị hoàn chỉnh (fully-managed relational database service). Ở case study này, đó là Amazon Aurora.

Về Reddit

Reddit là một trang web tổng hợp với nhiều lĩnh vực khác nhau từ giải trí, dịch vụ giao tiếp xã hội đến các tin tức trực tuyến và đặc biệt là công nghệ thông tin.

Được thành lập vào năm 2005 bởi hai người bạn đại học, Reddit là một trong những trang web truyền thông xã hội được truy cập nhiều nhất trên thế giới. 430 triệu người dùng hoạt động hàng tháng trên toàn cầu chia sẻ sở thích, tin tức và câu chuyện giải trí, v.v. trong 130.000 cộng đồng đang hoạt động tạo ra hơn 30 tỷ lượt xem hàng tháng.

Nói đến Reddit là nói đến hai từ: “chia sẻ”. Ảnh, tin tức, video hài hước, các câu hỏi dành cho cộng đồng,… – chúng là những thành phần không thể thiếu của Reddit.

reddit aws migration

Về Amazon Aurora

Amazon Aurora là một cơ sở dữ liệu quan hệ tương thích với MySQL và PostgreSQL dành riêng cho đám mây, kết hợp hiệu năng và tính khả dụng của cơ sở dữ liệu doanh nghiệp truyền thống cùng với sự tối giản và khả năng tiết kiệm chi phí của cơ sở dữ liệu mã nguồn mở.

Amazon Aurora nhanh hơn đến năm lần so với cơ sở dữ liệu MySQL tiêu chuẩn và nhanh hơn đến ba lần so với cơ sở dữ liệu PostgreSQL tiêu chuẩn. Amazon Aurora mang đến cho bạn tính bảo mật, tính khả dụng và độ tin cậy của cơ sở dữ liệu thương mại với giá chỉ bằng 1/10. Amazon Aurora được quản lý toàn phần bởi Amazon Relational Database Service (RDS), giúp tự động hóa các tác vụ quản trị tốn kém thời gian ví dụ như cung cấp phần cứng, thiết lập cơ sở dữ liệu, vá lỗi phần mềm và sao lưu.

Đọc thêm: https://aws.amazon.com/rds/aurora/

amazon aurora

 

Lý do Reddit sử dụng Amazon Aurora

“Sử dụng Aurora, chúng tôi có thể xây dựng một chiến lược dài hạn hơn về cách xử lý dữ liệu và suy nghĩ chiến lược hơn cho các dự án dài hạn.”

Reddit đã vận hành phần lớn cơ sở hạ tầng của nền tảng trên AWS kể từ năm 2009. Nền tảng Reddit sử dụng cơ sở dữ liệu PostgresSQL chạy trên dịch vụ Amazon EC2 và sử dụng Amazon S3 để hỗ trợ lưu trữ dữ liệu cung cấp cho Reddit.com và các ứng dụng di động native của họ.

Khi lượng người dùng của họ tiếp tục tăng mạnh, kiến trúc này không còn đủ khả năng đáp ứng và đủ hiệu quả để duy trì theo các phương pháp agile của họ và do đó, Reddit quyết định chuyển sang Amazon Aurora, một trong những dịch vụ AWS Serverless mà bạn hoàn toàn không cần quản lý các instance.

Amazon Aurora và Amazon Web Services đã mang lại cho Reddit các lợi ích sau:

  • Khả năng quản lý cơ sở dữ liệu theo quy mô để hỗ trợ tăng trưởng 30% qua từng năm.

  • Giảm gánh nặng hoạt động cho các kỹ sư và tăng năng suất của họ.

  • Cải thiện độ tin cậy của cơ sở dữ liệu.

  • Tăng tốc khôi phục sao lưu và khôi phục tại thời điểm (point-in-time recovery).

  • Tính năng chuyển đổi dự phòng tự động nhanh mất khoảng 30 giây.

 

Quy trình di chuyển (Migration) CSDL lên Aurora của Reddit

Reddit bắt đầu quá trình di chuyển của mình vào tháng 1 năm 2020. Di chuyển 24 cơ sở dữ liệu PostgreSQL trên EC2 instance qua Amazon Aurora là một nhiệm vụ cực kì đáng sợ do việc gặp sự cố hay mất mát dữ liệu có thể xảy ra bất cứ khi nào. Tuy nhiên, với công nghệ native logical replication trong Aurora tương thích với Logical Replication của PostgreSQL đã giúp tái tạo cơ sở dữ liệu mà không cần bất kỳ sự chuyển đổi nào.

Sau khi dữ liệu được sao chép, đội ngũ Reddit đã thử nghiệm Amazon Aurora trong môi trường production của họ về chức năng và hiệu suất cao. Sau đó, họ thực hiện chuyển đổi ghi (write cutover), nhưng việc cutover không gây nên downtime nào vì EC2 và Aurora có cùng một bộ API.

Amazon Aurora cũng cho phép các kỹ sư của Reddit khôi phục tại thời điểm nhanh hơn và khôi phục sao lưu cùng với việc cho phép sử dụng bản sao dữ liệu (data clones) để dễ dàng cung cấp dữ liệu cho các đội ngũ khác để thực hiện phân tích hoặc thử nghiệm.

 

Tổng kết

Chuyển từ PostgreSQL tự quản lý trên Amazon EC2 sang Aurora là một thành phần quan trọng trong thành công của Reddit.

Với quyết định lựa chọn một dịch vụ cơ sở dữ liệu khác để đáp ứng cho hàng trăm triệu user hoạt động mỗi tháng, Reddit đã cho thấy một lựa chọn đúng đắn khi sử dụng Amazon Aurora, vừa đáp ứng những yếu tố như Độ tin cậy cao và đáp ứng sự thay đổi nhanh chóng của CSDL, Hỗ trợ sao lưu và khôi phục nhanh hơn, Point-in-time recovery, Chuyển đổi dự phòng nhanh và Cải thiện năng suất cho các kỹ sư, vừa cải thiện được chất lượng của nền tảng Reddit cho người dùng và không gặp bất kỳ downtime nào khi chuyển đổi.

Giờ đây, Harvey và nhóm của ông có thể tập trung nhiều hơn vào các mục tiêu dài hạn, có giá trị cao như xem xét lại chiến lược lưu trữ dữ liệu của họ và ít tập trung hơn vào các nhiệm vụ quản trị.

 

Về VTI Cloud

VTI Cloud là Đối tác cấp cao (Advanced Consulting Partner) của AWS, với đội ngũ hơn 50+ kỹ sư về giải pháp được chứng nhận bởi AWS. Với mong muốn hỗ trợ khách hàng trong hành trình chuyển đổi số và dịch chuyển lên đám mây AWS, VTI Cloud tự hào là đơn vị tiên phong trong việc tư vấn giải pháp, phát triển phần mềm và triển khai hạ tầng AWS cho khách hàng tại Việt Nam và Nhật Bản.

Xây dựng các kiến trúc an toàn, hiệu suất cao, linh hoạt, và tối ưu chi phí cho khách hàng là nhiệm vụ hàng đầu của VTI Cloud trong sứ mệnh công nghệ hóa doanh nghiệp.

Ngoài ra, VTI Cloud có hỗ trợ xây dựng cộng đồng VIET-AWS. Đây là một trong các nhóm AWS User Groups phát triển nhanh chóng và được Amazon công nhận trong khu vực Asia Pacific (Việt Nam).

VIET-AWS là nơi kết nối, trao đổi hỗ trợ giữa các bạn Solutions Architect, DevOps, SysOps và các bạn sinh viên mới chập chững tiếp xúc dịch vụ điện toán đám mây của Amazon Web Services (AWS). Cùng VTI Cloud tham gia VIET-AWShttps://www.facebook.com/groups/vietawscommunity