Anda di halaman 1dari 13

)eb Database *mplementation ession +, - and .

/ Physical Database Design

Rp_27-Pis_mvc

Physical Database Design adalah Proses memproduksi deskripsi dari sebuah implementasi database pada penyimpanan sekunder, yang menggambarkan relasi dasar, organisasi file, dan indeks yang digunakan untuk mencapai akses yang efisien terhadap data, dan setiap contraints integritas terkait dan langkah-langkah keamanan. Properti untuk memilih representasi fisik? -kecepatan -kapasitas - ahan terhadap bencana !mplementasi physical database design sangat tergantung pada D"#$, yang mana mengapa penting untuk memilih D"#$ sesuai dengan kebutuhan implementasi database fisik Pertimbangan ketika menerapkan Desain Database Fisik? -Desain Database %ogical -"esaran dan volatilitas data -&ara-cara di mana data yang akan digunakan -sifat transaksi -biaya $etelah memilih D"#$ untuk Database Desain 'isik, (RD normal dapat dilaksanakan sesuai dengan D"#$ Langkah-langkah metodologi desain database fisik? -Terjemahkan logical data model untuk Target DBM ! melibatkan desain "#D normal dan contraints umum menggunakan fungsi yang tersedia dari sasaran DMB $ -Desain %rganisasi file dan indeks! memilih organisasi file dan indeks untuk relasi dasar -Desain &ser 'ie(! memutuskan bagaimana setiap tampilan pengguna harus diimplementasikan Terjemahkan model data logis untuk sasaran DBM Desain (ntitas, Relasi, )tribut dari (RD normal - *ama entitas +tabel, dan atribut - ambahkan primary key, alternate key+-ika diperlukan,, dan foreign key +-ika diperlukan, - ambahkan integritas referensial - .ntuk setiap atribut/ #emutuskan domainnya #emutuskan nilai default opsional

Rp_27-Pis_mvc #emutuskan apakah atribut dapat terus nulls #emutuskan apakah atribut tersebut derived dan -ika demikian bagaimana harus dihitung Representasi desain derived data -#emutuskan apakah data harus disimpan dalam database atau menghitung setiap kali diperlukan. - pertimbangan/ -"iaya tambahan untuk menyimpan dan tetap konsisten -"iaya untuk menghitung Terjemahkan model data logis untuk sasaran DBM -Desain 0eneral constraint -&onstraint integritas/ data yang dibutuhkan, domain constraint dan entitas adn integritas referensial -Desain &onstraint tergantung pada D"#$ %rganisasi desain file dan indeks -tu-uan/ entukan organisasi file yang optimal untuk menyimpan database dan indeks yang diperlukan untuk mencapai kiner-a accetable - 1enis file tergantung ke D"#$ - 2egiatan dalam Desain "erkas 3rganisasi dan !ndeks/ -)nalisis ransaksi/ untuk memahami fungsi dari transaksi yang akan ber-alan pada database dan untuk menganalisis transaksi yang penting -Pilih 3rganisasi 'ile/ untuk menentukan organisasi file yang efisien untuk setiap database -Pilih !ndeks/ untuk menentukan apakah menambahkan indeks akan improce kiner-a sistem -Perkirakan Disk $pace yang dibutuhkan/ untuk memperkirakan -umlah ruang disk yang akan dibutuhkan oleh database -'ile 3rgani4ations echnology 5eap 'iles 5ash 'iles !nde6ed $e7uential 3ffice )cess #ethod +!$)#, "8- ree &lusters -!nde6es echnology #ulti-level !nde6es

Rp_27-Pis_mvc !nde6ed $e7uential )ccess #ethod Desain Pengguna 'ie( -.ntuk merancang tampilan pengguna yang diidentifikasi selama pengumpulan kebutuhan dan tahap analisis -Dapat diimplementasikan dengan menggunakan 9ie:s tudi 0asus Desain Database Fisik! $ebuah me-a relasional dirancang untuk me:akili rincian proyek. kolom tersebut adalah nomor proyek, nomor karya:an pemimpin proyek, nama proyek, departemen dan kepala departemen. $etiap proyek memiliki nomor yang unik, pemimpin dan departemen tuan rumah. $etiap departemen hanya memiliki satu kepala, tetapi dapat men-adi tuan rumah banyak proyek. "uatlah kebutuhan implementasi perencanaan database fisik dan semua skrip untuk kasus ini.;

