Makalah Pemrosesan File dan Konsep Manajemen Data

PEMBAHASAN

1. Mengenal Berbagai Istilah
1.1 Field, Unsur Data, Atribut, dan Elemen-elemen
Istilah-istilah field, unsur data, atribut, dan elemen digunakan secara bergantian untuk menyebutkan blok data terkecil yang disimpan dan digunakan dalam sistem informasi. Contoh-contoh field adalah :
1.      nama pelanggan
2.      nomor tunjangan social karyawan
3.      nomor pesanan pembelian
Pengelompokan logis atas field disebut Catatan (record). Berikut ini adalah struktur catatan:
               NAMA-CATATAN (FIELD 1, FIELD 2, … , FIELD N)
NAMA-CATATAN adalah nama dari catatan, seperti misalnya PEMASOK atau KARYAWAN. Entri-entri merupakan nama field individual dalam catatan. Contohnya sebagai berikut:
PELANGGAN (NOMOR AKUN, NAMA, ALAMAT, SALDO REKENING)
PELANGGAN merupakan nama catatan, dan NOMOR AKUN, NAMA, ALAMAT, dan SALDO REKENING merupakan nama field.
1.2 Okurensi Data
Struktur catatan memiliki okurensi (occurrences), yang juga disebut instances. Okurensi catatan adalah himpunan spesifik nilai-nilai data untuk catatan. Sebagai contoh, untuk catatan
KARYAWAN (NAMA, NOMOR, USIA)
1.3 Panjang Catatan-Tetap dan Variabel

Catatan dengan panjang-tetap lebih mudah untuk dimanipulasi dalam aplikasi-aplikasi komputer dibandingkan dengan catatan dengan panjang-variabel karena ukuran catatan dengan panjang-tetap distandarkan. Sebagian besar catatan yang disimpan dalam direct access storage devices (DASDs) adalah catatan dengan panjang-tetap.
Tetapi, dalam catatan dengan panjang-variabel, lebar field dapat disesuaikan untuk setiap okurensi data. Lebih jauh, dalam catatan dengan panjang-variabel, jumlah aktual field dapat bervariasi dari satu okurensi ke lainnya.
Akhir sebuah variable-length record harus ditandai dengan sebuah symbol khusus atau field record-length yang berisi record itu sendiri. Variable-length record mampu menggunakan secara efisien ruang penyimpanan yang tersedia. Salah satu pendekatan dalam variable-length record yang tidak membutuhkan dukungan pemrograman system untuk struktur variable-lengthnya adalah dengan menggunakan fixed-length trailer record. Trailer record ialah sebuah ekstensi atau perluasan master record. Trailer record sendiri dapat ditulis dengan segera setelah sebuah master record selesai dikerjakan, misalnya master record biasanya hanya berisi informasi umum untuk seluruh rekening dan nomor tagihan yang cukup untuk seluruh rekening yang ada, sementara trailer record mampu memuat lebih banyak tagihan di dalamnya.
Terdapat dua alasan mengapa menggunakan variable-length record:
1.      Variable length karena panjang field yang variabel
Nama
Umur
Field lain
Nama
Umur
Field lain


2.      Variable length karena field yang berbeda
A
B
C
D
E
A
C
E
                                   

