bab 2 landasan teori 2.1 teori umum 2.1 -...

29
7 BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Data Menurut Connoly dan Begg (2002, p19-20) data adalah komponen yang paling penting dalam DBMS, berasal dari sudut pandang pengguna akhir. Data bertindak sebagai jembatan yang menghubungkan antara mesin dengan user. Menurut O’Brien (2003, p13) data adalah fakta-fakta atau observasi yang mentah, biasanya mengenai kejadian / transaksi bisnis. Menurut Whitten (2004, p27) data adalah fakta mentah mengenai orang, tempat, kejadian, dan hal-hal penting dalam organisasi. Jadi arti data adalah fakta-fakta mengenai segala sesuatu yang dapat diolah untuk menghasilkan informasi yang akan dipakai dalam melakukan transaksi-transaksi di perusahaan / organisasi. 2.1.2 Basis Data Menurut Whitten (2004, p548) basis data adalah kumpulan file yang saling terkait. Connolly dan Begg (2002, p15-16) menjelaskan bahwa basis data adalah kumpulan data yang terhubung secara logis yang digunakan bersama-sama dan

Upload: hathuan

Post on 30-Mar-2019

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

BAB 2

LANDASAN TEORI

2.1 Teori Umum

2.1.1 Data

Menurut Connoly dan Begg (2002, p19-20) data adalah komponen yang

paling penting dalam DBMS, berasal dari sudut pandang pengguna akhir. Data

bertindak sebagai jembatan yang menghubungkan antara mesin dengan user.

Menurut O’Brien (2003, p13) data adalah fakta-fakta atau observasi yang

mentah, biasanya mengenai kejadian / transaksi bisnis.

Menurut Whitten (2004, p27) data adalah fakta mentah mengenai orang,

tempat, kejadian, dan hal-hal penting dalam organisasi.

Jadi arti data adalah fakta-fakta mengenai segala sesuatu yang dapat

diolah untuk menghasilkan informasi yang akan dipakai dalam melakukan

transaksi-transaksi di perusahaan / organisasi.

2.1.2 Basis Data

Menurut Whitten (2004, p548) basis data adalah kumpulan file yang

saling terkait.

Connolly dan Begg (2002, p15-16) menjelaskan bahwa basis data adalah

kumpulan data yang terhubung secara logis yang digunakan bersama-sama dan

Page 2: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

 

deskripsi dari data tersebut yang dirancang untuk memenuhi kebutuhan

informasi sebuah organisasi.

Menurut O’Brien (2003, p145) basis data adalah sebuah kumpulan yang

terintegrasi dari elemen data yang terhubung secara logikal. Elemen data

mendeskripsikan entitas dan hubungan antar entitas.

Menurut Hoffer (2002, p4) basis data adalah kumpulan data yang

teroganisir dan secara logika berkaitan. Terorganisir maksudnya adalah data

distrukturkan sehingga mudah untuk disimpan, dimanipulasi, dan diperoleh oleh

user. Berkaitan maksudnya adalah data menggambarkan daerah asal (domain)

kepentingan tertentu bagi kelompok user dan user dapat menggunakan data

untuk menjawab pertanyaan seputar domain itu.

Jadi, basis data adalah kumpulan data atau koleksi file atau record yang

berfungsi untuk menyimpan data yang saling berhubungan dan terstruktur

sehingga mudah untuk disimpan, diperoleh kembali, dimanipulasi dan dapat

memenuhi kebutuhan informasi dari suatu organisasi.

2.1.3 Database Management System (DBMS)

Menurut Whitten (2004, p550) Database Management System (DBMS)

adalah perangkat lunak khusus yang digunakan untuk membuat, mengontrol,

dan mengelola sebuah basis data.

Connolly dan Begg (2002, p16) menerangkan bahwa Database

Management System (DBMS) adalah sistem perangkat lunak yang

Page 3: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

 

memungkinkan user untuk mendefinisikan, membuat, memelihara, dan

mengontrol akses ke basis data.

Secara umum ada beberapa fasilitas yang disediakan oleh DBMS, antara

lain:

a. Memungkinkan user untuk mendefinisikan basis data, secara umum ialah

dengan menggunakan Data Definition Language (DDL). Dengan DDL ini,

user bisa menentukan tipe data dan juga struktur dari data yang akan

disimpan dalam basis data.

b. Memungkinkan user untuk melakukan Insert, Update, Delete dan

mengambil data dari dalam basis data, yang secara umum menggunakan

Data Manipulation Language (DML).

c. Menyediakan akses control basis data. Contohnya, DBMS menyediakan:

• Security system yang menjaga agar basis data hanya bisa diakses oleh

orang yang mempunyai otoritas.

• Integrity system yang menjaga konsistensi dari data yang disimpan.

• Concurrency control system yang memperbolehkan untuk melakukan

shared access pada basis data.