Physical )eb Database Design Physical )eb Database Design adalah Desain bagaimana halaman Web harus

dilaksanakan dan terhubung ke sistem database. Alat perangkat lunak dan teknik yang dapat digunakan untuk membuat sebuah sistem database yang dapat diakses melalui web Komponen sistem database dapat diimplementasikan sebagai ekstensi untuk server atau browser, atau mungkin eksternal ke web Implementasi harus menganalisa dan memutuskan bagaimana untuk mengakses database dari klien atau server dan di mana untuk memproses aplikasi Implementasi juga harus mempertimbangkan arsitektur web Web Architecture
)plikasi :eb harus terbangun dalam arsitektur client server -enis arsitektur &lient server/ :o- ier &lient $erver )rchitecture

Rp_27-Pis_mvc

hree- ier &lient $erver )rchitecture

0euntungan Three Tier 1lient er2er 3rchitecture! -< hin< client, membutuhkan hard:are lebih murah - pemeliharaan )plikasi terpusat -#udah untuk memodifikasi atau mengganti satu lapis tanpa mempengaruhi yang lain -#emisahkan logika bisnis dari fungsi basis data -Pemetaan secara alamiah untuk :eb environtment 1lient ide Processing )pa &lient $ide Processing= -Pengolahan sisi client > sisi client scripting -Pendekatan yang memungkinkan aplikasi yang di-alankan oleh sistem klien ?eb ketimbang server -Pada dasarnya klien pengolahan sisi cocok untuk fungsi skala kecil, seperti halaman :eb animasi, dan validasi data sederhana dan perhitungan. -"isa menghindari se-umlah koneksi yang kemungkinan lambat. -2lien harus memiliki sumber daya minimal untuk memproses informasi -"ahasa yang umum digunakan dalam &lient $ide Processing/ 1ava +1ava )pplet atau 1ava$cript,

Rp_27-Pis_mvc Dua pendekatan dasar untuk pengolahan sisi client! Browser Ekstensi -"ro:ser diperpan-ang untuk memberikan fungsi tambahan -Dengan menggunakan plug-in +di *etscape atau !nternet (6plorer,, )ctive@ &ontrol +!nternet (6plorer, atau menggunakan 1ava )pplet dan 1ava$cript -&ara membuat "ro:ser (6tension/ -$cript "ahasa !nterpreter, misalnya 1ava$cript -"ytecode !nterpreter, untuk mengimplementasikan 1ava 9irtual #achine +19#, untuk menafsirkan 1ava -)kses ke $umber Daya $istem 3perasi Aplikasi eksternal -)da klien database pada sistem klien, dan diluncurkan oleh bro:ser :eb untuk menyediakan layanan atau aplikasi tambahan lainnya seperti penutup sistem :arisan oleh middle:are -#irip dengan menggunakan situs server gate:ay untuk mengeksekusi sistem lain keuntungan/ -Dapat berinteraksi langsung dengan D"#$ menggunakan sistem mana-emen transaksi databasenya kerugian/ -!nteraksi antara klien dan server tidak dikendalikan oleh mana-emen transaksi D"#$

0euntungan dari 1lient er2er Processing! -Distribusi dari pengolahan -2ecepatan umpan balik -Ditambahkan halaman fungsionalitas 0ekurangan 1lient er2er Processing! -(nvironment Dependensi -keamanan -Do:nload time -"atasan pemrograman tudi 0asus 1lient ide Processing $ebuah organisasi ingin membuat :ebsite yang memiliki respon yang cepat dan menarik dengan konten dinamis banyak. )pakah &lient $ide Processing adalah pilihan yang tepat untuk membuat situs :eb semacam ini= #ohon di-elaskan. er2er ide Processing

Rp_27-Pis_mvc Apa Server Side Processing? Pendekatan yang memungkinkan aplikasi untuk melakukan pemrosesan di server, bukan kemudian di klien Prosedur di Server Side Processing? -Data harus dikirim dari klien ke server -Data harus diproses di server -5asil harus dikirim dari server ke client Dua Pendekatan Berbeda pada Server Side Processing: -Preprocessor 5 #%, seperti )ctive $erver Pages +)$P, dan 1ava $erver Pages +1$P,, dikenal sebagai $erver $ide $cripting -$cript &0!, mungkin ditulis dalam bahasa yang berbeda -)papun teknik yang digunakan, harus ada metode pembuatan koneksi database dari bahasa yang Digunakan er2er ide cripting )pa $erver $ide $cripting= -Program yang tertanam dalam 5 #% -5alaman ?eb berisi instruksi yang di-alankan -$istem pra-pengolahan dari 5 #% -Petun-uk dapat ditanamkan ke dalam halaman ?eb, dan kemudian diproses oleh server ketika halaman dikirim ke pengguna. ?eb server proses halaman ini dinamis dan menghasilkan dokumen 5 #% yang dikirim ke bro:ser. -#embiarkan fragmen -ika kode dimasukkan ke dalam 5 #% atau variannya keuntungan/ -"anyak teknologi yang berbeda dan bersaing yang dapat diterapkan

kekurangan/ - idak ada platform yang benar-benar lintas bahasa scripting -%ebih sulit untuk mengkompilasi -$erver tertentu dapat menentukan pilihan pra-prosesor $erver $ide $cripting er2er ide cripting Languages! )$P +)ctive $erver Pages, )$P.*et 1$P +1ava $erver Pages, P5P $erver $ide 1ava $cripts $$! +server $ide !nclude, &old 'usion (tc.