Terdapat dua metode untuk menentukan variable length:
1.      Menggunakan panjang field
2.      Menggunakan karakter akhir
Sebagai contoh, sebuah perusahaan manufaktur menyimpan ratusan komponen mesin sebagai persediaan bahan bakunya. Mereka membeli setiap komponen persediaan tersebut dari salah satu pemasoknya dan kemudian menyimpannya di salah satu gudangnya. Setiap komponen dapat dibeli dari satu atau lebih pemasok dan disimpan si satu atau lebih gudang perusahaan. Berikut field data yang berisi persediaan komponen mesin tersebut:
PART_NO                   nomor komponen mesin        
PNAME                      nama komponen mesin
TYPE                          jenis komponen mesin
COST                          biaya standar per unit komponen mesin
PVEND                       nama vendor darimana komponen mesin tersebut dibeli
WARSHE                   gudang tempat komponen mesin tersebut disimpan
LOC                            dua digit terakhir
Untuk kasus dua pemasok, diperlukan format record seperti berikut (misalkan hanya terdapat satu lokasi penyimpanan):
PART ( PART_NO,  PNAME,  TYPE,  COST,  PVEND#1,  WARSHE,  LOC#1,  PVEND#2, WARSHE#2,  LOC#1 ).
Record ini bahkan perlu lebih panjang lagi bila kemudian terdapat tiga pemasok sehingga panjang record akan tergantung pada jumlah pemasok dan lokasi penyimpanan untuk komponjen mesin. Record jenis tersebut akan menjadi variable-length record.
Variable-Length Record
NAMA RECORD
SUPPLIER
 (Repeated group 1)
LOCATION
(Repeated group 2)
PART (PARTJMO, PNAME, TYPE, COST,
PVEND # 01
PVEND # 02
PVEND # 03
PVEND # 04
·          
·          
·          
PVEND # 99
WARSHE # 01, LOG # 01
WARSHE # 02, LOG # 02
WARSHE # 03, LOG # 03
WARSHE # 04, LOG # 04
·          
·          
·          
WARSHE # 99, LOG # 99








Repeated Group adalah kelompok-kelompok field terkait yang berulang kali disimpan dalam variable-length record. Dalam beberapa kasus kita cukup menyebut repeated groups sebagai segmen atau kelompok, atau bahkan node. Segmen dapat diringkas dengan cara yang sama seperti record. Sebagai contoh:
PART  (PART_NO,  PNAME,  TYPE,  COST)
SUPPLIER (PVEND)
LOCATION (WARSHE, LOC)
Supplier dan location merupakan repeated groups yang menjadi milik part. PART digambarkan sebagai parent dari SUUPLIER dan LOCATION karena setiap instance PART dapat dilakukan di lebih dari satu pemasok atau lokasi. Jadi record dan segmen pada dasarnya adalah sama. Keduanya merupakan kumpulan field. Kenyataannya, tidak salah jika menganggap bahwa segmen adalah record selama ia tetap diingat sebagai segmen, yang walaupun tidak seperti record di mana segmen memiliki parent dan children.

1.4 Kunci Catatan dan Urutan File
Kunci atau kunci catatan merupakan unsur data atau kombinasi unsur data yang secara unik mengidentifikasikan catatan tertentu dalam file. Misalkan catatan berikut memuat format:
            PART (PART_NO, WARHSE),
dimana PART_NO merupakan nomor komponen, dan WARHSE merupakan nomor gudang yang berkaitan dengan lokasinya. Lebih jauh, asumsikan bahwa file memuat empat catatan berikut ini.
                        PART (101, 1)
                        PART (102, 2)
                        PART (103, 3)
                        PART (104, 4)
Dalam kasus ini, field pertama (PART_NO) disebut kunci sortir primer (atau disebut kunci primer), dan field kedua (WARHSE) disebut kunci sortir sekunder (atau kunci sekunder). Setiap tambahan field yang dibutuhkan untuk secara unik (khusus) mengidentifikasikan dan menyortir catatan disebut kunci-kunci sortir tersier. Oleh karena itu, kunci primer adalah field yang digunakan untuk menyortir catatan-catatan dalam file, dan kunci sekunder digunakan untuk menentukan posisi relatif antar kumpulan catatan manakala kunci primer memiliki nilai yang sama untuk setiap catatan-catatan dalam kumpulan.
Kita harus menandai field kunci dengan menggarisbawahinya. Sebagai contoh, KUANTITAS (QUANTITY) adalah field kunci untuk catatan berikut ini:
(PART (PART_NO, WARHSE, QUANTITY)
2. Evolusi Teknologi Database
Teknologi database berkembang sejalan dengan perkembangan perangkat keras dan perangkat lunak. Sejak tahun1960-an, sistem mainframe berpengaruh terhadap dunia usaha Amerika terutama dalam hal penyimpanan dan perkembangan pesat file data. Pembuatan jaringan dan teknologi komunikasi mengubah skala ekonomi pembuatan database.
2.1 Lingkungan mainframe
Pada mulanya, masalah utama berkaitan dengan jumlah file yang besar. Komputer dipandang sebagai pengembangan sederhana dari sebuah lemari arsip, dan maslah utamanya adalah pembuatan katalog dan akses file

2.2 Sistem manajemen database
Lama kelamaan,perusahaan menghadapi masalah sistem file sederhana. Kesulitan utama termasuk menemukan file yang tepat untuk informasi yang dibutuhkan, pemborosan karena duplikasi data yang sama dengan file yang berbeda dan kurangnya standarisasi antar file. Maslah masalah ini berdampak pada pengembangan sistem menejemen database(DBMS) yang membuat standar penyimpanan,manipulasi, dan pemanggilan data. Dalam dunia usaha sekarang ini, DBMS memiliki peran yang penting dalam pengelolaan informasi.

2.3 Layanan informasi on-line
Salah satu layanan database tersambung (on-line) terbesar adalah Dialog. Databasenya mencakup informasi hampir semua topik yang penting dan mencakup keseluruhan teks dan abstraksi dari banyak surat kabar,majalah,jurnalperdagangan,dan laporan-laporan ekonomi yang berkaitan dengan ribuan perusahaan diseluruh dunia. Banyak perusahaan mengumpulkan informasi dari layanan on-line yang harus dikaitkan secara sistematis dengan sistem informasi mereka.
2.4 Expert system
Sistem Ahli (expert system) membantu pengambilan keputusan tingkat tinggi dan telah sukses diterapkan dalam beberapa area seperti pengesahan pemberian pinjaman, penentuan dimana penggalian mineral dilakukan dan diagnosa pengobatan

2.5 Pemrograman berorientasi-obyek
Pemrograman berorientasi-obyek meliputi pendefinisian obyek-obyek dari daftar atau kumpulan informasi yang rumit. Hampir semua hal dapat menjadi obyek, seperti daftar komponen-komponen persdiaan,kelompok pelanggan atau bahkan kumpulan foto. Obyek yang dikaitkan dengan cara khusus disebut inheritansi, untuk mempermudah manipulasinya. Dalam sistem ini, para pemakai dapat mendefinisikan dan memanipulasikan obyek-obyek dari data tanpa perlu menuliskan program komputer

2.6 Sistem hiperteks
Sistem ini memungkinkan para pemakai untuk mengambil database dengan cara random melalui pemilihan kata-kata kunci. Misalkan pada layar monitor komputer anda membaca artikel ensiklopedia pengendalian intern, dalam bagian tengah artikel anda akan melihat ”lapping” dan anda memilih bagian mana yang ingin anda ketahui lebih jauh. Untuk melakukannya, anda hanya perlu meletakkan cursor pada ”lapping” dan memencet tuts enter. Secara otomatis layar monitor akan terbuka dan artikel pa lapping tersebut muncul seketika.

2.7 Sistem database intelijen
Sistem ini merefleksikan kecendrungan penggabungan seluruh teknologi-teknologi baru, termasuk yang paling mutakhir, ke dalam satu sistem database. Pemakai dengan mudah dapat menyerahkan  masalahya ke dalam sistem,kemudian sistem akan memilihkan data yang diperlukan, darimana data tersebut diambil, dan bagaimana menerapkannya untuk memecahkan masalah pemakai.
3. Sistem Manajemen Database Dan Arsitekturnya
Terdapat 3 tingkatan arsitektur yang relevan dengan database dan manajemen database : arsitektur tingkat konseptual, arsitektur tingkat logis, dan arsitektur tingkat fisik.

3.1 Arsitektur Konseptual
Tidak ada satu pun pendekatan standart untuk mengembangkan sebuah model data konseptual untuk sebuah system tertentu. Model data entity-relationship (E-R) merupakan salah satu pendekatan paling popular. Dalam model E-R istilah entitas lebih banyak digunakan daripada istilah segmen, dan istilkah atribut digunakan untuk menjelaskan field individual atau item data tertentu. Bila ditinjau secara grafis, model E-R menggunakan kotak segiempat untuk entitas, elips untuk atribut, dan kotak belah ketupat untuk menggambarkan hubungan/relasi.
Metode konseptual lainnya yang biasa digunakan yaitu teknik pemodelan berorientasi objek (OMT). Pekerjaan ini dilakukan dengan mengamati komponen-komponen dalam system yang sedang dibuat modelnya sebagai kelas-kelas objek. Dalam metode ini sebuah kelas objek adalah sebuah segmen dan sebuah objek adalah sebuah kejadian tertentu. Seperti halnya dalam model E-R, OMT menentukan hubungan antar segmen. Hal paling mendasar dalam hubungan ini disebut pewarisan. Hubungan pewarisan diciptakan ketika sebiuah kelas objek dibagi ke dalam subkelas. Sebagai contoh, sebuah kelas umum atau orangtua dapat berupa perlengkapan pabrik yang memiliki subkelas seperti perkakas, mesin berat, perlengkapan reparasi, dan sebagainya yang digambarkan berikut ini:
PLANT_EQUIPMENT  (ACCOUNT_NO,  COST,  DEPRECIATION)
Subkelasnya ialah sebagai berikut;
HEAVY_EQUIPMENT  (ACCOUNT_NO,  COST,  DEPRECIATION,  MAINTENANCE_FREQ,  DATE_PURCHASED)
dan
HAND_TOOLS  (ACCOUNT_NO,  COST,  DEPRECIATION,  USAGE).
Secara umum, subkelas memiliki seluruh atribut dari kelas orang tuanya ditambah dengan dengan atribut mereka sendiri.


3.2 Arsitektur Database pada Tingkat Logis : Struktur Database Logis
Tugas utama yang dihadapi oleh seorang analis ketika mendesain sebuah database adalah mengidentifikasi dan mendesain hubungan yang sistematis di antara setiap segmen. Hubungan yang timbul antara segmen-segmen dalam database ditentukan oleh struktur data logika, yang juga biasa disebut skema atau model database. Ada tiga model utama dalam struktur data logika, yaitu:
1.      Struktur Pohon atau Hierarkis
Struktur pohon adalah representasi langsung proses segmentasi. Pada sebuah struktur pohon, setiap lingkaran menunjukkan satu set field (atau segmen), setiap lingkaran terhubung ke lingkaran lain pada tingkatan berikutnya yang lebih tinggi dalam pohon tersebut. Tingkatan yang paling akhir disebut lingkaran parent. Setiap orang tua (parent) memiliki satu atau lebih children, dan hubungan antara anak dan orang tua disebut branch.
Tampilan penting dalam model pohon ini adalah sebuah lingkaran anak tidak dapat memiliki lebih dari satu orang tua. Model pohon digunakan pada struktur data yang didukung oleh COBOL dan program-program bahasa lainnya yang digunakan secara luas dan telah diimplementasikan pada banyak sistem manajemen database (DBMS) seperti IMS dan IDMS.
2.      Struktur Jaringan
Struktur jaringan adalah model yang memungkinkan sebuah segmen anak memiliki lebih dari satu orang tua. Beberapa DBMS tidak secara lansung menyediakan struktur jaringan, namun karena setiap struktur jaringan dapat diubah menjadi struktur pohon, maka dimungkinkan untuk mengimplementasikan struktur jaringan dalam sistem yang berorientasi pohon. Model CODASYL adalah sebuah model jaringan.
Terdapat beragam cara untuk mengimplementasikan struktur pohon dan jaringan. Hal ini termasuk penggunaan daftar dan penunjuk. Dalam sebuah daftar organisasi, setiap record berisi satu atau lebih petunjuk (field) yang mengindikasikan alamat record logis berikutnya dengan atribut-atribut yang sama. Sebuah record tagihan dapat berisi sebuah field yang berisi kunci tagihan lainnya dari vendor yang sama. Sebuah record dapat dipecah menjadi beberapa daftar. Daftar ini disebut organisasi multilist. Contohnya sebuah record pelanggan, dapat berisi beberapa penunjuk dalam sebuah record untuk menunjukkan record logis berikutnya, struktur logika dan fisik dapat sepenuhnya berbeda.
Struktur cincin berbeda dari struktur daftar dimana record terakhir dalam struktur cincin menunjuk kembali ke record yang pertama. Dan seluruh record dalam sebuah cincin dapat menunjuk kembali ataupun ke langkah seterusnya melalui penggunaan dan penyimpanan field tambahan. Dalam sebuah multiple-ring-structur, beberapa cincin melewati record-record individual.
Mendesain dan menyimpan struktur-struktur merupakan sesuatu yang kompleks, dan penunjuk-penunjuk biasanya membutuhkan tambahan ruang disket. Dan proses pemabaruan (updating) penunjuk diperlukan setiap waktu manakala sebuah record ditambahkan atau dihapus. Namun demikian, penggunaan penunjuk yang terkait dengan struktur hierarkis atau pohon seringkali merupakan pendekatan yang berguna dalam permodelan data, khusunya dalam kasus ketika record jarang ditambahkan atau dihapus.
Sistem hiperteks adalah sitem yang berbasis penunjuk (pointer-based system) yang memungkinkan pengguna untuk menjelajahi database secara acak dengan memilih beberapa kata atau objek kunci. Jaringan data semantik mirip dengan hiperteks. Perbedaannya adalah record lintas hubungan pada jaringan terbatas pada teks, sementara pada sistem hiperteks, lintas hubungan dapat memasukkan objek multimedia seperti foto dan bentuk grafis lainnya.
3.      Struktur Data Relasional
Model relasional memandang database sebagai sebuah kumpulan tabel dua dimensi daripada sebuah struktur jenis hierarkis atau jaringan. Esensi model relasional adalah merepresentasikan segmen-segmen dalam tabel.keunggulan struktur data ini dibandingkan pohon dan jaringan adalah penunjuk atau daftar tidak rumit. Dan setiap informasi yang dapat diekstrak dari struktur pohon atau jaringan dapat pula diekstrak dari tabel relasional. Model ini kurang efisien dibandingkan model pohon dan jaringan ketika database jarang diperbarui dan hubungan antar kode tidak dapat ditentukan dengan jelas.
Informasi dapat diekstrak dari tabel dengan menggunakan aljabar relasional, yang dapat diringkas dalam tiga operasi dasar yaitu:
·         Selection: berfungsi menciptakan sebuah tabel baru dari baris yang dipilih dalam tabel yang tersedia. Baris dipilih berdasarkan nilai data mereka.
·         Join: berfungsi menciptakan sebuah tabel baru dari baris yang dipilih dalam dua tabel yang tersedia. Baris dipilih berdasarkan nilai data mereka.
·         Projection: berfungsi menciptakan sebuah tabel baru dengan menghapus kolom dari tabel yang tersedia.
Aturan-aturan tertentu yang disebut bentuk normal menentukan pembuatan sebuah tabel. Proses penerapan aturan-aturan tersebut disebut normalisasi. Normalisasi menjadi penting karena tanpa hal tersebut, proses pembaruan entri-entri dalam tabel dapat menyebabkan permasalahan. Tujuan utama normalisasi adalah untuk menghapus proses duplikasi yang tidak perlu.
Langkah pertama dalam normalisasi adalah menciptakan sebuah tabel terpisah untuk setiap repeated group. Ada tiga bentuk normal, yaitu:
Ø  Bentuk normal pertama: mebagi tabel-tabel untuk menghapus repeated group.
Ø  Bentuk normal kedua: membagi tabel-tabel sehingga tidak adakunci yang menentukan nilai dari sebuah field non kunci.
Ø  Bentuk normal ketiga: membagi tabel-tabel sehingga tidak ada field non kunci yang menentukan nilai-nilai dari field non kunci lainnya.
3.3 Arsitektur Database pada Tingkat Fisik
Pembahasan arsitektur database tingkat fisik akan fokus pada ketiga metode akses file yaitu sekuensial, indeks, dan langsung. DASD mampu mendukung seluruh metode tersebut, dan pilihan yang terbaik dari ketiganya tergantung pada aplikasi.
1.      File Akses Sekunsial
Pada sebuah file akses sekuensial, record hanya dapat diakses dalam sekuens mereka  sebelumnya. Sekuens sebelumnya biasanya adalah sebuah hasil dari record yang telah diurutkan oleh beberapa kunci record. Pengorganisasian file sekuensial tidak menjadi sarana yang bermanfaat jika record yang perlu diakses hanya sedikit, padahal file berisi banyak record.
File sekuensial bermanfaat dalam pemrosesan bentuk batch, yang biasanya mengakses seluruh record dalam sebuah file. Prosedur yang biasanya dilakukan adalah, pertama mengurutkan transaksi dan file utama dalam kunci yang sama. Aplikasi ini dapat memperbarui piutang dagang pelanggan (dalam file master) untuk mencerminkan pembayaran yang diterima (dalam transaksi). Pertama, program akan mengurutkan kedua file dengan urutan kecil-besar berdasarkan nomor rekening. Kemudian, program membaca sebuah record dari setiap file. Jika nomor rekening dari kedua record tersebut cocok satu sama lain, maka informasi pada record pembayaran digunakan untuk memperbarui field neraca pada record piutang dagang. Proses pembaruan record seperti ini kemudian dituliskan dalam sebuah file master yang baru.
2.      File Berindeks
Setiap atribut dapat diekstrak dari record dalam sebuah file primer dan digunakan untukmembangun sebuah file baru yang bertujuan menyediakan sebuah indeks untuk file aslinya. Bentuk file seperti ini disebut file berindeks atau file terinversi. Sebuah file dikatakan terinversi penuh bila terdapat indeks di setiap field-nya. Waktu pemrosesan yang dibutuhkan untuk menyimpan sebuah file yang terisi penuh dapat menjadi lama karena indeks-indeks yang ada harus senantiasa diperbarui kapan saja record ditambah, dihapus, atau dimodifikasi. Lebih lanjut, setiap indeks memerlukan tambahan penyimpanan disket, dan disket yang dibuat dapat berakhir dengan kebutuhan ruang penyimpanan yang lebih besar daripada file data tersebut.
 3.      File Sekuensial Berindeks
File sekuensial berindeks adalah sebuah file sekuensial yang disimpan dalam sebuah DASD dan diberi indeks serta disimpan secara fisik dalam field yang sama. File-file tersebut  biasa disebut ISAM, yaitu singkatan dari indexed-sequnetial access method. ISAM merupakan kompromi antara organisasi file sekuensial dan akses langsung, yang menyediakan kedua kemampuan tersebut dengan biaya yang sesuai.
Pemrosesan dan inkuiri merupakan tujuan ISAM. Pemrosesan sebuah batch record dapat dilakukan secara sekuens, sementara inkuiri individual pada sebuah file dapat dilakukan dengan menggunakan indeks. Makin detail sebuah indeks, makin cepat akses yang dilakukan; sebuah imbal balik dalam penyimpanan indeks.

4. Struktur File ISAM
     Secara struktural terdiri atas tiga daerah yang berbeda yaitu:
           4.1    Indeks
     Indeks merupakan sebuah peta yang menghubungkan record field-field kunci dengan   tempat penyimpanannya di bidang utama. Tiap entri dalam indeks memberikan rentang field-field  kunci pada sebuah track tertentu dari disk tempat file tersebut disimpan. Dengan mencari indeksnya, sebuah program akan dapat menempatkan trak yang berisi record sesuai keinginan. Walaupun track ini harus dicari secara sekuensial, pencarian ini berlangsung sangat cepat.
       4.2 Bidang Utama
            Bidang Utama (prime area) adalah bagian dalam disket tempat record aktual ditulis.
              4.3  Bidang overflow
Bidang overflow adalah bagian terpisah dalam disket yang dialokasikan untuk file guna      memungkinkan adanya penambahan tanpa pemrosesan lebih lanjut terhadap file awal. Bidang ini pada dasarnya kosong. Ketika sebuah record baru ditambahkan ke dalam file, record tersebut ditempatkan dalam posisinya di bidang utama untuk menjaga pengorganisasian sekuensial dari file tersebut. Record-record yang berada dalam bidang utama harus dipampatkan (bumped) guna memberi ruang bagi record yang baru. Jika tersedia cukup ruang dalam track tempat record harus dimasukkan dan record lain dalam track tersebut akan dipindahkan. Dalam hal ini, record yang dimampatkan dipindah ke bidang overflow. Namun demikian, record yang berada di bidang overflow masih dapat diakses dalam sekuens kuncinya dengan menggunakan indeks karena secara fisik kunci sekuensnya tidak berada di bidang overflow. Jika record tersebut tidak ditemukan dalam track yang ditunjukkan dalm indeks, bidang overflow akan diperiksa secara sekuensial sampai record tersebut ditemukan. Hal ini akan memperpanjang waktu yang diperlukan untuk memproses sebuah file ISAM. Oleh karena itu sebuah file ISAM harus secara berkala direorganisasi untuk dapat mengakses dengan lebih efisien. Reorganisasi terdiri atas menggabung dan mengatur seluruh record sehingga file tersebut dapat diurutkan secara sekuensial di bidang utama.

5. File Akses Langsung
File akses langsung memungkinkan record secara individual dimunculkan dengan segera tanpa menggunakan indeks. Hal ini dilakukan dengan menempatkan tiap record dengan lokasi penyimpanan yang menyediakan hubungan dengan nilai record kunci. Oleh karena itu, dengan metode akses langsung, satu hal yang dibutuhkan untuk menempatkan sebuah record hanyalah nilai kuncinya.
Beberapa metode penempatan yang dapat digunakan untuk menyimpan dan menempatkan record dalam file akses-langsung:
                  a.       Transformasi acak
b.      Metode terkait (related method)  yang digunakan untuk menyimpan    alamat fisik media simpan sebagai sebuah field dalam sebuah file record.
      c.       Menempatkan field record kunci langsung dengan skema pengkodean yang digunakan oleh komputer itu sendiri untuk mngidentifikasi alamat fisiknya dalam sebuah DASD.

Namun demikian metode (b) dan (c) tidak digunakan secara luas karena alamat lokasi penyimpanan jarang yang cocok dengan pengidentifikasi record, dan masalah keamanan dan menejemen sistem sering diasosiasikan dengan kondisi bahwa pengguna mengetahui lokasi penyimpanan file aktual.

Kebanyakan sistem file akses-langsung mengubah sebuah kunci kedalam alamat lokasi penyimpanan dengan menggunakan entah sebuah indeks (tabel) atau transformasi acak. Ini berarti dimungkinkan untuk mengakses setiap record dalam disket dengan sama cepatnya dengan yang diberikan oleh nilai kuncinya. Nilai kunci dikonversi ke dalam sebuah disket alamat dan record diakses langsung tanpa perlu mencari lagi.

6. Aspek Ekonomis pada Teknik Pengorganisasian File

Teknik-Teknik Pengorganisasian File
Waktu Terbaik untuk Menggunakannya
Keterbatasan
Sekuensial
Rasio aktivitas tinggi, seperti dalam pemrosesan batch
Tidak memungkinkan untuk mengakses secepat record tunggal
Indeks
Rasio aktivitas rendah, untuk ukuran file menengah sampai besar
Pembaharuan file menggunakan indeks
Indeks - Sekuensial
File perlu diprosesdalam batch (rasio aktivitas tinggi) dan non batch (rasio aktivitas rendah)
Sama seperti indeks dan sekuensial
Langsung
Rasio aktivitas rendah, file-file berukuran besar, jaringan dan pohon
Butuh kunci untuk menempatkan record

Pertimbangan ekonomis yang paling mendasar dalam pemrosesan file ditentukan sepenuhnya oleh :
a.       Rasio aktivitas yaitu jumlah record yang diakses dibagi dengan jumlah record dalam suatu file.
                   b.      Waktu respons yang diinginkan untuk pemrosesan dan penempatan.
Berkaitan dengan database, waktu respon adalah lama waktu yang harus dihabiskan oleh pengguna untuk menyelesaikan sebuah operasi, misal sebuah query. File-file akses-langsung dibutuhkan untuk waktu respon yang sangat cepat karena waktu respon yang lebih lama dapat ditangani dengan lebih ekonomis dengan menggunakan file-file yang bersifat sekuensial. Ketika lama waktu respon dapat ditoleransi, pembaharuan query atau file dapat disatukan dengan operasi pemrosesan batch.

7. Arsitektur Fisik, Perangkat Keras dan Waktu Respons
Waktu respon dapat menjadi sebuah permasalahan besar pada database besar yang mungkin diakses oleh ratusan atau bahkan ribuan pengguna pada saat yang sama. Jika sistem database dan perangkat keras komputer tidak sesuai dengan permintaan, maka pengguna akan menunggu dengan sia-sia dalam waktu yang lama untuk query mereka. Oleh karena itu, sistem database harus didesain dengan baik bagi penggunanya, dan perangkat keras harus cukup cepat untuk mengerjakan semua pekerjaan yang diminta.
Pada sisi perangkat keras, waktu respon dipengaruhi oleh waktu akses fisik yaitu waktu yang dibutuhkan oleh CPU untuk memunculkan sebuah blok data tunggal dari disket yang disebut Disk Access Time. Salah satu masalahnya adalah CPU beroperasi jauh lebih cepat dari yang dilakukan disket sehingga CPU harus menunggu sesaat sementara operasi input/output disket sedang dijalankan. Hal ini berarti bila mampu meminimalisasi input dan output disket, dalam beberapa kasus dapat meningkatkan waktu respons yang cukup tinggi. Faktor lainnya yang dapat mempengaruhi waktu respons  adalah bagaimana record data dapat didistribusikan secara fisik dalam disket.
Pada hardisk data yang berada di track atau silinder yang sama dapat diakses tanpa perlu berpindah ketika membaca/menulis di atasnya. Hal ini berarti dalam beberapa kasus dimunkinkan untuk meningkatkan kecepatan sebuah aplikasi database dengan menyimpan record-record dalam sebuah file data secara berdekatan di satu atau lebih silinder disket.
Kebutuhan untuk menyimpan sebuah file secara berdekatan tergantung pada arsitektur fisik database dan berkaitan dengan metode akses filenya. Jika database menggunakan metode akses sekuensial, maka penempatan setiap record secara fisik berdekatan sama lain dalam disket tentunya sesuatu yang diinginkan. Akan tetapi untuk metode akses-berindeks, selalu perlu untuk menempatkan  indeks-indeks dalam penyimpanan yang berdekatan karena file-file tersebut sering dibaca secara sekuens dan secara keseluruhan pada saat yang bersamaan. Namun demikian mungkin tidak perlu menempatkan record dalam file data yang terkait sedekat mungkin satu sama lain dalam disket karena record file tersebut diakses secara acak dalam dua tahap proses pencarian.

8. SISTEM MANAJEMEN DATABASE DAN DATABASE DALAM PRAKTIK
     Apa yang Dilakukan Sistem Manajemen Database
     ·      Sistem manajemen database (DBMS) adalah program komputer yang memampukan seorang pengguna untuk menciptakan dan memperbaruhi file-file, menyeleksi dan memunculkan kembali data dan menghasilkan beragam output dan laporan-laporan. DBMS memiliki tiga atribut untuk mengelola dan mengorganisasi data, yaitu:
           1.      Data description language (DDL)
            DDL memungkinkan administrator database (DBA) untuk menentukan struktur logika database yang disebut skema. Hal-hal yang perlu ditentukan ketika menentukan skema:
                  -          Nama elemen data
      -          Jenis data (numerik, alfabetik, tanggal,dll) dan posisi jumlah angka desimal jika data tersebut bersifat numerik
                  -          Posisi angka (misalnya sembilan posisi untuk Nomor Jaminan Sosial)
DDL juga dapat digunakan untuk menentukan subskema, yaitu jumlah pengguna individual database selain itu untuk menciptakan, memodifikasi dan menghapus tabel-tabel dalam pengaturan relasional
           2.      Data manipulation language (DML)
DML terdiri atas perintah-perintah untuk melakukan pembaruan (updating), pengeditan, manipulasi, dan ekstraksi data. Dalam banyak kasus pengguna tidak perlu tahu atau menggunakan DML. Namun demikian program aplikasi secara otomatis menghasilkan laporan DML untuk memenuhi permintaan pengguna.
     3.         Data query language (DQL)
            DQL adalah bahasa atau antar muka yang ramah pengguna (user-friendly) yang memungkinkan bagi pengguna untuk meminta informasi dari database. Salah satu antarmuka yang friendly ini adalah QBE (query by example) yang memungkinkan bagi pengguna untuk meminta informasi hanya dengan mengisi tempat-tempat yang kosong.

SQL Data Manipulation Language
Structured Query Language (SQL) adalah teknologi yang digunakan untuk memunculkan informasi dari database. SQL merupakan bahasa pemrograman nonprosedural. Bahasa ini memungkinkan penggunanya untuk fokus pada  menentukan data apa yang dibutuhkan ketimbang pada bagaimana mendapatkan data tersebut.
Empat bentuk pernytaan DML (data manipulation language) yang merupakan komponen SQL adalah:
1.      SELECT  : Memunculkan baris tabel
2.      UPDATE  : Memodifikasi baris tabel
3.      DELETE  : Memindahkan baris dari tabel
4.      INSERT   : Menambahkan baris baru pada tabel


Queri SELECT
SELECT biasanya adalah kalimat pertama dalam pernyataan SQL yang dimaksudkan untuk mengekstrak data dari sebuah database. SELECT menentukan field-field mana saja (misal item-item dalam sebuah database) atau ekspresi-ekspresi dalam field  yang ingin anda munculkan. Klausa FROM mengidentifikasikan tabel mana yang berisi item-item tersebut. FROM diperlukan dan mnegikuti SELECT.
·         SELECT Everything
Tanda * adalah karakter queri khusus yang mencerminkan “seluruh field”. Queri ini memilih seluruh field dari tabel kata kunci.
SELECT * FROM kata kunci
·          SELECT Field
SELECT (memilih) field tertntu (misal item) berdasarkan nama. Jika anda ingin memasukan lebih dari satu item, pisahkan item-ietm tersebut dengan koma. Urutkan item-item yang  anda ingin unutk dimunculkan.
SELECT nama, negara, mata uang FROM perusahaan
·          ORDER BY
ORDER BY mengurutkan tampilan data dalam urutan tertentu berdasarkan klausa. ORDER BY adalah opsional. Jika anda tidak memasukkannya, data yang muncul tidak akan urut. Default urutan yang digunakan adalah kecil-besar (A-Z, 0-9).
Queri ini menambahkan ORDER BY klausa nama untuk queri sebelumnya. SELECT nama, negara,  mata uang FROM perusahaan ORDER BY nama.
Anda dapat menentukannya dalam urutan kecil-besar untuk item dengan memasukan kata kunci ASC pada akhir item ada. Untuk mengurutkan sebaliknya (Z-A, 9-0), tambahkan DESC setelah item data yang anda ingin untuk diurutkan secara besar-kecil.
·         WHERE Condition
Anda dapat menggunakan WHERE untuk menentukan record mana saja dari tabel yang tercantum dalam klausa FROM yang akan muncul dalam hasil pernyataan SELECT. WHERE adalah opsional, namun bila dimasukan. Ia akan mnegikuti FROM. Jika anda tidak memasukan WHERE, seluruh record akan dipilih.
·         String Functions
Pernyataan SQL berikut ini mengilustrasikan sebuah pencarian kata. Kata goodwill akan dicari dalam field Notes. Topic.
SELECT * FROM notes
WHERE Instr (1, topic, “ goodwill”) > 0
Fungsi Instr akan mencari sebuah filed khusus (“topic” dalam queri) untuk sebuah deret (  string) karakter tertentu yang ada dalam kutipan (“goodwill”) dengan mulai pada posisi tertentu dalam field (1 mengindikasikan posisi pertama, awal, dan string).
Fungsi lainnya dari string meliputi:
ü  Left$ (string, length): string adalah ekspresi dari mana karakter paling kiri berasal. Length adalah jumlah karakter untuk kembali.
ü Right$ (string, length): string adalah ekspresi dari mana karakter paling kanan berasal. Length adalah jumlah karakter untuk kembali.
·      Arithmetic Expression
SQL memungkinkan ekspresi aritmatika untuk dimasukan dalam klausa SELECT. Ekspresi aritmatika terdiri dari sejumlah nama kolom dan nilai-nilai yang terhubung dengan setiap operator berikut ini:
+   Tambah
-          Kurang
*    Kali
/     Bagi
Ketika dimasukkan dalam klausa SELECT, hasil sebuah ekspresi akan ditampilkan sebagai sebuah kolom tabel perhitungan.
            SELECT title, year1, year2, (year1-year2) as dif
            FROM [balance sheet]
            WHERE company = “01”
            ORDER BY position
·       Operator Pembanding
setiap operator pembanding berikut ini dapat digunakan:
=          Sama dengan
<>        tidak sama dengan
>          lebih besar dari
<          lebih kecil dari
>=        lebih besar sama dengan
<=        lebih kecil sama dengan
·       Menyesuaikan Sebuah Nilai dalam Sebuah Daftar
Operator IN memungkinkan pemilihan baris dengan sebuah nilai kolom yang sesuai dengan setiap nilai dalam sebuah rangkaian nilai.
SELECT  * FROM company
WHERE company IN (“01”, “22”, “35”)
·       Ekspresi Majemuk dengan Operator Boolean
Ekspresi logika individu dapat dikombinasikan dalam sbuah klausa WHERE dengan operator Boolean:
AND
OR
·       Fungsi Agregat
anda dapat memilih sejumlah nilai yang dihitung dengan fungsi agregat. Fungsi COUNT (*) AS tally mengilustrasikan bagaimana menghitung jumlah occurrence dalam sebuah tabel hasil dan nama hasil (AS tally).
SELECT COUNT (*) AS tally FROM keyword
Klausa AS tally memberikan fungsi agregat dengan nama “tally”, yang akan digunakan dalam laporan. Klausa AS bersifat pilihan atau opsional dengan fungsi agregat.
·       GROUP BY  
mengombinasikan record-record dengan nilai-nilai identik dalam daftar field tertentu ke dalam sebuah record tunggal. Nilai ringkasan (summary value) dibuat untuk setiap daftar record jika anda memasukan sebuah fungsi agregat, seperti SUM atau COUNT, dalam pernyataan SELECT. Jika pernyataan SQL memasukan klausa WHERE, record akan dikelompokan setelah mengaplikasikan kondisi WHERE kedalam record. GROUP  BY bersifat pilihan, namun ketika ia dimasukan, GROUP BY akan mengikuti FROM dan WHERE. Nilai-nilai ringkasan akan dihilangkan bila tidak terdapat fungsi agregat dalam pernyataan SELECT. Contoh berikut ini meringkas penghitungan perusahaan berdasarkan negara.
SELECT company. Country, count (company. country) AS tally FROM company GROUP BY company. Country
·         Inner Join
Mengombinasikan field-field dari beberapa tabel. Contoh berikut ini memasukan nama perusahaan untuk perusahaan 15 untuk setiap topiknya dalam tabel notes.
            SELECT company. Nama, notes. Topic
            FROM company INNER JOIN notes
            ON Company. Company = notes. Company
            WHERE company. Company = “20”
·         Nested Queries
Seseorang dapat menentukan sebuah queri dalam klausa WHERE yang dijalankan sebelum queri yang berada di luar menghasilkan satu atau lebih baris yang kemudian dibandingkan dengan baris yang dihasilkan oleh queri yang berada diluar. Contoh berikut ini menemukan nama perusahaan yang memiliki kod SIC Max (yang paling besar).
            SELECT name
            FROM Company
            WHERE SIC = (SELECT MAC (SIC) FROM Company)
            Perhatikan bahwa nested query SELECT MAX (SIC) FROM company berada dalam 
            Tanda kurung.
·         Queri UPDATE, INSERT, dan DELETE
Jenis query ini digunakan untuk memodifikasi sebuah database. 
Pernyataan UPDATE terdiri atas 3 klausa yaitu:
1)      UPDATE tablename
2)      SET column-  assignmen- list
3)      WHERE conditional – expression
Dalam SET, column – assigment- list memasukkan kolom-kolom yang telah diperbarui dan nilai-nilai yang di - set dan mengambil bentuk kolom- nama1 = nilai 1, kolom- nama2 = nilai 2,... klausa WHERE bersifat pilihan. Bila digunakan, klausa WHERE menentukan sebuah kondisi untuk UPDATE untuk menguji kapan memroses setiap baris dalam tabel.
Bentuk umum pernyataan DELETE  terdiri atas 2 yaitu:
1)      DELETE FROM tablename
2)      WHERE conditional – expression
Pernyataan DELETE menghapus baris-baris dari tablename yang memenuhi kondisi yang ditentukan dalam klausa WHERE.
Pernyataan INSERT memiliki 2 bentuk umum. Bentuk yang paling sederhana digunakan untuk memasukan sebuah baris tunggal dalam sebuah tabel.
1)      INSERT INTO tablename
2)      VALUES (constant - list)
Pernyataan INSERT juga dapat digunakan bersamaan dengan sebuah queri pernyataan SELECT untuk menyalin baris suatu tabel lainnya.
8.1 Perlunya Sistem Manajemen Database
DBMS mengintegrasikan, menstandarisasi, dan menyediakan keamanaan unutk beragam aplikasi akuntansi. Bila tidak terdapat integrasi, tiap-tiap jenis aplikasi akuntansi sperti penjualan, pembayaran gaji, dan piutang akan menyimpan terpisah file-file independen dan program komputer untuk mengelola file-file tersebut.Kelemahan-kelemahan DBMS antara lain yaitu:
1)      Item data yang sama dapat digunakan dalam beberapa bidang aplikasi yang berbeda dengan file-file independen, item data harus dimasukan kedalam setiap file aplikasi. Misalnya sebuah penjualan memengaruhi file persediaan, file piutang dagang, dan beragam file pendapatan dan pengeluaran. Memasukan elemen data yang sama berkali-kali (sekali untuk tiap aplikasi yang digunakan di dalamnya) merupakan pemborosan waktu yang mahal, dan makin besar peluang terjadiinya kesalahan dan ketidak-konsistenan di antara beragam representasi bagian-bagian data dalam beberapa file independen.
2)      Karena file harus dengan tegas ditentukan terlebih dahulu dalam proses implementasi sistem, prosedur yang ada dapat menemui kendala dengan adanya struktur file yang ada saat ini dibanding pengembangan kebutuhan aplikasi. Hasil dari ketidak-konsisten data adalah inkonsistensi laporan yang dihasilkan dari beragam program aplikasi. Permasalahan seperti ini tentu saja memperlemah integritas sebuah sistem informasi.
Selain masalah manajemen data dan pnyimpanan, setiap file independen membutuhkan instruksi pemrosesan dan penyimpanannya sendiri karena isis dan struktur filenya tidak terstandarisasi. Kemampuan yang berhubungan dengan informasi non kunci dibatasi karena setiap aplikasi program individual harus menentukan instruksi rinci yang berhubungan dengan penenganan fisik data.

