@geckotech0101: 🚀 Các cách làm tăng hiệu suất cho Database của bạn: 👉 Indexing (Chỉ mục) Mục đích: Giúp truy vấn dữ liệu nhanh hơn bằng cách tạo index trên các cột thường xuyên được tìm kiếm. Cách hoạt động: Index giống như một danh mục giúp tìm kiếm nhanh thay vì phải quét toàn bộ bảng. Ví dụ: Nếu có bảng users với hàng triệu bản ghi, truy vấn SELECT * FROM users WHERE email = '[email protected]' sẽ nhanh hơn nhiều nếu có index trên cột email. 👉 Materialized Views (Lượt xem vật lý hóa) Mục đích: Tăng tốc truy vấn bằng cách lưu trữ sẵn kết quả của các truy vấn phức tạp. Cách hoạt động: Thay vì tính toán lại mỗi lần truy vấn, hệ thống sẽ lưu sẵn dữ liệu đã tính toán trước. Ví dụ: Nếu có báo cáo doanh thu hàng tháng từ hàng triệu giao dịch, có thể tạo materialized view để lưu kết quả thay vì phải tính toán lại mỗi lần cần xem báo cáo. 👉 Denormalization (Phi chuẩn hóa) Mục đích: Giảm số lượng JOIN phức tạp để tăng tốc truy vấn. Cách hoạt động: Sao chép dữ liệu từ các bảng khác nhau vào một bảng duy nhất để tránh truy vấn JOIN tốn kém. Ví dụ: Thay vì có bảng orders chứa customer_id phải JOIN với customers để lấy customer_name, ta có thể lưu customer_name trực tiếp trong bảng orders. 👉 Database Caching (Bộ nhớ đệm) Mục đích: Giảm tải truy vấn bằng cách lưu dữ liệu đã truy vấn vào bộ nhớ đệm nhanh hơn. Cách hoạt động: Dùng Redis hoặc Memcached để lưu kết quả truy vấn thường xuyên được sử dụng thay vì truy vấn lại từ DB. Ví dụ: Nếu một trang web có trang hiển thị danh sách sản phẩm phổ biến, thay vì query lại DB mỗi lần, có thể lưu cache và chỉ cập nhật cache khi có thay đổi. 👉 Replication (Nhân bản) Mục đích: Phân tải đọc (read) bằng cách tạo bản sao của database trên nhiều server. Cách hoạt động: Một database chính (Primary) sẽ có nhiều bản sao (Replica), ứng dụng có thể đọc dữ liệu từ Replica để giảm tải cho Primary. Ví dụ: Một trang web có hàng triệu người dùng có thể thiết lập một Primary DB để ghi dữ liệu, trong khi các truy vấn đọc sẽ được thực hiện trên các Replica. 👉 Vertical Scaling (Mở rộng dọc) Mục đích: Nâng cấp phần cứng của server database để có hiệu suất tốt hơn. Cách hoạt động: Tăng CPU, RAM, SSD của máy chủ để xử lý nhiều truy vấn hơn. Ví dụ: Nếu một database bị quá tải, có thể nâng cấp từ một server 8 CPU lên server 32 CPU để cải thiện hiệu suất. 👉 Sharding (Phân mảnh dữ liệu) Mục đích: Phân tán dữ liệu thành nhiều phần nhỏ hơn để tăng tốc truy vấn và phân tải. Cách hoạt động: Chia bảng dữ liệu lớn thành nhiều "shard" nhỏ, mỗi shard chạy trên một server khác nhau. Ví dụ: Nếu có một bảng users chứa hàng tỷ người dùng, có thể chia thành shard 1 (chứa user A-M), shard 2 (N-Z), giúp giảm tải cho từng server. #gecko_tech #sql #database #scalling_database

Keycap Hunter Shop
Keycap Hunter Shop
Open In TikTok:
Region: VN
Thursday 13 February 2025 16:16:06 GMT
1200
26
0
1

Music

Download

Comments

There are no more comments for this video.
To see more videos from user @geckotech0101, please go to the Tikwm homepage.

Other Videos


About