Rp_27-Pis_mvc

CGI (Common Gateway Interface) Apa itu CGI? - !"# tertanam dalam program. $ebuah program mengeksekusi membuat !"# %$ebuah antarmuka dimana program e&e'utable dapat dibuat untuk dijalankan pada server, dan yang dipisahkan dari alaman Web !"# %Dapat ditulis dalam berbagai bahasa Kekurangan ()I* %e+isiensi %keamanan %identitas ,ahasa ()I* %-erl %Ingres%.s %/0%/0Web
tudi 0asus er2er ide Processing $ebuah organisasi ingin membuat :ebsite yang memiliki respon yang cepat dan menarik dengan konten dinamis banyak. Dapatkah kita menggunakan $erver $ide Processing untuk kasus ini= olong -elaskan dan memberikan batasan yang mungkin -ika kita menggunakan $erver $ide Processing. 4a2a )pa itu 1ava= -"ahasa pemrograman untuk pengolahan implemetation dalam sistem database ?eb, dapat digunakan dalam pengolahan sisi &lient atau $erver $ide Processing -Dalam &lient $ide Pengolahan 1ava )pplet, 1ava$cript -Dalam $erver $ide Processing +$erver $ide $cripting dan &0!, 1ava $erver Pages +1$P,, 1ava $ervlets atau 1ava &0! 2euntungan dari 1)9)/ - he Programming %anguages it self -1ava 9irtual #achine +19#, -Perpustakaan kelas dan interface "agaimana 1ava Digunakan= -.ntuk Database )ccess 1D"& -.ntuk mengimplementasikan 1ava di &lient $ide Processing 1ava )pplet -.ntuk mengimplementasikan 1ava di $erver $ide Processing 1ava $ervlets -.ntuk mengimplementasikan 1ava di &0! 1ava &0! *mplementation 1hoice &ara Pilih antara &lient $ide Processing atau $erver $ide Processing= pertimbangan/ -$istem terdistribusi -"eban 2er-a dan 2ecepatan -$kala 'ungsi

Rp_27-Pis_mvc -$umber Daya yang memadai di $erver dan &lient -2etergantungan

&ara Pilih "ahasa= pertimbangan/ -Pengolahan klien -penampilan -Database Deteksi dan 9alidasi -Degradasi 0raceful -Deteksi "ro:ser -Penggembungan fitur -.ser !nterface !ssue -.ser !nterface dan ?eb -.ser !nterface dan !ntranet -.ser !nterface dan 2ontrol

