Anda di halaman 1dari 12

LECTURE NOTES

Database Technology
Week ke - 5
Selected Database Issue
LEARNING OUTCOMES

Peserta mampu menganalisis dan mendesain database.

OUTLINE MATERI :

1. Keamanan dan Administrasi

2. Masalah Profesional, Hukum, dan Etika dalam Manajemen Data

3. Pengelolaan transaksi

4. Pemrosesan Kueri
ISI MATERI

A. Keamanan dan Administrasi

Keamanan basis data adalah mekanisme yang melindungi basis data dari ancaman yang
disengaja atau tidak disengaja. Keamanan basis data berkaitan dengan menghindari situasi
berikut: pencurian dan penipuan, kehilangan kerahasiaan (kerahasiaan), hilangnya privasi,
hilangnya integritas, dan hilangnya ketersediaan. Ancaman adalah situasi atau peristiwa apa
pun, baik disengaja atau tidak disengaja, yang akan berdampak buruk pada sistem dan
akibatnya sebuah organisasi.

Kontrol keamanan berbasis komputer untuk lingkungan multipengguna meliputi: otorisasi,


kontrol akses, tampilan, pencadangan dan pemulihan, integritas, enkripsi, dan teknologi
RAID. Otorisasi adalah pemberian hak atau hak istimewa yang memungkinkan subjek
memiliki akses yang sah ke suatu sistem atau objek sistem. Otentikasi adalah mekanisme
yang menentukan apakah pengguna adalah siapa yang dia klaim. Sebagian besar DBMS
komersial menyediakan pendekatan yang disebut Discretionary ccess Control (DAC), yang
mengelola hak istimewa menggunakan SQL. Standar SQL mendukung DAC melalui
perintah GRANT dan REVOKE. Beberapa DBMS komersial juga menyediakan pendekatan
untuk kontrol akses yang disebut Mandatory Access Control (MAC), yang didasarkan pada
kebijakan seluruh sistem yang tidak dapat diubah oleh pengguna individu. Dalam
pendekatan ini setiap database objek diberi kelas keamanan dan setiap pengguna diberi izin
untuk kelas keamanan, dan aturan diberlakukan pada membaca dan menulis objek database
oleh pengguna. Standar SQL tidak termasuk dukungan untuk MAC.

Tampilan adalah hasil dinamis dari satu atau lebih operasi relasional yang beroperasi pada
relasi dasar untuk menghasilkan hubungan lain. View adalah relasi virtual yang sebenarnya
tidak ada dalam database tetapi dihasilkan pada permintaan oleh pengguna tertentu pada saat
permintaan. Mekanisme tampilan memberikan keamanan yang kuat dan fleksibel
smekanisme dengan menyembunyikan bagian dari database dari pengguna tertentu. Backup

Database Technology
adalah proses mengambil salinan basis data dan file log (dan mungkin program) secara
berkala ke media penyimpanan offline.

Penjurnalan adalah proses menyimpan dan memelihara file log (atau jurnal) dari semua
perubahan dibuat ke database untuk memungkinkan pemulihan dilakukan secara efektif jika
terjadi kegagalan. Kendala integritas juga berkontribusi untuk memelihara sistem database
yang aman dengan mencegah data dari menjadi tidak valid, dan karenanya memberikan hasil
yang menyesatkan atau salah. Enkripsi adalah pengkodean data dengan algoritme khusus
yang membuat data tidak dapat dibaca oleh program apa pun tanpa kunci dekripsi.
Komputasi awan adalah penggunaan perangkat lunak komputasi atau sumber daya perangkat
keras yang dikirimkan melalui jaringan dan biasanya diakses dari browser Web atau aplikasi
seluler.

B. Masalah Profesional, Hukum, dan Etika dalam Manajemen Data