• Recovery control system yang akan memulihkan basis data pada keadaan

sebelumnya apabila terjadi kegagalan software.

• User-accessible catalog yang berisi deskripsi data pada basis data.

Komponen DBMS:

• Perangkat keras

Page 4: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

10 

 

DBMS dan aplikasi yang dibuat memerlukan perangkat keras

untuk bisa berjalan dengan baik. Perangkat keras yang akan digunakan

bisa bermacam-macam, antara lain Personal Computer (PC), mainframe,

atau jaringan komputer.

• Perangkat lunak

Komponen perangkat lunak terdiri dari DBMS itu sendiri dan

juga aplikasi program, bersama-sama dengan sistem operasi termasuk

jaringannya jika DBMS digunakan dalam sebuah jaringan.

• Data

Data adalah bagian terpenting dari komponen-komponen DBMS.

Data adalah jembatan penghubung antara komponen mesin dan

komponen manusia.

• Procedures

Procedures menunjuk pada instruksi dan aturan yang

menentukan desain dan penggunaan dari basis data. User yang mengatur

basis data memerlukan documented procedures untuk mengetahui

bagaimana cara menggunakan sistem tersebut.

• Manusia

Komponen terakhir adalah manusia yang terlibat dalam sistem

tersebut.

Page 5: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

11 

 

2.1.4 Statistic

2.1.4.1 Index Statistic

Petković (2008, p490) menerangkan bahwa index statistic secara umum

dibuat ketika index pada kolom tertentu dibuat. Pembuatan index statistic untuk

sebuah index berarti bahwa database engine membuat histogram berdasarkan

nilai sampai dengan 200 nilai pada kolom itu (Dengan demikian, terdapat 199

jangkauan yang akan dibuat). Histogram ini memberikan spesifikasi, antara lain,

berapa banyak baris yang sesuai dengan setiap jangkauan itu, jumlah rata-rata

baris dari nilai unik yang terdapat dalam setiap jangkauan, dan kepadatan dari

nilai tersebut.

Index statistic dapat dibuat secara eksplisit dengan beberapa alat bantu

yaitu:

• sp_createstats system procedure

sp_createstats system procedure membuat statistik kolom tunggal

untuk setiap kolom untuk setiap user table dalam basis data yang

sedang digunakan. Statistik baru memiliki nama yang sama dengan

nama kolom tempat statistik itu dibuat.

• SQL Server Management Studio

Sebagaimana data dalam sebuah kolom selalu berubah, maka index

statistic akan menjadi kadaluarsa. Keadaan seperti ini akan mempengaruhi

kinerja dari query secara signifikan. Database engine dapat secara otomatis

meng-update index statistic jika pilihan basis data

AUTO_UPDATE_STATISTICS diaktifkan. Pada keadaan ini, statistik

Page 6: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

12 

 

kadaluarsa yang diperlukan oleh query untuk optimasi secara otomatis akan di-

update selama optimasi query.

Ada juga pilihan basis data yang lain, yaitu

AUTO_CREATE_STATISTICS, yang membuat kembali statistik yang telah

hilang, yang diperlukan oleh query untuk proses optimasi. Kedua pilihan ini

dapat diaktifkan/non-aktifkan dengan menggunakan statement ALTER

DATABASE atau SQL Server Management Studio.

2.1.4.2 Column Statistic

Petković (2008, p491) juga menerangkan bahwa sistem juga dapat

membuat index untuk kolom yang belum memiliki index yang disebut juga

dengan column statistic. Bersama dengan index statistic, column statistic

digunakan untuk mengoptimasi execution plan.

Database engine membuat statistik bahkan untuk kolom tanpa index

yang merupakan bagian dari kondisi dalam klausa WHERE.

Ada beberapa situasi dimana keberadaan dari column statistic dapat

membantu alat optimasi dalam menghasilkan keputusan yang tepat. Satu

diantaranya ialah ketika adanya sebuah composite index pada dua atau lebih

kolom. Pada index ini, sistem membuat statistik hanya pada kolom pertama

dalam index tersebut. Keberadaan column statistic untuk kolom kedua (dan

untuk kolom-kolom yang lain) dari composite index dapat membantu alat

optimasi untuk memilih execution plan yang optimal.

Page 7: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

13 

 

Database engine mendukung dua catalog view dalam hubungannya

dengan column statistic (view ini digunakan untuk mengubah informasi yang

memperhatikan index statistic):

• sys.stats

View sys.stats mengandung sebuah baris untuk setiap statistik pada sebuah

tabel atau view. Selain nama kolom, yang dimana menspesifikasikan nama

dari statistik, catalog view ini memiliki dua kolom yang lain:

o auto_created

auto_created adalah statistik yang dibuat oleh alat optimasi.

o user_created

user_created merupakan statistik yang secara eksplisit dibuat oleh user.

• sys.stats_columns

View sys.stats_column mengandung informasi tambahan yang

