Apa itu PostgreSQL Dan Tipe Datanya
Apa itu PostgreSQL?
Mari mulai dari pengertian nya terlebih dahulu. PostgreSQL adalah sistem manajemen database relasional (RDBMS) yang bersifat open source. Manajemen database ini dapat mengolah data dalam tabel yang memiliki relasi satu sama lain dan dapat digunakan secara gratis serta bebas dimodifikasi. Dikembangkan oleh Berkeley Computer Science Department, PostgreSQL telah menjadi database yang andal dalam 30 tahun terakhir ini. Sistem manajemen database ini memiliki performa stabil, keamanan tinggi, serta fitur melimpah.
PostgreSQL adalah database yang banyak digunakan pada web app, aplikasi mobile, dan aplikasi analytics. Itulah kenapa aplikasi yang membutuhkan pengolahan data yang lebih kompleks akan lebih cocok menggunakan nya.
Nah, PostgreSQL adalah database yang mendukung berbagai bahasa pemrograman populer, seperti:
- .NET
- C/C++
- C#
- Delphi
- Go
- Java
- JavaScript (Node.js)
- Perl
- PHP
- Python
- Ruby
- Tcl
Dengan demikian, pengembangan sebuah web app akan jadi lebih mudah karena tidak ada kendala ketidakcocokan dengan manajemen database yang digunakan. Buktinya, banyak perusahaan terkemuka yang menggunakan PostgreSQL seperti Apple, Cisco, Instagram, Netflix, Spotify, Uber, dan sebagainya.
Fitur-Fitur
Setelah paham apa itu PostgreSQL, sekarang saatnya mengenal apa saja fitur-fitur yang disediakan PostgreSQL, antara lain:
- Asynchronous Replication – Menggandakan database secara asinkron.
- Data Integrity – Mendukung Primary Key, Foreign Key, dan lain-lain.
- Inheritance – Mewariskan karakteristik obyek induk ke obyek keturunan.
- Locking Mechanism – Melakukan pengamanan terhadap database.
- Non-Relational Support – Mendukung perintah non-relasional seperti JSON.
- Point-in-time Recovery – Melakukan backup server secara terus-menerus.
- Procedural Languages – Mendukung bahasa prosedural misalnya Python, Perl, dan sebagainya.
- Rule Customization – Melakukan kustomisasi terhadap perintah seperti INSERT, UPDATE, atau DELETE.
- Savepoints – Menangani error pada transaksi kompleks.
- Tablespaces – Menentukan media penyimpanan database, schema, atau tabel.
Apalagi dengan terus dikembangkannya PostgreSQL, akan semakin banyak fitur yang akan dimiliki pada versi-versi terbarunya.
Fungsi
Sebagai database relasional, fungsi utama PostgreSQL adalah tempat untuk menyimpan dan mengelola data melalui perintah atau query SQL. Dengan query tersebut, maka PostgreSQL bisa digunakan untuk:
- Membuat atau memanipulasi tabel dengan Data Definition Language (DDL) menggunakan query seperti CREATE, DROP, ALTER.
- Memanipulasi isian data atau value dari tabel dengan Data Manipulation Language (DML) menggunakan query semacam INSERT, UPDATE, DELETE.
- Mengelola transaksi di database dengan Data Control Language (DCL) menggunakan query seperti GRANT, REVOKE, COMMIT.
Tidak hanya itu, ada beberapa fungsi lain menggunakan query SQL lain yang mengharuskan Anda untuk memasukkan tipe data, contohnya CREATE, ADD, dan INSERT.
Tipe Data pada PostgreSQL
Agar bisa menjalankan query SQL dengan lancar, yuk ketahui tipe-tipe data yang digunakan di PostgreSQL:
- Boolean – true, false, null.
- Character – CHAR, VARCHAR, TEXT.
- Numeric – SMALLINT, INT, SERIAL, float, real, numeric.
- Temporal – DATE, TIME, TIMESTAMP, TIMESTAMPTZ, INTERVAL.
- Array – Array string, Array integer.
- JSON – JSON, JSONB.
- UUID – uuid-ossp, uuid_generate_v1, uuid_generate_v4.
- Special Data Types – box, line, point, lseg, polygon, inet, macaddr.
Tapi selain tipe data pada PostgreSQL di atas, database ini juga mendukung User-Defined Data Types. Artinya, pengguna bebas menambah tipe data sendiri sesuai kebutuhan.
Kelebihan dan Kekurangan
Berikut ini beberapa kelebihan dan kekurangan PostgreSQL:
Kelebihan
Dibandingkan database relasional lain, kelebihan PostgreSQL adalah:
1. Gratis dan Open Source
PostgreSQL bersifat open source. Artinya source code dari database ini bebas Anda modifikasi, baik untuk tujuan pribadi maupun komersial. Selain itu, Anda juga bisa menikmati berbagai fitur yang tersedia di PostgreSQL secara gratis.
2. Skalabilitas Besar
PostgreSQL adalah database yang cocok digunakan pada sistem berskala besar, karena mampu menangani banyak transaksi data sekaligus. Contohnya pada aplikasi berbasis GIS (Geographical Information System). Aplikasi GIS banyak menyimpan dan mengolah data yang bersifat spasial, atau pemetaan lokasi. Nah, PostgreSQL punya fitur PostGIS sehingga pengolahan data spasial bisa berjalan lancar tanpa menurunkan kinerja sistem.
Kekurangan
Database PostgreSQL juga memiliki kekurangan yang perlu Anda ketahui, yaitu:
1. Kinerja Lambat
Pada database PostgreSQL, proses mencari data dimulai dengan memindai baris pertama hingga baris dimana data ditemukan. Hal ini menyebabkan lambatnya kinerja, terlebih pada database yang menyimpan banyak data. Selain itu, banyaknya fitur yang tersedia dan proses backup yang terjadi terus menerus menyebabkan kinerja PostgreSQL terus menurun seiring berjalannya waktu.
2. Kurang Populer
Meski dalam beberapa tahun terakhir jumlah penggunanya terus meningkat, database PostgreSQL masih kalah populer dibandingkan database relasional lain seperti MySQL.