8.2 Independensi Data
Solusi untuk masalah penyimpanan file-file independen terletak pada pemisahan secara fisik penanganan data dari penggunaan logis file-file tersebut. Hal ini menuntut 2 perubahan mendasar, pertama penyimpanan data terintigrasi dalam suatu database tunggal, dan kedua seluruh akses untuk file (database) yang terintegrasi ini dilakukan melalui suatu sistem perangkat lunak tunggal yang didesain untuk mengelola aspek-aspek fisik penanganan dan penyimpanan data. Hal tersebut merupakan karakteristik penting dalam pendekatan database terhadap pemrosesan data.
Kata file kehilangan artinya dalam lingkungan database. Sebuah file utama tunggal dapat dibagi kedalam sejumlah file subsistem, dan file-file tersebut dikombinasikan dan dikombinasikan ulang kedalam sejumlah file lainnya. Perangkat lunak database memisahkan aspek fisik dan logika penggunaan file, hal ini membuka spektrum luas kemampuan pemrosesan informasi yang tidak akan dapat dilakukan tanpa perangkat lunak tertentu.
Gambar 12.21 mengilustrasikan konsep-konsep tersebut dalam dua file aplikasi independen, yang setiap file berisi empat field per recordnya. Dapat dilihat bahwa dua item data X dan Y, adalah  umum untuk kedua file. Di bawah file-file tersebut adalah sebuah database sebuah file tunggal yang berisi seluruh informasi penting yang sebelumnya ditemukan dua file independen. File database ini terstruktur dan dikelola oleh sebuah DBMS. Berdasar permintaan program, DBMS menyusun file-file aplikasi logis (subskema) melalui sebuah file kamus database. Kamus database adalah kumpulan seluruh nama itm data dalam sbuah database, bersama dengan sebuah deskripsi bentuk representasi standar data tersebut (misal ukurannya, jenis data-numerik, alfabetik, dll) kamus database ditentukan dan dikendalikan oleh administrator database.
File logika 1 dan 2 (lihat gambar 12.21) adaah bentuk file sementara oleh DBMS digunakan untuk aplikasi satu dan dua. Pada saat penyelesaian pemrosesan, nilai-nilai yang telah diperbaharui dalam file-file logika akan disalin ke dalam database bentuk fisik aktualnya. File logika 3 merupakan sebuah file yang baru diciptakan untuk penggunaan nonrutin tertentu, seperti sebuah queri atau sebuah analisis data akuntansi tertentu. Kemampuan untuk membentuk file-file khusus tersebut dengan cepat dan efisien adaah keunggulan utama DBMS. Kemampuan ini tersedia melalui penyimpanan DBMS akan file-file inversi,daftar,cincin,dan struktur data lainnya yang didesain untuk memfasilitasi pemunculan kembali informasi oleh pengguna.

