- vừa được xem lúc

Hệ quản trị cơ sở dữ liệu Postgresql là gì ?

0 0 17

Người đăng: Xuân Huy

Theo Viblo Asia

POSTGRESQL LÀ GÌ ?

PostgreSQL là một hệ quản trị cơ sở dữ liệu quan hệ và đối tượng. Nó là một hệ quản trị cơ sở dữ liệu miễn phí (open source) phổ biến nhất hiện nay. Với hơn 30 năm phát triển mạnh mẽ nó đã đạt được độ tin cậy cao, tính năng mạnh mẽ và hiệu suất cao.

Tại sao nên dùng PostgreSQL cho dự án của bạn

  • Ngoài việc miễn phí và mã nguồn mở, PostgreSQL có khả năng mở rộng cao. Nó còn đi kèm với một số tính năng hỗ trợ rất tốt trong việc phát triển dự án, trong series này mình sẽ giới thiệu đến các bạn đầy đủ và thực hành ở các bài viết tiếp theo nhé.

Một số thông tin về PostgreSQL

  • Phát triển bởi: PostgreSQL Global Development Group
  • Phát hành lần đầu: 08/07/1996
  • Phiên bản hiện tại: 15 phát hành vào ngày 29-09-2022
  • Viết bằng ngôn ngữ lập trình C
  • Operating System: FreeBSD, Linux, macOS, OpenBSD, Windows
  • Loại phần mềm: RDBMS
  • License: PostgreSQL License (free and open-source, permissive)
  • Website: postgresql.org

Dưới đây là đẩy đủ các tính năng mà PostgreSQL cung cấp.

Data types (kiểu dữ liệu)

  • Primitives: Integer, Numeric, String, Boolean
  • Structured: Date/Time, Array, Range / Multirange, UUID
  • Document: JSON/JSONB, XML, Key-value (Hstore)
  • Geometry: Point, Line, Circle, Polygon
  • Customizations: Composite, Custom Types

Data Integrity (toàn vẹn dữ liệu)

  • UNIQUE, NOT NULL
  • Primary Keys
  • Foreign Keys
  • Exclusion Constraints
  • Explicit Locks, Advisory Locks

Concurrency, Performance (tính đồng thời và hiệu suất)

  • Indexing: B-tree, Multicolumn, Expressions, Partial
  • Advanced Indexing: GiST, SP-Gist, KNN Gist, GIN, BRIN, Covering indexes, Bloom filters
  • Sophisticated query planner / optimizer, index-only scans, multicolumn statistics
  • Transactions, Nested Transactions (via savepoints)
  • Multi-Version concurrency Control (MVCC)
  • Parallelization of read queries and building B-tree indexes
  • Table partitioning
  • All transaction isolation levels defined in the SQL standard, including Serializable
  • Just-in-time (JIT) compilation of expressions

Reliability, Disaster Recovery

  • Write-ahead Logging (WAL)
  • Replication: Asynchronous, Synchronous, Logical
  • Point-in-time-recovery (PITR), active standbys
  • Tablespaces

Security

  • Authentication: GSSAPI, SSPI, LDAP, SCRAM-SHA-256, Certificate, and more
  • Robust access-control system
  • Column and row-level security
  • Multi-factor authentication with certificates and an additional method

Extensibility

  • Stored functions and procedures
  • Procedural Languages: PL/PGSQL, Perl, Python (and many more)
  • SQL/JSON path expressions
  • Foreign data wrappers: connect to other databases or streams with a standard SQL

Internationalisation, Text Search

  • Support for international character sets, e.g. through ICU collations
  • Case-insensitive and accent-insensitive collations
  • Full-text search

Cảm ơn anh em đã đọc tới đây, nếu thấy hữu ích, cho mình 1 upvote để có động lực ra thêm các bài tiếp theo nhé.

Ở bài tiếp theo mình sẽ hướng dẫn cài đặt PostgresSQL trên Docker, macOS và Windows, những trang bị đầu tiên để chiến đấu cho anh em.

Cài đặt PostgresSQL: https://viblo.asia/p/cai-dat-he-quan-tri-co-so-du-lieu-postgressql-y37LdAX2Vov

Bình luận

Bài viết tương tự

- vừa được xem lúc

Nhập môn lý thuyết cơ sở dữ liệu - Phần 1 : Tổng quan

# Trong bài viết này mình sẽ tập trung vào chủ đề tổng quan về Cơ sở dữ liệu. Phần 1 lý thuyết nên hơi chán các bạn cố gắng đọc nhé, chắc lý thuyết mới làm bài tập được, kiến thức còn nhiều các bạn cứ

0 0 96

- vừa được xem lúc

002: Hiểu về Index để tăng performance với PostgreSQL P1

Bài viết nằm trong series Performance optimization với PostgreSQL. Từ bài này sẽ liên quan nhiều đến practice nên các bạn chuẩn bị env và data trước.

0 0 483

- vừa được xem lúc

003: Hiểu về Index để tăng performance với PostgreSQL P2

Bài viết nằm trong series Performance optimization với PostgreSQL. . . B-Tree index.

0 0 502

- vừa được xem lúc

010: Exclusive lock và Shared lock

Bài viết nằm trong series Performance optimization với PostgreSQL. Nếu execute single query:. UPDATE TABLE X SET COLUMN = 'Y' WHERE ID = 1;. .

0 0 38

- vừa được xem lúc

009: Optimistic lock và Pessimistic lock

Bài viết nằm trong series Performance optimization với PostgreSQL. Nghe có vẻ nguy hiểm nhưng cách giải quyết không có gì phức tạp, sử dụng các cơ chế mutual exclusion là giải quyết được vấn đề này.

0 0 46

- vừa được xem lúc

011: PostgreSQL multi-version concurrency control

Bài viết nằm trong series Performance optimization với PostgreSQL. Vậy có cách nào không cần lock mà vẫn concurrent read/write không.

0 0 33