The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.

[BD-XII] 315-3.16.415-4.16 - Menganalisis Struktur Penyimpanan pada RDBMS

Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by Perpustakaan SMK Telkom Banjarbaru, 2022-01-12 01:05:52

Menganalisis Struktur Penyimpanan pada RDBMS

[BD-XII] 315-3.16.415-4.16 - Menganalisis Struktur Penyimpanan pada RDBMS

Struktur
Penyimpanan pada
RDBMS

Setyo Wahyu Saputro, S.Kom, M.Kom

Kompetensi Dasar

3.15 Menganalisis struktur penuyimpanan pada RDBMS
3.16 Menerapkan pengendalian server melalui koneksi
client-server pada RDBMS

4.15 Membuat struktur penyimpanan pada RDBMS
4.16 Membuat koneksi pengendalian server melalui client-
server pada RDBMS
-----

Buku Referensi

Basis Data
Program Keahlian Teknik Komputer dan Informatika
Kompetensi Keahlian Rekayasa Perangkat Lunak

SMK/MAK Kelas II
Penerbit Andi.

Struktur Penyimpanan
RDBMS

1. Penyimpanan pada RDBMS

• RDBMS identik dengan sebuah software komputer yang digunakan untuk
buat, menyunting, dan memanajemen basis data yang telah mendukung
skema relational. Pemanfaatan program banyak dijumpai dalam sistem
jualan barang, sistem apoteker, sistem pertokoan, sistem penyewaan
(rental) mobil, sistem kepustakaan, dan lain-lain.

• RDBMS memiliki tingkatan seuai skala yang akan digunakan, yaitu small-
scale database pada aplikasi sederhana seperti aplikasi perpustakaan.

• Sedangkan satunya sebagai large-scale database, yaitu aplikasi RDBMS
dengan skala yang lebih os mencakup kebutuhan enteprise, misalnya
aplikasi Oracle yang digunakan ntuk menangani kebutuhan akan
manajemen perusahaan berskala besar dengan jumlah record yang sangat
besar.

RDBMS

Struktur Penyimpanan pada RDBMS

• Dengan menggunakan DBMS, user dapat mendefinisikan data yang akan
disimpan dalam bentuk model data.

• Model data merupakan koleksi dari konstruksi deskripsi data tingkat tinggi
yang menyembunyikan detail tingkat rendahnya.

• Secara umum terdapat tiga model data yang digunakan untuk memodelkan
penyimpanan data sebagai berikut.

a. Model Hierarki
b. Model Jaringan
c. Model Relasional

Model Hierarki

• Model hierarki identik dengan model data yang dibangun secara hierarki di
mana terdapat root sebagai titik puncaknya.

• Pada model data jenis ini setiap data hanya memiliki sebuah penghubung
untuk data di bawahnya.

https://image.slidesharecdn.com/3modeldata-150420101126-conversion-gate01/95/3-model-data-17-638.jpg?cb=1429524783

Model Hierarki

https://miro.medium.com/max/685/1*qd7ED0glDh-BNo_2rX3YlA.png

Model Jaringan

• Dalam model data jaringan, satu data dapat memil penghubung dengan
data yang lain.

• Model data jaringan me pointer untuk menghubungkan data yang satu
dengan data yan

http://3.bp.blogspot.com/-pJEyvqbtLfI/TolP2DBELxI/AAAAAAAAACU/2kxj5X3-aso/s640/4.png

Model Relasional

https://sis.binus.ac.id/files/2017/09/12.png

Model Relasional

• Relational Model menjelaskan kepada pemakai tentang hubungan logis
antar data dalam sistem database dengan mengvisualisasikan ke dalam
bentuk tabel yang terdiri baris dan kolom yang menunjukkan atribut
tertentu.

• Sedangkan network model sering juga disebut sebagai plex model di mana
pada model ini struktur database dapat diuraikan dalam "parent" dan
"child", kedudukan child harus selalu lebih rendah dari parent dan sebuah
child dapat memiliki lebih dari satu parent.

Model Relasional

1. Performance yang diperoleh dari penyimpanan tebesar. Database terbukti efisiensi
terhadap penggunaan memori dan media penyimpanan

2. RDBMS memang lebih unggul karena dapat melakukan agar tidak terjadi redundansi
file. Redundansi file adai ketika terdapat kumpulan data sama yang berulang dalan
database. Kondisi tersebut tentunya akan mengakibatkan pemborosan media
penyimpanan. Dengan hadirnya database kondisi tersebut dapat diatasi.