memperhatikan kolom sebagai bagian dari view sys.stats.

2.1.5 Index

Menurut Whalen (2001, p339) index adalah alat bantu struktur data yang

digunakan oleh DBMS dalam pengaksesan data. Index akan dibuat di dalam

tabel-tabel dalam basis data tersebut. Satu tabel dapat memiliki satu atau lebih

index yang berguna untuk menunjuk data yang ada dalam tabel tersebut.

Berdasarkan tipenya, index data bisa bersama dengan table data atau secara

terpisah.

Page 8: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

14 

 

Tanpa index, semua data diperoleh melalui table scans yang berarti

bahwa semua data yang ada dalam tabel akan dibaca secara sekuensial dan

dibandingkan dengan data yang diminta. Hal ini harus dihindari karena table

scans akan menghasilkan banyak sekali I/O (kecuali pemilihan data dengan

persentase tinggi dari tabel). Tabel yang sangat besar mengkonsumsi banyak

sekali sumber daya sistem ketika proses table scan dilakukan. Dengan

menggunakan index yang tepat, jumlah operasi I/O yang dibutuhkan untuk

mencari data yang tepat bisa dikurangi secara signifikan.

Index secara umum terstruktur seperti B-tree, dimana struktur tersebut

dimulai dengan sebuah root node. Root node mengandung index rows yang

mengandung beberapa jangkauan nilai dari index key dan pointer ke index node

selanjutnya yang disebut juga dengan branch node. Branch node ini juga dapat

mengandung index row dengan nilai yang menunjuk ke branch node yang lain.

Setiap level dari branch node disebut juga dengan index level.

Node yang berada pada level terendah dari index disebut juga dengan

leaf node. Leaf node mengandung data index key dan informasi lainnya dimana

referenced data berada atau data itu sendiri, tergantung dari tipe index, apakah

clustered atau non clustered.

Page 9: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

15 

 

Gambar 2. 1 Contoh sebuah index

Gambar 2. 2 Struktur Index

Page 10: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

16 

 

Secara umum index terbagi ke dalam beberapa tipe yang akan dijelaskan

dalam sub bab berikut:

2.1.5.1 Clustered Index

Whalen (2001, p341) menyatakan bahwa clustered index merupakan

urutan data harus disimpan di tabel secara fisikal. Tabel data diurutkan dan

disimpan berdasarkan key column atau kolom yang dispesifikasikan untuk

clustered index. Tipe index ini dapat disamakan dengan sebuah kamus, dimana

informasi disimpan dengan urutan alphabetic dan menyediakan informasi untuk

mencari data dengan cepat. Index ini menyatu dengan datanya, jadi seperti

kamus yang menyediakan arti dari sebuah kata tepat di sebelahnya.

Gambar 2. 3 Struktur Clustered Index

Page 11: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

17 

 

2.1.5.2 Nonclustered Index

Whalen (2001, p343) menyatakan bahwa index ini berbeda dengan

clustered index yang menyatu dengan data. Nonclustered index dapat

dianalogikan seperti buku yang mempunyai index di halaman akhirnya. Index ini

memberi indikasi tentang halaman mana yang akan dituju, tetapi datanya tidak

terdapat dalam index tersebut.

Gambar 2. 4 Struktur Nonclustered Index

2.1.5.3 Unique Index

Whalen (2001, p345) menyatakan bahwa unique index adalah index yang

dapat berupa clustered atau non clustered yang diciptakan secara spesifik untuk

menjadi unik. Nilai yang dimasukkan ke dalam kolom yang menjadi nilai kunci

Page 12: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

18 

 

atau kolom haruslah unik. Hal ini berarti nilai duplikat tidak diperbolehkan.

Untuk composite key, nilai kombinasi dari nilai haruslah unik.

2.1.5.4 Indexes on Calculated Columns

Whalen (2001, p344) menyatakan bahwa versi SQL Server yang

sebelumnya memperbolehkan arsitektur data untuk mendefinisikan kolom

virtual yang dihasilkan dari perhitungan yang berdasarkan satu atau lebih kolom

lain pada tabel yang sama. Hal ini baik sampai seorang user secara tidak

waspada mencoba melakukan query pada sebuah tabel menggunakan virtual

kolom sebagai satu-satunya kriteria. Tanpa sebuah index dalam kolom yang

digunakan, SQL Server harus melakukan scan pada tabel itu dan

memperhitungkan setiap kemungkinan yang didapat untuk memenuhi query

tersebut.

2.1.5.5 Indexed Views

Whalen (2001, p344) menyatakan bahwa indexed views merupakan

index yang membahayakan, karena dapat meningkatkan jumlah I/O dalam

sistem secara signifikan, tetapi index ini menawarkan solusi kepada banyak

masalah query pada umumnya.

Satu kekurangan yang terdapat dalam indexed views ialah keharusan

