What is postgreSQL?
PostgreSQL or just postgres, simply put, is a database software that has an open source licence and runs on either a Linux or a Unix platform. What this object- relational database management system essentially does is read the data present in tables in a particular database, and employs Structured Query Language (SQL) to do the same. It is also interesting to note that it is the successor of the Ingres database that was developed in California at the university of Berklee and was released in the year1996.
Michael Stonebreaker, the man who spearheaded the Ingres project also won the Turing award for this
Before we go any further, it is essential to state that a database is any system we can use to store, retrieve, and manipulate data.
Postgres is an extremely advanced database that supports both JSON and SQL, and is known for its highly dependable database management system. It is also used by various web,geospatial, and mobile applications as a primary data warehouse.
The languages supported by postgres are:
- Python
- Java
- ODBC
- Ruby
- Perl
- Go
- Tcl
- .Net
- C/ C++
Postgres also supports multiple data types namely, numeric, string, date and time. Furthermore it also supports data types for geometric shapes, network addresses, JSon entries, bit searches, text strings, etc.
It is also considered easy to learn.
The data types that are supported by postgres are as follows:
- Java Script Object Notation
- Universally Unique Identifier
- Boolean
- Character
- Binary
- Enum
- Arrays
- Geometric primitives
- Classless inter domain routing blocks and MAC address
Some key features of postgres are as follows:
- Superior recovery
- Contains user- defined data types
- Compatible with all operating systems
- Employs table inheritance
- Compatible with the locking mechanism
- Is a free as well as open source software
- Supports audio, video, and image storage
- Supports graphical data
Some other factors that make postgres a good choice are that it is simple and has an open source software, and is also considered to be robust and powerful by industry experts. Since postgres is an old database management system it can be integrated with multiple other languages, including but not limited to Java, C, and C++.
This is precisely why there is room to employ customized functions, and also has its own comm
A few noteworthy characteristics of postgres are as follows:
- Multiple version currency control
- Used defined types
- Views
- Rules
- Inheritance
- Subselects
- Locking mechanism
- Foreign key referential integrity
Some of the new features that have been introduced to postgres are: tablespaces, the exact point in time of recovery, Facility to modify column types, and also a native microsoft windows option. However a good place to start at, if you want to master postgres is by starting off with SQL, this will make the learning curve more traversable.
Postgres also comes with multiple versions, and you can also run multiple versions of it simultaneously.
Some advantages of postgres are as follows:
- Highly easy to use
- Allows user defined data types
- Open source software
- Superior community support
- Supports Atomicity, Consistency, Isolation, and Durability
Some disadvantages of Postgres are as follows
- Utilizes a large amount of memory (mainly because every client can avail of separate services)
- Compromised performance level in terms of relativity
- Other database management systems offer similar functionality
- Has compromised speed in terms to other database management systems
- Forming replications is a complicated task
- Installation is a hassle and is not beginner friendly