BAB 2 LANDASAN TEORI
|
|
- Lanny Hartanto
- 7 tahun lalu
- Tontonan:
Transkripsi
1 8 BAB 2 LANDASAN TEORI 2.1 Basis Data Basis data merupakan sekumpulan data yang besar dan saling terhubung yang dapat digunakan secara bersamaan oleh banyak departemen dan pengguna. Basis data berisi data operasional dan mengandung deskripsi data. Basis data disebut sebagai gabungan data yang merupakan kumpulan penjelasan tentang dirinya sendiri. Deskripsi dari data merupakan system catalog (kamus data atau meta-data, yaitu informasi data mengenai data itu sendiri) (Connolly, 2002, p14). Basis data adalah sekumpulan dari data yang tetap yang digunakan oleh sistem aplikasi dari perusahaan. Perusahaan mungkin berupa individu tunggal (dengan basis data perseorangan yang kecil), atau perusahaan besar (dengan basis data besar yang bersifat sharing), atau di antara keduanya (Date, 2000, p10). Dalam arsitektur sistem basis data terdiri dari tiga level, yaitu level external, level conceptual, dan level internal. Level external mempunyai beberapa skema eksternal atau user view. Tiap skema menggambarkan bagian dari basis data yang dapat menampilkan dan menyembunyikan sebagian data dari pengguna. Level conceptual mempunyai skema konseptual, yang menggambarkan keseluruhan basis data untuk komunitas pengguna. Skema konseptual menyembunyikan detil dari struktur penyimpanan physical dan berpusat dalam menggambarkan entitas, tipe data, hubungan, operasi dan batasan. Level internal mempunyai skema internal, yang menggambarkan struktur penyimpanan physical
2 9 dalam basis data. Skema internal menggambarkan secara lengkap detil penyimpanan data dan akses ke basis data. (Elmasri, 2000, p27). Internal view, yang digambarkan oleh skema internal, mendefinisikan bermacam-macam tipe baris dan juga indeks yang tersedia, bagaimana menampilkan data yang disimpan, urutan baris disimpan dalam physical storage (Date, 2000, p40). 2.2 Relational Database Relational database berdasarkan dari relational model dan menggunakan kumpulan tabel untuk menggambarkan baik data maupun hubungan yang ada di antara data (Silbreschatz, 2006, p11). Dalam buku Elmasri dituliskan bahwa relational model pertama kali diperkenalkan oleh Ted Codd dari IBM Research tahun 1970 dalam sebuah karya ilmiah, dan menarik perhatian karena kesederhanaan dan landasan matematikanya. Model ini menggunakan konsep dari sebuah relasi matematika yang melihat nilai dari sebuah tabel sebagai dasar dari kumpulan data dan mempunyai dasar teori dalam set dan logika pengurutan. Relational model merepresentasikan sebuah basis data sebagai kumpulan relasi. Setiap relasi merupakan tabel atau sebuah flat file dari baris-baris yang ada. Ketika sebuah relasi dibayangkan seperti sebuah tabel, tiap baris dalam tabel merepresentasikan sebuah kumpulan data yang terhubung. Dalam terminologi formal relational model, sebuah baris disebut tuple, sebuah header kolom disebut atribut, dan tabel disebut sebuah relasi. Tipe data yang menjelaskan nilai yang dapat dimunculkan pada tiap kolom disebut domain (Elmasri, 2000, p196).
3 Struktur Data Relational Dalam Connolly (2002, p72-74) ditulis bahwa struktur data relational terdiri dari: Relasi Suatu relasi adalah sebuah tabel dengan kolom-kolom dan baris-baris. Atribut Suatu atribut adalah sebuah nama kolom dari suatu relasi. Domain Sebuah domain merupakan sekumpulan nilai-nilai yang diperbolehkan bagi satu atau lebih atribut. Tuple Tuple merupakan sebuah baris dari sebuah relasi. Derajat (degree) Derajat dari suatu relasi adalah sejumlah atribut yang terkandung di dalamnya. Kardinalitas (cardinality) Kardinalitas dari sebuah relasi adalah sejumlah tuple yang terkandung di dalamnya. Relasi Basis Data Suatu koleksi dari sejumlah relasi normalisasi dengan nama-nama relasi yang jelas.
4 Domain, Atribut, Tuple dan Relasi Sebuah domain adalah sebuah set dari nilai yang atomik. Atomik berarti tidak dapat dipisahkan sejauh yang dibutuhkan oleh relational model. Salah satu metode untuk menjelaskan sebuah domain adalah dengan menjelaskan tipe data dari data yang membentuk domain tersebut. Selain itu, memberikan nama sebuah domain juga berguna untuk membantu menjelaskan nilai yang ada didalamnya. Contoh: Nama : sebuah set nama-nama orang No_Telp : sebuah set nomor telepon yang panjangnya 10 digit angka dimana terkandung kode area di dalamnya Bentuk ini disebut definisi logikal dari domain. Tipe data atau format juga dijelaskan untuk setiap domain. Sebuah skema relasi, yang digambarkan dengan R (A 1, A 2,..., A n ), terdiri dari sebuah nama relasi R dan sebuah daftar atribut A 1, A 2,..., A n yang berguna untuk menjelaskan sebuah relasi. Setiap atribut A i merupakan nama dari sebuah aturan untuk beberapa domain D dalam skema relasi R. D disebut domain dari A i dan digambarkan dengan dom (A i ). Sebuah skema relasi digunakan untuk menggambarkan sebuah relasi. Degree dari sebuah relasi adalah jumlah atribut yang dimiliki skema relasi. Sebuah relasi r dari skema relasi R (A 1, A 2,..., A n ), juga digambarkan dengan r(r), yang merupakan sebuah bentuk dari n-tuples r = {t 1, t 2,... t m }. Setiap n-tuple adalah daftar yang terurut dari n nilai r = < v 1, v 2,... v m >, di mana setiap nilai v i, 1 i n, yang merupakan elemen dari
5 12 dom (A i ) atau merupakan nilai null. Nilai yang ke-i, yang berhubungan dengan atribut A i digambarkan dengan t[a i ] (Elmasri, 2000, p197-p198) Karakteristik Relasi Definisi awal relasi adalah karakteristik tertentu yang membuat sebuah relasi menjadi berbeda dengan sebuah file maupun sebuah tabel. Karakteristik relasi sebagai berikut: Tuple-tuple dalam sebuah relasi tidak diurutkan Pengurutan atribut dalam sebuah skema relasi dan juga pengurutan nilai dalam sebuah tuple Sebuah alternatif definisi relasi yang diberikan tidak membutuhkan dua kali pengurutan, tapi dengan menggunakan definisi pertama yang membutuhkan atribut dan nilai tuple terurut saat dibutuhkan (Elmasri, 2000, p199) Entity Integrity, Referential Integrity dan Foreign Key Nilai yang unik yang digunakan untuk mengenali tuple-tuple dalam sebuah relasi disebut primary key. Entity Integrity Constraint menyatakan bahwa nilai primary key tidak boleh null karena primary key digunakan untuk mengenali tuple individual dalam relasi sehingga apabila primary key bernilai null maka akibatnya akan ada beberapa tuple yang tidak dapat dikenali.
6 13 Key constraint dan entity integrity constraint dikhususkan pada relasi individual sedangkan referential integrity constraint dikhususkan antara 2 relasi untuk menjaga konsistensi di antara tuple-tuple pada 2 relasi tersebut. Secara tidak langsung, referential integrity constraint mengatur agar sebuah tuple dalam sebuah relasi yang terhubung ke relasi lain juga harus terhubung pada sebuah tuple yang terdapat dalam relasi lain tersebut. Untuk menjelaskan referential integrity secara formal, kita harus mendefinisikan terlebih dahulu konsep dari foreign key. Foreign Key adalah primary key yang mejadi atribut pada relasi lain sehingga relasirelasi tersebut saling terhubung (Elmasri, 2000, p206-p207) Operasi Insert, Update, Delete Operasi Insert Operasi insert digunakan untuk memasukkan tuple baru dalam sebuah relasi. Operasi insert mendukung sebuah daftar nilai atribut pada sebuah tuple baru sehingga dapat masuk ke dalam relasi. Insert dapat gagal karena: - nilai sebuah key pada tuple baru sudah pernah ada dalam tuple yang lain dalam sebuah relasi yang sama. - Primary key pada tuple baru tersebut bernilai null. - Nilai referential integrity yang menjadi foreign key pada tuple baru tersebut tidak terdapat pada relasi yang terhubung tersebut. Operasi Update
7 14 Operasi update digunakan untuk mengubah nilai dari beberapa atribut pada tuple yang terdapat dalam sebuah relasi. Dibutuhkan penjelasan untuk beberapa kondisi operasi update. Contohnya: saat mengubah sebuah primary key pada sebuah tuple yang menjadi foreign key untuk relasi yang lain. Selain itu perlu dicocokkan tipe data dan domainnya apakah sudah benar. Operasi Delete Operasi delete digunakan untuk menghapus tuple dari sebuah relasi. Operasi delete dapat mengalami kegagalan karena tuple yang ingin dihapus mempengaruhi tuple pada relasi yang lain. Ada 3 cara penanganan kegagalan tersebut antara lain: o Menolak operasi delete tersebut o Ikut menghapus tuple yang berhubungan dengan tuple yang ingin dihapus o Mengabaikannya walaupun hasilnya akan mengganggu entity integrity relasi lain yang terpengaruh (Elmasri, 2000, p209-p211) Dasar Operasi untuk Relational Aljabar Dalam Elmasri ditulis bahwa operasi yang sederhana terdiri dari operasi select dan project. Operasi Select Operasi select digunakan untuk memilih sebagian baris dari sebuah tabel sesuai dengan kondisi seleksi. Hal ini menyebabkan operasi select
8 15 melakukan pemilihan baris dan yang ditampilkan hanya baris yang memenuhi kondisi. σ <selecttion condition> (R) untuk σ (sigma) menggambarkan operasi select dan hasilnya akan memiliki atribut yang sama dengan R. Ekspresi dalam <selection condition> dengan format <nama atribut> <operator pembanding> <nilai konstan> atau <nama atribut> <operator pembanding> <nama atribut> dimana <nama atribut> adalah nama dari atribut R, <operator pembanding> biasa terdiri dari {=,<,,>,, }. Operasi Project Operasi project digunakan untuk memilih sebagian kolom sehingga kolom yang lain tidak ditampilkan. Penggunaannya juga dapat digabungkan dengan operasi select. Π <daftar atribut> (R) untuk Π (pi) adalah simbol yang digunakan untuk menampilkan operasi project dan <daftar atribut> merupakan daftar atribut dari atribut dalam R (Elmasri, 2000, p211-p215). 2.3 Database Management System (DBMS) Database management system (DBMS) merupakan sebuah perangkat lunak yang memungkinkan pengguna untuk mengenali, membuat, memelihara dan mengkontrol akses ke basis data (Connolly, 2002, p4). DBMS merupakan perangkat lunak yang dirancang untuk membantu dalam memelihara dan menggunakan koleksi data yang besar (Gehrke, 2003, p4),.
9 16 DBMS adalah perangkat lunak yang menghubungkan antara program aplikasi yang digunakan pengguna dengan basis data. DBMS menyediakan beberapa fasilitas, yaitu: DBMS memungkinkan pengguna untuk mendefinisikan basis data melalui Data Definition Language (DDL). DBMS memungkinkan pengguna untuk menambah, mengubah, mengambil maupun menghapus data dari basis data melalui Data Manipulation Language (DML). Menyediakan kontrol pengaksesan terhadap basis data, yaitu: Security system yang berfungsi untuk mencegah pengguna yang tidak berhak mengakses basis data. Integrity system yang berfungsi untuk memelihara konsistensi data yang disimpan. Concurrency control system yang berfungsi untuk mengijinkan pemberian hak akses pada basis data. Recovery control system yang berfungsi untuk melakukan mengambalikan data ke kondisi sebelumnya jika terjadi kegagalan perangkat keras atau perangkat lunak. User accessible catalog yang berisi deskripsi-deskripsi dari data dalam basis data. Dalam Connolly (2002, p18) ditulis bahwa komponen utama dari DBMS yaitu : o Perangkat keras (Hardware)
10 17 Untuk menjalankan DBMS dan aplikasi, dibutuhkan perangkat keras. Perangkat keras yang digunakan dapat berupa komputer pribadi (PC), mainframe tunggal, sampai komputer jaringan. o Perangkat lunak (Software) Komponen perangkat lunak terdiri dari perangkat lunak DBMS itu sendiri dan program aplikasi, bersama-sama dengan sistem operasi, termasuk perangkat lunak jaringan jika DBMS digunakan melalui jaringan. Biasanya program aplikasi ditulis dengan bahasa pemrograman generasi ketiga (3GL) seperti C, C++, Java, VB, atau menggunakan generasi keempat (4GL) seperti SQL digabungkan di 3GL. o Data Komponen paling penting dari lingkungan DBMS adalah data. Data berperan sebagai jembatan antara komponen mesin dan manusia. Basis data terdiri dari data operasional dan meta-data (informasi data tentang data itu sendiri). o Prosedur Prosedur mengacu pada instruksi dan aturan-aturan yang menentukan desain dan penggunaan basis data. Pengguna sistem dan staff yang mengatur basis data membutuhkan dokumen berisi aturan bagaimana menjalankan sistem. o Pengguna Komponen terakhir dari DBMS adalah orang yang terkait dengan sistem. 2.4 Relational Database Management System (RDBMS) Dalam Webopedia (2002) ditulis bahwa RDBMS adalah sebuah tipe sistem manajemen basis data yang menyimpan data dalam bentuk tabel-tabel yang saling
11 18 berhubungan. RDBMS sangat bagus karena hanya membutuhkan sedikit asumsi tentang bagaimana data berhubungan atau bagaimana data akan diambil dari sistem basis data. Hasilnya, basis data yang sama dapat ditampilkan dalam berbagai cara. Dalam Wikipedia (2006) ditulis bahwa RDBMS berdasar pada relational model yang dikenalkan oleh T.Codd. Dalam RDBMS, hal yang paling utama adalah : Menampilkan data kepada pengguna sebagai relasi (tampilan dalam bentuk kumpulan tabel dimana setiap tabel terdiri dari baris dan kolom). Menyediakan operasional relasi yang memanipulasi data. 2.5 Hierarki Memori dan Alat Penyimpanan Kumpulan data yang akan dibuat menjadi sebuah basis data yang terkomputerisasi disimpan secara fisik dalam beberapa media penyimpanan komputer (computer storage medium). Media penyimpanan komputer membentuk sebuah hierarki penyimpanan yang secara umum terbagi menjadi : Primary Storage. Yang termasuk dalam kategori ini adalah media yang dapat langsung dioperasikan oleh central processing unit (CPU), seperti main memory pada komputer dan cache memory. Media yang termasuk dalam kategori ini biasanya menyediakan akses yang cepat ke data namun ukuran yang terbatas (sedikit). Secondary Storage. Kategori ini meliputi magnetic disk, optical disk dan tape. Peralatan ini biasanya mempunyai kapasitas yang lebih besar, harga yang lebih murah dan akses yang lebih lambat dibandingkan dengan alat
12 19 yang termasuk primary storage. Data pada secondary storage tidak dapat diakses langsung oleh CPU, melainkan harus di-copy terlebih dahulu ke dalam primary storage. Dalam primary storage level, yang termasuk dalam level yang paling mahal adalah cache memory, yaitu statik RAM (Random Access Memory). Chace memory biasanya digunakan oleh CPU untuk meningkatkan kecepatan eksekusi program. Level selanjutnya adalah DRAM (Dynamic RAM), yang menyediakan area utama agar CPU dapat menjaga program dan data tetap berjalan dan dikenal juga sebagai main memory. Pada secondary storage level, termasuk magnetic disk, seperti mass storage dalam bentuk CD-ROM (Compact Disk-Read-Only-Memory) dan tape. Kapasitas penyimpanan dihitung dalam satuan kilobytes, megabytes, gigabytes, dan bahkan terabytes. Di antara DRAM dan magnetic disk, terdapat bentuk memori lain, memori flash, karena isinya dapat diganti-ganti. Flash memiliki performance yang sangat baik karena menggunakan teknologi EEPROM (Electrically Erasable Programmable Read Only Memory). Keuntungan dari flash adalah kecepatan akses, dan kerugiannya adalah semua block data harus dihapus dan ditulis dalam waktu tertentu. CD-ROM menyimpan data secara optical dan dibaca dengan laser. CD-ROM menyimpan data yang tidak dapat ditulis ulang. WORM (Write-Once-Read-Many) disk adalah bentuk penyimpanan optical yang digunakan untuk penyimpanan data, yang mengizinkan sekali penulisan data dan dapat dibaca berulang kali tanpa terhapus (Elmasri, 2000,p114-p115).
13 Secondary Storage Deskripsi Hardware dari Disk Devices Magnetic disk digunakan untuk menyimpan data dalam jumlah besar. Dasar unit dari data dalam disk adalah informasi tiap bit. Dengan magnetizing sebuah daerah dalam disk dengan cara tertentu, sebuat bit value dapat direpresentasikan dengan 0 atau 1. Untuk menghasilkan informasi, bit dikumpulkan menjadi bytes (atau karakter). Byte berukuran 4 atau 8 bit. Kapasitas dari suatu disk adalah jumlah byte yang dapat disimpan (Elmasri, 2000, p117) Magnetic Tape Storage Devices Disk adalah salah satu secondary storage yang mengakses secara acak (random access), karena setiap bit dalam block disk mungkin langsung diakses jika kita bisa menyebutkan alamatnya. Magnetic tape adalah peralatan yang mengakses satu persatu (sequential access), untuk mengakses block ke-n, kita harus membaca semua sampai block n-1. Dengan alasan ini, pengaksesan dapat menjadi lambat dan tidak dapat untuk menyimpan on-line data, kecuali aplikasi khusus. Namun demikian, tape menyediakan fungsi yang sangat penting, yaitu untuk back-up database. Salah satu alasan back-up adalah untuk menyimpan salinan dari disk file ketika disk mengalami crash, yang dapat terjadi karena kesalahan mekanik. Untuk alasan ini, disk file di-copy dalam periode waktu tertentu ke tape. Tape juga dapat digunakan untuk menyimpan file untuk basis data yang besar. Jadi file basis data yang jarang
14 21 diakses tetapi dibutuhkan untuk pencatatan dapat disimpan dalam tape (Elmasri, 2000, p121-p122). 2.7 Menyimpan File Records dalam Disk Baris dan Tipe Baris Data biasanya disimpan dalam bentuk baris-baris. Setiap baris terdiri dari kumpulan nilai atau item data yang saling berhubungan dimana setiap nilai dibentuk dari satu atau lebih byte dan saling berhubungan. Baris biasanya menggambarkan entitas dan atribut yang dimiliki. Contohnya, baris EMPLOYEE menampilkan entitas dari seorang karyawan dan setiap nilai kolom dalam baris menggambarkan atribut, seperti NAME, BIRTHDATE, SALARY, atau SUPERVISOR. Kumpulan dari nama kolom dan hubungan tipe data menyusun sebuah definisi untuk format baris atau tipe baris. Sedangkan tipe data, berhubungan dengan tiap kolom, dan menjelaskan tipe dari nilai suatu kolom. Tipe data dari suatu kolom biasanya merupakan standard yang digunakan dalam pemrograman antara lain seperti numeric (integer, long integer, floating point), string (fixed-length, varying), boolean (0/1, TRUE/FALSE) dan juga date atau time. Jumlah bytes yang diperlukan untuk setiap tipe data tetap sesuai dengan sistem yang diberikan komputer. Sebuah integer memerlukan 4 bytes, real 4 bytes, boolean 1 bytes, date 10 bytes (dengan asumsi format: YYYY-MM-DD), dan string n karakter memerlukan n bytes.
15 22 Contoh sebuah format baris untuk EMPLOYEE (dalam bahasa pemrograman C) : struct employee { char name[30]; char ssn[9]; int salary; int jobcode; char department[20]; }; (Elmasri, 2000, p128-p129) Files, Fixed-Length Records dan Variable Length Records Sebuah file adalah sebuah urutan dari baris-baris. Dalam banyak hal, semua baris dalam satu file memiliki format baris yang sama. Jika setiap baris dalam file memiliki ukuran yang sama (dalam bytes), file akan disebut fixed-length records. Jika baris yang berbeda memiliki ukuran yang berbeda, maka file disebut variable-length records. Sebuah file mempunyai variable-length records untuk beberapa alasan, yaitu : File record dengan tipe baris yang sama, tetapi satu atau lebih kolom memiliki ukuran yang berbeda (variable-length fields). Sebagai contoh, kolom NAME dari EMPLOYEE dapat berupa variable length field.
16 23 File record dengan tipe baris yang sama, tetapi satu atau lebih kolom mungkin mempunyai beberapa nilai untuk satu baris. Kolom ini disebut dengan repeating field dan kumpulan nilai dari kolom ini disebut repeating group. File record dengan tipe baris yang sama, tetapi satu atau lebih kolom merupakan pilihan, jadi beberapa baris memiliki nilai untuk kolom tersebut, tapi yang lain tidak (disebut juga optional fields). File yang mengandung tipe baris yang berbeda-beda dan memiliki ukuran yang berbeda (mixed file). Ini akan terjadi jika baris yang berhubungan yang berbeda tipe telah di-clusteres (ditempatkan bersama) dalam blok penyimpanan, contohnya, baris HASIL_NILAI dari murid ditempatkan bersama dengan baris MURID. Fixed-length records KARYAWAN dalam contoh di atas memiliki ukuran 68 bytes. Setiap baris memiliki kolom yang sama, dan ukuran tiap kolom sama, sehingga sistem dapat menentukan posisi byte awal dari tiap kolom dengan menghitung mulai dari posisi baris paling awal. Ini memungkinkan mengambil nilai dari kolom tertentu dengan program yang mengakses file. Selain itu juga sebuah file yang memiliki variable-length records bisa dianggap sebagai fixed-length records. Contoh, dalam kasus optional fields, semua kolom dalam tiap baris ada tetapi disimpan dalam bentuk nilai NULL jika tidak ada nilai untuk kolom tersebut. Untuk repeating field, dapat menyediakan beberapa tempat dalam setiap baris
17 24 sebagai jumlah maksimal. Namun, hal ini akan membuat adanya space yang terbuang. Gambar 2.1 Sebuah fixed-length record dengan 6 kolom dan berukuran 71 bytes. Untuk variable-length field, setiap baris mempunyai nilai untuk tiap kolom, tetapi ukuran tiap kolom tidak dapat diketahui. Untuk menentukan byte dalam tiap kolom di satu baris, kita dapat menggunakan karakter pemisah yang khusus (seeperti karakter? atau % atau $ atau karakter yang tidak akan muncul sebagai nilai) atau menyediakan panjang sesuai dengan saat deklarasi. Gambar 2.2 Sebuah baris dengan 2 variable-length field dan 3 fixedlength field Jika sebuah baris memiliki ukuran yang besar, tetapi jumlah kolom yang dimiliki hanya sedikit, setiap baris dapat disimpan dalam bentuk <field-name, field-value> daripada hanya field-value saja. Ini disebut dengan tiga tipe karakter pemisah. Tujuannya adalah memisahkan kolom name dari kolom value dan memisahkan satu kolom dengan kolom
18 25 setelahnya. Untuk pilihan bentuk lain bisa juga digunakan <field-type,fieldvalue>. Gambar 2.3 Sebuah variable-field record dengan 3 tipe karakter pemisah Sebuah repeating field memerlukan sebuah karakter untuk memisahkan nilai-nilai dalam kolom tersebut, dan karakter pemisah lain untuk pemisah antar kolom. Jadi untuk file yang memiliki baris dengan tipe yang berbeda-beda, setiap barisnya harus disertai dengan penanda. Oleh sebab itu, program yang mengakses file yang memiliki variable-length record (yang biasanya bagian dari file-system dan disembunyikan dari user) biasanya lebih rumit daripada fixed-length record (Elmasri, 2000, p129- p131) Block Record dan Spanned VS. Unspanned Records Baris-baris dari file harus dialokasikan ke block disk karena sebuah block adalah unit dari data transfer antara disk dan memory. Ketika ukuran block lebih besar daripada ukuran baris, tiap block akan terisi bermacammacam baris, meskipun beberapa file boleh saja mempunyai ukuran baris yang besar sehingga tidak cukup dalam satu block. Misalkan bahwa ukuran
19 26 block adalah B bytes. Untuk sebuah file untuk fixed-length records dengan ukuran R bytes, dimana B R, maka bfr = B/R baris tiap block, dimana x dibulatkan ke bawah sehingga x memiliki nilai integer. Nilai bfr disebut blocking factor untuk file. Pada umumnya, R tidak membagi B dengan tepat, jadi ada unused space (space yang tidak terpakai) dalam tiap block, yaitu B (bfr * R) bytes. Untuk menggunakan unused space, bagian dari sebuah baris dapat disimpan dalam satu block dan sisanya di block lain. Sebuah pointer pada akhir block pertama menunjuk ke block yang berisi lanjutan baris, dalam kasus block yang ditunjuk bukan block yang selanjutnya dalam disk. Cara pengaturan ini disebut spanned, karena baris dapat terletak lebih dari satu block. Ketika sebuah baris lebih besar dari satu block, maka harus digunakan pengaturan spanned. Jika baris tersebut tidak diizinkan untuk melewati batasan block, maka pengaturan ini disebut unspanned. Ini digunakan untuk fixed-length record dengan B>R karena hal ini akan membuat lokasi tiap baris diketahui dalam block dan menyederhanakan proses menyimpan. Untuk variable-length record, baik pengaturan spanned maupun unspanned dapat digunakan. Jika baris rata-rata berukuran besar, akan lebih menguntungkan jika menggunakan spanned untuk mengurangi hilangnya space dalam tiap block. Gambar 2.4 Unspanned Block
20 27 Gambar 2.5 Spanned Block Untuk variable-length record menggunakan pengaturan spanned, setiap block dapat menyimpan beberapa baris. Dalam kasus ini, blocking factor bfr menampilkan jumlah rata-rata baris tiap block untuk sebuah file. bfr dapat digunakan untuk menghitung jumlah block b diperlukan dalam sebuah file untuk r baris: B= di ( r / bfr ) block (Elmasri, 2000, p131-p132) Mengalokasikan Block File dalam Disk Ada beberapa teknik standar untuk mengalokasikan block dari sebuah file dalam disk. Dalam contiguous allocation, block file dialokasikan pada block disk selanjutnya. Ini membuat pembacaan seluruh file sangat cepat menggunakan double buffering, tetapi membuat perluasan file menjadi sulit. Dalam linked allocation setiap block file mengandung pointer ke block file selanjutnya. Ini memudahkan saat perluasan file tetapi lambat saat membaca semua file. Kombinasi dari 2 pengalokasian, cluster dari block disk yang berkelanjutan dan cluster dari link. Cluster juga disebut file segment atau extents. Kemungkinan lain adalah menggunakan pengalokasian indexed, dimana satu atau lebih dari index block
21 28 mengandung pointer ke block file yang sebenarnya atau sering juga digunakan kombinasi dari teknik-teknik ini (Elmasri, 2000, p132) File Header File header atau file descriptor mengandung informasi tentang sebuah file yang diperlukan oleh program sistem yang mengakses file record. Header mengandung informasi yang menggambarkan alamat disk dalam block file maupun deskripsi format baris, dimana mungkin termasuk panjang kolom dan pengurutan kolom dengan sebuah baris untuk fixedlength unspanned record dan tipe kolom, karakter pemisah, dan tipe baris untuk variable-length record. Untuk mencari sebuah baris dalam disk, satu atau beberapa block dicopy ke buffer main memory. Program kemudian mencari baris yang diinginkan dengan menggunakan informasi dari file header. Jika alamat block yang mengandung baris yang diinginkan tidak diketahui, maka program pencari harus melakukan linear search, pencarian data secara satu per-satu dan berurutan, dalam seluruh disk block. Setiap block file di-copy ke buffer dan dicari sampai baris tersebut ditemukan atau semua block file sudah dicari dan baris tersebut tidak ditemukan. Ini menghabiskan banyak waktu untuk file yang besar. Tujuan dari file organization yang baik adalah mengetahui lokasi block yang mengandung baris yang diinginkan dengan jumlah block transfer seminimal mungkin (Elmasri, 2000, p133).
22 Operasi pada File Dalam Elmasri disebutkan bahwa, operasi dalam file yang digunakan dalam program software DBMS meliputi : Open Menyiapkan file untuk dibaca atau ditulis Reset Mengatur pointer dari file ke awal file. Find (atau Locate) Mencari baris pertama yang sesuai dengan kondisi pencarian. Read (atau Get) Menduplikasi baris tertentu dari buffer ke program milik user. FindNext Mencari baris untuk urutan selanjutnya dalam file yang sesuai dengan kondisi pencarian. Delete Menghapus baris tertentu. Modify Mengubah beberapa nilai kolom dari baris tertentu Insert Menambahkan baris baru dalam file. Close Menutup akses file dengan melepaskan buffer dan melakukan operasi cleanup yang diperlukan(elmasri, 2000, p133-p134).
23 Teknik Teknik File Organization Dalam Connolly dan Begg (Database Systems, 2002, p1147-p1154) disebutkan bahwa file organization adalah pengaturan fisik data dalam sebuah file menjadi baris dan page dalam secondary storage. Ada tiga jenis file organization dasar yaitu heap files, ordered file, dan hash file Heap (unordered) files Heap files adalah tipe yang paling sederhana dalam pengaturan file. Heap file atau pile file atau sequential file adalah suatu metode dimana baris-baris ditempatkan sesuai dengan urutan saat dimasukkan, jadi baris baru akan ditambahkan di bagian paling akhir file. Memasukkan baris baru sangat efisien: disk block terakhir dari file di-copy ke buffer; kemudian baris baru ditambahkan; dan block dituliskan kembali ke disk. Alamat dari file block terakhir disimpan dalam file header. Namun demikian pencarian untuk sebuah baris menggunakan linear search dalam file tiap block merupakan prosedur yang tidak menguntungkan. Jika hanya satu baris yang memenuhi kondisi pencarian, rata-rata program akan membaca memory dan mencari dalam setengah file block sebelum menemukannya. Jadi untuk file b block, maka rata-rata membutuhkan pencarian (b/2) block. Jika tidak ada baris atau beberapa baris yang memenuhi kondisi pencarian, sebuah program harus membaca dan mencari semua b block dalam file. Untuk menghapus baris, program pertama harus menemukan blocknya, meng-copy block ke buffer kemudian menghapus baris dari buffer dan menulis kembali block ke disk. Ini akan membuat adanya unused
24 31 space dalam disk block Menghapus banyak baris dengan cara ini akan membuat banyak tempat penyimpanan yang terbuang. Teknik lain adalah dengan menggunakan sebuah extra byte atau bit, yang disebut deletion marker, yang disimpan di tiap baris. Sebuah baris yang dihapus, maka deletion marker akan diset untuk nilai tertentu. Nilai yang lain adalah penanda bahwa baris tersebut belum dihapus. Program pencari hanya berdasar pada baris yang belum dihapus. Kedua teknik penghapusan ini memerlukan periode reorganization dari file untuk menghilangkan tempat yang tidak terpakai dari baris yang dihapus. Selama reorganization, file block diakses berurutan dan baris diatur dengan menghilangkan baris yang sudah dihapus. Untuk unordered file, baik pengaturan spanned maupun unspanned dapat digunakan dan juga fixed-length record atau variable-length record. Untuk membaca semua baris dengan urutan tertentu, maka sebuah duplikasi dari file dapat dibuat. Pengurutan adalah operasi yang membutuhkan memori yang besar untuk file disk yang besar dan menggunakan teknik untuk external sorting. Untuk file dengan fixed-length record menggunakan block unspanned dan alokasi contiguous, maka dibutuhkan pencarian sesuai posisinya di file. Jika baris-baris dari file bernomer 0,1,2,...,r-i dan barisbaris di tiap block bernomer 0,1,...,bfr-1, dimana bfr adalah blocking factor, kemudian baris yang ke-i dari file beralokasi di block i / bfr dan baris yang ke-(i mod bfr) dalam block tersebut. File seperti ini disebut file
25 32 relative atau direct karena baris tersebut dapat diakses secara langsung sesuai posisinya (Elmasri, 2000, p135) Sequential (ordered) files Semua baris dalam file dapat diurutkan berdasarkan nilai dari satu atau lebih kolom. Kolom inilah yang disebut ordering field. Jika ordering field juga merupakan key dari file dan memiliki nilai yang unik dari semua baris yang ada, kolom ini juga disebut ordering key. Ordered record (terurut) memiliki beberapa keuntungan dibandingkan unordered (tidak terurut). Pertama, saat membaca baris dengan urutan sesuai ordering key, maka proses menjadi efisien. Kedua, menemukan baris selanjutnya sesuai dengan urutan, ordering key tidak memerlukan tambahan akses ke block lain, karena biasa terletak dalam satu block (kecuali baris tersebut adalah yang terakhir dalam block). Ketiga, menggunakan syarat pencarian berdasarkan ordering key akan lebih cepat jika digunakan teknik pencarian binary. Ordered record tidak memberikan keuntungan untuk akses acak atau terurut jika berdasarkan pada non-ordering field. Dalam kasus ini harus digunakan pencarian linear. Menambah dan menghapus baris adalah operasi yang membutuhkan banyak waktu dan memori dalam ordered file karena baris-baris tersebut harus diurutkan secara fisik. Untuk menambahkan sebuah baris, posisi dalam file diberi berdasarkan nilai dari ordering field dan memberikan ruang untuk menambahkan baris pada posisi tersebut. Untuk file yang besar
26 33 akan menghabiskan cukup banyak waktu karena rata-rata setengah dari file block harus dibaca dan ditulis ulang. Cara lain adalah dengan menyediakan tempat kosong di tiap block untuk baris baru. Namun demikian, jika tempat itu sudah terisi, masalah yang sama akan terjadi. Metode lain yang sering digunakan adalah membuat unordered file yang bersifat sementara, disebut overflow atau transaction file. Dengan teknik ini, ordered file disebut dengan main atau master file. Baris baru dimasukkan dalam posisi akhir overflow file. Setiap beberapa waktu, overflow diurutkan dan digabungkan dengan master file selama reorganization. Memasukkan data menjadi efisien dengan metode ini, namun akan meningkatkan kompleksitas pencarian. Pencarian dilakukan dari main file dengan pencarian binary, dan jika tidak ditemukan maka dilakukan pencarian linear di overflow file. Mengubah nilai dari suatu kolom harus melihat dua faktor yaitu kondisi pencarian untuk mengetahui lokasi baris dan kolom yang diubah. Jika pencarian berdasarkan ordering key field, maka dapat digunakan pencarian binary, jika tidak digunakan pencarian linear. Jika yang dibuah adalah non-ordering field maka data baru ditulis kembali ke lokasi yang sama di disk, dengan anggapan digunakan fixed-length record. Pengubahan untuk ordering field berarti dapat mengakibatkan perubahan posisi dalam file, yang berarti harus menghapus baris lama dan menambahkan baris yang sudah diubah.
27 34 Ordered file jarang digunakan untuk aplikasi basis data jika tidak ada akses path tambahan, yang disebut primary index dan akan menghasilkan indexed-sequential file (Elmasri, 2000, p136-p139) Hash files Dalam sebuah file hashing, baris tidak harus ditulis secara berurutan dalam file, melainkan sebuah hash function akan menghitung alamat page dimana sebuah baris akan disimpan berdasarkan satu atau lebih kolom. Hash function adalah suatu fungsi yang dibuat untuk menentukan alamat sehingga baris yang ada dapat dibagi ke dalam seluruh bagian file. Jenisjenis hashing: Static hashing Static hashing adalah suatu keadaan dimana besar alamat hash yang disediakan sudah tidak akan diubah lagi sejak file dibuat. Dynamic hashing Dynamic hashing adalah suatu metode dimana ukuran file untuk hash akan berubah sesuai dengan pertumbuhan basis data Teknik Teknik Metode Akses Dalam Connolly dan Begg (Database Systems, 2002, p1155-p1163) disebutkan bahwa metode akses adalah langkah-langkah untuk meningkatkan dalam menyimpan dan mengambil baris dari suatu file. Metode yang ada antara lain Indeks dan Cluster.
28 Indeks Indeks adalah sebuah struktur data yang mengizinkan DBMS untuk menempatkan bagian dari baris dalam sebuah file dengan lebih cepat dan peningkatan response time terhadap query dari user. Primary Index Data dalam file diurutkan berdasarkan sebuah ordering field key, dan indeks dibuat berdasarkan ordering field key tersebut, yang memiliki nilai yang unik untuk tiap baris. Clustering Index Dimana data dalam file diurutkan berdasarkan sebuah non-key field, dan indeks dibuat berdasakan kolom ini, sehingga memungkinkan ada lebih dari satu baris yang berhubungan dengan nilai dari indeks. Nonkey field inilah yang disebut dengan clustering index. Secondary Index Secondary index juga sebuah cara untuk mengurutkan file mirip dengan primary index. Perbedaannya adalah, dimana data yang berhubungan dengan primary index diurutkan berdasakan index key, dan data yang berhubungan dengan secondary index tidak dirutukan berdasakan index key. Jadi, secondary index key tidak perlu mengandung nilai yang unik. Multilevel Indexes Ketika sebuah file indeks menjadi besar dan terbagi menjadi banyak page, waktu pencarian akan meningkat. Multilevel index mengatasi masalah ini dengan mengurangi jarak pencarian. Ini dapat dilakukan
29 36 dengan membagi indeks yang ada ke beberapa file, untuk membagi ke ukuran yang lebih kecil dan mengatur indeks dengan indeks. B-Tree B-Tree adalah sebuah tree yang seimbang dan biasanya dirancang untuk media penyimpanan sekunder serta banyak dipakai oleh sistem basis data. Sebuah B-Tree T mempunyai root T dan ciri-ciri sebagai berikut : 1. Setiap node x mempuyai penjelasan sebagai berikut : a. n[x], sejumlah key yang disimpan di node x, b. key dari n[x] itu sendiri, yang disimpan terurut sehingga key 1 [x] key 2 [x]... key n[x] [x], c. leaf[x], sebuah nilai yang bernilai benar jika x adalah leaf, dan salah jika x adalah node internal. 2. Setiap node internal x selalu mempunyai pointer sebanyak n[x]+1 buah ke node anaknya, sedangkan node leaf tidak mempunyai node anak. 3. Semua leaf mempunyai ketinggian yang sama (h). 4. Sebuah node mempunyai batas bawah dan atas di sejumlah key dan batasan ini dapat dinyatakan dalam bilangan bulat t 2 disebut derajat minimum dari B-Tree : a. Setiap node selain root harus mempunyai sedikitnya key t-1 buah. Setiap node internal selain root mempunyai sedikitnya t node anak. Jika tree tidak kosong, maka root minimal mempunyai 1 key.
30 37 b. Setiap node dapat berisi maksimal 2t-1 key disebut keadaan penuh. Dengan demikian, sebuah node internal dapat mempunyai maksimal 2t node anak. Tinggi untuk sebuah B-Tree dengan jumlah data n dalam keadaan terburuk adalah : h log t n Keterangan: h = tinggi t = derajat minimum n = banyak data (Cormen, 2001, p447) Operasi dasar pada B-Tree terdiri dari : a. Operasi Searching Prosedur pencarian B-Tree hampir sama dengan pencarian pada tree umumnya, namum pada setiap node internal, terdapat (n[x] + 1) cara penentuan percabangan. Pencarian B-Tree menggunakan inputan sebagai pointer dari root x dan key k untuk dicari dalam subtreenya. Jika terdapat key k yang dicari, maka akan dikembalikan pasangan nilai (y, i) dengan node y dan indeks i sehingga key i [y] = k, sedangkan jika tidak ditemukan, akan dikembalikan nilai NIL. B-TREE-SEARCH (x, k) i 1
31 38 while i n[x] and k > key i [x] do i i + 1 if i n[x] dan k = key i [x] then return (x, i) if leaf[x] then return NIL else DISK-READ (c i [x]) return B-TREE-SEARCH (c i [x], k) Jumlah akses ke disk dalam pencarian B-Tree adalah O(h) = O(log t n) dengan h adalah tinggi dari tree, n adalah jumlah data, dan t adalah derajat minimum. b. Operasi Insert Menambahkan nilai pada B-Tree harus memperhatikan beberapa hal berikut : Tidak langsung membuat node baru dalam memasukkan key baru. Tidak dapat memasukkan key untuk node yang sudah penuh. Jika operasi terdapat pada node yang penuh (2t-1), maka node harus dipecah dengan mengambil nilai tengahnya dengan masing-masing node memiliki t-1 buah key, nilai
32 39 tengah akan naik ke node induknya sebagai nilai pembagi bagi dua node yang baru. Hal ini berlaku apabila node induknya penuh, maka juga menggunakan langkah di atas. B-TREE-SPLIT-CHILD (x, i, y) z ALLOCATE-NODE() leaf[z] leaf[y] n[z] t 1 for j to t 1 do key j [z] key j+t [y] if not leaf[y] then for j 1 to t do c j [z] c j+t [y] n[y] t -1 for j n[x] + 1 downto i + 1 do c j+1 [x] cj[x] c i+1 [x] z for j n[x] downto i do key j+1 [x] key j [x] key i [x] key t [y] n[x] n[x] + 1 DISK-WRITE (y) DISK-WRITE (z)
33 40 DISK-WRITE (x) B-TREE-INSERT (T, k) r root[t] if n[r] = 2t 1 then s ALLOCATE-NODE() root[t] s leaf[s] FALSE n[s] 0 c 1 [s] r B-TREE-SPLIT-CHILD (s, 1, r) B-TREE-INSERT-NONFULL (s, k) else B-TREE-INSERT-NONFULL (r, k) B-TREE-INSERT-NONFULL (x, k) i n[x] if leaf[x] then while i and k < key i [x] do key i+1 key i [x] i i 1 key i+1 [x] k n[x] n[x] + 1 DISK-WRITE(x) else while i 1 and k < key i [x]
34 41 do i i 1 i i + 1 DISK-READ (c i [x]) if n[c i [x]] = 2t 1 then B-TREE-SPLIT-CHILD (x, i, c i [x]) if k > key i [x] then i i + 1 B-TREE-INSERT-NONFULL (c i [x], k) Ilustrasi dari memasukkan beberapa key pada B-Tree (dengan degree 3 yang dapat menampung maksimum 5 buah key dan 6 node anak dalam 1 node internal) (Cormen, 2001, p448) Struktur tree mula-mula G M P X A C D E J K N O R S T U V Y Z B ditambahkan G M P X A B C D E J K N O R S T U V Y Z
35 42 Q ditambahkan G M P T X A B C D E J K N O Q R S U V Y Z L ditambahkan P G M T X A B C D E J K L N O Q R S U V Y Z F ditambahkan P C G M T X A B D E F J K L N O Q R S U V Y Z c. Operasi Delete Di bawah ini beberapa aturan kerja dalam menghapus sebuah key : 1. Jika key k berada di dalam node x dan x adalah leaf, hapus key k dari x. 2. Jika key k berada di dalam node x dan x adalan node internal, maka lakukan hal berikut : a. Jika node anak y yang mendahului k mempunyai t buah key, kemudian cari predecessor k dari k dalam
36 43 subtree dengan y sebagai root. Secara rekursif hapus k dan ganti k dengan k pada x. (Pencarian dan penghapusan k diikut langkah (b)) b. Bersamaan setelah langkah (a), jika node anak z yang mengikuti k mempunyai t buah key, cari pengganti k dengan z sebagai root. Secara rekursif hapus k dan ganti k dengan k pada x. (Pencarian dan penghapusan k diikut langkah (c)) c. Selain itu, jika y dan z hanya mempunyai t-1 buah key, gabungkan key k dengan semua data dari z ke dalam y, sehingga x tidak akan lagi memiliki key k dan pointer ke z, dan y sekarang mempunyai 2t-1 buah key. Kemudian hapus z dan hapus k dari y. 3. Jika key k tidak terdapat pada node internal x, tentukan root c i [x] dari subtree yang memiliki key k. Jika c i [x] hanya mempunyai t-1 buah key, lakukan langkah (3a) dan (3b) untuk menjamin bahwa sebuah node memiliki minimal t buah key. a. Jika c i [x] hanya memiliki t-1 buah key tetapi memiliki node di sebelahnya dengan minimal t buah key, berikan c i [x] sebuah key baru dengan memindahkan key dari x turun ke c i [x], pindahkan key dari c i [x] dari kiri atau kanan node sebelahnya ke x, dan pindahkan pointer node anak dari node sebelahnya ke c i [x].
37 44 b. Jika c i [x] dan node sebelah kiri dan kanan c i [x] memiliki t-1 buah key, gabungkan c i [x] dengan satu node sebelahnya, dengan memindahkan key turun ke node gabungan baru untuk menjadi nilai tengah bagi node tersebut. Ilustrasi dari menghapus beberapa key pada B-Tree (dengan degree 3 yang dapat menampung maksimum 5 buah key dan 6 node anak dalam 1 node internal) (Cormen, 2001, p450- p451) Struktur tree mula-mula P C G M T X A B D E F J K L N O Q R S U V Y Z F dihapus : langkah 1 P C G M T X A B D E J K L N O Q R S U V Y Z
38 45 M dihapus : langkah 2a P C G L T X A B D E J K N O Q R S U V Y Z G dihapus : langkah 2c P C L T X A B D E J K N O Q R S U V Y Z D dihapus : langkah 3b C L P T X A B E J K N O Q R S U V Y Z tinggi tree disusutkan C L P T X A B E J K N O Q R S U V Y Z B dihapus : langkah 3a E L P T X A C J K N O Q R S U V Y Z
39 Cluster Cluster adalah mengelompokkan satu atau lebih tabel secara fisik untuk disimpan bersama karena mereka membagi kolom yang umum dan sering digunakan. Dengan baris yang berhubungan disimpan bersamasama, dapat meningkatkan waktu akses (waktu akses lebih singkat). Indexed Cluster Dalam sebuah clustering index, baris dengan cluster key yang sama disimpan bersama. Oracle menyarankan penggunaan indexed cluster ketika: Query penarikan data melebihi batasan nilai cluster key Clustered table mungkin bertambah di luar perkiraan Hash Cluster Baris yang disimpan pada hash cluster berdasarkan pada hasil untuk menerapkan sebuah hash function pada baris yang mengandung nilai cluster key. Semua baris dengan hash key yang sama akan disimpan bersama. Oracle menyarankan penggunaan hash cluster ketika: Query penarikan data berdasakan kondisi yang mengandung semua kolom cluster key. Clustered table tetap atau dapat ditentukan jumlah maksimal baris dan jumlah maksimum space yang diperlukan ketika membuat clustered table.
40 Penggunaan XML dalam penyimpanan dan pengaksesan data Extensible Markup Language (XML) merupakan format bahasa yang sederhana dan fleksibel yang dikembangkan dari Standard Generalized Markup Language (SGML), yang dapat mendukung perancang untuk membuat bahasa atau tag sendiri sesuai fungsinya. XML dikembangkan oleh World Wide Web Consortium (W3C) yang didukung sekitar 150 orang anggotanya dan versi 1.0 pertama kali dirilis pada tahun 1998 (Wikipedia, 2006). XML adalah sebuah meta-language (bahasa yang digunakan untuk menjelaskan bahasa lain) yang memungkinkan seorang desainer membuat sendiri tag yang menyediakan fungsi yang tidak tersedia dalam HTML (Connolly, 2002, p1006). Dalam Webopedia (2005) ditulis bahwa XML merupakan sebuah versi yang diturunkan dari SGML, didesain khusus untuk dokumen web. Desainer diperbolehkan untuk menciptakan tag sendiri, yang memiliki kemampuan untuk mendefinisikan, transmisi, validasi dan interpretasi data antara aplikasi dan organisasi. Keunggulan yang dimiliki XML antara lain : 1. Bahasa XML sederhana, dirancang sesuai bahasa manusia dan jelas. 2. Mendukung pembacaan data Unicode. 3. Standar terbuka dan tidak bergantung pada platform tertentu. 4. Dapat dikembangkan sesuai dengan keinginan users untuk membuat tags sendiri. 5. XML memisahkan antara isi dan tampilan dari suatu data sesuai dengan pengaturan yang diinginkan.
41 48 6. Meningkatkan pengambilan data sehingga data dapat ditampilkan pada browser lebih cepat. 7. Mendukung integritas data untuk berbagai proses sumber. 8. Dapat menjelaskan data dari berbagai jenis aplikasi. 9. Lebih baik digunakan untuk pencarian data (search engine). XML menggunakan teknologi Document Type Definitions (DTDs) yang dapat mendefinisikan sintaks yang valid dari dokumen XML. Contoh bahasa XML : <?xml version= 1.0 encoding= UTP-8 standalone= yes?> <?xml:stlesheet tupe= text/xsl href= staff_list.xsl?> <!DOCTYPE STAFFLIST SYSTEM staff_list.dtd > <STAFFLIST> <STAFF branchno= B005 > <STAFFNO>SL21</ STAFFNO> <NAME> <FNAME>John</FNAME> <LNAME>White</LNAME> </NAME> <POSITION>Manager</POSITION> <DOB>1-Oct-45</DOB> <SALARY>30000</SALARY> </STAFF> </STAFFLIST>
42 49 Keterangan : Deklarasi XML Sebuah file XML diawali dengan pilihan deklarasi XML, yang menunjukkan versi XML yang digunakan oleh penulis dalam sebuah dokumen, sistem encoding yang digunakan dan akan menentukan apakah ada deklarasi external markup yang perlu dimasukkan. Elemen Elemen atau tag, adalah bentuk umum dalam markup. Elemen pertama pastilah root element, yang mengandung banyak elemen lain. Sebuah dokumen XML harus mempunyai satu root element. Untuk contoh diatas adalah <STAFFLIST>. Setiap elemen diawali dengan tag awal (<STAFF>) dan diakhiri dengan tag akhir (</STAFF>). Sebuah elemen yang kosong dapat ditunjukan dengan tag: <EMPTYELEMENT/> Atribut Atribut adalah nilai pasangan yang mengandung informasi untuk mendeskripsikan informasi tentang suatu elemen. Atibut diletakkan dalam tag awal setelah nama elemen dan nilai atribut ada dalam tanda petik. Contoh : <STAFF brachno= B005 >. Jika sudah diberikan atribut maka dapat ditunjukkan elemen itu adalah elemen yang kosong, contoh: <SEX gender= M /> Entity references Setiap entity harus mempunyai nama yang unik dan penggunaan dalam sebuah dokumen XML disebut dengan entity reference. Sebuah entity
43 50 reference diawali dengan tanda dan (&) dan diakhiri dengan titik koma (;), contoh: <. Komentar Komentar dapat diletakkan dalam tag <!-- dan --> dan dapat mengandung semua string kecuali. CDATA section dan instruksi proses CDATA section memberitahu prosesor XML untuk melewati karakter markup dan memberikan teks langsung ke aplikasi tanpa interpretasi. Instruksi proses dapat digunakan untuk menyediakan informasi ke aplikasi. Urutan Dalam XML urutan elemen akan berpengaruh, Jadi jika urutan elemen berbeda maka akan dianggap data yang berbeda. Contoh : <NAME> <FNAME>John</FNAME> <LNAME>White</LNAME> </NAMA> akan berbeda dengan <NAME> <LNAME>White</LNAME> <FNAME>John</FNAME> </NAMA> Sedangkan atribut tidak terpengaruh dengan urutan. Contoh : <NAME FNAME= John LNAME= White />
44 51 merupakan elemen yang sama dengan <NAME LNAME= White FNAME= John /> 2.12 Pemodelan Fungsi Sistem Menggunakan Use Case Dalam Britton (2001, p97-p98) disebutkan bahwa sebuah sistem pasti dikembangkan dengan satu tujuan, yaitu menyediakan fungsi atau aktivitas yang akan memenuhi kebutuhan dan sesuai dengan permintaan user atau client. Untuk itu digunakan diagram yang dapat menjadi dasar untuk penulisan program yang menggambarkan permintaan yaitu dengan menggunakan use case. Use case berpusat dengan fungsi dari sistem yang tampak, dengan tujuan untuk menampilkan apa saja yang sistem dapat lakukan dari sisi user, hal ini supaya diagram dapat juga dipahami oleh user. Meskipun biasanya dihubungkan dengan pengembangan berdasarkan objek, tetapi use case dapat digunakan sebagai bagian dari pendekatan pengembangan sistem yang lain. Use case biasanya memperjelas fungsi dari sistem yang disediakan untuk user. Sebuah use case memperjelas interaksi antara user dan sistem untuk memperoleh tujuan tertentu. Use Case Diagram adalah diagram yang menggambarkan interaksi antara sistem dengan sistem luar dan user. Dengan kata lain, secara grafik menggambarkan siapa yang akan menggunakan sistem dan dengan cara bagaimana user bisa berinteraksi dengan sistem. Diagram ini secara grafik menggambarkan sistem sebagai kumpulan use case, actor (user) dan hubungan yang terjadi (Whitten, 2004, p271). Notasi-notasi yang digunakan dalam use case diagram :
45 52 1. Use case Use case adalah alat untuk menggambarkan fungsi-fungsi sistem dari perspektif pengguna luar dan dalam cara dan istilah yang mereka mengerti (Whitten, 2004, p272). Use case digambarkan secara grafik oleh sebuah elips horizontal dengan nama yang muncul di atas, di bawah atau di dalam elips. Sebuah use case menggambarkan tujuan sistem dan rangkaian kegiatan dan interaksi yang dilakukan user dalam mencapai tujuan tersebut. Use case merupakan hasil penguraian batasan-batasan fungsionalitas sistem ke dalam pernyataan pernyataan yang lebih pendek. Gambar 2.6 Notasi Use Case 2. Actor Actor adalah segala sesuatu yang perlu berinteraksi dengan sistem untuk pertukaran informasi (Whitten, 2004, p273).. Gambar 2.7 Notasi Actor 3. Relationship Relationship digambarkan dengan garis di antara dua simbol di dalam diagram use case. Arti hubungan yang terjadi bisa bervariasi tergantung
46 53 bagaimana garis digambarkan dan tipe simbol apa yang mereka hubungkan (Whitten, 2004, p273). Jenis jenis hubungan yang terjadi ada lima, yaitu Association Sebuah hubungan antara sebuah actor dengan sebuah use case dimana interaksi terjadi di antara mereka (Whitten, 2004, p274). Extend Sebuah use case yang terdiri dari langkah-langkah yang dikutip dari use case yang lebih kompleks untuk menyederhanakan use case asli dan memperluas fungsionalitasnya. Biasanya ditandai dengan label <<extend>> (Whitten, 2004, p274). Include Sebuah use case yang mengurangi redundansi di antara dua atau lebih use case dengan menggabungkan langkah-langkah yang sering ditemukan. Hubungannya digambarkan dengan <<uses>> (Whitten, 2004, p274). Depends on Hubungan yang menggambarkan ketergantungan antar use case. Jenis hubungan ini digambarkan dengan garis yang berpanah dimulai dari satu use case menunjuk ke use case tempat ia bergantung. Garis hubungan ditandai dengan label <<depends on>> (Whitten, 2004, p275). Inheritance Hubungan yang terjadi jika terdapat dua atau lebih actor yang memiliki sifat yang sama (Whitten, 2004, p275).
BASIS DATA I/2011-GANJIL MODEL RELASIONAL. Oleh Team Teaching Database. 12 Oktober 2011 BASIS DATA I/2011-GANJIL 1
BASIS DATA I/2011-GANJIL MODEL RELASIONAL Oleh Team Teaching Database 12 Oktober 2011 BASIS DATA I/2011-GANJIL 1 Konsep-Konsep Model Relasional Model relasional berdasarkan pada konsep relasi dalam matematika
Lebih terperinciSISTEM BASIS DATA II S A N T I W I D I A N T I
SISTEM BASIS DATA II S A N T I W I D I A N T I SISTEM Definisi sebuah tatanan yang terdiri atas sejumlah komponen fungsional (dengan tugas/fungsi khusus) yang saling berhubungan dan secara bersama-sama
Lebih terperinciBAB III MODEL DATA RELASIONAL DAN ALJABAR RELASIONAL
BAB III MODEL DATA RELASIONAL DAN ALJABAR RELASIONAL Model data relasional diperkenankan oleh Codd pada tahun 1970. Didasarkan pada suatu struktur data yang sederhana dan seragam (uniform), yaitu : Relasi
Lebih terperinciSekumpulan field yang bergambung sebagai sebuah unit yang memiliki ukuran tertentu
UTS SBD 25 Oktober 2011 21:46 @wisnu Soal2 UTS SBD 2011, terdiri dari: 1. Teori teori 2. BTree dan B+ Tree (Plus) 3. Alt Query AR (Aljabar Relasional) 4. Hitung cost I/Os 5. Hashing 6. Indexing, Primary,
Lebih terperinciSOAL KUIS. 3. Data aktual yang disimpan pada tiap elemen atau atribute: a. Atribute d. Enterprise b. Data Value e. Tuple c. File
Pertemuan 7 Quiz 1. Kumpulan data yang diorganisir menggunakan metode tertentu sehingga menghasilkan informasi yang berguna bagi pemakainya, pengertian dari: a. Arsip d. Basis Data b. Data e. Sistem c.
Lebih terperinciORGANISASI FILE. Alif Finandhita, S.Kom
ORGANISASI FILE Penyimpanan ataupun penulisan character demi character yang ada di dalam external memory, harus diatur sedemikian rupa sehingga komputer bisa dengan mudah menemukan kembali data-data yang
Lebih terperinciSISTEM BASIS DATA 1. WAHYU PRATAMA, S.Kom., MMSI.
SISTEM BASIS DATA 1 WAHYU PRATAMA, S.Kom., MMSI. PERTEMUAN 2 SBD 1 Lingkungan Basis Data Arsitektur Basis Data. Data Independence. Konsep DBMS, Komponen DBMS, Fungsi DBMS dan Bahasa yang digunakan didalam
Lebih terperinciPendekatan Database Jenjang Data Tipe File Media Penyimpanan Data Organisasi File Metode Pengolahan Data Aplikasi Pada Personal Computer (PC)
Pertemuan 4 1 Pendekatan Database Jenjang Data Tipe File Media Penyimpanan Data Organisasi File Metode Pengolahan Data Aplikasi Pada Personal Computer (PC) 2 Merupakan kumpulan dari data yang saling berhubungan
Lebih terperinciSISTEM BASIS DATA By Novareza Klifartha
SISTEM BASIS DATA By Novareza Klifartha Konsep Sistem Basis Data SISTEM sebuah keterpaduan yang terdiri atas sejumlah komponen fungsional dengan satuan fungsi / tugas tertentu, yang saling berhubungan
Lebih terperinciPERANCANGAN BASIS DATA
BAB IV PERANCANGAN BASIS DATA Database atau basis data adalah kumpulan data yang disimpan secara sistematis di dalam komputer dan dapat dimanipulasi (diolah) menggunakan perangkat lunak (program aplikasi)
Lebih terperinciDESAIN DATABASE. Pertemuan 06 3 SKS
Materi 1. Era Informasi 2. Strategi dan Peluang Yang Kompetitif 3. Database dan Database Warehouse 4. Desain Database 5. Sistem Pendukung Keputusan dan Sistem Cerdas 6. E-Commerce DESAIN DATABASE Pertemuan
Lebih terperinciOrganisasi File Semester Ganjil 2014 Fak. Teknik Jurusan Teknik Informatika. Caca E. Supriana, S.Si.,MT. Si
Organisasi File Semester Ganjil 2014 Fak. Teknik Jurusan Teknik Informatika Universitas i Pasundan Caca E. Supriana, S.Si.,MT. Si caca.e.supriana@unpas.ac.id 1 Pendahuluan DBMS harus menyimpan data di
Lebih terperinciSEKOLAH TINGGI MANAJEMEN INFORMATIKA & KOMPUTER JAKARTA STI&K SATUAN ACARA PERKULIAHAN
SEKOLAH TINGGI MANAJEMEN INFORMAA & KOMPUTER JAKARTA STI&K SATUAN ACARA PERKULIAHAN Mata : SISTEM BERKAS DAN AKSES Kode Mata : MI 15206 Jurusan / Jenjang : D3 MANAJEMEN INFORMAA Tujuan Instruksional Umum
Lebih terperinciBAB II LANDASAN TEORI. Data adalah deskripsi tentang benda, kejadian, aktifitas, dan transaksi, yang
9 BAB II LANDASAN TEORI 2.1.1 Pengertian Data Pengertian data adalah : Data adalah deskripsi tentang benda, kejadian, aktifitas, dan transaksi, yang tidak mempunyai makna atau tidak berpengaruh langsung
Lebih terperinci-DATABASE (BASIS DATA)- Nama : Novriansyah Kelas : 2.DB.10 NPM : Dosen : Leli Safitri
-DATABASE (BASIS DATA)- Nama : Novriansyah Kelas : 2.DB.10 NPM : 33109332 Dosen : Leli Safitri PROGRAM DIPLOMA MANAJEMEN INFORMATIKA FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS GUNADARMA
Lebih terperinciSistem Basis Data Danny Kriestanto, S.Kom., M.Eng
Sistem Basis Danny Kriestanto, S.Kom., M.Eng SQL Introduction Setelah Membuat ERD dan Model Relasional, what s next? Bagaimana cara membangun entitas dan relationship tersebut agar dapat digunakan? Bagaimana
Lebih terperinciFile Organization. IKI20410 Basis Data Aniati Murni Fakultas Ilmu Komputer Universitas Indonesia
File Organization IKI20410 Basis Data Aniati Murni Fakultas Ilmu Komputer Universitas Indonesia TOPIK PEMBAHASAN Struktur Index File Indexed Sequential File Secondary Index Multilevel Index Index B+-Tree
Lebih terperinciBAB III LANDASAN TEORI
BAB III LANDASAN TEORI Dalam bab ini akan dijelaskan landasan teori yang digunakan untuk mendukung penyusunan laporan kerja praktek ini. Landasan teori yang akan dibahas meliputi permasalahan-permasalahan
Lebih terperinciMata Kuliah Arsitektur Komputer Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 04 --
Mata Kuliah Arsitektur Komputer Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 04 -- This presentation is revised by @hazlindaaziz, STMIK, 2014 Acknowledgement Main Material: Stallings,
Lebih terperinciMAKALAH PERANCANGAN BASIS DATA MODEL DATA. Disusun oleh: Ainun Aisyiyah Iman Safuad Ismi Fadhilah
MAKALAH PERANCANGAN BASIS DATA MODEL DATA Disusun oleh: Ainun Aisyiyah 2014001690 Iman Safuad 2014001726 Ismi Fadhilah 2014001729 AMIK Harapan Bangsa Surakarta 2015 MODEL DATA A. Pengertian Model Data
Lebih terperinciOrganisasi File Pile & Random
1 Organisasi File Pile & Random Organisasi File Pile Pendahuluan Struktur dan Manipulasi Parameter Performansi File 2 Pendahuluan Struktur File yang sangat dasar dan sederhana Jarang digunakan tapi merupakan
Lebih terperinciPendahuluan. Tujuan MODUL
DATABASE Satrio Agung W, Ari Kusyanti dan Mahendra Data Teknik Informatika, Fakultas Teknik, Universitas Brawijaya, Email : informatika@ub.ac.id Pendahuluan Model relasional berdasar pada konsep relasi
Lebih terperinciLINGKUNGAN BASIS DATA
LINGKUNGAN BASIS DATA Tujuan utama dari sistem basis data adalah menyediakan pemakai melalui suatu pandangan abstrak mengenai data, dengan menyembunyikan detail dari bagaimana data disimpan dan dimanipulasikan.
Lebih terperinciSistem Manajemen Basis Data Web 2 :
Sistem Manajemen Basis Data Web 2 : Semistructured Data & XML Tim Penyusun : Pengajar Universitas Gunadarma 2008 Outline Data semi terstruktur Pengenalan XML Bahasa Queri XML SMBD - Web 2 Data Semi terstruktur
Lebih terperinciBAB II LANDASAN TEORI. konsep dasar dan definisi-definisi yang berkaitan dengan perangkat lunak yang
BAB II LANDASAN TEORI Pada landasan teori ini diuraikan sejumlah teori untuk membantu dan memecahkan permasalahan yang ada. Beberapa landasan teori tersebut meliputi konsep dasar dan definisi-definisi
Lebih terperinciP7 Perancangan Database
P7 Perancangan Database SQ http://sidiq.mercubuana-yogya.ac.id Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Mercu Buana Yogyakarta Tujuan Mahasiswa mengetahui & memahami konsep
Lebih terperinciPemrosesan data sebelum adanya basis data Perancangan sistemnya masih didasarkan pada kebutuhan individu pemakai, bukan kebutuhan sejumlah pemakai
Basis Data Pemrosesan data sebelum adanya basis data Perancangan sistemnya masih didasarkan pada kebutuhan individu pemakai, bukan kebutuhan sejumlah pemakai Duplikasi data Data yg sama terletak pada
Lebih terperinciANALISA & PERANCANGAN SISTEM
ANALISA & PERANCANGAN SISTEM Database Design Mulyadi, S.Kom, M.S.I Conventional Files versus the Database 14-2 File Kumpulan record-record sejenis. File tidak terkait satu sama lain kecuali dalam kode
Lebih terperinciBab 10. Implementasi Sistem File POKOK BAHASAN: TUJUAN BELAJAR: 10.1 STRUKTUR SISTEM FILE
Bab 10 Implementasi Sistem File POKOK BAHASAN: Struktur Sistem File Implementasi Direktori Metode Alokasi Manajemen Ruang Bebas Efisiensi dan Performansi Perbaikan Sistem File Berstruktur Log Network File
Lebih terperinciBAB 2 TINJAUAN PUSTAKA. 2.1 Teori Kaitan Basis Data Bagian ini menjelaskan teori-teori yang menjelaskan basis data.
BAB 2 TINJAUAN PUSTAKA 2.1 Teori Kaitan Basis Data Bagian ini menjelaskan teori-teori yang menjelaskan basis data. 2.1.1 Definisi Data, Basis Data dan Sistem Basis Data Data adalah fakta, baik objek, variabel,
Lebih terperinciPraktikum Basis Data 2. BAB 1 : Pendahuluan
BAB 1 : Pendahuluan 1.1. Sasaran Memahami fitur-fitur Oracle9i Dapat menjelaskan aspek teori maupun fisik dari database relasional Menggambarkan Implementasi Oracle pada RDBMS dan ORDBMS 1.2. Oracle9i
Lebih terperinciPSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR
1 PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR Siti Mukaromah, S.Kom TEKNIK PENYAJIAN ALGORITMA Teknik Tulisan Structure English Pseudocode Teknik Gambar Structure Chart HIPO Flowchart 2 PSEUDOCODE Kode
Lebih terperincisistem basis data ti ti ukdw Indexing Materi Minggu ke-10 Teknik Informatika Universitas Kristen Duta Wacana Yogyakarta 04/07/13 budi susanto 1
Indexing Materi Minggu ke-10 Teknik Informatika Universitas Kristen Duta Wacana Yogyakarta 04/07/13 budi susanto 1 Tujuan Memahami Tujuan Index pada Database Memahami model dasar Index Memahami algoritma
Lebih terperinciBAB III 3. LANDASAN TEORI. manajemen dan individu lain terhadap kejadian-kejadian internal dan eksternal
BAB III 3. LANDASAN TEORI 3.1. Konsep Dasar Sistem Informasi Sistem informasi dapat dikatakan seperti suatu sistem yang terdapat pada suatu organisasi yang merupakan kumpulan dari individu, teknologi,
Lebih terperinciBAB III LANDASAN TEORI. organisasi yang merupakan kombinasi dari orang-orang, fasilitas, teknologi,
BAB III LANDASAN TEORI 3.1 Konsep Dasar Sistem Informasi Sistem informasi dapat didefinisikan sebagai suatu sistem di dalam suatu organisasi yang merupakan kombinasi dari orang-orang, fasilitas, teknologi,
Lebih terperinciSystem Technology Database 1. 2 Model Relational. Dahlia Widhyaestoeti, S.Kom dahlia74march.wordpress.
System Technology Database 1 2 Model Relational Dahlia Widhyaestoeti, S.Kom dahlia.widhyaestoeti@gmail.com dahlia74march.wordpress.com Model Relasional Setelah mengikuti pemelajaran pada topik ini, Anda
Lebih terperinciOperating System. File System. Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan. Dosen : Caca E. Supriana, S.Si
Operating System File System Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan Dosen : Caca E. Supriana, S.Si caca_emile@yahoo.co.id Konsep dan Atribut File System Konsep File Atribut File Operasi
Lebih terperinci3. Apa kekurangan paging sederhana dibandingkan dengan paging pada virtual memory?
Sistem Operasi (CSG3E3) IF-35-Gabungan & IF-35-07 Dosen: NGS Petunjuk umum: 1. Dikerjakan berkelompok 2. Tutup buku dan dilarang menggunakan laptop/alat komunikasi 3. Tulis jawaban di lembar soal pada
Lebih terperinciRelational Database & Pemodelan Data [Review]
Modul ke: 02 Alen Fakultas FASILKOM Relational Database & Pemodelan Data [Review] Pemrograman Basis Data & SQL Boby Hartanto, S.Kom,M.M. Program Studi Sistem Informasi Basis Data Relasional Pada pembuatan
Lebih terperinciINTERNET PROGRAMMING DATABASE
INTERNET PROGRAMMING DATABASE Muhmmad Zen Samsono Hadi, ST. MSc. zenhadi@eepis-its.edu POLITEKNIK ELEKTRONIKA NEGERI SURABAYA Bahasan Sistem Database ER Diagram Database MySQL Internet Application Pendahuluan
Lebih terperinciSISTEM BASIS DATA. Pendahuluan. Gentisya Tri Mardiani, S.Kom.,M.Kom
SISTEM BASIS DATA Pendahuluan Gentisya Tri Mardiani, S.Kom.,M.Kom Sistem Basis Data Sistem Basis Data merupakan suatu sistem yang terdiri dari kumpulan file yang saling berhubungan dan memungkinkan dilakukan
Lebih terperinciBAB 2 LANDASAN TEORI
BAB 2 LANDASAN TEORI 2.1 Konsep Sistem Basisdata 2.1.1 Latar Belakang Munculnya Penggunaan Basisdata Saat ini basisdata merupakan suatu teknologi yang tidak terpisahkan dalam kehidupan sehari-hari. Contohnya:
Lebih terperinciPENGENALAN BASIS DATA
PENGENALAN BASIS DATA Konsep Basis Data Secara logika data diorganisasikan kedalam : 1. Karakter, merupakan elemen dasar data logikal yang terdiri dari alfabet, angka, atau simbol lain yang memiliki arti.
Lebih terperinciSistem Basis Data BAB 8 MODEL DATA DAN ENTITY RELATIONSHIP MODEL. Komponen model data dapat dikategorikan menjadi 3 (tiga) bagian yang meliputi:
BAB 8 MODEL DATA DAN ENTITY RELATIONSHIP MODEL 8.1. Model Data Model data adalah sekumpulan konsep yang terintegrasi untuk mendiskripsikan data, hubungan antar data dan batasan batasannya dalam suatu organisasi.
Lebih terperinciMEDIA PENYIMPANAN BERKAS STRUKTUR & ORGANISASI DATA 1
MEDIA PENYIMPANAN BERKAS STRUKTUR & ORGANISASI DATA 1 Pendahuluan MEDIA PENYIMPANAN adalah peralatan fisik yang menyimpan representasi data. Media penyimpanan / storage atau memori dapat dibedakan atas
Lebih terperinciRANCANGAN DATABASE STORAGE ENGINE MENGGUNAKAN DATA DALAM FORMAT XML
RANCANGAN DATABASE STORAGE ENGINE MENGGUNAKAN DATA DALAM FORMAT XML Ashari Imamuddin Jurusan Teknik Informatika, Fakultas Ilmu Komputer, Universitas Bina Nusantara Jl. KH Syahdan 9 Kemanggisan, Jakarta
Lebih terperinciPengantar Basis Data SISTEM BASIS DATA I. WAN H. Manihuruk, S.kom
Pengantar Basis Data SISTEM BASIS DATA I WAN H. Manihuruk, S.kom Outline Database DBMS Levels of Abstraction Data Models Database Language Database Kumpulan file / tabel / arsip yang saling berhubungan
Lebih terperinci17/04/2015 SISTEM OPERASI
SISTEM OPERASI Prio Handoko, S. Kom., M.T.I. Program Studi Teknik Informatika Universitas Pembangunan Jaya Jl. Boulevard - Bintaro Jaya Sektor VII Tangerang Selatan Banten 15224 File-System Structure File-System
Lebih terperinciKONSEP DASAR STRUKTUR & ORGANISASI DATA 1
KONSEP DASAR STRUKTUR & ORGANISASI DATA 1 Pendahuluan Semua aplikasi komputer butuh menyimpan dan mengambil informasi. Ketika sebuah proses sedang berjalan, proses tersebut menyimpan sejumlah informasi
Lebih terperinciSISTEM BASIS DATA 1. WAHYU PRATAMA, S.Kom., MMSI.
SISTEM BASIS DATA 1 WAHYU PRATAMA, S.Kom., MMSI. PERTEMUAN 4 SBD 1 Model Data Relasional (Bagian 2) Relasional Keys. Relasional Integrity Rules. Bahasa pada Model Relasional. Relasional Keys Super Key
Lebih terperinciPertemuan Sistem Informasi SI adalah suatu suatu sistem dalam suatu organisasi yang merupakan
Pertemuan 2 1. Sistem Informasi SI adalah suatu suatu sistem dalam suatu organisasi yang merupakan kombinasi dari orang-orang, fasilitas, teknologi, media, prosedur dan pengendalian untuk mendapatkan jalur
Lebih terperinciBAB II SISTEM BASIS DATA
SISTEM BASIS DATA BAB II SISTEM BASIS DATA Tujuan Mengerti yang dimaksud dengan Sistem Basis Data dan komponen-komponennya Mengetahui abstraksi data yang menunjukkan bagaimana para pemakai melihat data
Lebih terperinciBAB III LANDASAN TEORI. Jasa akan selalu melekat pada sumbernya atau pada penjualnya. Dengan
BAB III LANDASAN TEORI 3.1 Jasa Menurut Kotler (1997:83), jasa adalah setiap tindakan atau kegiatan yang dapat ditawarkan oleh satu pihak kepada pihak lain, yang pada dasarnya tidak berwujud dan tidak
Lebih terperinciBasis Data Relational
Basis Data Relational Kebanyakan model yang digunakan adalah Model basis data relasional dengan menggunakan Relational Database Management System (RDBMS). RDBMS menyediakan layanan pengorganisasian data
Lebih terperinciBasis Data Spasial Modul 2
Basis Data Spasial Modul 2 Modul 2 Arsitektur DBMS Tabel Data Manipulation Language (DML) Data Definition Language (DDL) LATIHAN Data Base Management System (DBMS) Perangkat lunak (software) untuk mengelola
Lebih terperinciPengenalan Basis Data
Overview Pengenalan Basis Data Sistem Database ER Diagram Database MySQL Acep Irham Gufroni, M.Eng. Pemrograman Internet Teknik Informatika Univ. Siliwangi Internet Application Intro Menyimpan data dalam
Lebih terperinciBAB II. 2.1 Model Data High Level Data Model (Conceptual Data Model)
BAB II PENGEMBANGAN SISTEM BASIS DATA Bab ini akan membahas lebih lanjut mengenai arsitektur sistem basis data dan pengembangan sistem basis data. Sistem basis data tidak berdiri sendiri, tetapi selalu
Lebih terperinciBAB 3 ANALISIS DAN PERANCANGAN. menentukan dan mengungkapkan kebutuhan sistem. Kebutuhan sistem terbagi menjadi
BAB 3 ANALISIS DAN PERANCANGAN 3. Analisis Kebutuhan Sistem Hal pertama yang perlu dilakukan dalam analisis kebutuhan sistem adalah menentukan dan mengungkapkan kebutuhan sistem. Kebutuhan sistem terbagi
Lebih terperinciARSITEKTUR SISTEM BASIS DATA
BAB I ARSITEKTUR SISTEM BASIS DATA Arsitektur system basis data memberikan kerangka kerja bagi pembangunan basis data. 1.1 LEVEL ARSITEKTUR BASIS DATA Menurut ANSI/SPARC, arsitektur basis data terbagi
Lebih terperinciPemrosesan File. Jatnika 1. Kumpulan atau koleksi item yang tersimpan dalam media penyimpanan sekunder Processor.
Pemrosesan File Copyright @Ihsan Jatnika 1 File Kumpulan atau koleksi item yang tersimpan dalam media penyimpanan sekunder Processor Main Memory Secondary Storage Files 2 Jenis File File Dokumen Kumpulan
Lebih terperinciSistem Berkas sesi 3 1
Sistem Berkas sesi 3 1 BLOKING DAN BUFFERING A. BLOK DAN SEKTOR B. RECORD DAN BLOCKING C. BUFFER 2 A. BLOK DAN SEKTOR Blok adalah satuan dari unit data yang ditransfer dari memori utama ke momori sekunder
Lebih terperinciBAB III LANDASAN TEORI. organisasi yang pada saat dilaksanakan akan memberikan informasi bagi pengambil
11 BAB III LANDASAN TEORI 3.1 Sistem Informasi Menurut (Ladjamudin, 2005), Sistem informasi adalah sekumpulan prosedur organisasi yang pada saat dilaksanakan akan memberikan informasi bagi pengambil keputusan
Lebih terperinciChapter 4 Internal Memory
Chapter 4 Internal Memory Karakteristik Lokasi Kapasitas Satuan transfer Metode akses Kinerja Tipe p fisik Karakteristik fisik Organisasi Oga a Lokasi CPU/Prosesor Internal/utama External/tambahan Kapasitas
Lebih terperinciStruktur Data. PDE - Struktur Data 1
Struktur Data Copyright@Ihsan Jatnika PDE - Struktur Data 1 Objektif Mengetahui maksud struktur data dan menjelaskan penggunaannya dalam pemrograman Mengetahui operasi yang terkait dengan struktur data
Lebih terperinciBAB 1 PENDAHULUAN. satu hal yang sangat dominan dan terjadi dengan sangat pesat. Informasi
BAB 1 PENDAHULUAN 1.1 Latar Belakang Di era globalisasi ini, perkembangan teknologi informasi sudah merupakan satu hal yang sangat dominan dan terjadi dengan sangat pesat. Informasi merupakan suatu kebutuhan
Lebih terperinciIKI 20100: Struktur Data & Algoritma
IKI 20100: Struktur Data & Algoritma B Tree Ruli Manurung & Ade Azurat ( Setiawan (acknowledgments: Denny, Suryana Fasilkom UI Ruli Manurung & Ade Azurat Fasilkom UI - IKI20100 2007/2008 Ganjil Minggu
Lebih terperinciSISTEM BASIS DATA. Pendahuluan. Gentisya Tri Mardiani, M.Kom
SISTEM BASIS DATA Pendahuluan Gentisya Tri Mardiani, M.Kom Sistem Basis Data Sistem Basis Data merupakan suatu sistem yang terdiri dari kumpulan file yang saling berhubungan dan memungkinkan dilakukan
Lebih terperinciModel Relasional Basis Data
Modul ke: 03 Sabar Fakultas ILMU KOMPUTER Model Relasional Basis Data Mata Kuliah: Basis Data Rudiarto, S.Kom., M.Kom. Program Studi Teknik Informatika Materi Yang Akan Disampaikan Pengertian Keuntungan
Lebih terperinciBAB 2 LANDASAN TEORI
BAB LANDASAN TEORI.1 Defenisi Pangkalan Data Pangkalan data atau Database merupakan kumpulan dari item data yang saling berhubungan satu dengan yang lainnya yang diorganisasikan berdasarkan sebuah skema
Lebih terperinciMEMAHAMI KONSEP DATABASE. Oleh : Yuhefizar, S.Kom
MEMAHAMI KONSEP DATABASE Oleh : Yuhefizar, S.Kom Database Management System(DBMS) merupakan paket program (Software) yang dibuat agar memudahkan dan mengefisienkan pemasukan, pengeditan, penghapusan dan
Lebih terperinciPertemuan Transformasi ER-MODEL INDIKATOR. 1. Memahami ER model 2. Menerapkan transformasi ER- Model ke Model Relasional.
Pertemuan 4-5-6 Transformasi ER-MODEL INDIKATOR 1. Memahami ER model 2. Menerapkan transformasi ER- Model ke Model Relasional. URAIAN MATERI PERANCANGAN DATABASE Perancangan Database adalah proses untuk
Lebih terperinciKonsep Basis Data (Lanjut)
Konsep Basis Data (Lanjut) http://www.brigidaarie.com Bahasa Basis Data bahasa yang digunakan oleh user untuk berkomunikasi/berinteraksi dengan DBMS yang bersangkutan Contoh : SQL, dbase, QUEL dsb Bahasa
Lebih terperinciMODUL PEMPROGRAMAN SQL TINGKAT DASAR 1 STANDAR KOMPETENSI: MENERAPKAN BAHASA PEMPROGRAMAN SQL TINGKAT DASAR SMK NEGERI 1 MAJALENGKA
MODUL PEMPROGRAMAN SQL TINGKAT DASAR 1 STANDAR KOMPETENSI: MENERAPKAN BAHASA PEMPROGRAMAN SQL TINGKAT DASAR SMK NEGERI 1 MAJALENGKA PENGANTAR SQL TINGKAT DASAR Basisdata atau database adalah kumpulan dari
Lebih terperinciBAB II DASAR TEORI. 2.1 Konsep Dasar Sistem Aplikasi Pengertian Sistem. Pengertian sistem adalah kumpulan dari elemen-elemen yang berinteraksi
BAB II DASAR TEORI 2.1 Konsep Dasar Sistem Aplikasi 2.1.1 Pengertian Sistem Pengertian sistem adalah kumpulan dari elemen-elemen yang berinteraksi untuk mencapai suatu tujuan tertentu. Suatu sistem mempunyai
Lebih terperinciANALISA RANCANGAN NORMALISASI & DATABASE
ANALISA RANCANGAN NORMALISASI & DATABASE Pertemuan 10 LANGKAH BENTUK NORMALISASI: BENTUK TIDAK NORMAL UNNORMALIZED FIRST NORMAL FORM (INF) SECOND NORMAL FORM (2NF) MENGHILANGKAN ELEMEN DATA BERULANG MENGHILANGKAN
Lebih terperinciBAB III ANALISA DAN DESAIN SISTEM
III.1 BAB III ANALISA DAN DESAIN SISTEM III.1 Analisis Sistem yang Berjalan Sistem yang sedang berjalan belum tersedia sistem informasi yang berbasis komputer atau dengan kata lain masih dengan cara manual.
Lebih terperinciXML extensible Markup Language. Oleh: Nisa Miftachurohmah, S. Kom
XML extensible Markup Language Oleh: Nisa Miftachurohmah, S. Kom Pengenalan XML EXtensible Markup Language (XML) merupakan sebuah bahasa markup yang digunakan untuk menandai suatu dokumen data. Markup
Lebih terperinciBAB II LANDASAN TEORI. bidang media komunikasi dan informasi. Internet adalah suatu jaringan komputer
BAB II LANDASAN TEORI 2.1 World Wide Web Dunia internet semakin berkembang, terutama penggunaanya dalam bidang media komunikasi dan informasi. Internet adalah suatu jaringan komputer global, sedangkan
Lebih terperinciBAB 2 LANDASAN TEORI. penelitian. Teori - teori yang akan dibahas antara lain : dapat dijadikan bahan kajian (analisis atau kesimpulan).
BAB 2 LANDASAN TEORI 2.1 Teori Umum Pada teori umum ini disajikan teori yang relevan, lengkap dan urut sejalan dengan permasalahan. Teori umum ini dikemukakan dari sumber teori dan hasil penelitian. Teori
Lebih terperinciBasis Data Pertemuan 3. Weny Mistarika R.
Basis Data Pertemuan 3 Weny Mistarika R. Acara perkuliahan hari ini Review materi dan tugas minggu lalu Langkah-langkah pembuatan basis data (bagian 1) Arsitektur basis data Basis data terdiri dari 3 level
Lebih terperinciBasis Data. Pengantar Basis Data. By: De Rosal, Ign. Moses S.
Basis Data Pengantar Basis Data By: De Rosal, Ign. Moses S. DATA Fakta-fakta yang dapat disimpan dan mempunyai arti tertentu. Fakta mengenai obyek, orang, dll. Dinyatakan dengan nilai (angka, deretan karakter,
Lebih terperinciBASIS DATA MODEL BASIS DATA
BASIS DATA MODEL BASIS DATA APA ITU MODEL BASIS DATA? Model database menunjukkan struktur logis dari suatu basis data, termasuk hubungan dan batasan yang menentukan bagaimana data dapat disimpan dan diakses.
Lebih terperinciBAB 2 LANDASAN TEORI
BAB 2 LANDASAN TEORI 2.1 Teori Basis Data 2.1.1 Pengertian Data Menurut Turban (2003, p2), data ialah fakta yang belum diolah atau gambaran dari transaksi yang ditangkap, direkam, disimpan dan diklasifikasikan.
Lebih terperinciTIPE DATA, VARIABLE, dan OPERATOR DELPHI
TIPE DATA, VARIABLE, dan OPERATOR DELPHI A. TIPE DATA Delphi merupakan bahasa pemrograman tingkat tinggi yang mendukung perancangan terstruktur dan berorientasi Object. Bahasa pemrograman ini berdasarkan
Lebih terperinciPertemuan 3 dan 4 : MODEL DATA RELASIONAL
Pertemuan 3 dan 4 : MODEL DATA RELASIONAL Tujuan Instruksional Khusus : Mahasiswa dapat menjelaskan pengertian model data relasional, istilah-istilah dalam model data relasional, jenis-jenis kunci relasional,
Lebih terperinciRancangan Database. Database. File. Record. Data item atau field. Characters
ANALISA RANCANGAN DATABASE Rancangan Database Database File Record Data item atau field Characters TEKNIK NORMALISASI Merupakan proses pengelompokan data elemen menjadi tabel-tabel yang menunjukkan entity
Lebih terperinciMedia Penyimpanan Berkas. Rudi Susanto
Media Penyimpanan Berkas Rudi Susanto rudist87@gmail.com Media Penyimpanan Adalah peralatan fisik yang menyimpan representasi data. Media penyimpanan / storage atau memori dapat dibedakan atas 2 bagian
Lebih terperinciINTEGRITAS BASIS DATA. OLEH : Slamet Sn Wibowo Wicaksono
INTEGRITAS BASIS DATA OLEH : Slamet Sn Wibowo Wicaksono Integrity Constraint (Batasan Integritas) Constraint (batasan) merupakan aturan yang diberikan pada suatu tabel agar data yang dimasukkan terjamin
Lebih terperinciB-Tree dan Penerapan di Basis Data
B-Tree dan Penerapan di Basis Data Aldyaka Mushofan-13512094 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung 40132, Indonesia
Lebih terperinciLATAR BELAKANG IBM San Jose Research Laboratory.
SQL LATAR BELAKANG SQL merupakan bahasa basis data relasional standard. Terdapat macam-macam versi SQL. Versi aslinya pertama kali dikembangkan oleh IBM San Jose Research Laboratory. 2 LATAR BELAKANG Bahasa
Lebih terperinciDisk & Memory Semester Ganjil 2014 Fak. Teknik Jurusan Teknik Informatika.
Disk & Memory Semester Ganjil 2014 Fak. Teknik Jurusan Teknik Informatika Universitas i Pasundan Caca E Supriana S Si MT Caca E. Supriana, S.Si.,MT. caca.e.supriana@unpas.ac.id Pengelolaan Record dalam
Lebih terperinciSilabus. 3. Media Penyimpanan Berkas. 6. Organisasi File. 7. Collision. 2. Manajemen Data dan Konsep Database
Silabus 1. Pendahuluan 2. Manajemen Data dan Konsep Database 3. Media Penyimpanan Berkas 4. Parameter Media Penyimpanan Sekunder dan 5. Metode Blocking 6. Organisasi File 7. Collision * File Pile * File
Lebih terperinci1. Jelaskan karakteristik memori lengkap beserta contohnya
Nama : DIYANAH AFIFAH NIM : 11018094 Tugas : Tugas3 ORKOM 1. Jelaskan karakteristik memori lengkap beserta contohnya a. Location Ada tiga lokasi keberadaan memori di dalam sistem komputer, yaitu: Memory
Lebih terperinciBAB III LANDASAN TEORI. adalah sebagai berikut: Sistem adalah suatu jaringan kerja dari prosedur-prosedur
BAB III LANDASAN TEORI 3.1 Konsep Dasar Sistem Informasi Terdapat dua kelompok pendekatan di dalam mendefinisikan sistem, yaitu yang menekankan pada prosedurnya dan yang menekankan pada komponen atau elemennya.
Lebih terperinciOrganisasi File Multi Key y( (Index)
Organisasi File Multi Key y( (Index) Pengertian Organisasi berkas yang memperbolehkan record diakses oleh lebih dari satu key field disebut organisasi berkas dengan banyak key. Ada banyak teknik yang dipakai
Lebih terperinciDatabase Systems: Ch. 3: The Relational Model. History of The Relational Model. Learning Objectives
1 Database Systems: Thomas Connolly, Carolyn Begg, Database System, A Practical Approach to Design Implementation and Management, 4 th Edition, Addison Wesley History of The Relational Model Terminology
Lebih terperinciPROCEDURE DIVISION (lanjutan)
PROCEDURE DIVISION (lanjutan) Statement PERFORM...THROUGH/THRU Bentuk statement ini akan membawa proses menuju ke paragraf yang dituju kemudian melanjutkan sampai ke paragraf yang disebutkan setelah THROUGH/THRU.
Lebih terperinciBAB III LANDASAN TEORI
BAB III LANDASAN TEORI 3.1 Konsep Dasar Sistem Informasi 3.1.1 Sistem Menurut Sari Murdowati (1998; 1), definisi sistem merupakan sekumpulan komponen terintegrasi untuk mencapai suatu tujuan. Sedangkan
Lebih terperinciBAB 2 LANDASAN TEORI
BAB 2 LANDASAN TEORI 2.1 Data Data adalah aliran fakta yang mewakili kejadian yang terjadi dalam organisasi atau dalam lingkungan fisik sebelum diatur menjadi sebuah bentuk yang dapat dimengerti dan digunakan
Lebih terperinciLINGKUNGAN BASIS DATA
LINGKUNGAN BASIS DATA TUJUAN PEMBELAJARAN Menjelaskan tingkat arsitektur basis data Menjelaskan komponen DBMS, fungsi DBMS serta bahasa yang digunakan dalam DBMS Menjelaskan perbedaan model data berbasis
Lebih terperinci