rangkuman sbd

Upload: michael-mike

Post on 08-Jul-2018

247 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/19/2019 Rangkuman SBD

    1/32

    Pertemuan 15Dukungan Transaksi

     Transaksi adalah sebuah aksi atau serangkaian aksi yang dilakukan oleh useratau aplikasi yang mengakses atau mengubah isi dari database. Atau dapat jugadikatakan sebagai unit kerja logical (logical unit of work) dari suatu databaseProgram aplikasi merupakan serangkaian transaksi tanpa pengolahan databasedidalamnya transaksi selalu merubah database dari satu stata konsisten ke statalainnya, walaupun konsistensi data dapat terganggu selama transaksi berjalan.

     Transaksi dapat menghasilkan salah satu output berikut :- ukses ! transaksi dikatakan commited dan database mencapai stata

    baru"stata berikutnya.- #agal ! transaksi dikatakan aborted, dan database harus dikembalikan ke

    stata tetap sebelum dilakukannya transaksi. Transaksi seperti ini disebutroll back atau undone.

     Transaksi yang committed tidak dapat digagalkan. Transaksi yang digagalkan

    akan dilakukan rollback yang dapat diproses ulang (restarted) diwaktumendatang.

    Sifat-sifat Transaksi (Properties of Transactions) Terdapat $ sifat dasar dari transaksi (A%&', aerder and euter, *+-) :

    - Atomicity (keutuhan), merupakan sifat all or nothing/. Transaksimerupakan unit yang tidak terlihat yang harus dilakukan secarakeseluruhan atau tidak sama sekali. al ini merupakan Tanggungjawabdari sub sistem reco0ery suatu database untuk memastikan atomicity.

    - %onsistency (1etetapan), transaksi harus mengubah database dari satustate konsisten ke state konsisten lainnya berikutnya. al ini merupakantanggung jawab dari '23 dan pembuat aplikasi untuk memastikankonsistensi. '23 dapat memastikan konsistensi dengan menjalankansemua batasanbatasan seperti batasan integrity dan enterprise.

    - &solation (Pemisahan), transaksi dieksekusi secara terpisah antara satutransaksi dengan yang lainnya. 'engan kata lain, akibat yang terpisahdari transaksi yang tidak lengkap harus tidak dapat dilihat oleh transaksiyang lain. al ini merupakan tanggung jawab dari subsistem kontrolconcurrency untuk memastikan pemisahan (isolation).

    - 'urability ('aya tahan), Akibat dari transaksi yang lengkap (committed )yaitu data akan direkam kedalam database secara permanen dan tidakakan hilang dikarenakan kegagalan berikutnya. al tersebut merupakantanggung jawab dari subsistem reco0ery untuk memastikan durability.

    Subsistem Transaksi DBMS (DBMS Transaction Subsystem) Transaction 3anager mengkoordinasikan transaksi untuk kepentingan

    program aplikasi, yang saling berkomunikasi dengan scheduler, yaitu modulyang bertanggung jawab mengenai implementasi strategi khusus untuk kontrolconcurrency. cheduler kadang mengacu kepada lock manager, jika protokolkontrol concurrency berdasarkan penguncian (locking).

     Tujuan dari scheduler adalah memaksimalkan concurrency tanpamemungkinkan transaksi yang sedang dieksekusi untuk mempengaruhi"salingmempengaruhi dengan transaksi lainnya. 4ika terjadi kegagalan, maka databasedapat menjadi tidak konsisten. al tersebut merupakan tugas bagi reco0erymanager untuk memastikan database dikembalikan ke stata sebelum dilakukan

    transaksi.

    *

  • 8/19/2019 Rangkuman SBD

    2/32

    Akhirnya,bu5er manager bertanggung jawab untuk mengirimkan dataantara penyimpanan disk dengan main memory.

    1ontrol 1onkurensi%oncurrency control merupakan proses pengaturan operasi yang simultan

    pada database tanpa menyebabkan saling mempengaruhi antara satu denganyang lain. Akses konkuren tidak akan bermasalah jika user hanya melakukanpembacaan data saja, gangguan akan terjadi jika dua atau lebih user mengaksesdatabase secara simultan dan sedikitnya melakukan satu perubahan (update),maka dapat menyebabkan ketidak6konsistenan

    7alaupun masing6masing transaksi tersebut secara terpisah benar, tetapisecara keseluruhan akan menghasilkan output yang salah. Terdapat tiga masalahpotensial yang disebabkan oleh concurrency :

    - 3asalah kehilangan modi8kasi- 3asalah modi8kasi sementara- 3asalah analisa yang tidak konsisten

    Concurrency Control Tecni!ues Terdapat dua teknik kontrol konkurensi yang memungkinkan transaksi

    untuk mengeksekusi dengan aman dalam subjek paralel untuk batasan tertentu :- 3etode 9ocking dan- 3etode Timestamp

    9ocking dan timestamping pada dasarnya merupakan pendekatan konser0atif (pesimistik) yang dapat menyebabkan penundaan transaksi jika terjadi konikdengan transaksi lainnya pada waktu yang sama. 3etode optimistik,berdasarkan pada pemikiran bahwa konik jarang terjadi sehinggamemungkinkan transaksi diproses unsynchroni;ed dan melakukan pemeriksaankonik diakhir transaksi.

    "ocking9ocking merupakan suatu prosedure untuk mengontrol akses konkuren

    terhadap data. 1etika satu transaksi mengakses database, sebuah kunci (lock)dapat mengabaikan akses untuk transaksi lainnya, untuk menghindari hasil yangsalah.

    3etode locking merupakan pendekatan yang paling banyak digunakanuntuk memastikanseriali;ability. ecara umum, transaksi harus menegaskan penguncian (lock)shared (read) atau e

  • 8/19/2019 Rangkuman SBD

    3/32

    lock secara simultan terhadap data item yang sama, sedangkan e

  • 8/19/2019 Rangkuman SBD

    4/32

    mende8nisikan periode waktu. 4ika kunci belum diberikan dalam periode ini,maka permintaan kuncikehabisan waktu (times out). 'alam kasus ini, '23 mengasumsikan transaksiterjadi deadlocked,walaupun mungkin tidak terjadi, dan transaksi tersebut digagalkan dan secaraotomatis mengulang dari awal transaksi yang bersangkutan.

    Dea%lock Pre'entionPendekatan lain yang mungkin dilakukan untuk menghindari deadlock

    adalah memerintahkantransaksi menggunakan transaksi timestamps :

    - 7ait6'ie ! memungkinkan hanya transaksi lama menunggu traksaksi baru,selain itu transaksi digagalkan (dies) dan diulang dengan timestamps yangsama.

    - 7ound67ai t ! hanya transaksi baru yang menunggu transaksi lama. 4ikatransaksi lama meminta kunci yang dimiliki oleh transaksi baru, makatransaksi baru akan digagalkan (wounded).

    Dea%lock DetectionPendeteksian deadlock biasanya ditangani dengan membuat konstruksi

    7ait ?or #raph (7?#) yang memperlihatkan ketergantungan transaksi, yaitutransaksi Ti bergantung pada Tj jika transaksi Tj memegang kunci untuk dataitem yang ditunggu olah Ti. 7?# merupakan graf berarah (directed graph) #@(, =), yang dapat debentuk dengan cara :

    - 2uatlah ode untuk setiap transaksi- 2uatlah edge berarah Ti 6B Tj, jika Ti menunggu kunci untuk item yang

    sedang dikunci oleh Tj.

    eco0ery dari 'eadlock 'etection

    • Pilih tersangka deadlock, dijalankan hal yang harus diperhatikan :

    - udah berapa lama transaksi dijalankan (lebih baik menggagalkantransaksi yang baru saja dijalankan daripada yang telah dijalankanbeberapa saat)

    - udah berapa banyak data yang diubah melalui transaksi tersebut(lebih baik menggagalkan transaksi dengan jumlah perubahan yangsedikit)

    - 2erapa banyak data item lagi yang masih harus di ubah (lebih baikmenggagalkan transaksi ayng masih memerlukan banyak perubahan)

    • eberapa jauh harus mengulan kembali transaksi

    • 3enyediakan catatan kesalahan (untuk kesalahan yang seringkali muncul)

    Meto%e Timestamping3etode timestamps untuk kontrol konkuren sedikit berbeda dengan

    metode locking. ecara umum metode locking mencegah konik denganmembuat transaksi menunggu, sedangkan dengan metode timestamp transaksidisertakan dalam konik dan dengan mudah di6rolled back dan restarted.

     Timestamp adalah identi8er unik yang dibuat oleh '23 untukmengindikasikan waktu mulai relatif dari suatu transaksi. 'apat dibangundengan menggunakan waktu sistem pada saat transaksi dimulai, atau denganpenambahan counter logical setiap saat transaksi baru dilaksanakan.

     Timestamping adalah protokol kontrol konkuren yang memerintahkantransaksi dalam suatu cara dimana transaksi lama, transaksi dengan timestampyang lebih kecil mendapatkan prioritas jika terjadi konik.

    $

  • 8/19/2019 Rangkuman SBD

    5/32

    'engan timestamping, jika transaksi berusaha untuk membaca ataumenulis data item, kemudian pembacaan"penulisan hanya dibolehkan untukdiproses jika update terakhir dari data item tersebut dibawa oleh transaksi lama(older transaction). ebaliknya, transaksi meminta pembacaan"penulisandiulangi dan diberikan timestamp yang baru.

     4uga terdapat timestamp untuk data item :- read6timestamp ! yaitu timestamp dari transaksi terakhir untuk membaca

    item- write6timestamp ! yaitu timestamp dari transaksi terakhir untuk menulis

    item

    Pertemuan 1Database &eco'ery

    'atabase eco0ery merupakan suatu proses penyimpanan "pengembalian database ke sate yang benar pada saat terjadi kerusakan.1ebutuhan atas kontrol reco0ery disebabkan karena penyimpanan data padaumumnya menggunakan empat jenis media penyimpanan berdasarkan tingkat

    reliabilitas " tahan uji6nya terdapat > jenis penyimpanan :- Colotile storage, biasanya tidak bertahan jika terjadi kerusakan sistem.

    %ontohnya : main memory- on0olotile storage, magnetic disk merupakan online non0olatile storage

    dan magnetic tape merupakan oDine non0olatile storage. 9ebih reliabledan lebih murah. table storage, merepresentasikan informasi yang telahdireplika kedalam beberapa media penyimpanan non0olatile dengan jeniskerusakan yang terpisah.

     Terdapat beberapa jenis kerusakan yang dapat mempengaruhi prosesdatabase. 2eberapa kerusakan hanya mempengaruhi main memory saja atau

     juga media yang lain. 1erusakan tersebut diakibatkan oleh :- ystem %rashes, menyebabkan hilangnya data dari main memory.- 3edia failures, menyebabkan hilangnya sebagian data dari media

    penyimpanan secondary.- Application oftware errors, misalnya logical error yang terdapat dalam

    program yang mengakses database sehingga menyebabkan satu ataulebih transaksi mengalami kegagalan.

    - atural Physical disaster, bencana alam"musibah seperti : kebakaran,banjir, gempa bumi, kerusakan listrik.

    - %arelessness, kecerobohan atau tindakan tidak sengaja yangmenyebabkan kerusakan data, yang dilakukan oleh operator atau user.

    - abotage, sabotase atau tindaka sengaja merusak atau mencuri data,

    fasilitas hardware maupun software.

     Transaksi dan eco0ery Transaksi merepresentasikan unit dasar dari reco0ery dalam sistem

    database. eco0ery manager bertanggung jawab atas atomicity dan durability. 4ika kesalahan terjadi antara penulisan ke bu5er dan mengirimkan bu5erdatabase ke penyimpanan sekunder maka reco0ery manager harus menetapkanstatus dari transaksi yang melakukan penulisan pada saat terjadi kerusakan. 4ikatransaksi dinyatakan commit, maka untuk memastikan durability, reco0erymanager harus melakukan redo (rollforward) terhadap perubahan transaksi.

     4ika transaksi belum commit pada saat terjadi kerusakan, reco0erymanager harus melakukan undo segala akibat dari transaksi tersebut untuk

    menjamin atomicity transaksi. 4ika hanya terdapat satu transaksi yang tidak

    E

  • 8/19/2019 Rangkuman SBD

    6/32

    diselesaikan, maka mengacu ke partial undo. edangkan jika seluruh transaksitidak terselesaikan maka mengaci ke6global undo.

    asilitas &eco'ery'23 harus menyediakan fasilitas berikut untuk mendukung reco0ery :

    - 3ekanisme 2ackup, yang akan membuat salinan dari database secaraperiodik.

    - ?asilitas 9ogging (pencatatan), yang menyimpan catatan dari statatransaksi dan perubahan database.

    - ?asilitas %heckpoint, yang memungkinkan merubah database yang sedangdalam pengembangan menjadi permanen.

    - eco0ery manager, yang mengi;inkan '23 untuk menyimpan databasepada stata konsisten jika terjadi kerusakan " kesalahan.

    "og ile (ile Catatan)Fntuk menyimpan catatan dari transaksi database, '23 memiliki 8le khususyang disebut log 8le, yang berisi informasi tentang semua perubahan terhadap

    database. %atatan dapat berisi data6data berikut :- ecord Transaksi

    o &denti8er transaksi

    o  Tipe dari record catatan (transaksi start, insert, update, delete,

    abort, commit)o &denti8er dari data item yang diakibatkan oleh aksi database

    (operas insert, delete, dan update)o 2efore6image dari data item, yaitu nilai sebelum dilakukan

    perubahan (hanya operasi update dan delete)o After6image dari data item, yaitu nilai sesudah perubahan (hanya

    operasi insert dan update)o

    &nformasi manajemen catatan, seperti pointer ke record catatansebelum dan sesudah untuk transaksi tersebut- ecord %heckpoint

    %atatan biasa digunakan untuk kepentingan lain dibandingkan untukreco0ery (contoh untuk monitoring (pengawasan) dan auditing). 'alam halini informasi tambahan yang dapat disimpan dalam log 8le (contoh :pembacaan database, logon user, logo5 dan lainnya)

    Ceckpointing%heckpoint titik dari penyelarasan (synchroni;ation) antara database dan

    log 8le. %heckpoint dijadwalkan saat penetapan sebelum inter0al danmenyertakan operasi berikut :

    • 3enuliskan seluruh record log dalam main memory kedalam penyimpanansekunder.

    • 3enuliskan blok perubahan dalam bu5er database ke penyimpanan

    sekunder.

    • 3enuliskan record checkpoint kedalam log 8le. ecord ini berisikan

    identi8er dari seluruh transaksi aktif pada saat checkpoint.

    Teknik &eco'ery 4ika database mengalami kerusakan seperti :

    •  4ika database mengalami kerusakan secara luas, misalnya kerusakan disk

    head dan kerusakan database, maka perlu dikembalikan ke back6

    up"salinan terakhir dari database dan diaplikasikan ulang operasi updatedari transaksi yang commited dengan menggunakan log 8le.

    G

  • 8/19/2019 Rangkuman SBD

    7/32

    •  4ika database hanya mengalami ketidak6konsistenan, maka harus

    melakukan undo perubahan6perubahan yang menyebabkan tidakkonsisten. 4uga perlu melakukan redo terhadap beberapa transaksi untukmenjamin perubahan yang dilakukan telah disimpan ke penyimpanansekunder. Tidak memerlukan back6up salinan dari database tetai dapat

    mengembalikan database ke stata konsisten dengan menggunakan beforedan after image yang ada dalam log 8le.

    'ari dua contoh kasus diatas, maka terdapat tiga teknik reco0ery :- 'eferred Fpdate- &mmediate Fpdate- hadow Paging

    Deferre% *p%ate'engan menggunakan protocol reco0ery deferred update, update tidak

    dituliskan kedalam database sampai dengan transaksi mencapai titik commit. 4ika transaksi gagal sebelum commit, maka update tersebut tidak akan merubah

    database dan tidak perlu melakukan undo perubahan. Tetapi mungkin perlumelakukan log 8le untuk perlindungan dari kesalahan sistem dengan cara :

    - 1etika mulai transaksi, tuliskan record transaction start pada log 8le- 1etika operasi penulisan dilaksanakan, tuliskan record log berisikan

    seluruh data log yang telah dispesi8kasikan sebelumnya. Tidakmenuliskan update pada bu5er database atau database itu sendiri.

    - 1etika transaksi commit, tuliskan transaction commit pada record log, tulisseluruh record log transaksi ke disk kemudian selesaikan transaksi.#unakan record log untuk menjalankan update pada database.

    -  4ika transaksi gagal, abaikan record log transaksi dan jangan melakukanpenulisan.

    +mme%iate *p%ate'engan menggunakan protocol reco0ery immediate update, update di

    aplikasikan pada data base ketika dijalankan tanpa harus menunggu titikcommit. Perlu melakukan redo update dari transaksi commited jika terjadikesalahan, menjadi penting untuk mengulang (undo) akibat dari transaksi yangbelum committed pada saat terjadi kesalahan. 'alam kasus ini digunakan log 8leuntuk perlindungan terhadap kesalahan sistem dengan cara :

    -  4ika transaksi dimulai, tuliskan record transaction start pada log 8le.- 1etika operasi penulisan dilaksanakan, tuliskan record berisikan data6data

    yang dianggap perlu kedalam log 8le.- 1etika log 8le sudah ditulis, tuliskan update pada bu5er database.

    - Fpdate terhadap database itu sendiri dilakukan ketika bu5er dikirimkankemudia ke penyimpanan sekunder.

    - 1etika transaksi commit, tuliskan record transaction commit di log 8le.

    Pada dasarnya record log dituliskan sebelum penulisan yang sesuai padadatabase, dikenal dengan write6ahead log protocol. 4ika tidak terdapat recordtransaction commit/ dalam log, kemudian transaksi tersebut aktif pada saatterjadi kesalahan maka harus digagalkan.

     4ika transaksi gagal, log dapat digunakan untuk melakukan undo dimana telahdituliskan dalam log 8le.

    hadow Paging3engatur"memelihara dua table selama transaksi berlangsung yaitu :

    tabel current page dan shadow page. 1etika transaksi dimulai, kedua tabel

    H

  • 8/19/2019 Rangkuman SBD

    8/32

    tersebut sama. Tabel shadow page tidak akan diubah sesusah itu dan digunakanuntuk mengembalikan database pada saat terjadi kesalahan. elama transaksiberlangsung tabel current page digunakan untuk mencatat seluruh updateterhadap database. 1etika transaksi selesai, tabel current page menjadi tabelshadow page.

    Pertemuan 1,Perencanaan Perancangan %an .%ministrasi Basis Data

     Tujuan :- 1omponen utama sebuah sistem informasi-  Tahapan6tahapan utama siklus hidup aplikasi basis data- ?ase6fase utama perancangan database : perancangan conceptual, logical,

    dan physical- 1euntungan dari %A= tool- 2agaimana menge0aluasi dan memilih '23- Perbedaan antara administrasi data dan administrasi database- 1egunaan dan tugas6tugas dihubungkan dengan administrasi data dan

    administrasi database

    System +nformation "ifecycleistem informasi merupakan sumberdaya yang memungkinkan

    pengumpulan, pengaturan, pengawasan, dan penyebaran informasi keseluruhorganisasi.

    'atabase merupakan komponen mendasar dari sistem informasi danpengembangan serta penggunaan harus dapat dilihat dari tingkat kebutuhanyang lebih luas dari organisasi yang menggunakannya. Ileh karena itu siklushidup dari sistem informasi suatu organisasi terkait erat dengan siklus hidupsistem database yang mendukungnya.

    Fmumnya tahapan dalam siklus hidup sistem informasi meliputi :perencanaan, pengumpulan kebutuhan dan analisis, perancangan, purwarupa,penerapan, pengujian, perubahan, dan pemeliharaan operasional.

    Database .pplication "ifecycle1etika sistem database menjadi komponen mendasar suatu sistem

    informasi organisasi Jang lebih besar dan luar, maka siklus aplikasi database dihubungkan dengansiklus hidup sistem informasi.

    ingkasan akti80itas utama dihubungkan dengan tiap tahapan dalam siklushidup aplikasi database

    tage 3ain Acti0ites'atabase planning Perencanaan bagaimana tahapan6

    tahapan dalam siklus hidup dapatdirealisasikan dengan efektif dane8sien

    ystem de8nitioneKuirements collection and analysis

    3enspesi8kasikan lingkup dan batasanaplikasi database, para penggunanyadan area aplikasi

    'atabase design 3engumpulkan dan menganalisaseluruh kebutuhan pengguna dan areaaplikasi

    '23 design Perancangan conseptual, logical, danphysical dari database

    '23 selection 3emilih '23 yang lebih cocok untuk

  • 8/19/2019 Rangkuman SBD

    9/32

    aplikasi database yang adaApplication design Perancangan interface pengguna,

    program aplikasi yang digunakan danproses databasenya

    Prototyping 3embuat model kerja dari aplikasi

    database, yang memungkinkanperancang atau pengguna melihat danmenge0aluasi bagaimana sistem akhirakan berfungsi dan bekerja

    &mplementation Pembuatan de8nisi databaseeksternal , konseptual dan internal danprogram aplikasi

    'ata con0ersion and loading 3engambil dan memindahkan data darisistem lama ke sistem baru

     Testing Aplikasi database diuji untuk kesalahandan 0alidasi, dibandingkan denganspesi8kasi kebutuhan yang diberikan

    oleh penggunaIperational maintenance etelah aplikasi database

    terimplementasi seluruhnya. ecaraberkesinambungan diawasi dan diatur.1ebutuhan baru dapat ditambahkankedalam aplikasi database melaluitahapan6tahapan yang ada, jikadiperlukan

    1/ Perencanaan Databaseo

    3erupakan akti0itas manajemen yang memungkinkan tahapan daridatabase application lifecycle direalisasukan se6efektif mungkin.o Perencanaan database harus terintegrasi dengan keseluruhan

    strategi sistem informasi dari organisasi.o  Terdapat - hal pokok yang berkaitan dengan strategi sistem

    informasi, yaitu : &denti8kasi rencana dan sasaran dari enterprise termasuk

    mengenai sistem informasi yang dibutuhkan. =0aluasi sistem informasi yang ada untuk menetapkan

    kelebihan dan kekurangan yang dimiliki. Penaksiran kesempatan &T yang mungkin memberikan

    keuntungan kompetitif.o 3etodologi untuk mengatasi hal tersebut diatas yaitu :

    'atabase Planning ! Mission Statement 0

    • 3issio statement untuk database project

    mende8nisikan tujuan utama dari aplikasi database.

    • 3engarahkan database project, biasanya

    mende8nisikan perintah tugas.

    • 3ission statement membantu menjelaskan kegunaan

    dari database project dan menyediakan alur yang lebih jelas untuk mencapai efekti8tas dan e8siensipenciptaan dari suatu aplikasi database yangdiinginkan.

    'atabase Planning ! Mission b2ecti'es0

    +

  • 8/19/2019 Rangkuman SBD

    10/32

    • 1etika mission statement telah dide8nisikan, maka

    mission objecti0es dide8nisikan.

    • etiap objecti0e harus mengidenti8kasikan tugas

    khusus yang harus didukung oleh database.

    • 'apat juga disertai dengen beberapa informasi

    tambahan yang menspesi8kasikan pekerjaan yangharus diselesaikan, sumber daya yang digunakan danbiaya untuk membayar kesemuanya itu.

    o 'atabase planning juga harus menyertakan pengembangan

    standar6standar yang menentukan : 2agaimana data akan dikumpulkan,

    2agaimana menspesi8kasikan format"bentuk data,

    'okumentasi penting apakah yang akan diperlukan,

    2agaimana desain dan implementasi harus dilakukan,

    $/ De3nisi Sistemo

    3enjelaskan batasan6batasan dan cakupan dari aplikasi databasedan sudut pandang user yang utama.o Fser 0iew mende8nisikan apa yang diwajibkan dari suatu aplikasi

    database dari perspektif, diantaranya : Aturan kerja khusus

    Area aplikasi enterprise

    o Aplikasi database dapat memiliki satu atau lebih user 0iew

    o &denti8kasi user 0iew, membantu memastikan bahwa tidak ada user

    utama dari suatu database yang terlupakan ketika pembuatanaplikasi baru yang dibutuhkan.

    o Fser 0iews juga membantu dalam pengembangan aplikasi database

    yang rumit " kompleks memungkinkan permintaan6permintaandipecah kedalam bagian6bagian yang lebih mudah diatur.

    4/ Analisis dan Pengumpulan kebutuhano uatu proses pengumpulan dan analisa informasi mengenai bagian

    organsisasi yang didukung oleh aplikasi database, danmenggunakan informasi tersebut untuk identi8kasi kebutuhan userpada sistem yang baru.

    o &nformasi dikumpulkan untuk setuap user 0iew utama meliputi :

    'eskripsi data yang digunakan atau dihasilkan

    'etail mengenai bagaimana data digunakan"dihasilkan

    2eberapa kebutuhan tambahan untuk aplikasi database yang

    baruo &nformasi dianalisa untuk identi8kasi kebutuhan agar disertakan

    dalam aplikasi database yang baruo Akti8tas penting lainnya, adalah menentukan bagaimana mengatur

    aplikasi database dengan multiple user 0iew, ada - pendekatanyaitu :

    %entrali;ed approachL

    Ciew intergration approachL

    %ombination of both approaches.

    o Pen%ekatan terpusat

    1ebutuhan untuk setiap user 0iew digabungkan menjadi

    sekumpulan kebutuhan.

    *M

  • 8/19/2019 Rangkuman SBD

    11/32

    ebuah global data model dibuat berdasarkan atas

    penggabungan kebutuhano Pen%ekatan +ntegrasi ie#

    1ebutuhan untuk setiap user 0iew digunakan untuk

    membangun model data terpisah untuk merepresentasikan

    user 0iew tersebut. asil dari model data tersebut nantinyadigabungkan dalam tahapan desain database. 3odel data yang merepresentasikan user 0iew tunggal

    disebut local data model, dan tersusun atas diagram6diagramdan dokumentasi yang secara formal menggambarkankebutuhan dari user 0iew khusus terhadap database.

    1emudian 9ocal data model digabungkan untuk

    menghasilkan global data model, yang merepresentasikanseluruh user 0iew untuk database.

    6/ Database Designo 3erupakan suatu proses pembuatan sebuah desain database yang

    akan menduking tujuan dan operasi suatau enterprise.o  Tujuan utamanya adalah :

    3erepresentasikan data dan relationship antar data yang

    dibutuhkan oleh seluruh area aplikasi utama dan user group. 3enyediakan model data yang mendukung segala transaksi

    yang diperlukan pada data. 3enspesi8kasikan desain minimal yang secara tepat disusun

    untuk memenuhi kebutuhan performa yang ditetapkan padasistem (misal : waktu respon)

    o Pendekatan dalam desain database

    Top-%o#n

    'iawali dengan pembentukan model data yang berisibeberapa entitas high6le0el dan relationship yang kemudiamenggunakan pendekatan top6down secara berturut6turutuntuk mengindenti8kasikan entitas lower le0el, relationshipdan atribut lainnya.

    Bottom-up

    'imulai dari atribut dasar (yaitu, sifat6sifat entitas danrelationship), dengan analisi dari penggabungan antaratribut, yang dikelompokan kedalam suatu relasi yangmerepresentasikan tipe dari entitas dan relationship antarentitas.

    Mi7e%3enggunakan pendekatan bottom6up dan top6down untukbagian yang berbeda sebelum akhirnya digabungkan.

    o 1egunaan utama dari data modeling meliputi :

    Fntuk membantu dalam memahami arti (semantik) dari data.

    Fntuk memfasilitasi komunikasi mengenai informasi yang

    dibutuhkan.o Pembuatan model data mengharuskan menjawab pertanyaan

    mengenai entitas, relationship dan atribut.o 3odel data memastikan kita memahami :

    etiap perspektif user mengenai data

    ifat dari data itu sendiri, independen terhadap representasi

    8siknya. 1egunaan data melalui user 0iew.

    **

  • 8/19/2019 Rangkuman SBD

    12/32

    o  1riteria untuk menghasilak model data yang optimal :

    Calidasi truktural, harus konsisten dengan de8nisi enterprise

    dan informasi organisasi. 1esederhanaan, mudah dimengerti baik oleh profesional

    sistem informasi maupun pengguna non6teknik.

    1etepatan, kemampuan untuk membedakan antara datayang berlainan, relationship antar data dan batasan6batasan.  Tidak rangkap, pengeluaran informasi yang tidak

    berhubungan, dengan kata lain, representasi setiap bagianinformasi hanya satu kali.

    'igunakan bersama, tidak ditentukan untuk aplikasi atau

    teknologi tertentu dan dapat digunakan oleh banyakpengguna.

    Perluasan penggunaan, kemampuan untuk menyusun dan

    mendukung kebutuhan baru dengan akibar sampingan yangminimal terdapat pada user yang sudah ada.

    &ntergritas, konsisten dengan cara yang digunakan enterprise

    dan pengaturan informasi. epresentasi diagram, kemampuan untuk merepresentasikan

    model menggunakan notasi diagram yang mudah dimengerti.o  Tiga fase database design :

    Conceptual %atabase %esign

    uatu proses pembentukan model dari informasi yangdigunakan dalam enterprise independen dari keseluruhanaspek 8sik. 3odel data dibangun dengan menggunakaninformasi dalam spesi8kasi kebutuhan user. 3odel datakonseptual merupakan sumber informasi untuk fase desainlogical.

    "ogical %atabase %esignuatu proses pembentukan model dari informasi yangdigunakan dalam enterprise berdasarkan model data tertentu(misal : relasional), tetapi independen terhadap '23tertentu dalam aspek 8sik lainnya. 3odel data konseptualyang telah dibuat sebelumnya, diperbaiki dan dipetakankedalam model data logical

    Pysical %atabase %esign

    uatu proses uyang menghasilkan deskripsi implementasidatabase pada penyimpanan sekunder. 3enggambarkanstruktur penyimpanan dan metode akses yang digunakan

    untuk mencapai akses yang e8sien terhadap data. 'apatdikatakan juga, desain 8sikal merupakan cara pembuatanmenuju sistem '23 tertentu.

    5/ DBMS selectionPemilihan '23 yang tepat untuk mendukung aplikasi database. 'apatdilakukan kapanpun sebelum menuju desain logicaal asalkan terdapatcukup informasi mengenai kebutuhan sistem. Tahap6tahap utama untukmemilih '23 :

    o 3ende8nisikan terminologi studi referensi.o 3endaftar dua atau tiga produk.o =0aluasi produk.o ekomendasi pilihan dan laporan produk.

    / Desain .plikasi

    *>

  • 8/19/2019 Rangkuman SBD

    13/32

    'esain interface user dan program aplikasi yang menggunakan danmemproses database. 'esain database dan aplikasi merupakan akti8tasparalel yang meliputi dia akti8tas pentng, yaitu :

    o Transaction %esign Transaksi adalah sati aksi atau serangkaian aksi yang dilakukan oleh

    user tunggal atau program aplikasi, yang mengakses atau merubahisi dari database. 1egunaan dari desain transaksi adalah untukmenetapkan dan keterangan karakteristik high6le0el dari suatutransaksi yang dibutuhkan pada database, diantaranya :

    'ata yang akan digunakan oleh transaksi.

    1arakteristik fungsional dari suatu transaksi

    Iutput transaksi

    1euntungan bagi user

     Tingkat kegunaan yang diharapkan

     Terdapat tiga tipe transaksi, yaitu : &etrie'al transaction, digunakan untuk pemanggilandata

    untuk ditampilkan di layar atau menghasilkan suatu laporan. *p%ate transaction, digunakan untuk menambahkan

    record baru, menghapus record lama, atau memodi8kasirecord yang sudah ada didalam database.

    Mi7e% transaction, meliputi pemanggilan dan perubahan

    data.

    o *ser interface %esign2eberapa aturan pokok dalam pembuatan user interface :

    3eaningful title, diusahakan pemberian nama suatu form

    cukup jelas menerangkan kegunaan dari suatu form"report

    %omprehensible instructions, penggunaan termonologi yangfamiliar untuk menyampaikan instruksi ke user dan jikainformasi tambahan dibutuhkan, maka harus disediakanhelpscreen

    9ogical grouping and seKuencing of 8elds, 8eld yang saling

    berhubungan ditempatkan pada form " report yang sama.Frutan 8eld harus logis dan konsisten.

    Cisually appealing layout of the form"report, tampilan

    form"report harus menarik, dan sesuai dengan hardcopy agarkonsisten.

    ?amiliar 8eld labels, penggunaan label yang familiar.

    %onsistent terminology and abbre0iation, terminology dansingkatan yang digunakan harus konsisten. %onsisten use of color.

    Cisible space and boundaries for data6entry 8elds, jumlah

    tempat yang disediakan untuk data entru harus diketahuioleh user.

    %on0inient cursosr mo0ement, user dapat dengan mudah

    menjalankan operasi yang diinginkan dengan menggerakkancursor pada form"report.

    =rror correction for indi0idual characters and entire 8elds,

    user dapat dengan mudah menjalankan operasi yangdiinginkan dan melakukan perubahan terhadap nilai 8eld.

    =rror messages for unacceptable 0alues.

    Iptional 8elds marked clearly.

    *-

  • 8/19/2019 Rangkuman SBD

    14/32

    =

  • 8/19/2019 Rangkuman SBD

    15/32

    o Pengawasan performa sistem, jika performa menurun makamemerlukan perbaikan atau pengaturan ulang database.

    o Pemeliharaan dan pembaharuan aplikasi database (jika dibutuhkan)o Penggabungan kebutuhan baru kedalam aplikasi database.

    C.S8 ToolPada tahapan database planning juga dapat menyertakan pemilihan %omputerAided oftware =ngineering (%A=) Tool yang sesuai. %A= dapat diaplikasikanpada perangkat pendukung software engineering. 'ukungan yang disediakanoleh %A= tool meliputi :

    - 1amus data untuk menyimpan informasi mengenai data6data dari aplikasidatabase.

    - 'esign tool untuk mendukung analisis data.-  Tool untuk memungkinkan pengembangan dari model data gabungan dan

    model data logical dan konseptual.-  Tool untuk memungkinkan prototyping aplikasi.

    %A= tool juga menyediakan beberapa keuntungan yang dapat meningkatkanprodukti0itas :

    • tandard, membantu terjadinya standarisasi pada proyek software atau

    keseluruhan organisasi. 3enghasilkan komponen6komponen standar yangdapat digunakan kembali, sehingga menyederhanakan pemeliharaan danmeningkatkan produkti0itas.

    • &ntegrasi, menyimpan seluruh informasi yang dibangun dalam tempatpenyimpanan atau kamus data. eluruh data dikumpulkan selamatahapan database application lifecycle, kemudian saling berhubunganuntuk memastikan bahwa semua bagian dari sistem terintegrasi.

    • 3endukung metode standar (support for standard methods), metode6

    metode biasanya disusun menggunakan diagram yang berbeda, yangpenggambaran dan pemeliharaannya cukup rumit. %ase toolmenyederhanakannya dan mengeluarkan hasil akhir dalam dokumentasi.

    • 1onsistensi, dapat memeriksa konsistensi informasi yang tersimpan.

    • Itomasi (Automation), beberapa %A= tool dapat secara otomatis

    merubah bagian dari spesifkasi desain menjadi kode e

  • 8/19/2019 Rangkuman SBD

    16/32

    Pengaturan realisasi 8sik dari aplikasi database, meliputi :

    • 'esain 8sik database dan implementasi

    • Pengaturan keamanan dan kontrol integritas

    • Pengawasan performa sistem dan pengaturan ulang database jika

    diperlukan.

    Pertemuan 19

  • 8/19/2019 Rangkuman SBD

    17/32

    3emungkinkan kita untuk memelihara"mengadakan batasan padarelasi dasar dengan melaksanakan beberapa batasan pada relasiyang lebih kecil.

    unctional Depen%ency- 3erupakan konsep inti yang terkait dengan normalisasi- ?unctional dependency, menjelaskan relationship antar atribut6atribut

    dalam relasi.- ?unctional 'ependency merupakan sifat dari arti semantik suatu atribut

    dalam sebuah relasi.- 'eterminant dari functional dependency mengacu kepada atribut atau

    himpunan atribut disebelah kiri anak panah.- 1arakteristik utama dari functional dependency yang digunakan dalam

    normalisasi :o 3empunyi relationship *:* antar atribut disebelah kiri dan kanan

    dependency.o aling terkait

    o ontri0ial.- %ontoh : 3engidenti8kasikan sekumpulan ketergantungan fungsional dari

    relasi ta52ranchta5o N same, position, salary, brancho, bAddressbrancho N bAddressbAddress N branchobrancho, position N salarybAddress, position N salary

     Terdapat E functional dependencies dimana sta5o, brancho, bAddress,(brancho, position) dan (bAddress, position) sebagai determinan. etiapatribut disisi kanan bergantung secara fungsional dengan determinanyang ada disisi kiri

    • 1umpulan lengkap dari sebuah functional dependency untuk suatu relasi

    bisa sangat besar.

    • Penting untuk menemukan pola pendekatan yang dapat mengurangi

    himpunan"kumpulan tersebut untuk mendapatkan ukuran yang lebihmudah diatur.

    • Perlu untuk mengidenti8kasi himpunan functional dependency

    (direpresentasikan oleh O) untuk relasi yang lebih kecil daripada himpunanlengkap functional dependency (direpresentasikan oleh J) untuk relasitersebut dan memiliki sifat disetiap functional dependency pada Jdipenuhi dengan functional dependencies pada O.

    • impunan dari seluruh functional dependency yang dipenuhi denganhimpunan yang diberikan oleh functional dependency yang baru dapatdisimpulkan dari functional dependency yang sudah ada.

    • 3isalkan A, 2, dan % merupakan subset dari atribut suatu relasi . 3aka

    Armstrongs a

  • 8/19/2019 Rangkuman SBD

    18/32

    enterprise mempunyai eksistensi yang independen. 1eberadaan dapat berupa8sik maupun abstrak.

    =ntity occurrencem yaitu pengidenti8kasian object yang unik dari sebuahtype enity. etiap entitas di identi8kasikan dan disertakan poperty6nya.

    &elationsip types1umpulan keterhubungan yang mempunyai arti antara type entitas yang ada.elationship occurrence, yaitu keterhubungan yang diidenti8kasi secara unikyang meliputi keberadaan tiap type entitas yang berpartisipasi.

    Dera2at &elationsip Jaitu jumlah entitas yang berpartisipasi dalam suatu relationship. 'erajatrelationship terdiri dari :

    • 2inary relationship, keterhubungan antar dua type entitas. %ontoh binary

    relationship antara Pri0ateIwner dengan Property?orent yang disebutPIwns.

    •  Ternary relationship keterhubungan antar tiga type entitas. %ontoh Ternary

    elationship yang dinamakan egisters. elasi ini melibatkan tiga tipeentity yaitu ta5, 2ranch dan %lient. elationship ini menggambarkan sta5 mendaftarkan client pada branch.

    • Quaternary relationship, keterhubungan antar empat type entitas. %ontoh

    Quaternary elationship yang dinamakan Arranges. elasi ini melibatkan $entity yaitu 2uyer, olicitor, ?inancial &nstitution dan 2id. elasi inimenggambarkan buyer, diberi masukan oleh olicitor, dan didukung oleh?inancial &nstitution, melakukan penawaran (bid).

    • Fnary relationship, keterhubungan antar satu type entitas, dimana type

    entitas tersebut berpartisipasi lebih dari sati kali dengan peran yangberbeda. 1adang disebut juga recursi0e relationship. elationship dapat

    diberikan role names untk mengidenti8kasikan keterkatian type entitasdalam relationship. %ontoh entitas sta5 yang berperan menjadi super0isordan sta5 yang di super0isor6i.

    .ttributes3erupakan sifat6sifat dari sebuah entity atau type relationship. %ontohnya:

    sebuah enity ta5 digambarkan oleh attribute sta5o, name, position dan salary.Attribute 'omain adalah himpunan nilai yang diperbolehkan untuk satu

    atau lebih atribut. 3acam6macam atribut :

    • imple Attribute, yaitu atribut yang terdiri dari komponan tunggal dengan

    keberadaan yang independen dan tidak dapat dibagi menjadi bagian yanglebih kecil lagi. 'ikenal juga dengan nama Atomic Attribute.

    • %omposite Attribute, yaitu atribut yang terdiri dari beberapa komponan,

    dimana masing6masing komponen memiliki keberadaan yang independen.3isalkan atribut Address dapat terdiri dari treet %ity, Post%ode.

    • ingle60alued Attribute, yaitu yang mempunyai nilai tunggal untuk setiap

    kejadian. 3isalnya entitas 2ranch memiliki satu nilai untuk atributbrancho pada setiap kejadian.

    • 3ulti60alued Attribute yaitu atribut yang mempunyai beberapa nilai untuksetiap kejadian. 3isalnya entitas 2ranch memiliki satu nilai untuk atributbrancho pada setiap kejadian.

    • 3ulti60alued Attribute, yaitu atibut yang mempunyai beberapa nilai untuk

    setiap kejadia. 3isal entitas 2ranch memiliki beberapa nilai untuk atribut

    telpo pada setiap kejadian.

    *

  • 8/19/2019 Rangkuman SBD

    19/32

    • 'eri0ed Attribute, yaitu atribut yang memiliki nilai yang dihasilkan dari

    satu atau beberapa atribut lainnya, dan tidak harus berasal dari satientitas.

    >eys•

    %andidate 1ey, yaitu jumlah minimal atribut6atribut yang dapatmengidenti8kasikan setiap kejadian"record secara unik.• Primary 1ey, yaitu %andidate key yang dipilih untuk

    mengidenti8kasikan setiap kejadian"record dari suatu entitas secaraunik.

    • %omposite 1ey, yaitu %andidate key yang terdiri dari dua atau lebihatribut.

    Strong %an ?eak 8ntity Typestrong =ntity Type, yaitu entitas yang keberadaannya tidak bergantung

    pada entitas lain sedangkan 7eak =ntity Type, adalah entitas yangkeberadaannya bergantung pada entitas lain. trong =ntity Type terkadang

    disebut dengan parent, owner dominant dan 7eak =ntity Type disebut child,dependent, subordinate.

    Structural Constraints2atasan utama pada relationship disebut multiplicity, yaitu jumlah (atau

    range) dari kejadian yang mungkin terjadi pada suatu entitas yang terhubung kesatu kejadian dari entitas lain yang berhubungan melalui suatu relationship.

    Pertemuan $$Meto%ology Database Design'esign 3ethodology

    • 3erupakan pendekatan terstuktur yang menggunakan prosedur6prosedur, teknik6teknik, alat6alat, dokumentasi tambahan untukmendukung dan memberi fasilitas dari desain tersebut.

    • Ada - fase utama dalam metodologi desain database, yaitu :o %onceptual database design

    3erupakan proses pembuatan sebuah model dari informasiyang digunakan pada sebuah perusahaan, independenterhadap semua pertimbangan 8sikal.

    o "ogical %atabase %esign3erupakan proses dari pembuatan sebuah model dariinformasi yang digunakan pada perusahaan berdasarkanpada model data yang spesi8k (cth: relational), tetapi

    independen terhadap pertimbangan '23 tertentu dan8sikal lainnya.

    o Pysical %atabase %esign3erupakan proses untuk menghasilkan suatu deskripsi dariimplementasi database pada penyimpanan sekunder(secondary storage), juga mendeskripsikan relasi dasar,organisasi 8le, dan desain indeks yang digunakan untukmencapai akses yang e8sien terhadap data dan batasanintegritas lainnya yang masih berhubungan serta ukuran6ukuran keamanan.

    aktor kesuksesan yang penting %alam men%esain %atabase• 2ekerjalah seinteraktif mungkin dengan user sebanyak mungkin.

    *+

  • 8/19/2019 Rangkuman SBD

    20/32

    • &kutilah metodologi yang terstruktur pada seluruh proses datamodeling.

    • #unakan pendekatan data6dri0en.• #abungkanlah pertimbangan struktural dan integritas ke model

    data.•

    1ombinasikan konseptualisasi, normalisasi, dan teknik 0alidasitransaksi ke metodologi pemodelan data (data modeling).• #unakanlah diagram untuk merepresentasikan model data

    sebanyak mungkin.• #unakanlah '2'9 ('atabase 'esign 9anguage) untuk

    merepresentasikan semantik data tambahan.• 2uatlah kamus data (data dictionary) sebagai tambahan diagram

    model data.• 2erkemauan untuk mengulangi langkah6langkah tersebut diatas.

    Meto%ology 'er'ie#Conceptual Databse Design

    • 9angkah * buatlah model data konseptual lokal untuk setiap user0iew.*. &denti8kasikan tipe6tipe entity.>. &denti8kasikan tipe6tipe relationship-. &denti8kasi dan hubungkan atribut6atribut dengan tipe entity

    atau relationship.$. Tentukan domain atribut.E. Tentukan atribut kandidat dan primary key.G. Pertimbangkan penggunaan konsep pemodelan tingkat

    tinggi"enhanced modelling (step optional).H. Periksa model untuk redundansi.. Calidasikan model konseptual lokal terhadap transaksi user.+. Tinjau kembali model data konseptual lokal dengan user.

    "ogical %atabase %esign untuk mo%el relational• 9angkah >, 2uat dan 0alidasikan model data logical lokal untuk

    setiap 0iew*. Pindahkan 8tur68tur yang tidak sesuai dengan model relasional

    (step optional).>. 2uat relasi untuk model data logical lokal.-. Calidasikan relasi menggunakan normalisasi.$. Calidasikan relasi terhadap transaksi user.E. Tentukan batasan integritas.

    G. Tinjau kembali model data logical lokal dengan user.

    • 9angkah -, 2uat dan 0alidasikan model data logical global*. #abungkan model data logical local menjadi model global.>. Calidasikan model data logical global.-. Periksa untuk pengembangan mendatang.$. Tinjau kembali model data logical global dengan user.

    Pysical %atabse %esign untuk relasional %atabase• 9angkah $, terjemahkan model data logical global untuk target

    '23*. 'esain relasi dasar.

    >. 'esain representasi dari data yang dihasilkan.-. 'esain batasan6batasan perusahaan.

    >M

  • 8/19/2019 Rangkuman SBD

    21/32

    • 9angkah E, 'esain representasi 8sikal*. Analisa transaksi6transaksi.>. Pilih organisasi 8le.-. Pilih indeks6indeks.

    $. Perkirakan kebutuhan tempat penyimpanan (disk space).

    • 9angkah G, 'esain user 0iew• 9angkah H, 'esain mekanisme keamanan• 9angkah , Pertimbangkan pengenalan dari redundansi terkontrol• 9angkah +, Awasi dan atur sistem operasional

    Langkah 1 : Membangun Model Data Konseptual Lokal Untuk Masing-Masing ViewUntuk membangun sebuah model data konseptual lokal dari sebuah enterprise untuk setiap

    spesifik view. Setiap model data konseptual lokal terdiri dari :

    • Entity types

    • Relationship types

    •  Atribut dan domain atribut

    • Primary key dan Alternate key

    • atasan integritas

     Adapun langkah-langkahnya yaitu :!. Identifikasi Tipe Entitas

    Untuk mengidentifikasikan entitas utama yang dibutuhkan oleh view. "endefinisikan ob#ekutama dimana user mempunyai ketertarikan dengan ob#ek tersebut. $b#ek-ob#ek ini adalah tipeentity untuk model. Salah satu metode untuk mengidentifikasi entity adalah dengan mengu#ispesifikasi kebutuhan dari user. %ari spesifikasi ini kita mengidentifikasikan kata benda danungkapan kata benda &nouns phrases' yang disebutkan. (ita #uga dapat melihat ob#ek utamaseperti orang) tempat atau konsep dari ketertarikan diluar kata benda lainnya yang merupakankualitas dari ob#ek lain.

    *. +%enti3kasi Tipe &elationsip+u#uannya untuk mengidentifikasikan relationship penting yang ada antara tipe entity yang

    telah diidentifikasikan. (ita dapat menggunakan grammar dari spesifikasi kebutuhan tersebutuntuk mengidentifikasi relationship) biasanya relationship dinyatakan oleh kata ker#a,verb atauekspresi verbal. Seara langsung relationship tersebut adalah binary) dengan kata lain relationshiptersebut berada antara dua type entity. (ita pun harus berhati-hati untuk menari relationship yangkomplek yang dapat menghubungkan lebih dari dua tipe entity. Langkah-langkah identifikasi tiperelasi :

    • unakan Entity Relationship %iagram &ER%'

    • /ari batasan dari type relationship

    • Periksa fan dan chasm traps

    • Periksa bahwa masing-masing entity ikut serta setidaknya dalam satu relationship

    • %okumentasikan tipe relationship

    0. Identifikasi dan ubungkan !t"ibut dengan entitas atau Tipe ubungan+u#uannya untuk menghubungkan atribut dengan entitas atau tipe relationship yang

    sesuai dan mendokumentasikan detail dari setiap atribut. Atribut-atribut bisa diidentifikasi dengankata benda atau ungkapan kata benda &nouns phrases' seperti property) kualitas) identifier) ataukarakteristik dari satu entity atau hubungan. Atribut dapat dibagi men#adi 0 yaitu :

    •  Atribut simple atau omposite

    •  Atribut single atau multi value

    •  Atribut %erived

    1. Tetapkan domain at"ibut+u#uannya untuk menetapkan domain atribut dalam model data konseptual lokal danmendokumentasikan setiap detail dari domain. %omain merupakan sekumpulan &pool' nilai-nilai

    dari satu atau lebih atribut yang menggambarkan nilainya. "odel data yang dibuatmenspesifikasikan domain untuk tiap-tiap atribut dan menyertakan :

    >*

  • 8/19/2019 Rangkuman SBD

    22/32

    • ilai yang dii;inkan untuk atribut• Fkuran dan format atribut

    2. Tetapkan .tribut Primary %an Can%i%ate keyUntuk mengidentifikasikan andidate key untuk setiap entity dan #ika terdapat lebih dari

    satu andidate key) maka pilih satu sebagai primary key.

    3. Mempe"timbangkan kegunaan da"i konsep Enhan#ed Modeling $optional%%alam langkah ini kita mempunyai pilihan untuk mengembangkan ER model dengan

    menggunakan konsep enhaned modeling) seperti spesialisasi) generalisasi) penggabungan&aggregation') komposisi &omposition'.

    4. &e"iksa Model untuk &engu"angan%alam langkah ini kita mengu#i model data konseptual lokal dengan tu#uan spesifik untuk

    mengidentifikasikan apakah ada redundany dalam data dan memindahkan data yang telah ada.%ua aktifitas dalam langkah ini adalah :

    • 3enguji ulang relationship *6* (one6to6one)• 3enghilangkan relationship yang redundan

    5. ali%asi Mo%el >onseptual "okal tera%ap Transaksi *ser+u#uannya untuk memastikan model konseptual lokal mendukung transaksi yang

    dibutuhkan oleh view. %iu#i dua pendekatan untuk memastikan model data konseptual lokalmendukung transaksi yang dibutuhkan) dengan ara :

    • "endeskripsikan transaksi-transaksi"emeriksa seluruh informasi &entitas) relationship) dan atribut' yang dibutuhkan olehsetiap transaksi telah disediakan oleh model) dengan mendokumentasikan setiapkebutuhan transaksi.

    • "enggunakan #alur-#alur transaksiUntuk validasi model data terhadap transaksi yang dibutuhkan termasuk representasidiagram #alur yang digunakan oleh setiap transaksi langsung pada ER diagram.

    6. &e'ie# Mo%el Data >onseptual "okal Dengan *ser+u#uannya untuk mereview model data konseptual lokal dengan user untuk memastikan

    model tersebut adalah representasi sebenarnya dari view. "odel data konseptual ini termasuk ERdiagram dan dokumentasi pendukung yang mendeskripsikan model data. ila adake#anggalan&anomali' dalam model data) maka harus dibuat perubahan yang sesuai yangmungkin membutuhkan pengulangan langkah-langkah sebelumnya.

    &e"temuan '(Konsep

    • %atabase terdistribusi) merupakan sekumpulan interrelasi seara logi dari data yangdigunakan bersama) yang seara fisik terdistribusi melalui #aringan komputer.

    • %"S +erdistribusi) "erupakan sistem Software yang mengi#inkan pengaturan daridatabase terdistribusi dan membuat distribusi tersebut terbuka untuk para pengguna,user.

    • %%"S terdiri dari database yang seara logial tunggal dan dibagi men#adi beberapa

    fragment &bagian'. "asing-masing fragment disimpan pada satu atau lebih komputer.• %%"S mempunyai beberapa karakter) diantaranya :

    o (umpulan dari data yangdigunakan bersama) yang berhubungan seara logi.o %ata dipeah - peah men#adi se#umlah fragmen.o 7ragmen dapat direplikasi.

    o 7ragmen,replikanya dapat dialokasikan,ditempatkan ke suatu site&tempat'.o +empat - tempat dihubungkan oleh #aringan komunikasi.

    o %ata yang terdapat pada setiap site berada dibawah kontrol,pengawasan dari%"S.

    o %"S yang terdapat pada setiap site dapat mengatur aplikasi-aplikasi lokalseara autonom.

    o Setiap %"S berpartisipasi paling sedikit dalam sebuah aplikasi global.

    &a"allel D)M*

    >>

  • 8/19/2019 Rangkuman SBD

    23/32

    • "erupakan sebuah %"S yang di#alankan melalui proessor dan disk yang banyak) yangdiranang untuk mengeksekusi operasi-operasi yang di#alankan seara parallel) kapanpunmemungkinkan) dengan tu#uan untuk meningkatkan kemampuan,performanya.

    • erdasarkan pada alasan bahwa sistem proessor tunggal tidak dapat memenuhi syarat-syarat untuk skala biaya yang efektif) keandalannya &reliability' dan kemampuannya&performane'.

    • Parallel %"S menghubungkan banyak) mesin-mesin keil untuk menapai hasil ouputsama seperti tunggal) mesin-mesin yang besar dengan salability&kemampuan mengukur'dan reliability&keandalan' yang lebih bagus dari single-proessor %"S.

    •  Arsitektur utama untuk parallel %"S adalah :o *ha"ed Memo"+) multiple proessor tanpa sistem tunggal berbagi sistem

    memory.o *ha"ed disk) setiap proessor dapat mengakses tempat penyimpanan seara

    langsung) tetapi masing-masing mempunyai memory tersendiri.o *ha"ed nothing) dikenal #uga sebagai Massi,el+ &a"allel &"o#essing &"PP'

    adalah sebuah arsitektur proessor banyak dimana setiap proessor merupakansebuah bagian dari sistem yang lengkap dengan memory dan tempatpenyimpanan masing-masing.

    Keuntungan DD)M*• "enerminkan &reflet' Struktur $rganisasi

    anyak perusahaan yang memiliki abang tersebar dibeberapa kota. "aka databasedigunakan untuk beberapa aplikasi yang terdistribusi di lokasi yang terpisah.

    • "eningkatkan kemampuan untuk berbagi dan otonomi lokalPengguna dapat mengakses data di berbagai tempat dan dapat mengontrol data lokal.%ata ditempatkan di tempat yang tertutup bagi pengguna dan untuk pengaturan lokal%"S dilakukan oleh %A.

    • "eningkatkan ketersediaanUntuk operasi 8 operasi yang gagal di satu tempat) sistem dapat mengirimkan pesangagal ke tempat lain sehingga kegagalan tersebut dapat teratasi.

    • "eningkatkan keandalan &reliability'%ata dapat direplikasi sehingga kegagalan pada suatu node atau hubungan #aringan tidak

    menyebabkan data tidak dapat diakses.• "eningkatkan performa

    (eepatan mengakses database lebih baik.• Ekonomis

    9ebih ekonomis karena dapat menghemat daripada database terpusat.• Perkembangan yang modular.

    9ebih mudah dalam penanganan ekspansi. +empat 8 tempat baru dapat ditambahkan ke #aringan tanpa mempengaruhi operasi di tempat lain. 7leksibilitas ini membuatpengembangan sebuah perusahaan relatif lebih mudah.

    Ke"ugian da"i DD)M*

    • (ompleksitas &(erumitan'Sebuah %"S terdistribusi yang menyembunyikan distribusi dari pengguna dan

    menyediakan tingkatan performa) keandalan dan ketersediaan pada dasarnya lebihkompleks,rumit daripada sebuah %"S terpusat.• iaya yang mahal.

    "eningkatnya kompleksitas berarti biaya prosedur dan pemeliharaan akan lebih tinggidibandingkan dengan %"S terpusat.

    • (eamanan Akses data harus diawasi di berbagai lokasi dan #aringannya #uga harus di#agakeamanannya.

    • Pengawasan integritas yang lebih sulit

    • (urangnya ukuran&standarisasi'(ekurangan standar untuk %%"S akan membatasi potensial %%"S.

    • Pengalaman yang kurang%%"S masih kurang diterima di perusahaan 8 perusahaan sehingga kita masih belum

    mempunyai tingkatan pengalaman yang sama di perusahaan 8 perusahaan seperti %"Sterpusat.

    >-

  • 8/19/2019 Rangkuman SBD

    24/32

    • Ranangan database yang lebih rumit &kompleks'.Ranangan %%"S harus memperhatikan fragmentasi data)alokasi dari fragmen 8fragmen ke tempat yang lebih tepat) dan replikasi data.

    Tipe-tipe DD)M* omogen

    • DD)M* omogen

    o Semua tempat menggunakan produk %"S yang sama.o 9ebih mudah untuk diranang dan diatur.o Pendekatan yang menyediakan peningkatan pengembangan dan performa

    • DD)M* ete"ogen

    o Site dapat men#alankan produk %"S yang berbeda dengan kemungkinanperbedaan model data seara mendasar.

    o +er#adi ketika site telah diterapkan pada database mereka sendiri dan integrasidipertimbangkan selan#utnya.

    o %iperlukan pener#emahan untuk :

    ardware yang berbeda) pener#emahan hanya terkait pada perubahan

    pan#ang kata dan ode. Produk-produk %"S yang berbeda) pener#emahan men#adi rumit

    karena terkait dengan pemetaanstruktur data dari satu model data ke

    model lainnya) termasuk pener#emahan ;uery language. ardware dan produk-produk %"S yang berbeda) melibatkan dua #enis

    pener#emahan menyebabkan pemrosesan men#adi sangat rumit.o Solusi yang umum digunakan pada sistem relasional dengan menggunakan

    gateway) dimana mengkonversikan bahasa dan model dari setiap %"S yangberbeda kedalam bahasa dan model sistem relasional.

    o agaimanapun pendekatan gateway mempunyai beberapa keterbatsan)

    diantaranya: +idak ada dukungan transaksi) atau dengan kata lain hanya merupakan

    pener#emah ;uery. anya mengutamakan masalah pener#emahan ekspresi ;uery dalam

    satu bahasa kedalam ekspresi yang ekuivalen dalam bahasa lainnya.

    ungsi- fungsi dalam DD)M* :• "emberikan layanan komunikasi untuk menyediakan akses ke site &tempat' terpenil dan

    mengi#inkan pengiriman ;uery dan data melalui site yang menggunakan #aringan.• "emberikan katalog sistem untuk menyimpan detail penyebaran data &data distribution'.

    • Pemrosesan ;uery terdistribusi) meliputi optimisasi ;uery dan akses data remote.

    • "emberikan pengawasan keamanan untuk memelihara otorisasi,hak akses yang tepatterhadap data terdistribusi.

    • "emberikan kontrol konkurensi untuk memelihara konsistensi data salinan.

    • "emberikan layanan reovery untuk mengatasi kegagalan tiap site dan kegagalan #alurkomunikasi.

    !"sitektu" DD)M*Referensi arsitektur untuk %%"S terdiri dari beberapa skema) yaitu<

    • impunan dari skema-skema eksternal global"enyediakan logial data independene

    • Skema konseptual global"erupakan deskripsi logial dari keseluruhan database. 9evel ini terkait dengan levelkonseptual dari A=S>-SPAR/ dan terdiri dari definisi entitas) relationship ) batasan-batasan &onstraints') keamanan dan integritas informasi. "enyediakan physial dataindependene

    • Skema fragmentasi dan skema alokasiSkema fragmentasi medeskripsikan bagaimana data dipartisi seara logial) dan skemaalokasi mendeskripsikan dimana data akan dialokasikan.

    • impunan dari skema-skema untuk setiap %"S lokal sesuai dengan 0 level A=S>-SPAR/Setiap %"S lokal memiliki skema tersendiri. Skema konseptual lokal dan skema internal

    lokal sesuai dengan level yang ekuivalen dengan arsitektur A=S>-SPAR/.

    >$

  • 8/19/2019 Rangkuman SBD

    25/32

    Komponen DD)M*

    • (omponen %"S lokal &9%"S'o "erupakan %"S standar) bertanggung #awab terhadap pengontrolan data lokal

    pada setiap site yang memiliki database.o "emiliki katalog sistem lokal sendiri yang menyimpan informasi mengenai data

    yang ada pada site tersebut.

    o Pada sistem homogeneous) 9%"S yang sama direplika pada beberapa site.Sedangkan pada sistem heterogenous memiliki sedikitnya * site dengan %"Syang berbeda.

    • (omponen %ata /ommuniation &%/'o "erupakan software yang memungkinkan seluruh site saling berkomunikasi

    dengan site lainnya.o erisikan informasi mengenai site dan keterhubungannya.

    • lobal System /atalog &S/'o "emiliki fungsi yang sama dengan katalog sistem pada sistem terpusat.o "enyimpan informasi khusus mengenai sifat dasar pendistribusian pada sistem)

    seperti fragmentasi) replikasi) dan skema alokasi.

    • (omponen %%"So "erupakan unit pengawasan keseluruhan sistem

    Dist"ibuted .elational Database Design+iga hal utama dalam desain database terdistribusi :

    • Pembagian &7ragmentation'Relasi dapat dibagi men#adi beberapa bagian relasi ) yang kemudian didistribusikan.

    •  Alokasi &Alloation'Setiap fragment disimpan pada tempat &site' dengan distribusi yang optimal.

    • Perbanyakan &Replikasi'Salinan dari fragmen yang terdapat,dipelihara pada beberapa tempat,site.

    "agmentation%efinisi dan alokasi dari fragmen dilaksanakan seara strategis untuk menapai tu#uan :

    • 9oality of referene) #ika memungkinkan sebaiknya data disimpan dekat dengan tempat

    penggunaannya.• >mproved reliability and availability) keandalan dan ketersediaan data dapat ditingkatkan

    dengan replikasi.•  Aeptable performane) alokasi data yang buruk dapat menyebabkan ke#adian

    ?bottlenek@ sehingga menyebabkan suatu site men#adi terban#iri re;uest,permintaan darisite lain) sehingga menyebabkan penurunan performa yang ukup signifikan.

    • alaned storage apaities and ost) pertimbangan terhadap ketersedian tempatpenyimpanan dan biaya penyimpanan pada setiap site.

    • "inimal ommuniation ost) pertimbangan terhadap biaya re;uest #arak #auh &remotere;uest'.

    %efinisi dan alokasi fragmen harus berdasarkan kepada bagaimana database tersebut akan digunakan.%esain berdasarkan pada informasi kuantitatif atau kualitatif.>nformasi kuantitatif digunakan dalam pengalokasian) dapat berisi :

    • 7rekuensi dimana suatu aplikasi di#alankan.• +empat,site dimana suatu aplikasi di#alankan.

    • (riteria atau syarat 8 syarat performa untuk transaksi 8 transaksi.

    >nformasi kualitatif digunakan dalam fragmentasi) dapat berisi informasi mengenai transaksi-transaksi yangdieksekusi atau di#alankan seperti :

    • Relasi) atribut dan tuple yang diakses.

    • +ipe pengaksesan & baa atau tulis '.

    • Predikat dari operasi-operasi baa.

    +erdapat 1 alasan mengapa dilakukan fragmentasi :• Usage

    Pada umumnya) aplikasi beker#a menggunakan view daripada keseluruhan relasi. $lehkarena itu untuk data terdistribusi lebih tepat beker#a dengan himpunan bagian dari relasisebagai unit dari distribusi

    >E

  • 8/19/2019 Rangkuman SBD

    26/32

    • Effiieny%ata disimpan lebih dekat dengan bagian yang lebih sering menggunakannya

    • Parallelism%engan fragmen sebagai unit distribusi) transaksi dapat dibagi men#adi beberapasub;uery yang beroperasi pada fragmen. Sehingga dapat meningkatkan konkurensi atauparallelism dalam sistem

    • Seurity%ata yang tidak dibutuhkan oleh aplikasi lokal tidak disimpan dan tidak tersedia untukuser yang tidak berwenang

    (etepatan dalam fragmentasi teratasi dengan 0 aturan berikut :• /ompleteness

    ika relasi R didekomposisikan men#adi R!) R*)B) Rn. maka setiap data item yangditemukan dalam R harus ada dalam sedikitnya ! fragmen. Aturan ini untuk memastikanbahwa tidak ada data yang hilang selama fragmentasi.

    • Reonstrutionarus memungkinkan mendefinisikan operasi relasional yang akan merekonstruksi relasiR dari fragmen-fragmen. Aturan ini memastikan terdapatnya ketergantungan fungsional.

    • %is#ointness

    ika data item di munul dalam fragmen Ri maka tidak boleh munul pada fragmenlainnya. 7ragmentasi vertikal merupakan pengeualian) dimana atribut primary key harusdiulang untuk memungkinkan rekonstruksi. Aturan ini memastikan kerangkapan datamen#asi minimal.

    "aam-maam 7ragmentasi :

    • oriContal fragment) terdiri dari himpunan bagian dari tuple-tuple dalam relasi

    • Dertial fragment) terdiri dari himpunan bagian dari atribut-atribut dalam relasi

    • "ied fragment) terdiri dari fragmen horiContal yang kemudian difragmen vertikal ataukebalikannya

    • %erived horiContal fragment) merupakan fragmen horiContal yang dihasilkan dari fragmenhoriContal relasi parent.

    !lokasi DataEmpat strategi alternatif mengenai alokasi data yaitu:• /entraliCed &+erpusat'

    +erdiri dari database tunggal dan penyimpanan %"S di satu tempat dengan user&pengguna' terbagi-bagi melalui #aringan.

    • Partitioned &Partisi'%atabase dipartisi men#adi fragmen yang terpisah 8 pisah) tiap fragmen ditempatkan kedalam satu tempat,site.

    • /omplete Repliation &Replikasi lengkap'+erdiri dari pemeliharaan seara lengkap replikasi dari database pada setiap tempat.

    • Seletive Repliation &Replikasi selektif'(ombinasi dari partitioning) repliation) dan entraliCation.

    +ransparansi dalam %%"S%iidentifikasikan 1 #enis transparansi dalam %%"S) yaitu :

    • +ransparansi distribusi &%istribution +anspareny'"emungkinkan user untuk menganggap database sebagai entitas logial tunggal. Ada 2tingkatan transparansi) yaitu :

    o 7ragmentation +ranspareny"erupakan tingkatan tertinggi dalam transparansi distribusi) #ika tarnsparansifragmentasi disediakan oleh %%"S maka user tidak perlu tahu bahwa datadifragmentasi. Sebagai hasilnya akses database berdasarkan pada skemaglobal.

    o 9oation +ranspareny"erupakan tingkatan menengah dari transparansi distribusi. %engan transparansiini user harus mengetahui bahwa data telah difragmentasi tetapi tidak perlumengetahui ditempatkan dimana data tersebut.

    o Repliation +ranspareny

    >G

  • 8/19/2019 Rangkuman SBD

    27/32

    +erkait erat dengan transparansi lokasi) dimana user tidak mengetahui replikasidari fragmen.

    o 9oal "apping +ranspareny

    "erupakan tingkatan terendah dari transparansi distribusi. %engan transparansipemetaan lokal) user perlu untuk mespesifikasikan nama fragmen dan lokasi dataitem) dengan pertimbangan terdapat replikasi.

    o

    =aming +ransparenySebagai akibat dari transparansi distribusi diatas. Seperti dalam databaseterpusat) setiap data item dalam database terdistribusi harus mempunyai namayang unik. (arena itu %%"S harus memastikan tidak ada * site yang membuatob#ek database dengan nama yang sama. Salah satu solusi untuk masalah inidengan membuat pusat =ame server) yang bertanggung #awab untukmemastikan keunikan setiap nama dalam sistem.

    • +ransparansi transaksi &+ransation +ranspareny'"emastikan bahwa seluruh transaksi terdistribusi memelihara integritas dan konsistensidari database. +ransaksi terdistribusi mengakses data yang disimpan pada lebih dari !lokasi. Setiap transaksi dibagi men#adi subtransaksi) satu untuk setiap site yang harusdiakses. +erdapat * aspek yang harus dipertimbangkan dalam transparansi transaksi :#on#u"en#+ t"anspa"en#+ dan failu"e t"anspa"en#+.

    • /onureny +ranspareny) disediakan oleh %%"S #ika hasil dari seluruh transaksi yangkonkuren & terdistribusi ataupun tidak ' dieksekusi seara independen dan seara logikakonsisten

    • dengan hasil yang didapatkan #ika transaksi dieksekusi pada waktu yang bersamaan.

    • 7ailure +ranspareny) selain dapat memenuhi mekanisme reovery dan mengatasi failureseperti pada %"S terpusat) %%"S #uga harus dapat mengatasi : hilangnya pesan)kegagalan #alur komunikasi) kegagalan site) dan partisi #aringan. %%"S harusmemastikan keutuhan &atomiity' dari transaksi global) dimana memastikan bahwasubtransaksi dari global transaksi seluruhnya /$"">+ atau A$R+.

    +erdapat 1 maam transaksi dengan tingkat kerumitan dalam interaksi dengan %"S) yaitu :o remote request ) Sebuah aplikasi pada satu site dapat mengirimkan re;uest

    &perintah SF9' ke beberapa remote site untuk eksekusi. Re;uest tersebut

    dieksekusi seluruhnya di remote site dan hanya dapat mengau pada data yangterdapat pada site tersebut.

    o Remote unit of work ) sebuah aplikasi pada site lokal dapat mengirimkan seluruhperintah SF9 dalam transaksi ke beberapa remote site untuk eksekusi. Seluruhperintah SF9 dieksekusi seluruhnya di remote site dan hanya dapat mengaupada data yang ada pada site tersebut. Site lokal dapat menetapkan apakahtransaksi tersebut /$"">+E% atau R$99E% A/(.

    o Distributed unit of work ) sebuah aplikasi pada site lokal dapat mengirimkan

    sebagian atau seluruh perintah SF9 dalam transaksi ke satu atau beberaparemote site untuk eksekusi. Setiap perintah SF9 dieksekusi seluruhnya padaremote site dan hanya dapat mengau pada data yang ada pada site tersebut.Perintah SF9 lainnya dapat dieksekusi pada site yang lain. Site lokal dapatmenetapkan apakah transaksi tersebut /$"">+E% atau R$99E% A/(.

    o Distributed request ) sebuah aplikasi pada site lokal dapat mengirimkan sebagianatau seluruh perintah SF9 dalam transaksi ke satu atau beberapa remote siteuntuk eksekusi. Perintah SF9 dapat meminta akses data pada satu atau lebihsite.

    • +ransparansi performa &Performane +ranspareny'+ransparansi performa meminta %%"S untuk beker#a seperti %"S terpusat. +erdapat%istributed Fuery Proessing &%FP' yang memetakan permintaan data kedalam perintahoperasi terurut pada database lokal. %FP harus memutuskan :

    o 7ragmen mana yang harus diakseso Salinan fragmen yang mana yang harus digunakan) #ika fragmen telah

    diperbanyako 9okasi mana yang digunakan

    %FP menghasilkan strategi eksekusi yang dioptimalkan dengan pertimbangan fungsibiaya. iaya yang biasanya terkait dengan distributed re;uest diantaranya :

    >H

  • 8/19/2019 Rangkuman SBD

    28/32

    o iaya waktu akses &>,$' termasuk pengaksesan data fisik pada disk

    o  Adanya biaya waktu /PU ketika men#alankan operasi terhadap data dalam mainmemory

    o iaya komunikasi terkait dengan perpindahan data melalui #aringan

    • +ransparansi %"S &%"S +ranspareny'

    +ransparansi %"S menyembunyikan pengetahuan bahwa %"S lokal mungkin daptberbeda dan karena itu hanya diaplikasikan untuk %%"S yang heterogen. "erupakan+ransparansi yang paling rumit untuk penyediaan sebagai generalisasi.

    !tu"an / atu"an untuk DD)M* ada 1' +aitu :Prinsip dasar :

    +erhadap pengguna) sistem terdistribusi harus kelihatan seperti bukan sistem terdistribusi.!. Autonomy 9okal) maksudnya :

    o %ata lokal dimiliki dan diatur seara lokalo $perasi lokal berlangsung di lokal.o Semua operasi yang berlangsung di suatu site dikontrol oleh site tersebut.

    *. +idak ada ketergantungan pada site pusat.+idak ada sitem yang tidak dapat beroperaswi disuatu site. Artinya tidak ada #aringan yang

    terpusat.0. $perasi yang terus berlan#ut+idak perlu ada renana untuk membuat sistem dimatikan) untuk operaasi seperti :o "enambah atau menghapus site dari sistem.o "embuat dan menghapus fragmen pada satu atau lebih site.

    1. 9oation >ndependene.Pengguna harus dapat mengakses data dari berbagai tempat.

    2. 7ragment >ndependeneUser harus dapat mengakses data pada berbagai fragmen

    3. Repliation >ndependenePengguna tidak boleh mengetahui bahwa data telah direplikasi. Galaupun) pengguna tidakdapat mengakses opy dari data tersebut seara langsung) tidak #uga dapat mengupdatesemua opy dari #enis-#enis data tersebut.

    4. %istributed Fuery Proessing.

    Sistem harus dapat mampu mengolah ;uery 8 ;uery yang menghubungkan data pada lebihdari satu tempat.

    5. %istributed +ransation Proessing.Sistem harus dapat mendukung transaksi sebagai unit dari reovery. Sistem harus dapatmenyakinkan bahwa kedua loal dan global transaksi mengau ke aturan A/>% untuktransaksi seara atomik) konsisten) lokasi dan durasi.

    6. ardware >ndependene.%%"S harus dapat di#alankan pada berbagai platform hardware.

    !H. $perating System >ndependene.%%"S harus dapat di#alankan pada berbagai sistem operasi.

    !!. =etwork >ndependene.%%"S harus dapat di#alankan pada berbagai hubungan #aringan yang berbeda.

    !*. %atabase >ndependene.

    %%"S harus dapat dimungkinkan dibangun dari %"Ss lokal) mendukung data model yangberbeda. %engan kata lain) sistem harus dapat mendukung keaneka ragaman.

    /atatan : Empat aturan yang terakhir di atas adalah yang paling ideal atau paling bagus diterapkan untuksuatu %%"S.

    &e"temuan '0Pengenalan

    • Geb merupakan system infromasi #aringan yang kuat dan sangat popular saat ini.

    • (arena itu arsitektur web didesain agar independen terhadap platform) bisa memperkeilbiaya penyebaran dan biaya pelatihan seara signifikan.

    • $rganisasi yang menggunakan web sebagai dasar strategi untuk solusi bisnis yanginovatif) berdampak men#adi web-entri

    anyak situs web sekarang berbasis file) dimana setiap dokumen web disimpan dalam fileyang terpisah.• Untuk situs yang besar) ini dapat menyebabkan masalah mana#emen yang signifikan.

    >

  • 8/19/2019 Rangkuman SBD

    29/32

    • %an sekarang ini banyak situs web yang mengandung banyak informasi dinamis) sepertidata produk dan harga.

    • Pemeliharan data dalam database dan file +"9 yang terpisah merupakan sebuahmasalah.

    • "engakses database seara langsung dari Geb akan men#adi pendekatan yang lebihbaik.

    Inte"net

    • "erupakan kumpulan seluruh #aringan omputer sedunia yang saling terhubung.

    • %imuali pada akhir 3H-an di ARPA=E+ &Advaned Researh Prohets Ageny =E+work')proyek US %epartment $f %efense) meneliti bagaimana membangun #aringan yang bisabertahan lama.

    • %imulai dengan beberapa titik) internet diperkirakan untuk bisa menapai lebih dari !HH #uta pengguna pada tahun !664) dan lebih dari 06H #uta pengguna dilebih dari !HH negarapada tahun *HH!.

    • %iperkirakan terdapat 31H #uta pengguna Geb pada tahun *HH0.

    • Sekitar *.2 milyar dokumen terdapat pad ainternet &22H milyar #ika termasuk intranet danetranet'.

    Int"anet dan Et"anet• >ntranet adalah situs web atau grup dari situs yang dimiliki oleh suatu organisasi) hanya

    dapat diakses oleh anggota-anggota organisasi tersebut.

    • Etranet adalah sebuah intranet yang dapat diakses oleh lingkungan luar yang memilikiwewenang.

    • >ntranet berada dibelakang firewall dan hanya dapat diakses oleh orang yang merupakananggota dari organisasi yang sama) etranet menyediakan variasi level hak akses untukliar. iasanya etranet dapat diakses bila pengguna luar tersebut memiliki username danpassword yang benar.

    e-2omme"#e dan e-)usiness+erdapat pemikiran bahwa internet berkesempatan dapat mendukung e-ommere dan e-business. /isosystem) telah mendefinisikan 2 tahap pengembangan dari evolusi internet untuk bisnus) yaitu :

    • E-mail) memungkinkan untuk berkomuniskasi dan bertukar file malalui #aringan internal)bisnis pada tahap ini dimulai dengan berkomunikasi antar supplier dan ustomer denganmenggnakan internet sebagai media eternal.

    • 3eb *ite) bisnis pada tahap ini membuat web site yang berperan seperti shop windowskeseluruh =egara untuk produk-produk mereka. Geb #uga memungkinkan ustomer untukberkomunikasi dengan bisnisnya kapan dan dimana pun.

    • E-#omme"#e) ustomer dapat memesan dan membayar permintaan pesaanan melaluisitus Geb isnis. %i tahap ini tidak hanya menggunakan Geb site sebagai brosurdinamus tetapi #uga memungkinkan pelanggan untuk melakukan permintaan dari web danmenyediakan layanan dan dukungan online.

    • E-)usiness) merupakan integrasi lengkap dari teknologi internet ke dalam infrastrukturekonomi dari bisnis. isnis di tahap ini mengatur proses internal dan eksternal melaluiintranet dan etranet berupa pen#ualan) layanan dan promosi yang kesemuanya

    berdasarkan pada web• E#os+stem) pada tahap ini seluruh proses bisnis diautomasi melalui internet) ustomer)

    supplier) key alliane partner dan infrastruktur orporate men#adi satu dalam sebuahsystem maya. +ransaksi bisnis-ke-bisnis dapat menapai I!.0 triliyun pada tahun *HH0.Eommere dapat menghasilkan I0.* triliyun di penerimaan koorporasi dunia pada tahun*HH0 dan bisa merepresentasikan 2J dari pen#ualan pada ekonomi global.

    3eb

    • Gorld Gide Geb merupakan system hypermedia yang menyediakan ?tun#uk dan tekan@yang sederhana) artinya menari informasi pada internet menggunakan hyperlink.

    • >nformasi ditampilkan pada halaman web) dimana dapat terdiri dari tet) grafik) gambar)suara dan video

    • uga dapat mengandung hyperlink ke halaman web yang lain) sehingga memungkinkan

    pengguna untuk mengontrol penarian informasi yang tidak berurut.• %okuman web ditulis menggunakan +"9.

    >+

  • 8/19/2019 Rangkuman SBD

    30/32

    • Geb terdiri dari #aringan omputer yang bisa berinteraksi melalui dua turan :o Sebagai servers) menyediakan informasi<

    o Sebaga lients &penari') meminta informasi.

    •  Aturan , protool yang men#amin pertukaran informasi diantara server web dan penariadalah ++P

    • %an lokasi dimana dokumen diidentifikasi sebagai UR9.

    • anyak dari kesuksesan Geb adalah karena kesederhanaan dan independensi platform.

    +pe"Tet T"ansfe" &"oto#ol $TT&%• "erupakan aturan,protool yang digunakan untuk transfer halaman Geb melalui >nternet.

    • ++P berdasarkan pada paradigma respon terhadap permintaan. +ransaksi ++P terdiridari tahapan :

    o (oneksi 8 /lient melakukan koneksi dengan Geb Server 

    o Permintaan 8 /lient mengirimkan permintaan ke Geb server o Respon 8 Geb Server mengirimkan respon & dokumen +"9' kepada liento Selesai 8 (oneksi ditutup,diputuskan oleh Geb Server 

    • ++P merupakan stateless protool) yaitu koneksi tertutup setiap kali server melaukanrespon) sehingga tidak menyimpan informasi untuk setiap permintaan.

    • >ni menyebakakn kesulitan untuk mendukung konseo yang mendasar dari transaksi%"S.

    +pe"Tet Ma"kup Language $TML%• +"9 yaitu ahasa dokumen terformat yang digunakan untuk mendesain hampir seluruh

    halaman Geb.

    • Sederhana) kuat) merupakan bahasa dokumentasi yang Platform independent .

    • +"9 adalah aplikasi dari StandardiCed eneraliCed "arkup 9anguage &S"9') yaitusistem untuk mendefinisikan tipe dokumen terstruktur dan menetapkan bahasa untukmerepresentasikan instane dari tipe dokumen tersebut.

    Unifo"m .esou"#e Lo#ato"s $U.Ls%• UR9 adalah kombinasi dari karakter alphanumerik yang merepresentasikan lokasi atau

    alamat dari dokumen &resoures' yang ada pada internet dan bagaimana dokumen&resoures' tersebut dapat diakses.• "endefinisikan seara unik dimana dokumen &resoures' tersebut dapat ditemukan.

    • Uniform Resoure >dentifiers &UR>s' adalah himpunan generi,umum dari seluruhnama,alamat yang mengau pada dokumen &resoures' internet.

    • Uniform Resoure =ames &UR=s' adalah nama lokasi yang independen dan tetap.erdasarkan pada layanan name-lookup.

    • UR9 terdiri dari 0 bagian dasar) yaitu :o Protool) digunakan untuk koneksio ost name

    o Path name pada host dimana dokumen &resoure' disimpan

    • UR9 dapat seara optional menspesifikasikan prot melalui koneksi mana yang menu#uhost harus dibuat) dn ;uery string.

    • /ontoh :http:,,www.w0.org,markup,markup.html

    /ontoh diatas adalah UR9 yang mengidentifikasikan halaman umum untuk informasi+"l pada G0/. Protokol adalah ++P) hostnya adalah Kwww.w0.orgL) dan virtual pathdari file +"9 adalah K,markup,markup.htmlL.

    alaman 3eb *tatis dan Dinamis• %okumen +"9 yang disimpan dalam file merupakan halaman Geb statis) isinya tidak

    akan pernahberubah keuali file-nya diubah) sedangkan isi dari halaman Geb dinamisdibangun,dibuat setiap kali diakses.

    • (arena itu halaman Geb dinamis memiliki beberapa feature yang tidak dimiliki web statis)seperti :

    o Respon terhadap input yang diberikan oleh user melalui browser o %apat dikontumisasi oleh dan untuk setiap user 

    -M

  • 8/19/2019 Rangkuman SBD

    31/32

    o "emerlukan hypertet yang harus dibangun,dibuat oleh server 

    o "embutuhkan sripts yang menampilkan konversi dari format data yang berbedake +"9.

    *+a"at-s+a"at untuk integ"asi web-D)M*

    • (emampuan untuk mengakses data koorporasi yang bernilai dengan ara yang aman.

    • (eterhubungan independen antara data dan vendor memungkinkan kebebasan untukmemilih %"S.

    • (emampuan untuk berinteraksi dengan database) independen terhadap browser atauGeb server tertentu.

    • Solusi keterhubungan yang memberikan keuntungan dari seluruh feature %"Sorganisasi.

    •  Arsitektur yang terbuka memungkinkan kemampuan untuk diganti dengan system danteknologi yang bervariasi) ontoh untuk dukungan :

    o Geb server yang berbeda<o "irosoft &%istributed' /ommon $b#et "odel &%/$",/$"'<o /$RA,>>$P & internet >nter-$R protool'<o ava , Remote "ethod >nvoation &R">'.

    • Solusi efektivitas biaya yang memungkinkan salability) pertumbuhan dan perubahan

    dalam petun#uk strategis) dan membantu mengurangi biaya pembuatan aplikasi.• %ukungan untuk transaksi yang men#angkau permintaan multiple-++P

    • %ukungan untuk session dan aplikasi berdasarkan autentikasi.

    • Performa yang dapat diterima

    • Pengeluaran tambahan &overhead' administrasi yang minimal

    • Penentuan high-level productivity tool sehingga memungkinkan aplikasi untuk dibangun)dipelihara dan disebarkan dengan relatif mudah dan epat.

    Two-Tie" 2lient-*e",e" !"#hite#tu"e Aplikasi bisnis dengan data-intensive memiliki 1 komponen utama) yaitu : database) logika transaksi) logikaaplikasi) dan interfae pengguna. %alam lingkungan mainframe) seluruh komponen ini berada pada satutempat) untuk mengakomodasi perkembangan lingkungan bisnis desentralisasi maka aritektur tradisionaltwo-tier-client-server dibuat untuk menyediakan tugas yang terpisah.

    Th"ee-Tie" 2lient-*e",e" !"#hite#tu"ePada sisi /lient terdapat * masalah berkaitan dengan salability:

    • ?7at@ lient) #umlah lient yang besar memerlukan pertimbangan dokumen &resoures'pada komputer lient ber#alan dengan efektif.

    • Permintaan tambahan administrasi untuk sisi lient.

    Pada tahun !662) diusulkan three layer) yang masing-masing ber#alan pada platform yang berbeda :

    • 9ayer user interfae) ber#alan pada komputer end-user &lient'

    • 9ayer business logi dan data proessing) lapisan tengan yang ber#alan pada server)biasa disebut application server .

    • %"S) menyimpan data yang dibutuhkan oleh middle tier. lapisan ini ber#alan pada server 

    terpisah yang disebut database server.

     Arsitektur three tier ini memiliki beberapa keuntungan :

    • ?+hin@ lient) #umlah lient yang keil menyebabkan berkurangnya permintaan hardwareyang mahal.

    • Pemeliharaan aplikasi yang terpusat.

    • 9ebih mudah untuk diubah atau mengganti satu lapisan tanpa mempengaruhi yang lain.Pemisahan logika bisnis dari fungsi database f menyebabkan kemudahan implementasiload balancing .

    • Pemetaan arsitektur three-tier sama dengan Geb environment.

    Keuntungan da"i &endekatan 3eb-D)M*(euntungan yang didapat melalui penggunaan %"S :

    Simpliity%alam bentuk orisinal) +"9 sebagai markup language sangat mudah untuk dipela#arioleh developer maupun naïve end-user 

    -*

  • 8/19/2019 Rangkuman SBD

    32/32

    • Platform independeneSalah satu alasan dibuatnya aplikasi database versi Geb-based dikarenakan padaumumnya Geb lient &browser' independen terhadap platform. Sehingga #ika suatuaplikasi akan di#alankan pada $S yang berbeda tidak memerlukan modifikasi

    • raphial User >nterfae"enyederhanakan dan meningkatkan pengaksesan database) tetapi U> memerlukan

    program tambahan yang akan menyebabkan tergantung terhadap platform.• StandardiCation

    +"9 standar seara de facto dimana seluruh web browser berada) memungkinkansebuah dokumen +"9 pada satu mesin dibaa oleh user pada mesin lainnya dibagianlain dunia melalui koneksi internet dan web browser.

    • /ross-platform SupportGeb browser ada seara virtual untuk setiap tipe dari platform komputer. "emungkinkanuser pada sebagian besar #enis komputer mengakses database dari manapun dibagiandunia.

    • +ransparent =etwork Aess

    • Salable %eployment

    • >nnovation

    Disad,antages of 3eb-D)M* !pp"oa#h• Reliability

    +erkadang internet tidak reliable ketika sebuah perintah diberikan melalui internet) tidakdapat dipastikan perintah tersebut akan terkirim.

    • Seurity

    • /ost

    • Salability

    • 9imited funtionality of +"9

    • Statelessness

    • andwidth

    • Performane

    • >mmaturity of development tools

    &endekatan Untuk Integ"asi 3eb dan D)M*• !cripting Languages

    Sripting 9anguages memungkinkan untuk membuat fungsi yang ditambahkan,disisipkanpada kode +"9. Sehingga memungkinkan proses yang bervariasi diautomasi dan ob#ekdapat diakses #uga dimanipulasi.

    • "ommon #ateway $nterface %"#$&.

    Maitu spesifikasi untuk mentransfer informasi antar Geb server dengan /> program.+erdapat 1 metode utama untuk memberikan informasi dari browser ke sript />) yaitu :

    o Passing parameters on the command line

    o Passing environment variables to "#$ parameters

    o Passing data to "#$ programs via standard input 

    o using e'tra path information

    •++P /ookies"erupakan bagian dari informasi yang disimpan lient atas nama server. >nformasi yangdisimpan dalam ookies berasal dari server sebagai bagian dari respon server terhadappermintaan ++P.

    • Etending the Geb Server 

    • ava) %/) SF9) Servlets) dan SP.

    • "irosoft Geb Solution Platform: ASP dan A%$.

    • $rale >nternet Platform.