tudi 0asus *mplementasi 1hoice Direktur sebuah perusahaan e-commerce re7iores rekomendasi apakah akan mengadopsi 1ava atau 1ava$cript untuk implementasi. $alah satu pertimbangannya adalah bah:a penampilan halaman ?eb sangat penting. $eperti distribusi seluas mungkin kepada pengguna ?eb. #enulis laporan singkat menimbang pro dan kontra ummary -!mplementasi Database )plikasi ?eb harus mempertimbangkan desain database fisik dan :eb desain database fisik - idak ada satu solusi untuk setiap masalah +no-perak-peluru,. )da banyak pilihan untuk mengimplementasikan aplikasi :eb database. -Pilih pelaksanaan yang tepat dengan memperhatikan beberapa pertimbangan. )eb Database Transaction ession .. )pa itu ransaksi= .rutan instruksi yang mengubah database sehingga dapat me:akili perubahan tunggal

Rp_27-Pis_mvc dalam database, dan A atau yang mengambil informasi tentang single <snapshot< dari database untuk mendukung beberapa tugas )pa itu #ana-emen ransaksi= #emastikan bah:a setiap transaksi puas sifat validitas tertentu sehingga memberikan perlindungan terhadap data $ifat 9aliditas/ -atomicity -konsistensi -independen -durability 3pa yang tidak lengkap atau terbengkalai dari Transaksi? ransaksi yang tidak selesai karena kegagalan atau ditinggalkan Penyebab 2egagalan= -kesalahan pemrograman -masalah hard:are -gangguan -aringan -dll Penyebab terbengkalai 5 3bandoned? -"ro:ser Ditutup - idak ada sumber daya untuk pergi langkah berikutnya +untuk aplikasi yang menggunakan beberapa langkah, -dll

Masalah dalam Transaksi? -%ost .pdate -Retrieval Data !nkonsistensi "agaimana memecahkan masalah= -%ocking Locking and Deadlock

Apa itu #o'king1 %$ebuah sarana yang mana pengguna dapat mengubah bagian dari database dan tidak ada kon+lik dengan satu sama lain %!ujuan #o'king adalah untuk menghentikan dua 2atau lebih3 pengguna men'oba untuk mengubah data yang sama pada waktu yang sama, dan juga menghentikan salah satu pengguna dari update data ketika sedang diba'a oleh pengguna lain atau sedang diba'a saat sedang diperbarui #evel dalam #o'king1 %tabel lo'king %baris lo'king %/bjek individu lo'king %type e&tents lo'king

Rp_27-Pis_mvc %ocking type that are support by commercial D"#$ -Read lock -?rite lock -.pgrade lock %ocking Protocols/ - :o Phase %ocking Problem in %ocking= - "isa berakhir di Deadlock )pa itu Deadlock= -Dua atau lebih pengguna sedang berusaha untuk mengunci bagian database dan siklus ter-adi "agaimana mencegah Deadlock= -#e:a-ibkan setiap transaksi untuk mengunci semua data yang akan dibutuhkan ketika mulai locking -$trategi 3ptimis dengan memungkinkan ter-adinya deadlock dan kemudian istirahat kebuntuan -#emastikan bah:a bila memungkinkan setiap pengguna mengakses salinan data yang dibutuhkan &ara untuk memecahkan kebuntuan= -timeout

)eb Database Transaction - ransaksi dalam Database ?eb yang lebih kompleks. -$alah satu kompleksitas adalah bagaimana mengidentifikasi se-umlah permintaan sebagai bagian dari satu transaksi dari satu pengguna ini disebut <$esi Pelacakan< - eknik untuk menyediakan $esi Pelacakan/ -variabel tersembunyi -.R% re:riting -cookie -3tentikasi Pengguna ummary -!mplementasi Database )plikasi ?eb harus mempertimbangkan desain database fisik dan :eb desain database fisik - idak ada satu solusi untuk setiap masalah +no-perak-peluru,. )da banyak pilihan untuk mengimplementasikan aplikasi :eb database. -Pilih pelaksanaan yang tepat dengan memperhatikan beberapa pertimbangan.

