WELCOME TO MY BLOG...***ELIS SETIAWATI***
Diberdayakan oleh Blogger.

Sabtu, 21 Desember 2013

NORMALISASI DATA BASE

NORMALISASI
Normalisasi merupakan teknik analisis data yang mengorganisasikan atribut-atribut data dengan cara mengelompokkan sehingga terbentuk entitas yang non-redundant, stabil, dan fleksible
Normalisasi dilakukan sebagai uji coba pada suatu relasi secara berkelanjutan untuk menentukan apakah relasi itu sudah baik, yaitu dapat dilakukan proses insert,update,delete, dan modifikasi pada satu atau beberapa atribut tanpa mempengaruhi integritas data dalam relasi tersebut.
*Pada proses normalisasi terhadap tabel pada database dapat dilakukan dengan tiga tahap normalisasi antara lain :
1. BENTUK TIDAK NORMAL (UNNORMALIZED FORM)
Bentuk ini merupakan kumpulan data yang akan direkam, tidak ada keharusan
mengikukti format tertentu, dapat saja data tidak lengkap atau terduplikasi. Data dikumpulkan apa adanya sesuai dengan saat menginput.

 
 Untuk mentransformasikan tabel yang belum ternomalisasi di atas menjadi tabel yang memenuhi kriteria 1NF adalah kita harus merubah seluruh atribut yang multivalue menjadi atribut single value, dengan cara menghilangkan repeating group pada tabel di atas.
Repeating Group (elemen data berulang) adalah (No_Property, Alamat_Property,Tgl_Pinjam, Tgl_Selesai, Biaya, No_Pemilik, Nama_Pemilik)
2. BENTUK NORMAL KE SATU (FIRST NORMAL FORM / 1 NF)
Pada tahap ini dilakukan penghilangan beberapa group elemen yang berulang agar menjadi satu harga tunggal yang berinteraksi di antara setiap baris pada suatu tabel, dan setiap atribut harus mempunyai nilai data yang atomic (bersifat atomic value). Atom adalah zat terkecil yang masih memiliki sifat induknya, bila terpecah lagi maka ia tidak memiliki sifat induknya.
Syarat normal ke satu (1-NF) antara lain:
1. setiap data dibentuk dalam flat file, data dibentuk dalam satu record demi satu record nilai dari field berupa “atomic value”.
2. tidak ada set atribute yang berulang atau bernilai ganda.
3. telah ditentukannya primary key untuk tabel / relasi tersebut.
4. tiapatribut hanya memiliki satu pengertian.
Langkah pertama yang dilakukan pada Tabel Pelanggan Biaya (pada Tabel 9.3) tersebut adalah menghilangkan elemen data yang berulang dengan data-data Pelanggan yang sesuai pada setiap baris. Hasil dari tabel yang telah memenuhi bentuk normal pertama dapat dilihat pada Tabel 9.4. kita dapat mengidentifikasi primary key untuk relasi Pelanggan_Biaya yang masih memiliki composite key (No_Pelanggan, No_Property). Pada kasus ini kita akan memperoleh primary key yang bersifat composite key. Relasi Pelanggan_Biaya dapat didefinisikan sebagai berikut. Pelanggan_Biaya =(No_Pelanggan, No_Property, Nama, Alamat_Property, Tgl_Pinjam, Tgl_Selesai, Biaya,No_Pemilik, Nama_Pemilik)

