Postgres is an object-relational database management system.
PostgreSQL serves to provide support for applications which need data management, objects, and knowledge management. Therefore, the database supports all modern Unix systems. That is to say nothing more nor less than 34 platforms.
It will take a long time to describe the full list of PostgreSQL features. But let's coupled with the most basic:
o full compliance with the principles of ACID - Atomicity, Consistency, Isolation, Durability.
o multiple Concurrency Control (MVCC) to maintain consistency of data in competitive conditions. MVCC means that each transaction sees the database version at the time the transaction starts.
o Write Ahead Logging (WAL) is a common mechanism for logging all transactions. That allows you to restore the system after possible failures.
o Point in Time Recovery (PITR) is the ability to restore a database (using WAL) at any time in the past.
o replication that increases the reliability of PostgreSQL.
o data integrity is the heart of PostgreSQL. PostgreSQL supports data-level consistency at the schema level - foreign keys, constraints.
o the openness of code means their absolute accessibility for anyone.
- On the other hand, there are a lot of indexes on the use, intelligent query scheduler, thin locking system, memory buffer management and caching system, excellent scalability in competitive work.
o index support: standard, partial indices, functional indices (expressional indices)
o the query scheduler provides the user with debugging queries and allows to configure the system.
o the lock system supports locking at a lower level. That allows you to maintain a high level of competitiveness while protecting the integrity of the data.
o buffer management and caching.