Tata Kelola TI digunakan untuk menentukan hak keputusan dan kerangka akuntabilitas
untuk mendorong yang diinginkan perilaku dalam penggunaan TI. Apa yang merupakan
perilaku hukum paling sering diselaraskan dengan perilaku etis, meskipun tidak selalu
demikian. Sebagian besar undang-undang yang dibahas dalam bab ini dibuat untuk
membantu mengurangi kemungkinan hal yang tidak diinginkan keterbukaan informasi.
Sebagian besar tindakan legislatif yang dibahas pada intinya memiliki mandat untuk
melindungi data klien saat berada di sekaligus meningkatkan persyaratan pelaporan
perusahaan ke instansi resmi. Kedua item umum ini memiliki masalah manajemen data inti
mereka.

Pengendalian internal adalah serangkaian tindakan yang diadopsi organisasi untuk


memastikan bahwa kebijakan dan prosedur telah tidak dilanggar, data diamankan dengan
baik dan dapat diandalkan, dan operasi dapat dilakukan secara efisien. Membangun
kesadaran keamanan, privasi, dan pelaporan di seluruh perusahaan (dan tentu saja di seluruh
TI) yang terkait terhadap data yang dikumpulkan dan diproses oleh organisasi adalah tugas
penting, terutama mengingat peraturan saat ini lingkungan.

Database Technology
Kekayaan Intelektual (KI) meliputi penemuan, ide inventif, desain, paten dan aplikasi paten,
penemuan, perbaikan, merek dagang, desain dan hak desain, karya tertulis, dan pengetahuan
yang dirancang, dikembangkan, atau ditulis oleh seorang individu atau sekelompok individu.
Kekayaan intelektual latar belakang adalah IP yang sudah ada sebelum suatu kegiatan
berlangsung. Kekayaan intelektual latar depan adalah IP yang dihasilkan selama aktivitas. •
Paten memberikan hak eksklusif (hukum) untuk jangka waktu tertentu untuk membuat,
menggunakan, menjual, atau mengimpor suatu penemuan. Hak Cipta memberikan hak
eksklusif (hukum) untuk jangka waktu tertentu untuk mereproduksi dan mendistribusikan
karya sastra, musik, audiovisual, atau "karya" kepengarangan lainnya.

Merek Dagang memberikan hak eksklusif (hukum) untuk menggunakan kata, simbol,
gambar, suara, atau perbedaan lainnya unsur yang mengidentifikasi sumber asal sehubungan
dengan barang atau jasa tertentu yang dibuat orang lain, menggunakan, menjual, atau
mengimpor penemuan.

C. Pengelolaan transaksi

Kontrol konkurensi adalah proses mengelola operasi simultan pada database tanpa
memilikinya mengganggu satu sama lain. Pemulihan basis data adalah proses memulihkan
basis data ke keadaan yang benar setelah kegagalan. Keduanya melindungi database dari
inkonsistensi dan kehilangan data. Transaksi adalah tindakan, atau serangkaian tindakan,
yang dilakukan oleh satu pengguna atau program aplikasi, yang mengakses atau mengubah
isi database. Transaksi adalah unit kerja logis yang mengambil database dari satu keadaan
konsisten ke keadaan lain. Transaksi dapat dihentikan dengan sukses (commit) atau gagal
(abort). Dibatalkan transaksi harus dibatalkan atau dibatalkan. Transaksi juga merupakan
unit konkurensi dan unit pemulihan.

Sebuah transaksi harus memiliki empat sifat dasar atau yang disebut sifat ACID: atomisitas,
konsistensi, isolasi, dan daya tahan. Atomisitas dan daya tahan adalah tanggung jawab
subsistem pemulihan; isolasi dan, sampai batas tertentu, konsistensi adalah tanggung jawab
subsistem kontrol konkurensi. Kontrol konkurensi diperlukan ketika beberapa pengguna
diizinkan untuk mengakses database secara bersamaan. Tanpa itu, masalah pembaruan yang
hilang, ketergantungan yang tidak dikomit, dan analisis yang tidak konsisten dapat muncul.

Database Technology
Eksekusi serial berarti mengeksekusi satu transaksi pada satu waktu, tanpa interleaving
operasi. Sebuah jadwal menunjukkan urutan dari operasi transaksi. Sebuah jadwal adalah
serializable jika menghasilkan hasil yang sama seperti beberapa jadwal serial.