untuk membuat clustered index pada PRIMARY KEY yang didefinisikan dalam

view. Ini artinya, semua view yang diberikan index harus mempunyai kolom atau

sekumpulan kolom yang selalu unik. Banyak view tidak di desain untuk

Page 13: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

19 

 

keperluan ini, jadi untuk memenuhi kebutuhan ini diperlukan pemikiran yang

kreatif.

2.1.5.6 Full-Text Index

Whalen (2001, p345) menyatakan bahwa full-text index lebih kompleks

dibandingkan dengan tipe-tipe index sebelumnya. Index ini lebih seperti sebuah

katalog. Selain melakukan pencarian dalam struktur B-Tree yang terurut, index

ini memungkinkan untuk melakukan pencarian dengan menggunakan kumpulan

kata kunci. Full-Text index ini biasanya digunakan secara ekstensif dalam

sebuah website search engine dan operasi berbasis teks lainnya.

2.2 Teori Khusus

2.2.1 SQL Server

Leiter (2008, p1) menyatakan bahwa mulanya Microsoft masuk ke dalam

ruang basis data perusahaan pada tahun 1987 ketika membentuk kerja sama

antara Sybase dengan pasar DataServer Sybase produk Microsoft / IBM OS / 2

platform. Dari kemitraan tersebut, muncul SQL Server 1.0 yang pada dasarnya

versi UNIX Sybase’s DataServer di-porting ke OS /2.

Setelah beberapa tahun, para pengembang di Microsoft diperbolehkan

untuk lebih banyak lagi mengakses ke sumber kode Sybase untuk pengujian dan

keperluan debug, tetapi aplikasi inti SQL Server terus berlanjut menjadi produk

Sybase sampai SQL Server 4.2 dirilis untuk Windows NT pada Maret 1992.

Page 14: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

20 

 

SQL server 4.2 merupakan produk pertama yang dikembangkan oleh

Sybase dan Microsoft. Untuk mesin basis data masih Sybase yang menangani,

tetapi alat dan perpustakaan basis data dikembangkan oleh Microsoft. Sementara

SQL Server dikembangkan untuk dijalankan di OS/2 platform, Windows NT

dirilis di era yang baru. Para pengembang Microsoft meninggalkan

pengembangan OS/2 dan fokus pada versi SQL Server untuk Windows NT.

Seiring bertumbuhnya kesuksesan pada Sybase dalam pasar UNIX dan

Microsoft pada Windows, kedua perusahaan mendapati diri mereka dapat

bersaing untuk pangsa pasar yang pada dasarnya produk dikembangkan oleh

Sybase. Akhirnya, pada tahun 1994, kedua perusahaan mengakhiri kesepakatan

bersama dalam pengembangan mereka, dan Sybase memberikan lisensi terbatas

kepada Microsoft untuk menggunakan dan memodifikasi teknologi Sybase

secara eksklusif yang berjalan pada Windows.

Setahun kemudian, pada bulan Juni 1995, Microsoft meluncurkan versi

pertama SQL Server yang dikembangkan secara eksklusif oleh pengemban g

Microsoft – SQL Server 6.0 – tetapi teknologi intinya sebagian besar masih kode

yang berbasis Sybase. Kurang dari setahun kemudian, banyak perubahan telah

dibuat, dan Microsoft meluncurkan SQL Server 6.5 pada bulan April 1996.

Dengan kelengkapan SQL Server 6.5, para pengembang dari tim SQL

Server mulai bekerja pada sistem kode basis data baru yang bernama Sphinx.

Kode berbasis Sybase ditulis ulang hampir dari nol untuk Sphinx, dan hanya

sedikit kode yang tetap yang menunjukkan awal SQL Server pada OS/2.

Page 15: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

21 

 

Pada Desember 1998, Sphinx secara resmi dirilis sebagai SQL Server

7.0. Perubahan dari SQL Server 6.5 mudah dilihat dari detik pertama database

administrator meluncurkan sebuah Enterprise Manager yang baru. Akhirnya,

telah ada sistem basis data yang kuat dan dapat diandalkan serta mudah dikelola,

dipelajari, dan cukup kuat untuk banyak bisnis.

Ketika SQL Server 7.0 telah dirilis, versi baru sudah dalam tahap

pembangunan yaitu kode bernama Shiloh. Shiloh menjadi SQL Server 2000 dan

dirilis pada bulan Agustus 2000. Perubahan yang mendasari adalah mesin data

yang minim, dan banyak perubahan menarik yang memberi dampak pada

penambahan isu skalabilitas SQL Server (seperti indexed views dan server basis

data yang disatukan), bersama dengan peningkatan seperti cascading referential

intergrity.

Selama beberapa tahun berikutnya, tim SQL mengerjakan suatu kode

yang dirilis lebih kuat dan menarik bernama Yukon, yang sekarang dikenal

dengan SQL Server 2005.