3. Database memungkinkan terjadinya perubahan struktur tanna mengubah aplikasi yang
digunakan untuk mengakses database tersen

4. Data yang disimpan secara terpusat tentu saja akan memudahkan pengelolaan database.
Konsistensi data yang diakses secara bersama pun dapat lebih terjamin.

5. Mengenai masalah keamanan, DBMS memiliki sebuah sistem keamanan yang sangat
fleksible apabila dibandingkan dengan sistem keamanan dalam file sistem operasi.
Dengan begitu, hanya orang-orang atau komputer yang telah disetujui saja yang dapat
mengakses semua data yang tersimpan rapi dalam database.

2. Spesifikasi Penyimpanan pada MySQL

• MySQL secara standar dilengkapi
dengan sejumlah storage engine yang
telah diprakonfigurasi dan diaktifkan di
server MySQL.

• Dua storage engine MySQL yang umum
digunakan adalah InnoDB dan MyISAM.

• InnoDB adalah storage engine standar
untuk MySQL versi 5.5 ke atas,

• MyISAM adalah storage engine yang
digunakan sebelum MySQL versi 5.5.

2.a. Teknik Penyimpanan Dokumen pada
MySQL

• Pada MySQL, data disimpan dalam file (memori) menggunakan berbagai teknik
yang berbeda.

• Di mana setiap teknik menggunakan mekanisme penyimpanan yang berbeda,
fasilitas indeks, dan tingkat mengunci yang pada akhirnya memberikan berbagai
fungsi dan kemampuan yang berbeda.

• Dengan memilih teknik yang berbeda tersebut dapat memberikan manfaat yang
akan meningkatkan fungsi secara keseluruhan dari aplikasi.

InnoDB

• InnoDB identik dengan storage engine standar untuk MySQL versi 5.5 ke
atas dan sebagai jenis mesin penyimpanan yang paling banyak digunakan
dengan dukungan transaksi. Jenis storage engine MYSQL yang digunakan
untuk menyimpan data yang sangat besar, bahkan lebih dari MYISAM.

• InnoDB merupakan storage engine yang aman untuk proses-proses
transaksional pada MySQL yang memiliki kemampuan commit, rollback
dan crash-recovery guna memproteksi data user.

• InnoDB menyimpan data dalam bentuk indeks-indeks yang terklaster
(clustered indexes) untuk mengurangi I/O atas kueri umum (common
queries) berdasarkan primary key.

• Guna mendukung integritas data, InnoDB juga mendukung Foreign Key
untuk referential integrity constraint. Tetapi InnoDB memiliki kekurangan,
yaitu membutuhkan Resource Hardware yang lebih tinggi.

MyIsam

• MyISAM digunakan untuk mengelola tabel nontracsactional dengan tipe
tabel sederhana, stabil, dan mudah digunakan.

• Jika ingin menyimpan data sederhana yang tidak terlalu rumit
menggunakan tipe jenis ini. Kelebihan utama MyISAM kecepatan dan
kestabilannya.

• MyISAM termasuk jenis storage engine standar untuk MySQL sebelum
versi 5.5 dan yang panyak digunakan pada data werehousing, web, dan
lingkungan aplikasi lainnya.

Memory

• Storage engine yang awalnya dikenal sebagai HEAP sebagai media
penyimpanan yang diciptakan tabel dalam memori (storage engine yang
menyimpan data di RAM untuk akses cepat terhadap pencarian data)
menyediakan table-level locking, dan tidak mendukung transaksi.

• Teknik memori penyimpanan sangat ideal untuk membuat tabel sementara
atau pencarian cepat. Hal yang perlu dipahami adalah data hilang ketika
database di restart

Blackhole

• Penyimpanan mesin ini dapat digunakan untuk melakukan tes kinerja atau
tes lainnya. Dengan demikian, storage engine yang menerima, tetapi tidak
menyimpan data dan proses pengambilan data selalu tidak menghasilkan
apapun (an empty set).

• Sehingga digunakan dalam desain database terdistribusi di mana data
otomatis direplikasi, tetapi tidak disimpan.

• Dalam hal ini, mesin penyimpanan akan menerima tetapi tidak menyimpan
data. Retrievals selalu mengembalikan set kosong.

• Fungsinya dapat digunakan dalam desain database terdistribusi di mana
data secara otomatis direplikasi, tetapi tidak disimpan secara lokal.

Archive

• Archive mulai ditambahkan di MySQL versi 4.1.3 merupakan storage
engine.

