PostgreSQL

Kali ini akan dibahas lebih dalam tentang salah satu software DBMS, yaitu PostgreSQL. Sebelumnya perlu direview kembali apakah maksud dari Database Manageent System (DBMS) itu sendiri. Database Management System adalah software yang digunakan untuk mengelola suatu basis data dan melakukan operasi terhadap data yang digunakan oleh banyak pengguna.  DBMS digunakan untuk melakukan koleksi data dalam jumlah yang besar dan manipulasi data dalam bentuk yang lebih mudah. Ada banyak contoh – contoh dari DBMS. Diantaranya ada yang berbayar dan ada juga yang gratis. Dan PsotgreSQL adalah salah satu DBMS yang open source.



Merupakan salah satu DBMS yang bersifat open source. Kepopuleran dari PostgreSQL tidak kalah jika dibanding dengan Oracle. Adapun tipe dari PostgreSQL adalah ODBMS (Object-Relational Database Management System). PostgreSQL  mendukung standar SQL 92 dan SQL 99. Selain itu PostgreSQL juga mendukung berbagai bahasa pemrograman, diantaranya C, C++, TCL, Perl, Phyton, PHP dan lain - lain.[1]

Arsitektur  dari PostgreSQL dapat dibagi ke dalam 3 subsistem, yaitu Cliecnt server, Server Process dan Database Control.

A.      Client Process.
Seperti pada gambar di atas Client Server terbagi ke dalam dua bagian utama, yaitu Client Application dan Client Interface Library. Aplikasi - aplikasi pada Client Application kebanyakan berjalan pada OS yang berbeda, seperti Mergean, PGinhaler, dan SQirret. Kemudian setelah memasuki langkah selanjutnya, Client Interface Library akan mengkonversikan ke SQL Query yang tepat sehingga masing - masing aplikasi dapat berbicara ke server. Hai ini dapat memaksimalkan kohesi dari server dikarenakan tidak perlu dapat memahami berbagai bahasa yang berbeda - beda.

B.      Server Process.
Tahap pada fase ini juga dapat dibagi ke dalam 2 bagian, yaitu Postmaster dan Pstgres Server.
1.       Postmaster
Postmaster itu sendiri adalah sebuah thread deamon yang dapat berlangsung terus menerus. Apabila menerima panggilan dari klien, postmaster akan menciptakan Postgres Server secara korespondensi satu – satu yang artinya satu panggilan satu Postgres Server. Kemudian panggilan klien tersebut akan langsung berhubungan dengan Postgres Server tanpa harus melalui Postmaster lagi terlebih dahulu.
2.       Postgres Server.
Postgres Server berfungsi untuk meneruskan sebuah query SQL untuk kemudian diterjemahkan menjadi data hasil. Postgres Server mempunyai sebuah arsitektur tersendiri yang dapat ditampilkan pada gambar di bawah.



Parser
Hal pertama yang dilakukan adalah parser menerima query dalam bentuk teks ASCII. Setelah diterima parser akan memastikan bahwa query tersebut memiliki syntax yang valid akan tetapi tidak memahami semantik. Kemudian query tersebut dirakit menjadi parse tree untuk dikirimkan kepada Traffic Cop.
Traffic Corp
Selanjutnya Traffic Corp menerima query dari yang dikirimkan oleh Parser dan kemudian memilah mana perintah yang sederhana dan mana yang rumit. Perintah sederhana akan dikirmkan ke Executor dan yang kompleks akan dikirimkan ke Planner/Optimizer dengan melalui Rewriter.
Rewriter
Rewriter hanyalah menjadi tempat persinggahan sementara dari query sebelum menuju ke Planner/Optimizer.
Planner/Optimizer
Query akan dieksekusi oleh Planner/Optimizer secara berurutan dan menghasilkan hasil yang sama. Setelah itu query akan dikirim ke Eksekutor.
Executor
Menerima rencana dari perencana/Optimizer dalam bentuk pohon. Dan pengembalian output ke klien.

C.      Database Control.
Pada fase ini juga terdiri dari 2 bagian, yaitu Data Storage dan Data Management. Penyimpanan pada Data Storage ditangani melalui subsistem akses dan penyimpanan. Sedangkan pada Data Management database tersebut dikelola oleh beberapa subsistem independen. [ii]

Adapun pengguna dan kegunaan PostgresSQL adalah :
a.       Yahoo!, yang digunakan untuk analisa perilaku pengguna web.
b.      MySpace, menggunakan basisdata Aster nCluster untuk gudang data, dibangun diatas PostgreSQL tanpa modifikasi.
c.       OpenStreetMap, menggunakan PostgresSQL untuk menciptakan peta dunia yang bebas sunting.
d.      Afilias, register domain untuk .org, .info, dan sebagainya.
e.      Sony Online multiplayer online game.
f.        BASF, platform belanja untuk portal agribisnisnya.
g.       hi5.com portal jejaring sosial.
h.      Skype aplikasi VoIP, basisdata pusat bisnis.
i.         Sun xVM, perangkat lunak virtualisasi dan otomasi datacenter milik Sun. [iii]

Tidak ada komentar:

Posting Komentar