Pada Agustus 2008, Microsoft SQL Server 2008 dirilis untuk manufaktur

(RTM). Sementara SQL Server 2008 tidak memiliki banyak pergeseran

paradigma dari SQL Server 2005 yang pendahulunya adalah SQL Server 2000,

maka SQL Server 2008 mengandung banyak peningkatan dan fitur-fitur baru

yang membuat upgrade-nya menjadi menarik.

Page 16: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

22 

 

2.2.2 SQL Server 2008

Leiter (2008, p3) menyatakan bahwa SQL Server 2008 sangat dikenal

sebagai Relational Database Management System (RDBMS). Namun tidak

hanya itu saja, tetapi juga dapat lebih akurat digambarkan sebagai data

enterprise platform yang dibangun di atas banyak fitur yang pertama kali

didirikan di SQL Server 2005. Sementara itu, SQL Server 2008 juga

memperluas penawaran untuk menyertakan beberapa perbaikan dan

penambahan. Karena dikenal dengan peran sebagai RDBMS tradisional, SQL

Server 2008 juga menyediakan kemampuan reporting, analisis data yang kuat

dan data mining. SQL Server 2008 tentunya juga mempunyai fitur-fitur yang

mendukung aplikasi data yang berbeda, data-driven event notification dan masih

banyak lagi.

2.2.3 Edisi SQL Server 2008

Leiter (2008, p7) menyatakan bahwa SQL Server 2008 diciptakan

dengan berbagai edisi dengan tujuan yang berbeda-beda dan masing-masing

memiliki tempat khusus dalam infrasturktur pengelolaan data kecuali edisi

Enterprise Evaluation, dimana hanya berguna untuk evaluasi produk jangka

pendek (180 hari). Edisi yang berada pada tingkat teratas adalah edisi Enterprise

Edition, dimana benar-benar mendukung semua yang harus SQL Server 2008

tawarkan. Di sisi sebaliknya adalah Express Edition, dimana menawarkan fitur

yang sangat terbatas. Edisi yang tersedia adalah sebagai berikut:

• Enterprise Edition

Page 17: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

23 

 

• Standard Edition

• Developer Edition

• Compact Edition

• Express Edition

• Workgroup Edition

• Web Edition

Tabel berikut ini merupakan tabel perbedaan antara empat edisi dari SQL

Server 2008:

Page 18: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

24 

 

Gambar 2. 5 Tabel Perbedaan Antara Empat Edisi dari SQL Server 2008

2.2.3.1 SQL Server 2008 Enterprise Edition

Leiter (2008, p10) menyatakan bahwa Enterprise Edition menyediakan

kemudahan dalam melaksanakan dan mempertahankan platform yang akan

memungkinkan user secara dinamis menambah memori dan CPU, Transparent

Data Encryption, dan operasi indeks paralel. Enterprise Edition juga merupakan

solusi yang tepat jika user hanya memerlukan analisis bisnis yang lebih maju,

dan belum tentu harus jutaan transaksi per detik yang menawarkan edisi ini.

Enterprise Edition ditujukan pada kinerja dan skalabilitas. Meskipun

fitur di Enterprise Edition mungkin lebih banyak daripada rata-rata kebutuhan

perusahaan, perbedaan kinerja antara Standard dan Enterprise Edition memiliki

dampak yang signifikan bahwa skala SQL Server cukup untuk mengakomodasi

pertumbuhan yang cepat dalam organisasi. Fitur-fitur tambahan yang terpenting

pada Enterprise Edition adalah partisi data, database snapshots, dan

pemeliharaan basis data secara online.

2.2.3.2 SQL Server 2008 Standard Edition

Leiter (2008, p10) menyatakan bahwa sebagian besar kemampuan SQL

Server 2008 didukung dalam Standard Edition, yang membuat itu menjadi data

platform yang ideal untuk banyak organisasi. Standard Edition tidak

menyediakan banyak fitur yang dirancang untuk mendukung basis data

perusahaan besar. Fitur-fiturnya terdiri dari banyaknya peningkatan skalabilitas

dan tingginya ketersediaan, seperti partisi tabel dan operasi index secara paralel.

Page 19: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

25 

 

2.2.3.3 SQL Server 2008 Developer Edition

Petković (2008, p25) menyatakan bahwa SQL Server 2008 Developer

Edition mencakup fitur yang sama dengan Enterprise Edition tetapi tidak

berlisensi dalam penggunaan produksi dan hanya berlisensi untuk penggunaan

pengembangan, pengujian, dan demostrasi.

2.2.3.4 SQL Server 2008 Compact Edition

Petković (2008, p25) menyatakan bahwa Compact Edition merupakan

sebuah versi SQL Server yang ramping yang dapat digunakan pada Pocket PC,

smart phone, tablet PC, dan dekstop PC. Basis data Compact Edition pada