Dua metode yang menjamin serializability adalah penguncian dua fase (2PL) dan
timestamping. Key mungkin dibagikan (baca) atau eksklusif (tulis). Dalam penguncian dua
fase, transaksi memperoleh semua kuncinya sebelum dilepaskan setiap. Dalam
timestamping, transaksi diurutkan sedemikian rupa sehingga transaksi yang lebih lama
mendapat prioritas jika terjadi konflik. Deadlock terjadi ketika dua atau lebih transaksi
menunggu untuk mengakses data yang transaksi lainnya telah terkunci. Satu-satunya cara
untuk memecahkan kebuntuan setelah terjadi adalah dengan membatalkan satu atau lebih
transaksi.

Sebuah tree dapat digunakan untuk mewakili granularitas kunci dalam sistem yang
memungkinkan penguncian item data yang berbeda ukuran. Saat item dikunci, semua
turunannya juga terkunci. Ketika transaksi baru meminta key, itu mudah untuk memeriksa
semua leluhur objek untuk menentukan apakah mereka sudah terkunci. Untuk menunjukkan
apakah salah satu dari keturunan node dikunci, kunci niat ditempatkan pada semua anchestor
dari setiap node yang dikunci.

Beberapa penyebab kegagalan adalah sistem crash, kegagalan media, kesalahan perangkat
lunak aplikasi, kecerobohan, fisik alami bencana, dan sabotase. Kegagalan ini dapat
mengakibatkan hilangnya memori utama dan/atau salinan disk dari database. Teknik
pemulihan meminimalkan efek ini. Untuk memfasilitasi backup, salah satu metode adalah
agar sistem memelihara file log yang berisi catatan transaksi yang mengidentifikasi
awal/akhir transaksi dan gambar sebelum dan sesudah operasi tulis. Menggunakan
ditangguhkan pembaruan, penulisan dilakukan pada awalnya ke log saja dan catatan log
digunakan untuk melakukan pembaruan aktual ke basis data. Jika sistem gagal, sistem akan
memeriksa log untuk menentukan transaksi mana yang perlu diulang, tetapi ada tidak perlu
membatalkan penulisan apa pun. Menggunakan pembaruan langsung, pembaruan dapat
dilakukan ke database itu sendiri kapan saja waktu setelah catatan log ditulis. Log dapat
digunakan untuk membatalkan dan mengulang transaksi jika terjadi kegagalan.

Database Technology
Cek poin digunakan untuk meningkatkan backup basis data. Di dek poin, semua blok buffer
yang dimodifikasi, semua catatan log, dan catatan pos pemeriksaan yang mengidentifikasi
semua transaksi aktif ditulis ke disk. Jika terjadi kegagalan, cek poin record mengidentifikasi
transaksi mana yang perlu dilakukan ulang. Model transaksi lanjutan termasuk transaksi
nested, saga, transaksi bertingkat, secara dinamis transaksi restrukturisasi, dan model alur
kerja.

D. Pemrosesan Kueri

Tujuan pemrosesan kueri adalah untuk mengubah kueri yang ditulis dalam bahasa tingkat
tinggi, biasanya SQL, menjadi strategi eksekusi yang benar dan efisien yang diungkapkan
dalam bahasa tingkat rendah seperti aljabar relasional, dan untuk menjalankan strategi untuk
mengambil data yang diperlukan. Karena ada banyak transformasi ekuivalen dari query
tingkat tinggi yang sama, DBMS harus memilih salah satu yang meminimalkan penggunaan
sumber daya. Ini adalah tujuan dari optimasi query. Karena masalahnya tidak dapat
diselesaikan secara komputasi dengan sejumlah besar relasi, strategi yang diadopsi
umumnya direduksi menjadi menemukan solusi yang mendekati optimal.