3. BENTUK NORMAL KE DUA (SECOND NORMAL FORM / 2 NF)
Bentuk normal kedua didasari atas konsep full functional dependency (ketergantungan fungsional sepenuhnya) yang dapat didefinisikan sebagai berikut. Jika A adalah atribut-atribut dari suatu relasi, B dikatakan full functional dependency (memiliki ketergantungan fungsional terhadap A, tetapi tidak secara tepat memiliki ketergantungan fungsional dari subset (himpunan bagian) dari A.
Syarat normal kedua (2-NF) sebagai berikut.
1. Bentuk data telah memenuhi kriteria bentuk normal kesatu.
2. Atribute bukan kunci (non-key) haruslah memiliki ketergantungan fungsional sepenuhnya (fully functional dependency) pada kunci utama / primary key.
Tabel  Tabel Pelanggan Biaya dalam bentuk normal kedua (2-NF)


 
 4. BENTUK NORMAL KE TIGA (THIRD NORMAL FORM / 3 NF)
Walaupun relasi 2-NF memiliki redudansi yang lebih sedikit dari pada relasi 1-NF, namun relasi tersebut masih mungkin mengalami kendala bila terjadi anomaly peremajaan (update) terhadap relasi tersebut. Misalkan kita akan melakukan update terhadap nama dari seorang Pemilik (pemilik), seperti Durki (No_Pemilik: CO93), kita harus melakukan update terhadap dua baris dalam relasi Property_Pemilik (lihat Tabel 9.5, (c) relasi Property_Pemilik). Jika kita hanya mengupdate satu baris saja, sementara baris yang lainnya tidak, maka data didalam database tersebut akan inkonsisten / tidak teratur. Anomaly update ini disebabkan oleh suatu ketergantungan transitif (transitive dependency). Kita harus menghilangkan ketergantungan tersebut dengan melakukan normalisasi ketiga (3-NF).
Syarat normal ketiga (Third Normal Form / 3 NF) sebagai berikut.
1. Bentuk data telah memenuhi kriteria bentuk normal kedua.
2. Atribute bukan kunci (non-key) harus tidak memiliki ketergantungan transitif, dengan kata lain suatu atribut bukan kunci (non_key) tidak boleh memiliki ketergantungan fungsional (functional dependency) terhadap atribut bukan kunci lainnya, seluruh atribut bukan kunci pada suatu relasi hanya memiliki ketergantungan fungsional terhadap priamry key di relasi itu saja.
Seluruh atribut non-primary key pada relasi Pelanggan dan Biaya di atas terlihat memiliki ketergantungan fungsional (functional dependency) terhadap primary key dari masing-masing tabel / relasi. Relasi / tabel Pelanggan dan Biaya di atas tidak memiliki ketergantungan transitif (transitive dependency), sehingga tabel tersebut telah memenuhi
kriteria normal ketiga (3-NF). Seluruh atribut non-primary key pada relasi Property_Pemilik di atas terlihat memiliki ketergantungan fungsional (functional dependency) terhadap primary key, kecuali Nama_Pemilik yang masih memiliki ketergantungan fungsional (functional dependency) terhadap No_Pemilik. Inilah contoh ketergantungan dari transitif (transitive dependency), yang terjadi ketika atribut non-primary key (Nama_Pemilik) bergantung secara fungsi terhadap satu atau lebih atribut non-primary key lainnya (No_Pemilik). Kita harus menghilangkan ketergantungan transitif (transitive dependency) tersebut dengan menjadikan relasi Property_Pemilik menjadi 2 relasi / tabel dengan format / bentuk sebagai berikut.
· Relasi / Tabel Property_Untuk_Pemilik yang terdiri dari atribut-atribut:
No_property
â Alamat_Property, Biaya, No_Pemilik
{No_property sebagai primary key}
· Dan relasi Pemilik yang terdiri dari atribut-atribut:
No_Pemilik
â Nama_Pemilik
{No_Pemilik sebagai primary key}

4. BENTUK NORMAL KE TIGA (THIRD NORMAL FORM / 3 NF)
Walaupun relasi 2-NF memiliki redudansi yang lebih sedikit dari pada relasi 1-NF,
namun relasi tersebut masih mungkin mengalami kendala bila terjadi anomaly
peremajaan (update) terhadap relasi tersebut.
Misalkan kita akan melakukan update terhadap nama dari seorang Pemilik (pemilik), seperti Durki (No_Pemilik: CO93), kita harus melakukan update terhadap dua baris dalam relasi Property_Pemilik (lihat Tabel 9.5, (c) relasi Property_Pemilik). Jika kita hanya mengupdate satu baris saja, sementara baris yang lainnya tidak, maka data didalam database tersebut akan inkonsisten / tidak teratur. Anomaly update ini disebabkan oleh suatu ketergantungan transitif (transitive dependency). Kita harus menghilangkan ketergantungan tersebut dengan melakukan normalisasi ketiga (3-NF).
Syarat normal ketiga (Third Normal Form / 3 NF) sebagai berikut.
1. Bentuk data telah memenuhi kriteria bentuk normal kedua.
2. Atribute bukan kunci (non-key) harus tidak memiliki ketergantungan transitif, dengan kata lain suatu atribut bukan kunci (non_key) tidak boleh memiliki ketergantungan fungsional (functional dependency) terhadap atribut bukan kunci lainnya, seluruh atribut bukan kunci pada suatu relasi hanya memiliki ketergantungan fungsional terhadap priamry key di relasi itu saja. Seluruh atribut non-primary key pada relasi Pelanggan dan Biaya di atas terlihat memiliki ketergantungan fungsional (functional dependency) terhadap primary key dari masing-masing tabel / relasi. Relasi / tabel Pelanggan dan Biaya di atas tidak memiliki ketergantungan transitif (transitive dependency), sehingga tabel tersebut telah memenuhi kriteria normal ketiga (3-NF).
Seluruh atribut non-primary key pada relasi Property_Pemilik di atas terlihat memiliki ketergantungan fungsional (functional dependency) terhadap primary key, kecuali Nama_Pemilik yang masih memiliki ketergantungan fungsional (functional dependency) terhadap No_Pemilik. Inilah contoh ketergantungan dari transitif (transitive dependency), yang terjadi ketika atribut non-primary key (Nama_Pemilik) bergantung secara fungsi terhadap satu atau lebih atribut non-primary key lainnya (No_Pemilik). Kita harus menghilangkan ketergantungan transitif (transitive dependency) tersebut dengan menjadikan relasi Property_Pemilik menjadi 2 relasi / tabel dengan format / bentuk sebagai berikut.
· Relasi / Tabel Property_Untuk_Pemilik yang terdiri dari atribut-atribut:
No_property
â Alamat_Property, Biaya, No_Pemilik
{No_property sebagai primary key}
· Dan relasi Pemilik yang terdiri dari atribut-atribut:
No_Pemilik
â Nama_Pemilik
{No_Pemilik sebagai primary key}
Hasil akhir normalisasi tabel Pelanggan_Biaya sampai ke bentuk normal ketiga adalah
sebagai berikut:

 
 Seluruh atribut bukan kunci pada suatu relasi hanya memiliki ketergantungan fungsional terhadap primary key di relasi itu saja.

Database cloud computing

Cloud Computing jika diartikan secara harfiah adalah komputer awan. Dalam Wikipedia diartikan bahwa cloud computing itu adalah gabungan dari pemanfaatan teknologi (komputasi) dan pengembangan berbasis internet (awan). Cloud computing merupakan sebuah metode komputasi dimana kemampuan TI disediakan sebagai layanan berbasis internet.
Cloud computing memiliki keuntungan yang diturunkan dari spesialisai dan skala ekonomi yakni :
Menghemat biaya
Bergesernya dari biaya capital ke biaya operasi
Kegesitan/kecepatan
Dynamic scalability
Maintenance yang mudam
Large scale prototyping/load testing
Multi platform
Menejemen izin yang cepat
Pengembangan yang cepat
Karakteristik cloud computing
Cloud computing memiliki karakteristik sebagai berikut ini :
1. On-Demand Self-Services
2. Broad Network Access
3. Resource Pooling
4. Rapid Elasticity
5. Measured Service
Tiga golongan layanan cloud computing
Jenis layanan yang disediakan cloud computing memiliki tiga jenis yaitu :
Software as a Service (SaaS)
Dimana suatu aplikasi software tersedia dan bisa langsung dipakai oleh seorang pengguna. Contohnya : Microsoft security 365 aplikasi online untuk MS Office.
Platform as a Service(PaaS)
dengan PaaS, kita membangun aplikasi kita sendiri di atas layanan PaaS tersebut. Adapun contoh vendor penyedia layanan Paas adalah Microsoft Azure dan Amazon Web Services.
Infrastruktur as a Service(IaaS)
layanan IaaS dapat dilihat sebagai proses migrasi server-server kita dari on-premise ke data center milik penyedia IaaS ini.
Dalam opensource untuk cloud computing disediakan aplikasi yang dapat menghemat biaya dalam pembuatan cloud computing diantarnya :
Eucalyptus
Red Hat’s Cloud
Traffic Server
Cloudera
Puppet
Open-source cloud akan memberikan potensi akan harga yang sangat kompetitif untuk mendapatkan service cloud.

DATA BASE



Pengertian Database
  1. Database adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik untuk memperoleh informasi dari basis data tersebut.
  2. Database adalah representasi kumpulan fakta yang saling berhubungan disimpan secara bersama, untuk memenuhi berbagai kebutuhan.
  3. Database merupakan sekumpulan informasi yang saling berkaitan pada suatu subjek tertentu untuk tujuan tertentu pula.
  4. Database adalah susunan record data operasional lengkap dari suatu organisasi atau perusahaan, yang diorganisir dan disimpan secara terintegrasi dengan menggunakan metode tertentu sehingga mampu memenuhi informasi yang optimal yang dibutuhkan olehpara pengguna.

Asal Mula Istilah Database

Istilah “database” berawal dari ilmu komputer. Meskipun kemudian artinya semakin luas, memasukkan hal-hal yang di luar bidang elektronika, artikel mengenai database komputer. Catatan yang mirip dengan database sebenarnya sudah ada sebelum revolusi industri yaitu dalam bentuk buku besar, kuitansi danm kumpulan data yang berhubungan dengan bisnis.
Konsep Dasar Database

Konsep dasar database adalah kumpulan dari catatan, atau potongan dari pengetahuan. Sebuah database memiliki penjelasan terstruktur dari jenis fakta yang tersimpan di dalamnya: penjelasan ini disebut skema. Ada banyak cara untuk mengorganisasi skema, atau memodelkan struktur database: ini dikenal sebagai database model atau model data. Model yang umum digunakan sekarang adalah model relasional, yang menurut istilah yaitu mewakili semua informasi dalam bentuk tabel yang saling berhubungan dimana setiap tabel terdiri dari baris dan kolom (definisi yang sebenarnya menggunakan terminologi matematika). Dalam model ini, hubungan antar tabel diwakili dengan menggunakan nilai yang sama antar tabel.
Perangkat Untuk Membuat Database.

Database dapat dibuat dan diolah dengan menggunakan suatu program komputer, yaitu yang biasa disebut dengan software (perangkat lunak).Software yang digunakan untuk mengelola dan memanggil kueri (query) database disebut Database Management System (DBMS) atau jika diterjemahkan kedalam bahasa indonesia berarti “Sistem Manajemen Basis Data”.
DBMS terdiri dari dua komponen, yaitu Relational Database Management System (RDBMS) dan Overview of Database Management System (ODBMS). RDBMS meliputi Interface Drivers, SQL Engine, Transaction Engine, Relational Engine, dan Storage Engine. Sedangkan ODBMS meliputi Language Drivers,Query Engine, Transaction Engine, dan Storage Engine.
Sedangkan level dari softwarenya sendiri, terdapat dua level software yang memungkinkan untuk membuat sebuah database antara lain :
  • High Level Software dan Low Level Software.
Yang termasuk di dalam High Level Software, antara lain Microsoft SQL Server, Oracle, Sybase, Interbase, XBase, Firebird, MySQL, PostgreSQL, Microsoft Access, dBase III, Paradox, FoxPro, Visual FoxPro, Arago, Force, Recital, dbFast, dbXL,Quicksilver, Clipper, FlagShip, Harbour, Visual dBase, dan Lotus Smart Suite Approach. Sedangkan yang termasuk di dalam Low Level Software antara lainBtrieve dan Tsunami Record Manager.
Tipe Database
Terdapat 12 tipe database, antara lain Operational database, Analyticaldatabase, Data warehouse, Distributed database, End-user database, External data base, Hypermedia databases on the web, Navigational database, In-memory data bases, Document-oriented databases, Real-time databases, dan RelationalDatabase.


Pengertian Datawarehouse
Datawarehouse adalah kumpulan macam-macam data yang subject oriented, integrated, time variant, dan nonvolatile. dalam mendukung proses pembuatan keputusan. Inmon and Hackathorn (1994).
Datawarehouse sering diintegrasikan dengan berbagai sistem aplikasi untuk mendukung proses laporan dan analisis data dengan menyediakan data histori, yang menyediakan infrastruktur bagi EIS dan DSS.
Karakteristik Datawarehouse :
subject oriented, integrated, time variant, non volatile
  • Kenapa subject oriented?
Datawarehouse diorganisasikan pada subjek-subjek utama, seperti pelanggan, barang/ produk, dan penjualan. Berfokus pada model dan analisis pada data untuk membuat keputusan, jadi bukan pada setiap proses transaksi atau bukan pada OLTP. Menghindari data yang tidak berguna dalam mengambil suatu keputusan.
  • Kenapa integrated ?
Dibangun dengan menggabungkan/menyatukan data yang berbeda. relational databse, flat file, dan on-line transaction record. Menjamin konsistensi dalam penamaan, struktur pengkodean, dan struktur atribut diantara data satu sama lain.
  • Datawarehouse time variant?
Data disimpan untuk menyediakan informasi dari perspektif historical, data yang tahun-tahun lalu/ 4-5 thn. Waktu adalah elemen kunci dari suatu datawarehouse/ pada saat pengcapture-an.
  • Kenapa Non Volatile?
Setiap kali proses perubahan, data akan di tampung dalam tiap-tiap waktu. Jadi tidak di perbaharui terus menerus. Datawarehouse tidak memerlukan pemrosesan transaksi dan recovery. Hanya ada dua operasi initial loading of data dan access of data.
Datawarehouse bukan hanya tempat penyimpanan data, Datawarehouse adalah Business Intelligence tools, tools to extract, merubah (transform) dan menerima data (load) ke penyimpanan (repository) serta mengelola dan menerima metadata.
  • Sejarah / Evolution
  • 1960, Dunia komputerisasi membuat aplikasi individu yang digunakan pada file utama. General mill mulai mengembangkan istilah dimensi dan fakta.
  • 1970, IRI menyediakan database dimensi untuk pembeli eceran, tahun untuk memperbaiki, mengembangkan dan mencocokan dengan hardware yang dimiliki.
  • 1983, DBMS diperkenalkan untuk mengambil keputusan.
  • 1988, Barry dan Paul mempublikasikan karyanya tentang Arsitektur Bisnis dan Sistem Informasi
  • 1990, memperkenalkan tool DBMS sebagai alat untuk datawarehouse.
  • 1990-sekarang, banyak bermunculan buku-buku datawarehouse dan aplikasi-aplikasi datawarehouse.
  • Arsitektur Datawarehouse
Maksudnya adalah bagaimana datawarehouse dibangun, arsitektur tidak ada yang benar dan salah tetapi suatu arsitektur dibangun tergantung situasi dan kondisi. Arsitektur datawarehouse akan berpengaruh pada penggunaan dan pemeliharaan.
Lapisan-lapisan arsitektur datawarehouse :
1. Operational database layer / Lapisan basis data operasional
a. Sumber data (source) untuk datawarehouse
b. Data lengkap, Data hari ke hari
c. Mempunyai nilai saat ini/ data berarti.
d. Tingkat kemungkinan data besar.
2. Data Access Layer/ Lapisan Akses Data
a. Tools untuk mengekstrak, mengubah dan mengambil(load) data.
b. Meliputi karakteristik datawarehouse.
3. Metadata Layer / Lapisan Metadata
a. File data tersimpan / Direktori
b. Lebih detil dari direktori data sistem, maksudnya lebih mendalam dari file data yang tersedia           sebelumnya.
c. Ada pentunjuk untuk keseluruhan warehouse dan ada petunjuk data yang dapat diakses report khusus untuk di analisis.
4. Informational access layer (lapisan akses informasi)
a. Akses data dan juga tool untuk laporan dan analisis.
b. Tools Business Intelligence masuk ke tahap ini.
Kenapa dan Untuk apa Datawarehouse?

Disini saya akan memberikan ilustrasi untuk datawarehouse. Datawarehouse itu dimiliki oleh perusahaan yang sudah besar, yang memiliki banyak cabang, data yang banyak dan tentunya struktur organisasi yang kompleks.
Mari bayangkan sebuah perusahaan yang memiliki banyak transaksi, yang memiliki banyak cabang. Tentu data-data tersebut tersebar dilokasi yang berbeda, sistem operasi yang berbeda, bahkan di basisdata (database) yang berbeda. Nah, Lalu bagaimana seorang pimpinan/ manager mengambil sebuah keputusan? Tentu bagi sang pembuat keputusan hanya membutuhkan akses ke semua sumber data tersebut. Kalau melakukan query di setiap masing-masing cabang tentu tidak efisien dan tidak praktis. Atau bahkan data yang dimiliki oleh perusahaan adalah data-data terbaru, bukan data-data terdahulu dari perusahaan tersebut. Dari permasalahan ini, Datawarehouse hadir sebagai solusinya.
Jika mengandalkan database OLTP untuk dilakukan query terlalu besar. Datawarehouse dibuat agar prosesnya lebih efisien. Dan selalu berkompetitif, maksudnya di zaman saat ini perusahaan sudah mengandalkan teknologi datawarehouse untuk pengambilan keputusan di perusahaan.
Tujuan Akhir menggunakan Datawarehouse
  • Menyediakan data organisasi yang mudah diakses oleh manager.
  • Data yang berada di datawarehouse bersifat konsisten, dan merupakan kebenaran.
  • Datawarehouse merupakan tempat, dimana data yang telah digunakan di publikasikan.
  • Kualitas data di datawarehouse dapat diandalkan.
OLAP [On-Line Analitical Process]
OLAP adalah operasi basis data (database) untuk mendapatkan dalam bentuk kesimpulan dengan menggunakan aggregasi sebagai mekanisme utama. Mekanisme berupa analisis dan pengambilan keputusan.
OLTP [On-Line Transaction Process]
Proses transaksi di suatu proses bisnis seperti penjualan, pemesanan dan pembayaran. Proses yang dilakukan rutin dari hari ke hari.
Karakteristiknya dengan input/ data entry, update dan delete. Berfokus pada satu area bisnis saja, entah itu ‘persediaan’,’penjualan’ atau bahkan ‘sumber daya’.
Tugas utamanya terlihat dari hubungan tradisional ke DBMS.
Saya akan memberikan contoh perbedaan fitur yang mendasar antara OLTP dan OLAP.
  • User dan Orientasi Sistem : customer vs market.
  • Data contents : sekarang, detil vs historical
  • Design Database : ER Application vs Star Subject
  • View : Sekarang, Lokal vs Perubahan dari setiap data, data terintegrasi.
  • Pola Akses : Update vs hanya bisa membaca tetapi dengan bermacam sudut pandang.

OLTP
OLAP
users
data entry
manager perusahaan
function
transaksi setiap hari
Pendukung keputusan
db design
aplikasi oriented
subjek oriented
data
sekarang, terbaru, lengkap detail
historical, ringkas, multidimensi terintegrasi
usage
repetitive
ad-hoc
access
membaca,menulis dan merubah
membaca dengan rinci <kompleks>
unit of work
pendek,transaksi yang ringkas
query kompleks
db size
mega byte
Terra byte
size_record_access
10
jutaan
size_user
ribuan
ratusan
Cara mengembangkan datawarehouse, melalui beberapa metode pendekatan.
  • Pendekatan Ralph Kimball
Seorang pakar dibidang datawarehouse yang membuat metode perancangan datawarehouse yang disebut dengan perancangan bottom-up. Disebut bottom-up karena pertama-tama data pada kantor cabang diidentifikasi dan dibuat terlebih dahulu, untuk menyediakan kapabilitas laporan dan analisis untuk proses bisnus tertentu. Data cabang ini dapat dikombinasikan untuk membuat sebuah datawarehouse.
Kelebihannya :
o Nilai Bisnis dapat dikembalikan secepat data cabang yang pertama dibuat.
o Model yang berdimensi
o Mudah dimengerti.
Kekurangan :
o Integrasi
o Mapping dari pemodelan berdimensi ke sistem yang sudah ada.
o Sulit untuk memastikan kekonsisten dimensi dari semua data cabang.
  • Pendekatan Bill Inmonn
Bill Inmonn adalah orang yang menggagas pertama kali datawarehouse sebagai wadah/tempat (repository) untuk seluruh data perusahaan. Pendekatan perancangan Inmonn disebut dengan top-down, dimana datawarehouse dirancang menggunakan data model yang telah dinormalisasi.
Keuntungan :
o Perancangan top-down menghasilkan dimensional view yang konsisten untuk semua data, Karena semua data diload dari repository terpusat/ terintegrasi.
o Top down sanggup menghadapi perubahan bisnus, membuat data dimensional cabang yang baru menjadi tugas yang mudah.
Kekurangan :
o Kesulitan dan biaya mendisain model data perusahaan.
  • Feedback dari pengguna.
o Durasi waktu yang cukup lama saat dimulainya projek hingga manfaat dari datawahouse itu sendiri.
o Tidak fleksibel terhadap perubahan kebutuhan pada saat implementasi.
  • Pendekatan Hybrid
Suatu pendekatan yang menggunakan campuran dari pendekatan top down dan pendekatan bottom up.

Penyimpanan data dalam datawarehouse?
  • Dimensional
Data transaksi dipecah menjadi fakta terutama data transaksi yang numeric atau di rubah menjadi dimensi.
Contohnya : Data pembayaran pada EF Course, faktanya seberapa banyak anggota yang melakukan pembayaran tepat waktu. Dimensinya, seperti kode anggota, tanggal, dan jenis kursus.
Kelebihannya :
o Datawarehouse lebih mudah dimengerti oleh pengguna.
o Data yang dicari / ditampilkan dengan lebih cepat.
Kekurangan :
o Kurang mempertahankan integritas dari fakta dan dimensi jika sistem operasi yang digunakan berbeda-beda.
o Kesulitan mengubah struktur datawarehouse, jika proses bisnis yang dilakukan perusahaan berubah.
  • Normalisasi
Penyimpanan yang dilakukan berdasarkan aturan normalisasi data, dikelompokan berdasarkan katagori (pelanggan, produk, keuangan,dll).
Keuntungan : Mudah untuk menambah informasi kedatabase.
Kekurangan : Karena banyak table yang terlibat maka akan sulit bagi pengguna untuk menggabungkan data dari sumber yang berbeda.
Kedua penyimpanan diatas dimensional dan normalisasi tidaklah berpisah secara utuh, melainkan satu sama lain saling berhubungan.
Evolusi perusahaan yang menggunakan Datawarehouse
Pada awalnya perusahaan menerapkan datawarehouse yang sangat sederhana. Saat ini perkembangan datawarehouse semakin canggih dan kebutuhan perusahaan pun semakin meningkat. Tingkat- tingkat kebutuhan datawarehouse:
  • Database operasional offline
Tahap ini secara sederhana datawarehouse dibangun dengan menduplikasi data dari sistem operasional ke server lain. Sehingga saat membutuhkan data untuk membuat laporan, tidak akan berimbas pada sistem operasional.
  • Datawarehouse Offline
Tahapan bau dimana data dari sistem operasional ke suatu bentuk umum dan data dari datawarehouse di simpan dengan struktur yang dirancang untuk membuat laporan.
  • Datawarehouse Realtime
Tahap ini setiap kali melakukan proses bisnis, akan selalu terupdate di datawarehouse.
  • Datawarehouse Terintegrasi
Tahapan ini hampir sama seperti tahapan realtime, hanya saja setiap kali datawarehouse melakukan update maka secara otomatis akan memberikan data baru ke data sistem operasional.
KOMPONEN DATAWAREHOUSE
  • Data Source
Untuk membangun suatu datawarehouse yang baik data yang didapatkan harus teralokasi dengan baik. Ini melibatkan OLTP saat ini dimana informasi ‘dari hari ke hari’ tentang bisnis yang berjalan, tentunya dengan data historis periode sebelumnya, yang mungkin telah dikumpulkan dalam beberapa bentuk sistem lain. Sering kali data yang terbentuk bukan terbentuk database relasional, sehingga membutuhkan banyak upaya untuk mengambil data yang diinginkan.
  • Design Datawarehouse
Proses perancangan datawarehouse sangat berhati-hati untuk memilih jenis query yang digunakan dalam datawarehouse. Tahapan ini sangat memerlukan pemahaman yang baik tentang skema database yang ingin dibuat, dan haruslah selalu aktif untuk berkomunikasi dengan pengguna. Desain adalah proses yang tidak dilakukan satu kali, melainkan berulang-ulang agar model yang dimiliki stabil. Tahap ini harus dilakukan secara berhati-hati karena model akan diisi dengan data yang jumlahnya sangat banyak, yang salah satunya dari beberapa model adalah model yang tak dapat diubah.
  • Akuisi data
Proses perpindahan data dari sumbernya (source) ke datawarehouse. Proses ini proses yang menggunakan banyak waktu dalam proyek datawarehouse, dan dilakukan dengan software yang dikenal dengan ETL (extract,transform,load) Tools. Sekarang sudah hamper lebih kurang 60 tool yang tersebar diranah maya. Waktu yang dibutuhkan untuk akuisisi data bisa mencapai berbulan-bulan bahkan bertahun-tahun.
  • Perubahan data tangkapan
Pembaharuan data periodik datawarehouse dari sistem transaksi menjadi rumit karena harus diidentifikasi dari sumber data yang selalu up to date. Ini disebut dengan ‘perubahan data capture’. Ini merupakan tahapan khusus, dan sudah cukup banyak software yang beredar untuk mengatasinya. Seperti Replication Server, Publish/Subscribe, Triggers and Stored Procedures, dan Database log Analysis.
  • Pembersihan Data
Ini biasanya dilakukan dengan akuisisi data, kalau dalam ETL ini terdapat pada bagian ‘T’. Datawarehouse yang berisi data tidak benar tidak hanya tak berguna, tapi juga menyesatkan. Ide dibalik pembuatan datawarehouse adalah untuk memudahkan pengambilan keputusan, jika keputusan yang besar yang ditunjang oleh data yang tidak valid maka perusahaan mengalami resiko yang amat besar pula.
Pembersihan data suatu proses rumit yang memvalidasi dan bila perlu mengoreksi data sebelum masuk kedalam datawarehouse. Pembersihan data dapat juga disebut sebagai “data scrubbing” atau “penjamin kualitas data”, proses ini harus dilakukan secara berhati-hati dan dilakukan keseluruhan terutama datawarehouse yang diambil dari perangkat yang sudah tua.
  • Data Aggregation
Termasuk proses tansformasi, datawarehouse dirancang untuk menyimpanan yang amat detil dari tiap transaksi, untuk beberapa tingkat aggregate (ringkasan). Keuntungan jika data diringkas yaitu query khusus dalam datawarehouse berjalan lebih cepat. Kekurangannya adalah informasi yang didapat kurang, karena ringkasnya data yang ada pada datawarehouse. Ini harus berhati-hati karena keputusan tidak dapat dibatalkan tanpa membangun kembali datawarehouse dan mencocokan dengan datawarehouse lain (atau sumber data lain). Paling aman digunakan oleh perusahaan yang amat besar, yang mampu membangun datawarehouse tingkat detail yang tinggi dengan biaya yang besar pula.
3 Model Datawarehouse
  • Enterprise Datawarehouse
Semua informasi yang dikumpulkan berupa subjek, yang mencakup seluruh organisasi perusahaan.
  • Data Mart
Sebagian data dari bagian perusahaan yang mempunyai nilai bagi pengguna. Ruang lingkupnya lebih spesifik, seperti data Penjualan atau marketing saja.
  • Virtual Warehouse
Memantau melalui data operasional pada database. Suatu ringkasan dari data yang fleksibel, mengurangi biaya untuk pengguna yang membutuhkan. Karena tersedianya data yang siap disajikan tidak hanya untuk beberapa pengguna didalam perusahaan, akan tetapi perusahaan lain yang membutuhkan data tersebut dapat mudah untuk memperolehnya.

Keuntungan Datawarehouse
  • Datawarehouse menyediakan model data yang bervariasi, dan tidak bergantung pada satu sumber data saja. Hal ini memudahkan pimpinan perusahaan/manager membuat laporan dan menganalisa.
  • Saat me-load data ke dalam datawarehouse, data yang tidak konsisten akan diketahui dan secepatnya dirubah. Mendukung proses pembuatan laporan, agar keputusan yang diambil adalah keputusan yang benar sesuai data.
  • Keamanan informasi didalam datawarehouse terjamin, karena datawarehouse selalu digunakan dan dimonitor oleh pengguna datawarehouse tersebut.
  • Dalam membuat laporan tidak membuat proses transaksi yang ada menjadi lambat, karena datawarehouse terpisah dengan database operasional.
  • Datawarehouse menyediakan berbagai macam bentuk laporan yang terbaru.
Kerugian Datawarehouse
  • Datawarehouse tidak cocok untuk data yang tidak struktur.
  • Data perlu di extract, diubah, dan di load ke datawarehouse, sehingga membutuhkan waktu (delay) kerja untuk datawarehouse yang belum terbentuk.
  • Semakin lama masa hidup bisnis yang menggunakan datawarehouse, maka semakin banyak biaya yang dikeluarkan oleh perusahaan untuk memodifikasi teknologi datawarehouse atau perawatan berjalan datawarehouse.
  • Jika data yang diambil lambat, maka data yang dimiliki di datawarehouse tidak berkulitas/ sehingga laporan tidak optimal.