Rp_27-Pis_mvc

)eb Database ecurity ession .6 7 .8 Mengapa perlu 0eamanan? -#en-amin integritas database secara keseluruhan -#elindungi :eb sehingga terus beker-a -#emastikan setiap orang yang tidak memiliki akses ke data tidak dapat mengakses data 4enis 0eamanan di Database 3plikasi )eb? -2eamanan Database -:eb $ecurity -2eamanan klien 3pa itu Database ecurity? -#ekanisme yang melindungi database aksi yang disenga-a atau tidak disenga-a 0eamanan Database data yang aman dari! -Pencurian dan penipuan -2ehilangan kerahasiaan +kerahasiaan, -5ilangnya privasi -5ilangnya integritas -2ehilangan ketersediaan 3pa itu threats? $etiap situasi atau ke-adian, apakah disenga-a atau tidak disenga-a, yang secara merugikan dapat mempengaruhi sebuah sistem dan akibatnya organisasi umber ancaman? -perangkat keras -D"#$ dan aplikasi soft:are -1aringan 2omunikasi -!nternet -orang/ -pengguna -Programmer A operator -Data A Database administrator

Teknik untuk Keamanan Database? %/tentikasi dan /torisasi %kontrol akses %4iew %,a'kup dan 5e'overy %integritas %enkripsi %teknologi 5AID
tudi 0asus 0eamanan Database Departemen 2euangan benar-benar kekha:atiran tentang data keuangan mereka. 5anya beberapa minggu yang lalu telah ter-adi pelanggaran keamanan. #antan-peker-a telah masuk ke database server, mencuri dan mengubah data keuangan yang berharga. olong -elaskan bagaimana situasi ini dapat mencegah= Dan bagaimana untuk mengembalikan data sebelumnya= )eb ecurity

Apa itu Web Security? %"ekanisme yang melindungi semua transaksi menggunakan web

Rp_27-Pis_mvc

Tantangan web security: %"emastikan tidak dapat diakses kepada siapa pun ke'uali pengirim dan penerima 2privasi3 %"emastikan belum berubah selama transmisi 2integritas3 %"emastikan penerima dapat yakin itu berasal dari pengirim 2keaslian3 %"emastikan pengirim dapat yakin penerima adalah asli 2non%+abrikasi3 %"emastikan pengirim tidak dapat menyangkal dia mengirim 2non%penolakan3 Tiga bidang utama dalam Keamanan Web: %Identitas dari mereka yang melibatkan %!idak ada orang lain dapat mengakses data %!idak ada yang bisa mengutak%atik data
Teknik untuk melakukan 0eamanan )eb! -Pro6y $erver -fire:all -Pesan Digest )lgoritma dan anda angan Digital -$ertifikat Digital -kerberos -$ecure $ocket %ayer dan $ecure 5 P -$ecure (lectronic ransaction dan eknologi $ecure ransaction -1ava $ecurity -)ctive@ 2eamanan tudi 0asus )eb ecurity $ebuah aplikasi :eb database memungkinkan pengguna untuk memasukkan nama produk. eks ini kemudian ditambahkan ke $B% berikut, select 8 from products :here productname>CD.

6elaskan resiko kode. 6elaskan tindakan pen'egahan yang dapat diambil untuk menghindari ini.
0eamanan klien !nformasi yang dikirimkan ke mesin 2lien mungkin memiliki konten e6ecutable yang dapat melakukan/ -#erusak data atau keadaan pelaksanaan program -#emformat disk lengkap -%akukan sistem shutdo:n otal -#engumpulkan dan do:nload data rahasia -!dentitas pengguna dan berkedok pengguna untuk melampirkan target lainnya pada -aringan -#engunci sumber daya -#enyebabkan efek non-fatal tetapi tidak diinginkan 9arus yakin! -"ro:ser beroperasi dalam <$andbo6<, di mana ia tidak dapat mencapai atau mengungkapkan apaapa tentang sistem di luar - idak mengganggu klien -$trictly kesempatan terbatas untuk sistem ?eb untuk menulis ke 2lien sistem file cookie "fficiency ' ecurity

Rp_27-Pis_mvc -#eningkatkan keamanan dapat menurunkan efisiensi -#enemukan keseimbangan antara keamanan dan efisiensi -"erapa banyak yang )nda inginkan efisiensi -"erapa banyak yang )nda ingin melindungi data )nda ummary $ecurity is very important to ?eb Database $ecurity ?e should add security but keep our efficiency