Ada dua teknik utama untuk optimasi kueri, meskipun kedua strategi tersebut biasanya
digabungkan dalam praktiknya. Teknik pertama menggunakan aturan heuristik yang
mengurutkan operasi dalam kueri. Teknik lain membandingkan strategi yang berbeda
berdasarkan biaya relatif mereka dan memilih salah satu yang meminimalkan penggunaan
sumber daya. Pemrosesan query dapat dibagi menjadi empat fase utama: dekomposisi
(terdiri dari parsing dan validasi), optimasi, pembuatan kode, dan eksekusi. Tiga yang
pertama dapat dilakukan baik pada waktu kompilasi atau pada saat runtime.

Dekomposisi kueri mengubah kueri tingkat tinggi menjadi kueri aljabar relasional, dan
memeriksa apakah kueri tersebut secara sintaksis dan semantik benar. Tahapan khas dari
dekomposisi kueri adalah analisis, normalisasi, analisis semantik, penyederhanaan, dan
restrukturisasi kueri. Pohon aljabar relasional dapat digunakan untuk memberikan
representasi internal dari kueri yang diubah. Optimalisasi kueri dapat menerapkan aturan
transformasi untuk mengubah satu ekspresi aljabar relasional menjadi sebuah ekspresi
ekuivalen yang diketahui lebih efisien. Aturan transformasi termasuk kaskade seleksi,

Database Technology
komutatifitas operasi unary, komutatifitas gabungan Theta (dan hasil kali Cartesian),
komutatifitas unary operasi dan Theta bergabung (dan produk Cartesian), dan asosiasi Theta
bergabung (dan produk Cartesian).

Aturan heuristik termasuk melakukan operasi Seleksi dan Proyeksi sedini mungkin;
menggabungkan Produk Cartesian dengan Seleksi berikutnya yang predikatnya mewakili
kondisi join ke dalam operasi Join; menggunakan associativity operasi biner untuk mengatur
ulang node daun sehingga node daun dengan yang paling restriktif Seleksi dijalankan
terlebih dahulu. Estimasi biaya tergantung pada informasi statistik yang disimpan dalam
katalog sistem. Statistik tipikal termasuk kardinalitas dari setiap relasi dasar, jumlah blok
yang diperlukan untuk menyimpan relasi, jumlah nilai yang berbeda untuk setiap atribut,
pemilihan kardinalitas setiap atribut, dan jumlah level pada setiap indeks bertingkat.

Strategi utama untuk mengimplementasikan operasi Seleksi adalah: pencarian linier (file
tidak berurutan, tanpa indeks), biner pencarian (file yang dipesan, tidak ada indeks),
kesetaraan pada kunci hash, kondisi kesetaraan pada kunci utama, kondisi ketidaksetaraan
pada kunci primer, kondisi kesetaraan pada indeks clustering (sekunder), kondisi kesetaraan
pada nonclustering (sekunder) indeks, dan kondisi ketimpangan pada indeks B+-tree
sekunder. Strategi utama untuk mengimplementasikan operasi Join adalah: block nested
loop join, indexed nested loop join, sort–merge join, dan hash join.

Dengan materialisasi, output dari satu operasi disimpan dalam hubungan sementara untuk
diproses oleh operasi berikutnya operasi. Pendekatan alternatif adalah menyalurkan hasil
dari satu operasi ke operasi lain tanpa menciptakan hubungan sementara untuk menahan
hasil antara, sehingga menghemat biaya pembuatan sementara hubungan dan membaca
hasilnya kembali.

Tree aljabar relasional di mana relasi kanan selalu merupakan relasi basis dikenal sebagai
tree kiri-dalam. Tree kiri-dalam memiliki keuntungan mengurangi ruang pencarian untuk
strategi optimal dan memungkinkan pengoptimal kueri didasarkan pada teknik pemrosesan
dinamis. Kerugian utama mereka adalah bahwa dalam mengurangi ruang pencarian banyak

Database Technology
strategi eksekusi alternatif tidak dipertimbangkan, beberapa di antaranya mungkin berbiaya
lebih rendah daripada yang ditemukan menggunakan tree linier.