umumnya digunakan sebagai basis data yang tertanam untuk aplikasi berbasis

desktop.

2.2.3.5 SQL Server 2008 Express Edition

Petković (2008, p24) menyatakan bahwa Express Edition merupakan

versi ringan SQL Server 2008. Produk ini sebaiknya digunakan oleh

pengembang aplikasi karena Express Edition termasuk produk dasar program

Express Manager (XM) dan mendukung CLR integration and native XML.

2.2.3.6 SQL Server 2008 Workgroup Edition

Leiter (2008, p10) menyatakan bahwa SQL Server Workgroup Edition

terdiri dari semua fungsionalitas dari SQL Server 2008 Express Edition. Edisi

Page 20: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

26 

 

ini ditargetkan untuk perusahaan kecil yang sudah melebihi kapasitas atau

membutuhkan solusi yang lebih fleksibel dan tidak membutuhkan semua fitur

dari Standard atau Enterprise Edition.

2.2.3.7 SQL Server 2008 Web Edition

Leiter (2008, p9) menyatakan bahwa SQL Server 2008 Web Edition

merupakan jenis yang terbaru dalam produk SQL Server. Web Edition ini

dirancang untuk mendukung penggunaan lingkungan dan aplikasi web. Dengan

dukungan sampai empat prosesor dan tidak ada batasan memori atau basis data,

Web Edition memposisikan dirinya sebagai pengguna biaya yang efisien yang

berarti digunakan untuk layanan hosting yang bergantung pada basis data SQL

Server.

Web Edition mempunyai beberapa pedoman ijin dan persyaratan yang

sangat spesifik. Misalnya SQL Server 2008 Web Edition berlisensi untuk

aplikasi web, situs dan servis yang bersifat umum, tetapi tidak berlisensi untuk

aplikasi bisnis internal. Karena dirancang untuk umum, Client Access Licenses

(CALs) tidak dapat diaplikasikan untuk Web Edition.

2.2.4 Basis data SQL Server 2008

Leiter (2008, p18) menjelaskan bahwa tipe basis data terbagi menjadi

dua yaitu sistem basis data dan user basis data. Sistem basis data digunakan

untuk menyimpan system-wide data dan metadata sedangkan user basis data

Page 21: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

27 

 

merupakan basis data yang dibuat oleh user yang memiliki hak akses untuk

menyimpan data aplikasi.

2.2.4.1 Database System

Leiter (2008, p18) menjelaskan bahwa database system terdiri dari

database master, model, msdb, tempdb dan juga termasuk di dalamnya database

resource.

1. Database master

Database master digunakan untuk menyimpan semua objek level

server yang ada di dalam SQL Server 2008. Objek yang dimaksud disini

termasuk seperti Server Logon Account, Linked Server Definitions dan

EndPoints. Basis data ini juga menyimpan informasi mengenai semua basis

data yang ada pada server.

2. Database model

Database model merupakan sebuah template basis data. Ketika

sebuah basis data dibuat, maka database model akan membuat duplikat basis

data dan diberi nama serupa dengan basis data yang dibuat. Keuntungan

yang diperoleh dari hal ini ialah bahwa objek dapat diletakkan pada

database model sebelum pembentukan basis data baru, dan ketika basis data

itu dibuat, objek akan muncul pada basis data baru tersebut.

Hampir setiap objek dari basis data dapat ditambahkan ke database

model sehingga objek tersebut dapat tersedia pada basis data yang dibuat

Page 22: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

28 

 

berikutnya. Hal ini termasuk ke user basis data, peran, tabel, stored

procedures, fungsi dan assemblies.

3. Database msdb

Database msdb dapat dianggap sebagai SQL Server Agent Database

karena SQL Server Agent menggunakan database msdb secara ekstensif

sebagai tempat penyimpanan untuk job definitions, job schedules, operator

definitions dan alert definitions yang terotomatisasi.

Service Broker, Database Mail dan Reporting Services juga

menggunakan database msdb sebagai tempat penyimpanan informasi

penjadwalan.

4. Database tempdb

Database tempdb digunakan oleh SQL Server 2008 untuk

menyimpan data secara sementara. Database tempdb digunakan secara

ekstensif selama operasi dalam SQL Server. Setiap user basis data juga

memiliki akses ke basis data ini dan memiliki kemampuan untuk membuat

dan menempatkan objek sementara.

5. Database resource

Database resource merupakan read-only database yang mengandung

semua objek sistem yang digunakan oleh instance pada SQL Server.

Database resource ini tidak dapat diakses selama operasi basis data normal.

Page 23: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

29 

 

Basis data ini dipresentasikan secara logikal sebagai SYS schema dalam

setiap basis data. Basis data ini terdiri dari struktur dan deskripsi dari semua

objek sistem.

2.2.4.2 Database User

Database user adalah basis data yang dibuat oleh user untuk menyimpan

