Thứ Năm, 13 tháng 2, 2025

DB POSTGRESQL HOẠT ĐỘNG NHƯ THẾ NÀO?


PostgreSQL là một hệ quản trị cơ sở dữ liệu quan hệ mạnh mẽ, hoạt động dựa trên sự phối hợp giữa nhiều tiến trình để xử lý truy vấn, quản lý bộ nhớ và đảm bảo tính toàn vẹn của dữ liệu. 


BƯỚC 1: NHẬN KẾT NỐI TỪ ỨNG DỤNG

Khi một ứng dụng web hoặc bất kỳ hệ thống nào gửi yêu cầu đến PostgreSQL, nó cần thiết lập một kết nối. PostgreSQL tạo một tiến trình riêng biệt cho mỗi kết nối này, đảm bảo rằng các truy vấn từ từng ứng dụng được xử lý độc lập, giúp tăng cường hiệu suất và bảo mật.

Mỗi kết nối này được quản lý bởi một tiến trình nền, hoạt động liên tục để nhận lệnh từ ứng dụng và gửi kết quả truy vấn ngược lại.

BƯỚC 2: QUẢN LÝ BỘ NHỚ VÀ XỬ LÝ DỮ LIỆU

Sau khi nhận được truy vấn, PostgreSQL sử dụng bộ nhớ chia sẻ (Shared Memory) để xử lý dữ liệu trước khi truy xuất từ ổ đĩa. Bộ nhớ chia sẻ này bao gồm nhiều thành phần:

• Shared Buffers: Giữ dữ liệu truy vấn gần đây để tăng tốc truy cập.

• WAL Buffers: Lưu trữ thông tin về các thay đổi để đảm bảo an toàn dữ liệu.

• Clog Buffers: Theo dõi trạng thái của các giao dịch để hỗ trợ kiểm soát lỗi.

• Temp Buffers: Lưu trữ dữ liệu tạm thời trong quá trình thực thi truy vấn.

Nếu truy vấn yêu cầu xử lý nhiều dữ liệu cùng lúc, PostgreSQL có thể kích hoạt các tiến trình nền (Background Workers) để xử lý song song, giúp cải thiện hiệu suất.

BƯỚC 3: THỰC HIỆN CÁC TIẾN TRÌNH HỖ TRỢ

Để hệ thống hoạt động trơn tru, PostgreSQL duy trì nhiều tiến trình hỗ trợ chạy song song. Một số tiến trình quan trọng bao gồm:

• BG Writer: Ghi dữ liệu từ bộ nhớ đệm xuống ổ đĩa để đảm bảo dữ liệu không bị mất.

• WAL Writer: Quản lý nhật ký giao dịch để giúp khôi phục dữ liệu khi xảy ra sự cố.

• Auto Vacuum: Tự động xóa các bản ghi không còn cần thiết để duy trì hiệu suất.

• Checkpointer: Định kỳ ghi dữ liệu xuống ổ đĩa, giúp giảm thời gian khôi phục khi hệ thống gặp sự cố.

• Statistics Collector: Thu thập thông tin về hiệu suất hệ thống.

• System Logger: Ghi lại hoạt động của PostgreSQL để hỗ trợ giám sát và khắc phục lỗi.

• Replication Launcher: Hỗ trợ sao chép dữ liệu giữa các máy chủ để tăng cường bảo mật và khả năng mở rộng.

Các tiến trình này giúp PostgreSQL duy trì hiệu suất ổn định ngay cả khi hệ thống hoạt động liên tục với khối lượng dữ liệu lớn.

BƯỚC 4: LƯU TRỮ DỮ LIỆU LÂU DÀI

Khi dữ liệu cần được lưu trữ, PostgreSQL ghi chúng vào hệ thống tệp vật lý bao gồm:

• Data Files: Chứa dữ liệu thực tế của cơ sở dữ liệu.

• WAL Files: Ghi lại mọi thay đổi để đảm bảo khôi phục dữ liệu trong trường hợp lỗi.

• Archive Files: Lưu trữ các phiên bản cũ của WAL để hỗ trợ khôi phục dữ liệu.

• Log Files: Ghi lại nhật ký hoạt động và lỗi để giúp quản trị viên theo dõi tình trạng hệ thống.

Hệ thống Postmaster Process chịu trách nhiệm điều phối toàn bộ quá trình này, đảm bảo rằng tất cả các dữ liệu được xử lý chính xác và không bị mất mát.

Khi một truy vấn được gửi đến:

1. PostgreSQL thiết lập một kết nối riêng biệt.

2. Dữ liệu được xử lý trong bộ nhớ chia sẻ để tăng tốc truy vấn.

3. Các tiến trình hỗ trợ giúp quản lý bộ nhớ, bảo trì hệ thống và đảm bảo hiệu suất.

4. Cuối cùng, dữ liệu được ghi xuống ổ đĩa để đảm bảo tính toàn vẹn lâu dài.

Nhờ kiến trúc này, PostgreSQL trở thành một lựa chọn hàng đầu cho các hệ thống yêu cầu hiệu suất cao, bảo mật và khả năng mở rộng mạnh mẽ.
=============================
Website không chứa bất kỳ quảng cáo nào, mọi đóng góp để duy trì phát triển cho website (donation) xin vui lòng gửi về STK 90.2142.8888 - Ngân hàng Vietcombank Thăng Long - TRAN VAN BINH
=============================
Nếu bạn không muốn bị AI thay thế và tiết kiệm 3-5 NĂM trên con đường trở thành DBA chuyên nghiệp hay làm chủ Database thì hãy đăng ký ngay KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE, được Coaching trực tiếp từ tôi với toàn bộ bí kíp thực chiến, thủ tục, quy trình của gần 20 năm kinh nghiệm (mà bạn sẽ KHÔNG THỂ tìm kiếm trên Internet/Google) từ đó giúp bạn dễ dàng quản trị mọi hệ thống Core tại Việt Nam và trên thế giới, đỗ OCP.
- CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
- Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
2 khóa học online qua video giúp bạn nhanh chóng có những kiến thức nền tảng về Linux, Oracle, học mọi nơi, chỉ cần có Internet/4G:
- Oracle cơ bản: https://bit.ly/admin_1200
- Linux: https://bit.ly/linux_1200
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile/Zalo: 0902912888
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: https://www.youtube.com/@binhguru
👨 Tiktok: https://www.tiktok.com/@binhguru
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhguru
👨 Podcast: https://www.podbean.com/pu/pbblog-eskre-5f82d6
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
oracle tutorial, học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,sql tutorial, khóa học pl/sql tutorial, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail,oracle RAC, ASM, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, postgresql tutorial, mysql tutorial, mariadb tutorial, ms sql server tutorial, nosql, mongodb tutorial, oci, cloud, middleware tutorial, hoc solaris tutorial, hoc linux tutorial, hoc aix tutorial, unix tutorial, securecrt, xshell, mobaxterm, putty

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master