Dasar dari efisiensi pengoptimalan kueri adalah ruang pencarian kemungkinan strategi
eksekusi dan algoritma enumerasi yang digunakan untuk mencari ruang ini untuk strategi
yang optimal. Untuk kueri tertentu, ruang ini bisa sangat besar. Akibatnya, pengoptimal
kueri membatasi ruang ini dalam beberapa cara. Misalnya unary operasi dapat diproses
dengan cepat; Produk Cartesian tidak pernah dibentuk kecuali kueri itu sendiri
menentukannya; operan bagian dalam dari setiap gabungan adalah relasi dasar.

Algoritma pemrograman dinamis didasarkan pada asumsi bahwa model biaya memenuhi
prinsip optimalitas. Untuk mendapatkan strategi optimal untuk kueri yang terdiri dari n
gabungan, kita hanya perlu mempertimbangkan yang optimal strategi yang terdiri dari (n 2
1) bergabung dan memperluas strategi tersebut dengan tambahan bergabung. Kelas
kesetaraan adalah dibuat berdasarkan pesanan yang menarik dan strategi dengan biaya
terendah di setiap kelas kesetaraan dipertahankan untuk pertimbangan pada langkah
berikutnya sampai seluruh kueri telah dibangun, dimana strategi yang sesuai untuk
keseluruhan biaya terendah dipilih.

Pengoptimal kueri adalah inti dari kinerja RDBMS dan juga harus diperluas dengan
pengetahuan tentang cara menjalankan fungsi yang ditentukan pengguna secara efisien,
memanfaatkan struktur indeks baru, mengubah kueri menjadi cara baru, dan bernavigasi di
antara data menggunakan referensi. Berhasil membuka seperti kritis dan sangat disetel
Komponen DBMS dan mendidik pihak ketiga tentang teknik optimasi merupakan tantangan
utama bagi DBMS vendor.

RDBMS tradisional menggunakan indeks B-tree untuk mempercepat akses ke data skalar.
Dengan kemampuan untuk mendefinisikan data yang kompleks jenis dalam ORDBMS,
struktur indeks khusus diperlukan untuk akses yang efisien ke data. Beberapa ORDBMS
mulai mendukung tipe indeks tambahan, seperti pohon-B generik, tree-R (tree wilayah)
untuk akses cepat untuk data dua dan tiga dimensi, dan kemampuan untuk mengindeks pada
output.

Database Technology
SIMPULAN

1. Data adalah sumber daya berharga yang harus dikontrol dan dikelola secara ketat,
sebagaimana mestinya sumber daya perusahaan apa pun. Sebagian atau seluruh data
perusahaan mungkin memiliki kepentingan strategis organisasi dan oleh karena itu harus
dijaga keamanan dan kerahasiaannya. Lingkungan database dan, khususnya, tipikal
fungsi dan layanan dari Sistem Manajemen Basis Data (DBMS). Fungsi-fungsi ini dan
layanan termasuk layanan otorisasi, sehingga DBMS harus memberikan mekanisme
untuk memastikan bahwa hanya pengguna yang berwenang yang dapat mengakses
database. Di lain kata, DBMS harus memastikan bahwa database aman. Istilah keamanan
mengacu untuk perlindungan database terhadap akses yang tidak sah, baik disengaja atau
kebetulan. Selain layanan yang disediakan oleh DBMS, harus diperhatikan juga database
keamanan juga dapat mencakup masalah yang lebih luas terkait dengan mengamankan
database dan lingkungannya.

2. Seperti yang dibahas dalam administrator data dan database harus berpengalaman dalam
isu-isu yang berkaitan dengan pengendalian internal sehari-hari atas volume pertumbuhan
organisasi data. Manajer seperti itu, bagaimanapun, akan semakin menemukan diri
mereka menggali jauh ke dalam wilayah yang relatif asing dari kepatuhan hukum dan
etika. Dengan meningkatnya pengawasan terhadap perusahaan yang disebabkan oleh
skandal besar yang muncul dalam beberapa tahun terakhir (misalnya, Enron dan
WorldCom di Amerika Serikat dan Parmalat di Eropa) telah datang undang-undang dan
peraturan baru yang akan membawa perubahan signifikan dalam cara organisasi
beroperasi. Meningkatnya kasus identitas pencurian juga membawa pengawasan yang
meningkat pada praktik manajemen data. Dampak masalah hukum dan etika pada fungsi
TI cukup sering berkisar pada pengelolaan data. Oleh karena itu untuk menentukan
masalah yang mendasarinya, untuk menggambarkan konteks manajemen data di mana
masalah ini muncul, dan untuk memberikan praktik terbaik untuk data dan database
administrator sehubungan dengan masalah ini.

