Selasa, 27 Desember 2011

Relational vs Flat File Databases


Flat flie database adalah suatu database yang didesain menyertakan suatu  tabel   tunggal. Flat   file  database  meletakkan  seluruh data  kedalam  tabel   tunggal,   atau daftar,  dengan kolom­kolom yang  merepresentasikan seluruh parameter. Sebuah flat file bisa terdiri dari banyak kolom, seringkali dengan duplikasi data  yang cenderung menyebabkan kerusakan data (data corruption). Jika Anda memutuskan untuk menggabungkan data diantara dua flat file, maka Anda harus melakukan copy dan paste informasi yang relevan dari satu file ke file yang lainnya. Disini tidak ada otomatisasi diantara dua flat file. Jika Anda memiliki dua atau lebih flat file yang berisi data alamat klien, sebagai contoh, klien telah berpindah alamat, maka Anda harus merubah secara manual alamat klien tersebut yang ada dalam setiap flat file. Perubahan informasi dalam satu file tidak memiliki sangkut paut dengan file   lainnya.   Flat   file  menawarkan     fungsionalitas   untuk   menyimpan   informasi, memanipulasi   kolom­kolom,  mencetak dan menampilkan informasi  yang terformat, pertukaran informasi dengan orang lain melalui email dan melalui internet. Beberapa flat file bisa dikerjakan pada   file­file   eksternal, seperti  text  editor, agar   memperluas fungsionalitas dan mengatur informasi yang berhubungan.
Dilain   pihak,   suatu  Relational   database,  menggabungkan   tabel­tabel   dengan   berbagai metode   untuk   dapat   berkerjasama.   Hubungan­hubungan   antar   tabel  data   dapat dibandingkan,   disatukan,   dan   ditampilkan   dalam  form­form  database.   Sebagian   besar relational database menawarkan fungsionalitas untuk berbagi (share) data:
  • Melalui jaringan
  • Melalui internet
  • Dengan laptop dan perangkat elektronik lainnya seperti palm pilots
  • Dengan software­software system yang lain
Mendesain flat file database adalah sederhana, dan memerlukan sedikit pengetahuan desain 
database. Flat file dapat dikembangkan dengan hanya menggunakan satu database engine. Flat file dapat dibuat dalam relational database engine dengan tidak mengambil manfaat atau keuntungan dari konsep­konsep desain relasional. Mendesain suatu relational database memerlukanperencanaan yang lebih dari pada  flat file database. Dengan flat  file, menambah informasi sepertinya perlu dipertimbangkan. Dengan relational database, dapatmenyimpan data kedalam tabel­tabel sedemikian rupa sehingga hubungan antar tabel dapat dimengerti.  Membangun   suatu   relational database   sangat   tergantung  pada   kemampuan Anda untuk menetapkan suatu model relasional. Model harus benar­benar menggambarkan penuh   bagaimana   data   diorganisir   dalam   ketentuan   struktur   data,   intergriti,  query, manipulasi, dan penyimpanan.
Relational database memungkinkan user­user untuk mendefinisikan kolom­kolom record tertentu sebagai key atau index, melakukan pencarian, menghubungkan record­record antar tabel dan menetapkan batasan­batasan integritas.  Query­query pencarian lebih cepat dan lebih  akurat jika  berdasarkan nilai­nilai  yang  telah diindex.  Record­record  tabel  dapat dengan   mudah   dihubungkan dengan nilai­nilai yang telah diindex.  Batasan­batasan integritas dapat ditetapkan untuk menjamin bahwa hubungan antar tabel tersebut syah. Jika Anda dapat  membuat  sebuah hubungan satu­ke­banyak  (one­to­many)  dalam  tabel­tabel data Anda , sebaiknya Anda menggunakan relational database karena flat file tidak cukup untuk menangani seluruh pemrosesan data yang Anda butuhkan.
Relational database menawarkan proses reporting yang lebih baik, dengan berbagai report 
generator   yang  memfilter   dan  menampilkan   kolom­kolom  pilihan.  Relational   database menawarkan   kemampuan  membuat  module­module   reporting  Anda   sendiri.   Sebagian besar relational database juga menawarkan kemampuan mengimpor dan mengekspor data dari software lainnya.

Terdapat   tiga   sistem  relational   database   yang   utama:   proprietary,     open   source,   dan 
embedded. Relational database yang proprietary biasanya memerlukan  penggunaan bahasa­bahasa pengembangan yang juga  bersifat proprietary guna menyempurnakan SQL. Sebagai contoh  MS Access yang menggabungkan visual basic dengan SQL.

Database­database   open   source,   seperti  MySQL,   didistribusikan   dengan   gratis   agar mendorong pengembangan user. Embedded dan relational database dikemas sebagai bagian dari paket ­ paket software  lainnya, seperti  paket­paket   software   tax­preparation.  Vendor mensuplai database,  dan  seluruh perlengkapan­perlengkapan manipulasi  yang berhubungan, untuk mengontrol   struktur   database.   Database­database   ini   biasanya   disertakan   oleh 
perlengkapan­perlengkapan yang mana menyediakan audit bekas­bekas transaksi.