• Archive digunakan untuk menyimpan atau memperoleh informasi dalam
jumlah cukup besar dari tabel-tabel yang tidak terindeks untuk pengarsipan
tujuan ke dalam format dikompresi untuk menghemat ruang disk.

• tidak mendukung transaksi. Tabel arsip hanya memungkinkan perintah
INSERT dan SELECT.

• Tabel arsip tidak mendukung indeks sehingga ketika dibaca membutuhkan
pemindaian secara penuh pada table.

CSV

• CSV mulai ditambahkan di MySQL versi 4.1.4 merupakan storage engine
yang menyimpan data dalam bentuk file text dan menggunakan pembatas
koma (comma-separated) untuk memisahkan format nilai.

• Sebuah tabel CSV dapat secara mudah untuk migrasi data ke aplikasi non-
SQL seperti perangkat lunak spreadsheet.

• Tabel CSV tidak mendukung NULL tipe data dan membaca operasi
membutuhkan pemeriksaan table secara penuh.

• Dalam hal ini untuk menggunakannya untuk bertukar data antar
perangkat lunak yang mendukung format CSV.

Merge

• Sebagai storage engine, Merge bisa diterjemahkan seorang DBA (Database
Administrator) MySQL untuk mengelompokkan secara logis serangkaian
tabel MyISAM yang identik dan mengacunya pada satu obyek.

Federated

• Federated merupakan storage engine yang menawarkan kemampuan untuk
menghubungkan server MySQL yang terpisah untuk membuat satu
database logis dari banyak server fisik Federated mulai ditambahkan di
MySQL versi 5.0

Example

• Example merupakan storage engine yang berfungsi sebagai rintisan yang tidak
melakukan apapun dan berfungsi sebagai contoh dalam kode sumber MySQL.
Dalam hal ini Example dapat membuat tabel menggunakan storage engine ini,
tetapi tidak dapat digunakan untuk menyimpan ataupun mengambil data.

2.b. Jenis Penyimpanan File Sistem Database

• Tempat penyimpanan data untuk ukuran besar sering menggunakan sistem
database, di mana salah satu aplikasi yang dapat digunakan sebagai tempat
penyimpanan serta pengolahan data berbentuk database adalah MySOL.

• Aplikasi ini banyak digunakan karena bisa diakses berbagai sistem operasi. Di
samping itu, data yang telah disimpan dapat diolah dan dapat dipanggil dengan
mudah menggunakan aplikasi lain seperti aplikasi yang dibuat menggunakan
PHP.

• Untuk menggunakan MySQL di PC lokal bisa dilakukan dengan aplikasi XAMPP
melalui phpMyAdmin.

• Data pada MySQL disajikan dalam bentuk tabel. Masing-masing nama tabel dan
kolom dibuat unik dan setiap kolom diset dengan tipe data tertentu. Tipe data yang
sering digunakan antara Jain INT, VARCHAR, TEXT, DATE, DATETIME, dan
lain-lain. Tipe data diset disesuaikan dengan jenis data yang diisikan.

1) Piranti Akses Serial (Sequential
Access Storage Device/SASD)

• Ciri-ciri piranti akses serial antara lain proses pembacaan rekaman harus
berurutan, tidak ada pengalamatan, data disimpan dalam blok-blok, proses
write hanya bisa dilakukan sekali saja, kecepatan akses data sangat
tergantung pada kerapatan pita, kecepatan pita, lebar celah/gap antar-blok.

2) Piranti Akses Langsung (Direct Access
Storage Device/DASD)

• Ciri-ciri piranti akses langsung antara lain pembacaan rekaman tidak harus
berurutan, memiliki alamat, data dapat disimpan dalam karakter atau blok,
proses penulisan dapat dilakukan beberapa kali.

2.c. Metode Penyimpanan File Sistem
Database

1) Random
• Ciri-ciri metode penyimpanan random di antaranya rekaman ditransformasikan ke

alamat penyimpan dalam media fisik. secara acak menimbulkan permasalahan.
2) Sequential
• Ciri-ciri metode penyimpanan sequential di antaranya rekar disimpan berdasarkan

suatu kunci, pencarian rekaman tertentu dilakuk record demi record sesuai kuncinya,
dan rekaman dapat digunakan jika pengolahan terhadap database bersifat periodik dan
menyeluruh.
3) Indexed sequential
• Ciri-ciri metode penyimpanan Indexed sequential di antaranya gabungan antara
sequentiel dan random, record disimpan secara berurutan dengan penggunaan kunci,
masing-masing record diberi indeks, pengalamatan dilakukan secara acak, dan
memerlukan penyimpanan tambahan berupa file indeks.