Database Technology
3. Fungsi-fungsi yang dimiliki sistem manajemen basis data (DBMS) harus disediakan, di
antaranya adalah tiga fungsi yang terkait erat yaitu dimaksudkan untuk memastikan
bahwa database dapat diandalkan dan tetap dalam keadaan yang konsisten: dukungan
transaksi, layanan kontrol konkurensi, dan layanan pemulihan. Ini keandalan dan
konsistensi harus dipertahankan dengan adanya kegagalan keduanya komponen
perangkat keras dan perangkat lunak, dan ketika banyak pengguna mengakses basis data.
Dalam bab ini kita berkonsentrasi pada tiga fungsi ini. Meskipun setiap fungsi dapat
dibahas secara terpisah, mereka saling bergantung. Baik kontrol konkurensi dan
pemulihan diperlukan untuk melindungi database dari inkonsistensi data dan kehilangan
data. Banyak DBMS memungkinkan pengguna untuk melakukan operasi simultan pada
database. Jika operasi ini tidak dikendalikan, akses dapat mengganggu satu sama lain dan
database dapat menjadi tidak konsisten. Untuk mengatasi hal ini, DBMS
mengimplementasikan protokol kontrol konkurensi yang: mencegah akses database
mengganggu satu sama lain. Pemulihan basis data adalah proses memulihkan basis data
ke keadaan yang benar berikut: sebuah kegagalan. Kegagalan mungkin akibat dari sistem
crash karena perangkat keras atau kesalahan perangkat lunak, kegagalan media, seperti
head crash, atau kesalahan perangkat lunak di aplikasi, seperti kesalahan logis dalam
program yang mengakses database. Mungkin juga merupakan akibat dari korupsi atau
perusakan yang tidak disengaja atau disengaja data atau fasilitas oleh administrator
sistem atau pengguna. Apapun penyebab yang mendasarinya kegagalan, DBMS harus
dapat memulihkan dari kegagalan dan mengembalikan database ke keadaan yang
konsisten.

4. Ketika model relasional pertama kali diluncurkan secara komersial, salah satu kritik
utama sering dikutip adalah kinerja kueri yang tidak memadai. Sejak itu, jumlah yang
signifikan penelitian telah dikhususkan untuk mengembangkan algoritma yang sangat
efisien untuk pemrosesan quey. Ada banyak cara di mana kueri kompleks dapat
dilakukan, dan satu tujuan pemrosesan kueri adalah untuk menentukan mana yang paling
hemat biaya.

Database Technology
DAFTAR PUSTAKA

Database Systems: A Practical Approach to Design, Implementation, and Management, 6th


Edition. Thomas Connolly, University of Paisley. Chapter: 20-23.
IBM Cloud Education. 2019. Database Security. https://www.ibm.com/cloud/learn/database-
security.
Osborne, J.B. 2016. Selected Issues in Database Theory and Practice.
https://www.researchgate.net/publication/289540163_Selected_Issues_in_Database_
Theory_and_Practice.
UKEssays. 2017. Database Management: Law, Ethics and Security.
https://www.ukessays.com/essays/computer-science/database-management-law-
ethics-9552.php.
Tang, X. 2022. Introduction: The Ethics of Data Management.
https://sites.psu.edu/ethicsofdatamanagement/.
Vossen G. (2018) Transaction Management. In: Liu L., Özsu M.T. (eds) Encyclopedia of
Database Systems. Springer, New York, NY. https://doi.org/10.1007/978-1-4614-
8265-9_835.
Kaufmann, M. 2015. Query Processing.. RDF Database Systems.
https://www.sciencedirect.com/science/article/pii/B9780127999579000067.

Database Technology

Anda mungkin juga menyukai