Kelebihan
dan Kekurangan Database
1. MySQL, adalah DBMS
yang Multi-thread dan Multi-User, dengan 6 juta installasi di
seluruh dunia, MySQL dikembangkan di MySQLAB, dan ditawarkan secara gratis
dalam GNU General Public Lisence (GNU), namun mereka juga menjual
dibawah lisensi komersial untuk kasus-kasus dimana penggunaannya tidak cocok
dengan penggunaan GPL.Kedua orang Swedia dan satu orang Finlandia yang
mendirikan MySQLAB adalah: David Axmark, Allan Larsson, danMichael “Monty”
Widenius.
Beberapa keunggulan MySQL adalah
- Software sumber terbuka dibawah lisensi GPL (General Public Lisence), sehingga bebas diunduh, digunakan, dan di modifikasi
- Portabilitas. MySQL dapat berjalan stabil pada berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih banyak lagi.
- Stabil, Tangguh dan Kecepatan penanganan Query yang dapat dipercaya
- Fleksibel dengan berbagai bahasa pemrograman, seperti : Pemrograman C, C++, C#,Eiffel, Smalltalk, Java, Lisp, Perl, PHP, Python, Ruby, REALbasic dan Tcl
- Mempunyai beberapa lapis sistem keamanan seperti : subnetmask, host name, izin akses user serta sandi terenkripsi.
Kekurangan :
- Tidak cocok untuk menangani data dengan jumlah yang besar, baik untuk menyimpan data maupun untuk memproses data.
- Memiliki keterbatasan kemampuan kinerja pada server ketika data yang disimpan telah melebihi batas maksimal kemampuan daya tampung server karena tidak menerapkan konsep Technology Cluster Server.
- Untuk koneksi ke bahasa pemrograman visual seperti vb, delphi, dan foxpro, mysql kurang support, karena koneksi ini menyebabkan field yang dibaca harus sesuai dengan koneksi dari program visual tersebut, dan ini yang menyebabkan mysql jarang dipakai dalam program visual.
2. Oracle, Basis data Oracle adalah basis data relasional yang
terdiri dari kumpulan data dalam suatu sistem manajemen basis data RDBMS.
Perusahaan perangkat lunak Oracle memasarkan jenis basis data ini untuk
bermacam-macam aplikasi yang bisa berjalan pada banyak jenis dan merk perangkat
keras komputer (platform).Basis data Oracle ini pertama kali dikembangkan
oleh Larry Ellison, Bob Miner dan Ed Oates lewat perusahaan
konsultasinya bernama Software Development Laboratories (SDL) pada
tahun 1977. Pada tahun 1983, perusahaan ini berubah nama menjadi Oracle
Corporation sampai sekarang.
Beberapa keunggulan Oracle adalah :
- Dapat bekerja dilingkungan client/server
- Mampu menangani manajemen space dan basis data yang besar
- Mendukung akses data secara simultan
- Performansi pemrosesan transaksi yang tinggi
- Fleksibilitas yaitu kemampuan untuk menyesuaikan diri dengan berbagai kebutuhan dan kondisi.
Kekurangan :
- Merupakan software DMBS yang paling mahal, paling rumit, dan paling sulit untuk dipelajari.
- Membutuhkan spesifikasi hardware yang tinggi untuk dapat menjalankan software DMBS Oracle supaya berjalan dengan stabil.
- Hanya diperuntukan bagi perusahaan berukuran besar, dan tidak cocok untuk perusahaan kecil maupun menengah.
- Data yang bertambah ukurannya akan mengalami kelambatan proses, jadi harus ada database management.
- Harga yang sangat mahal untuk sebuah database dan penggunaan Oracle sangat memakan banyak biaya, mulai dari device sampai diperlukannya DBA yang handal.
- HP dan pertahanan (DEF) yang tergolong sedang
- Skalabilitas yaitu mengacu pada kemampuan untuk terus berkembang.
Baca Juga : Sholawat Nariyah
3. Microsoft SQL Server, Merupakan produk andalan microsoft untuk database server. Umum digunakan di dunia bisnis yang memiliki basis data berskala kecil hingga menengah, dan berkembang dengan digunakannya SQL Server pada basis data besar. Bahasa Query utamanya adalah Transact-SQL yang merupakan implementasi dari SQL standar ANSI/ISO yang digunakan oleh Microsoft dan Sybase.Microsoft SQL Server dan Sybase/ASE dapat berkomunikasi lewat jaringan dengan menggunakan protokol TDS (Tabular Data Stream). Selain dari itu, Microsoft SQL Server juga mendukung ODBC (Open Database Connectivity), dan mempunyai driver JDBC untuk bahasa pemrograman Java. Fitur yang lain dari SQL Server ini adalah kemampuannya untuk membuat basis data mirroring dan clustering.
3. Microsoft SQL Server, Merupakan produk andalan microsoft untuk database server. Umum digunakan di dunia bisnis yang memiliki basis data berskala kecil hingga menengah, dan berkembang dengan digunakannya SQL Server pada basis data besar. Bahasa Query utamanya adalah Transact-SQL yang merupakan implementasi dari SQL standar ANSI/ISO yang digunakan oleh Microsoft dan Sybase.Microsoft SQL Server dan Sybase/ASE dapat berkomunikasi lewat jaringan dengan menggunakan protokol TDS (Tabular Data Stream). Selain dari itu, Microsoft SQL Server juga mendukung ODBC (Open Database Connectivity), dan mempunyai driver JDBC untuk bahasa pemrograman Java. Fitur yang lain dari SQL Server ini adalah kemampuannya untuk membuat basis data mirroring dan clustering.
Kelebihan :
- Sistem Basis Data dengan level Enterprise
- Microsoft SQL Server termasuk DBMS profesional. Beberapa pesaing seperti MySQL, Oracle, telah mengembangkan software serupa dalam beberapa tahun terakhir, tetapi Microsoft SQL Server lebih mudah digunakan dan memiliki lebih banyak fitur. Pemicunya antara lain adalah dukungan penuh dari Microsoft. Perangkat lunak yang ditawarkan oleh Microsoft juga menawarkan integrasi yang erat dengan .NET framework, dan ini tidak dimiliki oleh produk lain.
- Penanganan data korup, Data yang korup selalu menjadi pusat perhatian ketika Perangkat keras dan perangkat lunak tidak dapat bekerja dengan optimal sebagaimana mestinya. Microsoft SQL Server memiliki sejumlah fitur dalam restorasi data dan pemulihan data. Meskipun beberapa tabel individu tidak dapat didukung atau dikembalikan, namun pilihan database yang lengkap dan restorasi yang tersedia dalam SQL Server sangat membantu . Melalui penggunaan file log, cache, dan backup, produk Microsoft yang memungkinkan Anda untuk merasa yakin bahwa ada banyak pilihan dalam menangani bencan.
- Installasi yang effisien, Microsoft SQL Server dapat diinstal dengan dengan mudah, installer juga mendeteksi, download dan menginstal update yang diperlukan dalam prasyarat installasi SQL Server. Fitur-fitur ini mengurangi kompleksitas dalam menginstal perangkat lunak. Komponen individu seperti Database Services, Analysis Services dan Integration Services juga dapat diinstal secara terpisah. SQL Server 2008 juga secara otomatis dapat melakukan update patch keamanan untuk mengurangi biaya pemeliharaan.
- Fitur Kinerja yang lebih baik, Microsoft SQL Server 2008 memiliki kompresi dan enkripsi data transparan built in, sehingga tidak perlu untuk memodifikasi atau mengubah program untuk mengenkripsi data. SQL Server 2008 memiliki kontrol akses yang lebih efisien dan alat izin manajemen dan menawarkan kinerja yang lebih baik dalam pengumpulan data. SQL Server 2008 juga terintegrasi dengan Microsoft Office dan produk microsoft lainnya.
- Fitur Keamanan yang lebih baik, SQL Server 2008 memiliki otentikasi yang kuat dan perlindungan akses serta memiliki fitur manajemen password yang lebih baik. SQL Server 2008 menggunakan Kebijakan Manajemen Berbasis untuk mendeteksi ketidakpatuhan kebijakan keamanan, yang memungkinkan hanya personil yang berwenang akses ke database. Keamanan audit dan peristiwa dapat ditulis secara otomatis ke log file.
- Menurunkan biaya kepemilikan, modul-modul dalam SQL Server 2008 termasuk Kompresi Lanjutan, alat manajemen data, partisi disk, alat data mining, Pelaporan Enterprise, dan Advanced Security tanpa biaya tambahan. SQL Server 2008 juga kompatibel dengan SQL Server 2000 dan 2005, sehingga tidak perlu memperbarui atau meng-upgrade setiap komputer.
- Fakta, beberapa korporasi seperti Unilever, HM Sampoerna, Phillip Morris, dan Siemens menggunakan Microsoft SQL Server 2008. SQL Server 2008 diakui sebagai Best Seller dan Pertumbuhan Terbaik oleh majalah CRN.
- Cocok untuk perusahaan dengan skala kecil, menengah, dan besar sehingga mampu untuk mengolah data dengan jumlah yang besar.
- Memiliki kemampuan untuk management user dan tiap user bisa diatur hak akses terhadap suatu database oleh database administrator.
- Untuk diterapkan pada pembangunan suatu program aplikasi, akan mudah dalam melakukan koneksi dengan computer client yang pembangunan aplikasinya menggunakan software yang sama platform dengan MS-SQL, misalnya Microsoft Visual Basic.
- Memiliki tingkat pengamanan / security data yang baik.
- Memiliki kemampuan untuk back-up data, rollback data, dan recovery data.
- Memiliki kemampuan untuk membuat database mirroring dan clustering.
- Biaya Salah satu kelemahan utama untuk menggunakan Microsoft SQL Server adalah karena SQL Server bukan sistem manajemen database relasional alternatif, pilihan lisensi yang ada cukup mahal. Meskipun menggunakan perangkat lunak untuk pengembangan atau tujuan pendidikan adalah gratis, namun dalam penggunaan bisnis ada biaya lisensi. Untuk SQL Server 2008, misalnya, SQL Server Standard Edition biaya $ 7.171 per prosesor. SQL Server Datacenter edisi yang $ 54.990 per prosesor, menurut situs Microsoft.
- Kompatibilitas yang terbatas, Microsoft SQL Server hanya dirancang untuk berjalan pada server berbasis Windows. Untuk berbagai alasan, termasuk biaya lisensi dan masalah keamanan. Selain tidak mampu berjalan di platform non-Windows, terkadang ada juga masalah kompatibilitas tentang interaksi dengan aplikasi yang berjalan pada platform lainnya.
- Perangkat Keras, Versi SQL Server dapat diinstal pada peralatan hardware yang lebih tua, tapi rilis baru dari aplikasi yang memerlukan teknologi yang lebih canggih untuk mendukung sumber daya yang dibutuhkan oleh database. SQL Server juga membutuhkan NET framework. Diinstal pada mesin, yang merupakan komponen terpisah yang digunakan oleh pengembang. Jika perusahaan berencana untuk memiliki database yang sangat besar, hard drive juga membutuhkan jumlah yang tepat ruang di samping gigabyte ruang yang diperlukan untuk mesin database sendiri.
- Hanya dapat diimpelementasikan pada 1 unit server, jika terdapat tambahan server maka hanya akan berfungsi sebagai pasif / standby server (tidak memiliki kemampuanTechnology Cluster Server seperti halnya pada DMBS Oracle).
- Hanya bisa berjalan pada satu platform system operasi yaitu Microsoft Windows.
- Merupakan software berlisensi dan berharga mahal untuk perusahaan skala kecil dan menengah.
4. Firebird (juga
disebut FirebirdSQL) adalah sistem manajemen basisdata relasional
yang menawarkan fitur-fitur yang terdapat dalam standar ANSI SQL-99 dan SQL-2003.
RDBMS ini berjalan baik diLinux, Windows, maupun pada sejumlah platform Unix. Firebird
di diarahkan dan di-maintain oleh FirebirdSQL Foundation. Ia
merupakan turunan dari Interbase versi open source milik Borland.
Beberapa kelebihan Firebird :
- Sebuah transaksi bisa di commit atau di rollback dengan mudah
- Menggunakan sintaks standard untuk menciptakan foreign key
- Menggunakan multi version concurrency system
- Bisa melakukan replikasi data dengan operasi insert, update atau delete ke dalam database
- Firebird support dengan multiple data file.
Kelemahan :
- Kekurangan yang paling nyata waktu itu adalah replication engine (walaupun Firebird memiliki fitur lanjutan, yang menjaga identical copy dari live database). Ada proyek yang terjadi, banyak yang komersil, namun Open Source-nya sendiri terlihat tidak matang, atau terintegrasi ke dalam Firebird code utama. Firebird development relatif lambat, Firebird merupakan DBMS yang relatif matang untuk digunakan, dan tujuannya menetapkan peletakan kembali Oracle dan SQL server dalam aplikasi komersil.
5.Visual Foxpro, Visual FoxPro adalah bahasa pemrograman berorientasi objek
dan prosedural dari Microsoft. Awalnya bahasa pemrograman ini dikenal dengan
nama FoxBASE yang diluncurkan oleh Fox Software pada
awal 1984. Pada tahun 1989 foxbase berkembang menjadi foxpro dan memperkenalkan
GUI. Fox Technologies kemudian bergabung dengan Microsoft pada 1992 sehingga di
depan nama Foxpro ditambahkan awalan "Visual". Pada tahun 1995 Foxpro
berkembang menjadi Visual Foxpro dan dilengkapi dengan pemrograman berorientasi
objek, serta dapat membangun aplikasi berbasis web.
Kelebihan :
- Simpel
- Fitur lengkap
- Punya database sendiri yaitu DBF
- Akses ke database internal mudah
- OOP murni sejak versi 6.0
- Dinamis
- Akses ke library eksternal mudah
- Sederhana
- Tidak memerlukan spesifikasi hardware yang tinggi
Kekurangan :
- Tidak tersedia tipe data pointer
- Tidak bisa digunakan untuk membuat OCX
- Pengembangan versi sekarang sudah terhenti di versi 9.0
- Pembuatan report yang belum mengimplementasikan OOP (direncanakan akan diimplementasikan di VFP 9)
- Menu-designer yang juga belum mengimplementasikan OOP.
keamanan database
Keamanan merupakan suatu proteksi terhadap
pengrusakan data dan pemakaian data oleh pemakai yang tidak punya kewenangan.
Penyalahgunaan
Database :
- Tidak disengaja, jenisnya :
- kerusakan selama proses transaksi
- anomali yang disebabkan oleh akses database yang konkuren
- anomali yang disebabkan oleh pendistribuasian data pada beberapa komputer
- logika error yang mengancam kemampuan transaksi untuk mempertahankan konsistensi database.
- Disengaja, jenisnya :
- Pengambilan data / pembacaan data oleh pihak yang tidak berwenang.
- Pengubahan data oleh pihak yang tidak berwenang.
- Penghapusan data oleh pihak yang tidak berwenang.
Tingkatan
Pada Keamanan Database :
- Fisikal à lokasi-lokasi dimana terdapat sistem komputer haruslah aman secara fisik terhadap serangan perusak.
- Manusia à wewenang pemakai harus dilakukan dengan berhati-hati untuk mengurangi kemungkinan adanya manipulasi oleh pemakai yang berwenang
- Sistem Operasi à Kelemahan pada SO ini memungkinkan pengaksesan data oleh pihak tak berwenang, karena hampir seluruh jaringan sistem database menggunakan akses jarak jauh.
- Sistem Database à Pengaturan hak pemakai yang baik.
Keamanan
Data :
1. Otorisasi
:
- Pemberian Wewenang atau hak istimewa (priviledge) untuk mengakses sistem atau obyek database
- Kendali otorisasi (=kontrol akses) dapat dibangun pada perangkat lunak dengan 2 fungsi :
- Mengendalikan sistem atau obyek yang dapat diakses
- Mengendalikan bagaimana pengguna menggunakannya
- Sistem administrasi yang bertanggungjawab untuk memberikan hak akses dengan membuat account pengguna.
2. Tabel
View :
- Merupakan metode pembatasan bagi pengguna untuk mendapatkan model database yang sesuai dengan kebutuhan perorangan. Metode ini dapat menyembunyikan data yang tidak digunakan atau tidak perlu dilihat oleh pengguna.
- Contoh pada Database relasional, untuk pengamanan dilakukan beberapa level :
1. Relasi à pengguna diperbolehkan atau tidak diperbolehkan mengakses langsung
suatu relasi
2. View à pengguna diperbolehkan atau tidak diperbolehkan mengakses data yang
terapat pada view
3. Read Authorization à pengguna diperbolehkan membaca data, tetapi tidak dapat
memodifikasi.
4. Insert Authorization à pengguna diperbolehkan menambah data baru, tetapi tidak dapat
memodifikasi data yang sudah ada.
5. Update Authorization à pengguna diperbolehkan memodifikasi data, tetapi tidak dapat
menghapus data.
6. Delete Authorization à pengguna diperbolehkan menghapus data.
- Untuk Modifikasi data terdapat otorisasi tambahan :
1. Index Authorization à pengguna diperbolehkan membuat dan menghapus index data.
2. Resource Authorization à pengguna diperbolehkan membuat relasi-relasi baru.
3. Alteration Authorization à pengguna diperbolehkan menambah/menghapus atribut suatu relasi.
4. Drop Authorization à pengguna diperbolehkan menghapus relasi yang sudah ada.
3. Backup
data dan recovery :
Backup : proses secara periodik untuk mebuat duplikat ari database dan
melakukan logging file (atau program) ke media penyimpanan eksternal.
Jurnaling : proses menyimpan dan mengatur log file dari semua perubahan yang
ibuat di database untuk proses recovery yang efektif jika terjai kesalahan.
Isi
Jurnal :
- Record transaksi
1.
Identifikasi dari record
2.
Tipe record jurnal (transaksi
start, insert, update, delete, abort, commit)
3.
Item data sebelum perubahan
(operasi update dan delete)
4.
Item data setelah perubahan
(operasi insert dan update)
5.
Informasi manajemen jurnal
(misal : pointer sebelum dan record jurnal selanjutnya untuk semua transaksi
- Record ceckpoint : suatu informasi pada jurnal untuk memulihkan database dari kegagalan, kalau sekedar redo, akan sulit penyimpanan sejauh mana jurnal untuk mencarinya kembali, maka untuk membatasi pencarian menggunakan teknik ini.
Recovery
: merupakan upaya uantuk mengembalikan basis data
ke keadaaan yang dianggap benar setelah terjadinya suatu kegagalan.
3 Jenis Pemulihan :
- Pemulihan terhadap kegagalan transaksi : Kesatuan prosedur alam program yang dapat mengubah / memperbarui data pada sejumlah tabel.
- Pemulihan terhadap kegagalan media : Pemulihan karena kegagalan media dengan cara mengambil atau memuat kembali salinan basis data (backup)
- Pemulihan terhadap kegagalan sistem : Karena gangguan sistem, hang, listrik terputus alirannya.
Fasilitas pemulihan pada DBMS :
- Mekanisme backup secara periodik
- fasilitas logging dengan membuat track pada tempatnya saat transaksi berlangsung dan pada saat database berubah.
- fasilitas checkpoint, melakukan update database yang terbaru.
- manager pemulihan, memperbolehkan sistem untuk menyimpan ulang database menjadi lebih konsisten setelah terjadinya kesalahan.
Teknik Pemulihan :
- defered upate / perubahan yang ditunda : perubahan pada DB tidak akan berlangsung sampai transaksi ada pada poin disetujui (COMMIT). Jika terjadi kegagalan maka tidak akan terjadi perubahan, tetapi diperlukan operasi redo untuk mencegah akibat dari kegagalan tersebut.
- Immediate Upadte / perubahan langsung : perubahan pada DB akan segera tanpa harus menunggu sebuah transaksi tersebut disetujui. Jika terjadi kegagalan diperlukan operasi UNDO untuk melihat apakah ada transaksi yang telah disetujui sebelum terjadi kegagalan.
- Shadow Paging : menggunakan page bayangan imana paa prosesnya terdiri dari 2 tabel yang sama, yang satu menjadi tabel transaksi dan yang lain digunakan sebagai cadangan. Ketika transaksi mulai berlangsung kedua tabel ini sama dan selama berlangsung tabel transaksi yang menyimpan semua perubahan ke database, tabel bayangan akan digunakan jika terjadi kesalahan. Keuntungannya adalah tidak membutuhkan REDO atau UNDO, kelemahannya membuat terjadinya fragmentasi.
4. Kesatuan
data dan Enkripsi :
- Enkripsi : keamanan data
- Integritas :metode pemeriksaan dan validasi data (metode integrity constrain), yaitu berisi aturan-aturan atau batasan-batasan untuk tujuan terlaksananya integritas data.
- Konkuren : mekanisme untuk menjamin bahwa transaksi yang konkuren pada database multi user tidak saling menganggu operasinya masing-masing. Adanya penjadwalan proses yang akurat (time stamping).