8.3 Keamanan
Keunggulan DBMS lainnya adalah kemampuan memberikan kode keamanan  untuk item data dan atribut-atribut pemrosesannya. Salah satu bagian file kamus data berisi sebuah daftar pengguna sistem terotorisasi dan kode akses dan keamanan. Masing-masing elemen data unik dalam gambar 12.21 dapat berupa kode prioritas numerik. Kode-kode tersebut akan menentukan item data yang menentukan pemrosesan yang dapat digunakan oleh pengguna untuk setiap item data.
8.4 Dokumentasi dan Administrasi database
Kamus database digunakan baik terpisah maupun dengan DBMS untuk mensentralisasi,mendokumentasi, mengontrol, dan mengoordinasi penggunaan data dalam sebuah organsisasi. Kamus data merupakan sebuah urutan file yang memiliki catatan occurrence yang berisi deskripsi item data.
Item-item Pada Data Dictionary Occurrence
Spesifikasi
·       Nama
·       Definisi
·       Alias

Karakteristik
·       Ukuran
·       Rentang nilai
·       Pengkodean
·       Editing data

Utilisasi
     Pemilik
        Di mana digunakan
     Kode keamanan
Diperbarui terakhir kali
Sebuah alias  muncul ketika para pengguna yang berbeda menggunakan field yang sama, namun memiliki nama yang berbeda. Sebagai contaoh, sebuah gudang dapat dipanggil oleh penjualan dengan nama “Order Number”. Alias juga muncul disebabkan item data yang sama disebut sebagai hal yang berbeda oleh program-program yang berbeda, dalam bahasa yang berbeda, oleh para pembuat program yang berbeda pula. Penggkodean (encoding) merujuk kepada bentuk fisik item data yang akan disimpulkan dalam BCD atau EBDIC. Pemilik (owner) merujuk kepada pengguna yang memiliki tanggung jawab akhir atau kepentingan utama berkenaan dengan integritas occurrence sebuah item data.
Tujuan utama sebuah kamus data adalah mengurangi atau paling tidak mengawasi inkosistensi penggunaan yang dihasilkan dari pemrosesan alias dan mengurangi kelebihan data sejauh mungkin. Tanggung jawab untuk kamus data harus disentralisasikan pada seorang administrator database (DBA). Administrasi database bertanggung jawab menanggulangi ketidak cocokan dan maslah koordinasi dan komunikasi antara kelompok-kelompok pengguna ketika memakai brsama sebuah database. Tugas utama DBA adalah menetapkan standar, konvensi, dan dokumentasi sumber-sumber data. Administrasi kamus  data merupakan alat utama yang digunakan DBA untuk melaksanakan tugas tersebut. Pengawasan data yang efektif merupakan pendekatan database yang paling penting untuk pemrosesan data. Ketidak cocokan (inkompatibilitas) dan redundansi senantiasa ada dalam sebuah sistem berorientasi file yang tradisional, yang didalamnya para pengguna menyimpan dan memproses file data miliknya.
Kamus data dapat dikelola secara manual, namun biasanya ia terkomputerisasi dan diproses seperti halnya file-file komputer lainnya. Jika kamus digunakan bersama-sama dengan sebuah DBMS, ia akan disimpan dalam DBMS.    



DAFTAR ISI
v

Comments

Popular posts from this blog

Visi dan Misi Perusahaan Besar di Indonesia

Balanced Scorecard: SISTEM MANAJEMEN KINERJA

Audit Siklus Pendapatan