DATABASE
1.
Pengertian
Database
Adapun pengertian dari database menurut para
ahli, antara lain:
·
Database adalah
kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat
diperiksa menggunakan suatu program
komputer untuk memperoleh
informasi dari basis data tersebut.
·
Database
adalah representasi kumpulan fakta yang saling berhubungan disimpan secara
bersama sedemikian rupa dan tanpa pengulangan yang tidak perlu, untuk memenuhi berbagai kebutuhan.
·
Database merupakan
sekumpulan informasi yang saling berkaitan pada suatu subjek tertentu pada
tujuan tertentu pula.
·
Database adalah
susunan record data operasional lengkap dari suatu organisasi atau perusahaan,
yang diorganisir dan disimpan secara terintegrasi dengan menggunakan metode
tertentu dalam komputer sehingga mampu memenuhi informasi yang optimal yang
dibutuhkan oleh para pengguna.
2.
Konsep Dasar Database
Konsep dasar dari database adalah kumpulan
dari catatan-catatan, atau potongan dari pengetahuan. Sebuah database memiliki
penjelasan terstruktur dari jenis fakta yang tersimpan di dalamnya: penjelasan
ini disebut skema. Skema menggambarkan obyek yang diwakili suatu database, dan
hubungan di antara obyek tersebut. Ada banyak cara untuk mengorganisasi skema,
atau memodelkan struktur database: ini dikenal sebagai database model atau
model data. Model yang umum digunakan sekarang adalah model relasional, yang
menurut istilah yaitu mewakili semua informasi dalam bentuk tabel-tabel yang
saling berhubungan dimana setiap tabel terdiri dari baris dan kolom (definisi
yang sebenarnya menggunakan terminologi matematika). Dalam model ini, hubungan
antar tabel diwakili dengan menggunakan nilai yang sama antar tabel. Model yang
lain seperti model hierarkis dan model jaringan menggunakan cara yang lebih eksplisit
untuk mewakili hubungan antar tabel.
[Waliyanto2000] Gabungan antara basis data dan perangkat lunak
SMBD (Sistem Manajemen Basis Data) termasuk di dalamnya program
aplikasi yang dibuat dan bekerja dalam satu sistem disebut dengan Sistem Basis Data.
C. J. Date menyatakan bahwa sistem basis data dapat dianggap
sebagai tempat untuk sekumpulan berkas data yang terkomputerisasi dengan tujuan
untuk memelihara informasi dan membuat informasi tersebut tersedia saat
dibutuhkan.
3.
Struktur Hirarki Basis
Data
Berikut struktur hirarki basis data secara umum yang dapat
dipergunakan.
A.
BATH PROCESSING
Batch processing adalah pelaksanaan dari
serangkaian program (“pekerjaan”) pada komputer tanpa intervensi manual.
Pekerjaan Batch ditetapkan
sehingga mereka dapat dijalankan sampai selesai tanpa intervensi manual,
sehingga semua data input dipilih sebelumnya melalui script atau parameter
baris perintah. Hal ini berbeda untuk “online” atau program interaktif yang meminta
pengguna untuk input tersebut. Sebuah program membutuhkan set file data sebagai
masukan, memproses data, dan menghasilkan satu set file output data. Lingkungan
operasi ini disebut sebagai “batch processing” karena input data dikumpulkan ke
dalam batch file dan diproses dalam batch oleh program ini.
Manfaat Batch Processing
Batch processing memiliki
manfaat:
·
Hal ini memungkinkan berbagi sumber daya
komputer antara banyak pengguna dan program,
·
Ini menggeser waktu pemrosesan pekerjaan
untuk saat sumber daya komputasi kurang sibuk,
·
Ini menghindari diparkir sumber daya
komputasi dengan intervensi manual oleh menit-menit dan pengawasan,
·
Dengan menjaga tingkat pemanfaatan yang
tinggi secara keseluruhan, lebih baik lurus mengamortisasi biaya komputer,
terutama salah satu yang mahal.
1.
Sejarah
Batch processing telah
dikaitkan dengan komputer mainframe sejak hari-hari awal komputasi elektronik
di tahun 1950-an. Ada berbagai alasan mengapa batch processing didominasi
komputasi awal. Salah satu alasannya adalah bahwa masalah bisnis yang paling
mendesak untuk alasan profitabilitas dan daya saing adalah masalah akuntansi
yang terutama, seperti penagihan. Penagihan secara inheren proses bisnis
berorientasi batch, dan praktis setiap bisnis tagihan harus, handal dan tepat waktu.
Selain itu, setiap sumber daya komputasi yang mahal, sehingga penyampaian
berurutan pekerjaan batch cocok kendala sumber daya dan evolusi teknologi pada
saat itu. Kemudian, sesi interaktif dengan baik interface komputer berbasis
teks terminal atau antarmuka pengguna grafis menjadi lebih umum. Namun,
komputer awalnya bahkan tidak mampu memiliki beberapa program dimuat ke memori
utama.
Batch processing masih
meresap dalam komputasi mainframe, tapi hampir semua jenis komputer sekarang
mampu setidaknya beberapa batch processing, bahkan jika hanya untuk “rumah
tangga” tugas. Itu termasuk komputer berbasis UNIX, Microsoft Windows, Mac OS
X, dan bahkan smartphone, semakin. Virus scanning adalah bentuk batch
processing, dan begitu juga dijadwalkan pekerjaan yang secara berkala menghapus
file-file sementara yang tidak diperlukan lagi. E-mail sistem sering memiliki
pekerjaan batch yang secara berkala arsip dan kompres pesan lama. Seperti
komputer pada umumnya menjadi lebih meresap dalam masyarakat dan di dunia, pengolahan
begitu juga akan batch.
2.
Modern Systems
Disamping sejarah panjang
mereka, aplikasi batch masih kritis di sebagian besar organisasi sebagian besar
karena banyak proses inti bisnis secara inheren batch-oriented dan mungkin akan
selalu. (Billing adalah contoh yang terkenal bahwa hampir setiap bisnis
memerlukan berfungsi.) Meskipun sistem online juga dapat berfungsi ketika
intervensi manual tidak diinginkan, mereka tidak biasanya dioptimalkan untuk
melakukan volume tinggi, tugas yang berulang. Oleh karena itu, bahkan sistem
baru biasanya berisi aplikasi batch satu atau lebih untuk memperbarui informasi
di akhir hari, menghasilkan laporan, dokumen cetak, dan tugas non-interaktif
lain yang harus menyelesaikan andal dalam tenggat waktu usaha tertentu.
Aplikasi batch modern
menggunakan kerangka batch modern seperti Batch Spring, yang ditulis untuk
Java, dan framework lain untuk bahasa pemrograman lain, untuk memberikan
toleransi kesalahan dan skalabilitas yang diperlukan untuk pemrosesan volume
tinggi. Dalam rangka untuk memastikan proses berkecepatan tinggi, aplikasi
batch sering terintegrasi dengan solusi komputasi grid untuk partisi pekerjaan
batch selama beberapa besar prosesor, meskipun ada tantangan pemrograman yang
signifikan dalam melakukannya. Batch processing volume tinggi tempat terutama
kebutuhan berat pada sistem dan aplikasi arsitektur juga. Arsitektur yang kuat
fitur input / output kinerja dan skalabilitas vertikal, termasuk komputer
mainframe modern, cenderung untuk memberikan kinerja yang lebih baik daripada
alternatif batch.
bahasa Scripting menjadi
populer saat mereka berevolusi bersama dengan batch processing.
Penggunaan Umum Batch
Processing
Pengolahan data
Jadwal batch pengolahan khas
termasuk akhir hari-pelapor (EOD). Secara historis, banyak sistem memiliki
jendela batch dimana subsistem online adalah dimatikan dan kapasitas sistem
yang digunakan untuk menjalankan pekerjaan umum untuk semua data (account,
pengguna, atau pelanggan) pada sebuah sistem. Di bank, misalnya, pekerjaan EOD
termasuk perhitungan bunga, generasi set laporan dan data ke sistem lain,
pencetakan (pernyataan), dan proses pembayaran. Banyak bisnis telah pindah ke
online bersamaan dan arsitektur batch dalam rangka mendukung globalisasi,
Internet, dan lain tuntutan bisnis yang relatif baru. arsitektur tempat yang
unik tersebut menekankan pada desain sistem, teknik pemrograman, teknik
ketersediaan, dan layanan TI.
3.
Percetakan
Sebuah prosedur batch
processing populer komputerisasi sedang mencetak. Hal ini biasanya melibatkan
operator memilih dokumen-dokumen yang mereka butuhkan dicetak dan menunjukkan
ke software pencetakan batch kapan, di mana mereka harus menjadi output dan
prioritas dari pekerjaan cetak. Maka pekerjaan itu dikirim ke antrian cetak
dari mana daemon pencetakan mengirimkannya ke printer.
4.
Database
Batch processing juga
digunakan untuk update database massal yang efisien dan pengolahan transaksi
otomatis, sebagai kontras dengan proses transaksi interaktif online (OLTP)
aplikasi. Ekstrak itu, transformasi, load (ETL) langkah dalam mengisi data
gudang secara inheren proses batch di sebagian besar implementasi.
5.
Gambar
Batch processing sering
digunakan untuk melakukan berbagai operasi dengan gambar digital. Tidak ada
program komputer yang membiarkan satu ukuran, mengkonversi, watermark, atau
mengedit file gambar.
6.
Konversi
Batch processing juga
digunakan untuk mengkonversi beberapa file komputer dari satu format yang lain.
Hal ini untuk membuat file portabel dan fleksibel terutama untuk file milik dan
warisan di mana pemirsa tidak mudah didapat.
B.
ONLINE PROCESSING
Merupakan sebuah sistem yang
mengaktifkan semua periferal sebagai pemasok data, dalam kendali komputer
induk. Informasi-informasi yang muncul merupakan refleksi dari kondisi data
yang paling mutakhir, karena setiap perkembangan data baru akan terus
diupdatekan ke data induk.
Salah satu contoh penggunaan
online processing adalahtransaksi online (E-commerce, Ebay, Internet Banking,
Reservation Ticket, Pendaftaran Online,dll). Dalam sistem pengolahan online, transaksi
secara individual dientri melalui peralatan terminal, divalidasi dan digunakan
untuk meng-update dengan segera file komputer. Hasil pengolahan ini kemudian
tersedia segera untuk permintaan keterangan atau laporan.
C.
REAL TIME SYSTEM
Real time system disebut
juga dengan Sistem waktu nyata. Sistem yang harus menghasilkan respon yang
tepat dalam batas waktu yang telah ditentukan. Jika respon komputer melewati
batas waktu tersebut, maka terjadi degradasi performansi atau kegagalan sistem.
Sebuah Real time system adalah sistem yang kebenarannya secara logis didasarkan
pada kebenaran hasil-hasil keluaran sistem dan ketepatan waktu hasil-hasil
tersebut dikeluarkan. Aplikasi penggunaan sistem seperti ini adalah untuk
memantau dan mengontrol peralatan seperti motor, assembly line, teleskop, atau
instrumen lainnya. Peralatan telekomunikasi dan jaringan komputer biasanya juga
membutuhkan pengendalian secara Real time.
Berdasarkan batasan waktu
yang dimilikinya, Real time system ini dibagi atas:
1. Hard Real time
2. Soft Real time
3. Firm Real time
Komponen dari Real time
system ini adalah:
1. Perangkat keras,
2. Sistem Operasi Real time,
3. Bahasa Pemrograman Real
time,
4. Sistem Komunikasi.
Berdasarkan response time
dan dampaknya, maka komputasi real-time
dapat dibedakan menjadi :
1. Sistem Hard Real-Time (
HRTS )
Sistem hard real-time
dibutuhkan untuk menyelesaikan critical task dengan jaminan waktu tertentu.
Jika kebutuhan waktu tidak terpenuhi, maka aplikasi akan gagal. Dalam definisi
lain disebutkan bahwa kontrol sistem hard real-time dapat mentoleransi
keterlambatan tidak lebih dari 100 mikro detik.Secara umum, sebuah proses di
kirim dengan sebuah pernyataan jumlah waktu dimana dibutuhkan untuk
menyelesaikan atau menjalankan I/O. Kemudian penjadwal dapat menjamin proses
untuk selesai atau menolak permintaan karena tidak mungkin dilakukan. Mekanisme
ini dikenal dengan resource reservation. Oleh karena itu setiap operasi harus
dijamin dengan waktu maksimum. Pemberian jaminan seperti ini tidak dapat
dilakukan dalam sistem dengan secondary storage atau virtual memory, karena
sistem seperti ini tidak dapat meramalkan waktu yang dibutuhkan untuk
mengeksekusi suatu proses.
Contoh dalam kehidupan
sehari-hari adalah pada sistem pengontrol pesawat terbang. Dalam hal ini,
keterlambatan sama sekali tidak boleh terjadi,karena dapat berakibat tidak
terkontrolnya pesawat terbang. Nyawa penumpang yang ada dalam pesawat
tergantung dari sistem ini, karena jika sistem pengontrol tidak dapat merespon
tepat waktu, maka dapat menyebabkan kecelakaan yang merenggut korban jiwa.
2. Sistem Soft Real-Time (
SRTS )
Komputasi soft real-time
memiliki sedikit kelonggaran. Dalam sistem ini,proses yang kritis menerima
prioritas lebih daripada yang lain. Walaupun menambah fungsi soft real-time ke
sistem time sharing mungkin akan mengakibatkan ketidakadilan pembagian sumber
daya dan mengakibatkan delay yang lebih lama, atau mungkin menyebabkan
starvation.
hasilnya adalah tujuan secara umum sistem yang
dapat mendukung multimedia, grafik berkecepatan tinggi, dan variasi tugas yang
tidak dapat diterima di lingkungan yang tidak mendukung komputasi soft
real-time.
Contoh penerapan sistem ini
dalam kehidupan sehari-hari adalah pada alat penjual/pelayan otomatis. Jika
mesin yang menggunakan sistem ini telah lama digunakan, maka mesin tersebut
dapat mengalami penurunan kualitas,misalnya waktu pelayanannya menjadi lebih
lambat dibandingkan ketika masih baru. Keterlambatan pada sistem ini tidak
menyebabkan kecelakaan atau akibat fatal lainnya, melainkan hanya menyebabkan
kerugian keuangan saja. Jika pelayanan mesin menjadi lambat, maka para pengguna
dapat saja merasa tidak puas dan akhirnya dapat menurunkan pendapatan pemilik
mesin.Setelah batas waktu yang diberikan telah habis, pada sistem hard
realtime,aplikasi yang dijalankan langsung dihentikan.
Akan tetapi, pada sistem softreal-time,
aplikasi yang telah habis masa waktu pengerjaan tugasnya,dihentikan secara
bertahap atau dengan kata lain masih
diberikantoleransiwaktu.Mengimplementasikan fungsi soft real-time membutuhkan
design yang hati-hati dan aspek yang berkaitan dengan sistem operasi.
Pertama,sistem harus punya
prioritas penjadualan, dan proses real-time harus memiliki prioritas tertinggi,
tidak melampaui waktu, walaupun prioritas non real-time dapat terjadi.Kedua,
dispatch latency harus lebih kecil. Semakin kecil latency, semakin cepat
real-time proses mengeksekusi.Untuk menjaga dispatch tetap rendah, kita butuh
agar system call untuk preemptible. Ada beberapa cara untuk mencapai tujuan
ini. Pertama adalah dengan memasukkan preemption points di durasi system call
yang lama, yang memeriksa apakah prioritas utama butuh untuk dieksekusi. Jika
sudah, maka contex switch mengambil alih, ketika high priority proses selesai,
proses yang diinterupsi meneruskan dengan system call. Points premption dapat
diganti hanya di lokasi yang aman di kernel dimana kernel struktur tidak dapat
dimodifikasi.
Metoda yang lain adalah dengan
membuat semua kernel preemptible.Karena operasi yang benar dapat dijamin, semua
struktur data kernel harus diproteksi dengan mekanisme sinkronisasi. Dengan
metode ini, kernel dapat selalu di preemptible, karena setiap data kernel yang
sedang di update diproteksi dengan pemberian prioritas yang tinggi.
Jika ada proses dengan
prioritas tinggi ingin membaca atau memodifikasi data kernel yang sedang
dijalankan, prioritas yang tinggi harus menunggu sampai proses dengan prioritas
rendah tersebut selesai. Situasi seperti ini dikenal dengan priority inversion.
Kenyataanya, serangkaian proses dapat saja mengakses sumber daya yang sedang
dibutuhkan oleh proses yang lebih tinggi prioritasnya. Masalah ini dapat
diatasi dengan priority-inheritance protocol, yaitu semua proses yang sedang
mengakses sumber daya mendapat prioritas tinggi sampai selesai menggunakan
sumber daya. Setelah selesai, prioritas proses inidikembalikan menjadi seperti
semula.
3. Semi Hard Real-Time
System (HRTS) atau Semi Soft Real-Time ( SRTS )
Metoda ini merupakan
gabungan antara Semi Hard Real-Time System (HRTS) atau Semi Soft Real-Time (
SRTS ). Dengan demikian waktu deadlinenya lebih pendek jika dibandingkan dengan
soft real-time ( SRTS ).
4. Interaktif Deadline (
Waktu Deadlinenya Bisa Ditawar )
Pada interaktif real-time,
maka waktu deadlinennya bisa ditawar, artinya tidak secara mutlak pada titik
tertentu, tetapi tergantung dari kesepakatan yang ditentukan dan fleksibel.
5. Probabilistic / Statistik
Metode ini biasanya
menggunakan teori probabilitas / teori kemungkinan dengan metoda statistik.
6. Intelligence RTS
Metode ini biasanya
menggunakan Expert Systems / Kecerdasan buatan / Artifial Inteligence atau
Kendali Cerdas.