2.d. Klasifikasi Penyimpanan pada MySQL

• Database storage engine banyak digunakan oleh programmer dan web developer karena sifatnya
yang free.

• Kemampuannya sudah bisa diandalkan, karena memiliki kapasitas sekitar 60.000 tabel dengan
jumlah record mencapai 5.000.000.000.

• Keamanan datanya cukup aman walaupun tidak sehebat Postgre apalagi Oracle. Engine jens ini
termasuk multiplatform, sehingga mampu diaplikasikan di berbagai sistem operasi.

• MySQL cocok diaplikasikan diaplikasi kelas kecil dan menengah.
Klasifikasi penyimpanan pada MySQL Terdiri dari:
• Hardware
• Operating System
• MySQL Setting
• Coding/ Query

1) Hardware

Beberapa hal yang berhubungan dengan hardware sebagai berikut.
a) Karena menggunakan innoDB yang dikenal sebagai multi-core platform,
sebaiknya menggunakan CPU multi-core seperti dual core, quad core, dan
lain-lain.
b) Media penyimpan yang paling baik digunakan adalah hard Disk dan SSD
Hard Disk dengan RAID 10.

2) Operating System

• Beberapa hal yang berhubungan dengan operating system antara lain untuk
hard Disk SSD sebaiknya menggunakan file system EXT4.

• Konsiderasi untuk tidak menggunakan memory swap dan men-setup
memory swap = 0. Sebab memory swap dapat mengurangi performansi
caching memory MySQL itu sendiri.

3) MySQL setting

Beberapa hal yang berhubungan dengan MySQL setting sebagai berikut.
a) Menggunakan versi MySQL terbaru, misalnya MySQL versi 5.5 ke atas.
b) Melakukan setting system variable MySQL pada Linux OS pada umumnya terletak di
folder /etc/my.cnf, di mana pada file tersebut banyak system variable yang dapat menentukan
performansi MySQL
c) Design database akan berpengaruh besar saat melaku pada database. Oleh sebab itu,
relationship dari setiap table harus sesuai dan menemukan keseimbangan dari normal
database dengan konsiderasi performansı aplikasi yang akan mengakses database tersebut
d) Menggunakan indeks pada field-field yang sering digunakan sebagai kata kunci dalam
query pencarian.
e) Mempertimbangkan penggunaan stored procedure, function dan trigger karena dapat
mempercepat query execution time dan script-nya lebih mudah dalam perawatannya.

4) Coding

Beberapa hal yang berhubungan dengan coding sebagai berikut
a) Mengetahui bagian blok query yang menghabiskan banyak waktu dalam
proses dengan cara mengaktifkan parameter slow_query_log untuk
mengetahui query yang execution time nya tinggi (di atas 1 detik).
b) Setiap bahasa pemrograman berbeda-beda dalam membuat sebuah koneksi
sehingga harus membuat koneksi efisien mungkin.
c) Sebaiknya menhindari sub query yang melakukan load data yang besar
karena proses ini memakan resource CPU cukup besar.

Proses Administrasi
Server DB Berbasis
RDBMS

Proses Administrasi Server DB Berbasis
RDBMS

• Proses administrasi database merupakan hal yang paling penting karena
sebelum membuat objek-objek database lainnya di MySQL, terlebih dahulu
harus membuat database di MySQL.

• Hal pokok yang harus dipersiapkan terlebih dahulu, yaitu unduh dan instal
program MySQL.

• MySQL identik dengan database yang sangat populer digunakan sebagai
database server pada perusahaan besar maupun kecil.

• Beberapa kelebihan yang ditawarkan dari distribusi database ini, di
antaranya free software, aman, stabil, multi user, mudah digunakan, dan
yang paling penting MySQL mendukung RDBMS (Relational Database
Management System).

• Di samping itu, hampir semua website online menggunakan database ini
untuk menyimpan databasenya.

1. Administrasi Server RDBMS

• Untuk melakukan administrasi dalam basis data MySQL dapat
menggunakan modul yang sudah termasuk, yaitu command-line (perintah:
MySQL dan mysqladmin) maupun mengunduh sebuah modul berbasis
grafik (GUI) dari situs MySQL berupa MySQL Administrator dan MySQL
Query Browser.

• Di samping itu, terdapat sebuah perangkat lunak gratis untuk administrasi
basis data MySQL berbasis web yang sangat populer yaitu phpMyAdmin.

