PostgreSQL 2021
What is PostgreSQL
Let's start with a simple question: What is PostgreSQL?
PostgreSQL is an advanced open source enterprise-level relational database system. PostgreSQL supports SQL (relational) and JSON (non-relational) queries.
PostgreSQL is a highly stable database backed by over 20 years of development by the open source community.
PostgreSQL is used as the main database for many web applications, as well as mobile and analytics apps.
The PostgreSQL community declares PostgreSQL as / ˈpoʊstɡrɛs ˌkjuː ˈɛl /.
History of PostgreSQL
The PostgreSQL project began in 1986 in the Department of Computer Science at the University of California, Berkeley.
The project was originally called POSTGRES, referring to the old Ingres database that was also developed at Berkeley. The goal of the POSTGRES project was to add the minimum number of functions needed to support multiple data types.
In 1996, the POSTGRES project was renamed PostgreSQL to demonstrate compatibility with SQL. Today, PostgreSQL is generally abbreviated as Postgres.
Since then, PostgreSQL Global Development Group, a dedicated community of contributors, has continued to launch free and open source database projects.
PostgreSQL was originally designed to run on UNIX-like platforms. After that, PostgreSQL is developed and running on various platforms such as Windows, macOS, and Solaris.
Common Use Cases for PostgreSQL
Here are common PostgreSQL use cases.
1) Powerful database on LAPP stack
LAPP stands for Linux, Apache, PostgreSQL, and PHP (or Python and Perl). PostgreSQL is mainly used as a powerful backend database that runs many dynamic websites and web applications.
2) Database of general purpose transactions
Both large companies and startups use PostgreSQL as their primary database to support their applications and products.
3) Geospatial database
PostgreSQL with the PostGIS extension supports geospatial databases for geographic information systems (GIS).
Language help
PostgreSQL supports the most popular programming languages:
Piton
Java
C #
C / c +
Ruby
JavaScript (Node.js)
Pearl
Let's go
Tcl
Highlights of PostgreSQL
PostgreSQL has many advanced features offered by other database management systems throughout the enterprise, such as:
User defined types
Table inheritance
Advanced locking mechanism
Security foreign key reference
Views, rules, and subqueries
Nested transactions (saving points)
Multiple Version Sync Control (MVCC)
Asynchronous replication
Modern versions of PostgreSQL support the following features:
Original release of Microsoft Windows Server
Table spaces
Healing in time
And more new features are added in each new release.
PostgreSQL is designed to be extensible. PostgreSQL allows you to define your own data types, index types, functional languages, etc.
If you don't like any part of the system, you can always develop a custom plugin to optimize it to meet your requirements, for example by adding a new optimizer.
Who uses PostgreSQL
Several companies have created PostgreSQL based products and solutions. Some of the notable companies are Apple, Fujitsu, Red Hat, Cisco, Juniper Network, Instagram, etc.
This is a database management system designed to help software developers create applications and administrators in organizing and controlling multiple databases and protecting data integrity. It is an open source system based on SQL and extends its functionality by integrating it with many other features, allowing it to perform all types of data operations.
The app comes with support for popular programming languages, including Python, Java, Ruby, C, C ++, and Perl, and is compatible with most operating systems.
The user interface is simple and easy to use with all the tools well designed. On the right side of the main window is an object browser that displays the architecture of available data servers and the objects within them, such as databases, event triggers, plug-ins, table spaces, and catalogs.
The SQL Panel at the bottom shows an SQL script designed in reverse for your actions that can be saved, copied and pasted into any editor or any language that supports SQL scripts.
Any object you select in the tree hierarchy view will have its information (properties, statistics, dependencies, and dependencies) listed in the right section of the main window.