data yang digunakan oleh aplikasi data dan merupakan tujuan utama dari

memiliki server basis data.

2.2.5 SQL Server 2008 Database Storage

Menurut Leiter (2004, p20) semua sistem dan pengguna basis data

(termasuk sumber daya basis data) disimpan dalam file. Selalu ada minimal 2

file penyimpanan yaitu satu file data dan satu file transaksi. Ekstensi default

untuk file data adalah .MDF, dan default untuk file log transaksi adalah .LDF.

2.2.5.1 Data File dan Filegroup

Leiter (2004, p21) menjelaskan bahwa ketika account sebuah user basis

data dibuat, itu harus mengandung setidaknya satu file data. File data yang

pertama dikenal sebagai file data primer. File data primer adalah anggota primer

default filegroup. Setiap basis data memiliki satu filegroup primer ketika dibuat,

yang setidaknya terdiri dari file data primer. File data tambahan juga dapat

ditambahkan ke filegroup primer. Filegroup yang lebih banyak dapat

didefinisikan pada pembuatan awal basis data, atau ditambahkan setelah basis

data dibuat. File data dapat dikelompokkan secara logis untuk meningkatkan

Page 24: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

30 

 

performa dan memungkinkan untuk pemeliharaan yang lebih fleksibel (Gambar

2.6).

Gambar 2. 6 Data files dan filegroups

2.2.5.2 Log File

Leiter (2004, p21) menjelaskan bahwa setelah membuat suatu basis data,

satu transaksi log harus ditetapkan. Transaksi log digunakan untuk mencatat

semua modifikasi terhadap basis data untuk menjamin konsistensi dan

kemampuan untuk pulih dari suatu transaksi.

Meskipun menguntungkan untuk membuat beberapa file data dan

beberapa filegroup, adalah jarang diperlukan untuk membuat lebih dari satu file

log. Hal ini disebabkan bagaimana SQL Server mengakses data. File data dapat

diakses secara paralel, memungkinkan SQL Server untuk membaca dan menulis

ke beberapa file dan filegroup secara bersamaan. File log dijadikan serial untuk

menjaga konsistensi transaksional. Setiap transaksi dicatat dalam log secara

serial dan dalam urutan tersebut transaksi dieksekusi. File log yang kedua tidak

akan diakses sampai file log pertama benar-benar penuh.

Page 25: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

31 

 

2.2.6 Aturan Perancangan User Interface

Shneiderman (2005,p74-75) mengemukakan 8 (delapan) aturan yang

dapat digunakan sebagai petunjuk dasar yang baik untuk merancang suatu user

interface. Delapan aturan ini disebut dengan Eight Golden Rules of Interface

Design, yaitu:

1. Konsistensi

Konsistensi dilakukan pada urutan tindakan, perintah, dan istilah

yang digunakan pada prompt, menu, serta layar bantuan.

2. Memungkinkan pengguna untuk menggunakan shortcut

Ada kebutuhan dari pengguna yang sudah ahli untuk meningkatkan

kecepatan interaksi, sehingga diperlukan singkatan, tombol fungsi, perintah

tersembunyi, dan fasilitas makro.

3. Memberikan umpan balik yang informatif

Untuk setiap tindakan operator, sebaiknya disertakan suatu sistem

umpan balik. Untuk tindakan yang sering dilakukan dan tidak terlalu

penting, dapat diberikan umpan balik yang sederhana. Tetapi ketika tindakan

merupakan hal yang penting, maka umpan balik sebaiknya lebih substansial.

Misalnya muncul suatu suara ketika salah menekan tombol pada waktu input

data atau muncul pesan kesalahannya.

4. Merancang dialog untuk menghasilkan suatu penutupan

Urutan tindakan sebaiknya diorganisir dalam suatu kelompok

dengan bagian awal, tengah, dan akhir. Umpan balik yang informatif akan

Page 26: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

32 

 

memberikan indikasi bahwa cara yang dilakukan sudah benar dan dapat

mempersiapkan kelompok tindakan berikutnya.

5. Memberikan penanganan kesalahan yang sederhana

Sedapat mungkin sistem dirancang sehingga pengguna tidak dapat

melakukan kesalahan fatal. Jika kesalahan terjadi, sistem dapat mendeteksi

kesalahan dengan cepat dan memberikan mekanisme yang sedehana dan

mudah dipahami untuk penanganan kesalahan.

6. Mudah kembali ke tindakan sebelumnya

Hal ini dapat mengurangi kekuatiran pengguna karena pengguna

mengetahui kesalahan yang dilakukan dapat dibatalkan; sehingga pengguna

tidak takut untuk mengekplorasi pilihan-pilihan lain yang belum biasa

digunakan.

7. Mendukung tempat pengendali internal (internal locus of control)

Pengguna ingin menjadi pengontrol sistem dan sistem akan

merespon tindakan yang dilakukan pengguna daripada pengguna merasa