• Sedangkan perangkat lunak untuk administrasi basis data MySQL yang
dijual secara komersial antara lain MySQL front, Navicat dan EMS SQL
Manager for MySQL.

1.a. Dasar Administrasi DB MySQL

Untuk mengetahui bagaimana beroperasi dengan sistem database perle membuat
beberapa perubahan dalam database.
1) Memeriksa Versi MySQL

# mysql -h localhost -V
2) Masuk ke server database MySQL

# mysql -u username –p
#mysql -u root –p
3) Menampilkan Semua Database
mysql> SHOW DATABASES;
4) Membuat Database
mysql> CREATE DATABASE db_name;

1.a. Dasar Administrasi DB MySQL

Untuk mengetahui bagaimana beroperasi dengan sistem database perle
membuat beberapa perubahan dalam database.

5) Menghapus Database
mysql> DROP DATABASE db_name;

6) Menggunakan database
mysql> USE db_name;

1.a. Dasar Administrasi DB MySQL

7) Implementasi database
mysql> CREATE DATABASE test;
mysql> USE test;
mysql> CREATE TABLE test_table ( id INT NOT NULL PRIMARY
KEY AUTO_INCREMENT, name VARCHAR(30) NOT NULL,
comment VARCHAR (100)

1.b. Tool Administrasi Server
MySQL

1) MySQL Command Line Client
2) MySQL-Front
3) MySQL Workbench
4) PHPMyAdmin
5) SQL Yog
6) Table Plus
7) MySQL Administrator dan MySQL Query Browser

2. Sifat Pengolahan Data

a. Pengolahan data menjalankan tugas yang penting, pengolah adalah
aktivitas yang diperlukan.

b. Ada beberapa sifat pengolahan data yang membedakannya dengan area
apliksi yang lain.

c. Mengikuti prosedur standar secara relative, peraturan dan latihan yang
diterima menjelaskan cara pengolahan data yang akan dilakukan

d. Memiliki fokus historis yang paling utama.
e. Memberikan informasi pemecahn masalah minimal.
f. Menghimpun data yang detail atau lengkap.

3. Backup Data

Guna menghindari situasi kehilangan beberapa data penting DBA harus
membuat cadangan data dan menyimpan file cadangan dit yang aman.
Hal ini bertujuan untuk memudahkan dalam mengem data yang hilang dan
dapat kembali ke jalur yang sangat cepat.

3.a. Backup dalam Bentuk File

Backup dalam bentuk file adalah melakukan backup MySOL dengan meng-
copy folder tempat database MySQL disimpan lika menggunakan Windows
OS dan MySQL xx, secara default database MySQL tersimpan di dalam folder
C:\Program Files\MySQL\MySQL Server xx\data, sehingga tinggal meng-
copy database yang akan dibackup dari folder tersebut ke tempat lain.
Keuntungan dari cara backup seperti ini adalah kemudahannya terutama
bagi yang awam dengan database, karena tinggal copy dan paste. Namun,
cara seperti ini terkadang bermasalah saat melakukan

3.b. Backup Bentuk Perintah
Database (SQL Dump)/ Export

• SQL Dump bisa diterjemahkan sebagai suatu format (file) yang berisi
perintah-perintah CREATE dan INSERT yang saat dieksekusi akan
menyusun struktur database dan isinya secara otomatis.

• Pada dasarnya, bentuk SQL Dump dapat dilakukan dengan mengeksekusi
perintah mysqldump atau mysqlhotcopy yang sudah disediakan di MySQL.

• Menggunakan mysqldump merupakan cara paling praktis untuk
membackup atau memindahkan tabel MySQL dari sebuah komputer ke
komputer lainnya.

• Dapat dilakukan pada Command Line dengan perintah
# mysqldump --all-databases > backup.sql

• Cara melakukan Dump dapat dengan fasilitas export pada Tool MySQL
Client seperti PHPMyAdmin

4. Restore/Import Data

• Proses restore dapat dilakukan melalui perintah SQL dengan
memanfaatkan MySQL dan juga bisa menggunakan software tertentu.

• Restore sendiri bisa diterjemahkan sebagai prosedur yang dilaksanakan
untuk mengembalikan file yang dibackup ke database MySQL. Dapat
dilakukan dengan perintah:
mysql -u user -p < backup.sql

• Restore juga dapat dilakukan melalui MySQL Client seperti PHPMyAdmin
melalui menu import.

Sekian

Setyo Wahyu Saputro, S.Kom, M.Kom


Click to View FlipBook Version