bahwa sistem mengontrol pengguna. Sebaiknya sistem dirancang sedemikan

rupa sehingga pengguna menjadi inisiator daripada responden.

8. Mengurangi beban ingatan jangka pendek

Keterbatasan ingatan manusia membutuhkan tampilan yang

sederhana atau banyak tampilan halaman yang sebaiknya disatukan, serta

diberikan cukup waktu pelatihan untuk kode, mnemonic, dan urutan

tindakan.

Page 27: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

33 

 

2.2.7 Performance Tuning dan Optimization

Petković (2008, p518) menjelaskan bahwa kinerja dari sebuah Database

Engine diukur berdasarkan 2 kriteria:

• Waktu Respon

Waktu respon mengukur performa dari transaksi individual atau

program. Waktu respon adalah panjang suatu waktu pada saat user

memasukkan sebuah perintah sampai waktu dimana sistem mengindikasikan

perintah tersebut telah selesai dilakukan.

• Hasil Keluaran

Hasil Keluaran adalah performa keseluruhan dari sistem dengan

menghitung jumlah transaksi yang dapat ditangani oleh Database Engine

dalam satuan waktu yang telah diberikan.

Menurut Whallen (2001, p3) Performance Tuning adalah sebuah

tindakan mengubah performa dari sebuah sistem dengan memodifikasi

parameter dari sistem (software tuning) atau dengan merubah konfigurasi sistem

(hardware tuning). Performance tuning melibatkan suatu analisis detil dari

konfigurasi perangkat keras, sistem operasi, dan konfigurasi dari Relational

Database Management System (RDBMS) dan aplikasi yang mengakses

komponen tersebut.

Tujuan utama dari tuning adalah untuk menghilangkan bottlenecks, atau

keterbatasan performa dalam komponen. Komponen yang dimaksud disini dapat

Page 28: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

34 

 

berupa perangkat keras atau perangkat lunak yang dapat mempengaruhi

performa dari sistem ketika dikonfigurasi dan di-tuning secara benar.

Bottlenecks dapat diartikan sebagai adanya ketidakseimbangan antara

peningkatan jumlah data yang akan diproses dengan kapasitas jumlah data yang

dapat diproses oleh suatu komponen dalam suatu waktu. Sebagai contoh ialah

ketika jumlah data yang akan diproses meningkat sangat pesat, namun kapasitas

memori untuk memproses data tersebut tidak mengalami peningkatan. Dengan

demikian, maka jumlah data yang dapat diproses dalam suatu waktu oleh

memori akan menjadi terbatas sehingga memerlukan waktu lebih banyak untuk

memproses data. Hal ini tentu akan berakibat menurunnya performa dari basis

data yang digunakan.

Meningkatkan performa dari sebuah sistem basis data memerlukan

banyak pertimbangan, seperti dimana data harus disimpan dan bagaimana cara

menyimpannya. Jika sistem basis data tidak bekerja secara optimal, maka sistem

administrator harus melakukan pemeriksaan terhadap banyak faktor dan jika

memungkinkan, melakukan tuning software terhadap sistem basis data tersebut.

2.2.7.1 Application Tuning

Menurut Whallen (2001, p4) application tuning melibatkan analisis

terhadap Structured Query Language (SQL) statements dan menentukan jika

query yang dimaksud efisien atau tidak. Query yang tidak efisien biasanya

menggunakan sumber daya sistem yang berlebihan dan memakan waktu yang

Page 29: BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1 - thesis.binus.ac.idthesis.binus.ac.id/doc/Bab2/2010-1-00079--if bab 2.pdf · bertindak sebagai jembatan yang menghubungkan antara mesin dengan

 

35 

 

lama. Dengan melakukan tuning pada SQL statements dan bagaimana aplikasi

mengakses basis data, maka dapat meningkatkan bagaimana sistem berjalan.

Secara garis besar, SQL tuning dapat terbagi menjadi dua kategori, yaitu

memodifikasi data access method dan meningkatkan execution plan.

2.2.7.2 SQL Server Tuning

Menurut Whallen (2001, p5) SQL Server Tuning melibatkan modifikasi

terhadap bagaimana cara SQL Server mengalokasikan sumber daya dan

bagaimana SQL Server berfungsi dengan memodifikasi parameter

konfigurasinya.

2.2.7.3 Hardware Tuning

Menurut Whallen (2001, p5) hardware tuning adalah sebuah tindakan

dalam menyediakan sumber daya perangkat keras yang tepat untuk workload

yang diinginkan, berada diantara sizing dan capacity planning. Untuk men-

tuning sistem perangkat keras, sumber daya yang dapat dialokasikan pada SQL

Server harus ditentukan untuk menciptakan performa yang lebih baik.

Tindakan ini melibatkan penambahan memori, CPU, sumber daya dari

I/O, atau kombinasi dari semua ini.