data ware house
TRANSCRIPT
MAKALAH
“Mengenal Data Warehouse “
Dibuat sebagai syarat Untuk mengikuti Ujian Akhir semester Mata Kuliah APSI
OLEHKELOMPOK 15
1200103 NESSA TESIA IGGRID1200087 RIYAN FERNANDES
JIRNAWATI 1200077
Dosen Pembimbing Drs. Denny Kurniadi , M.Kom
PASCA SARJANA PENDIDIKAN TEKNIK KEJURUANFAKILTAS TEKNIK
UNIVERSITAS NEGERI PADANG2013
Mengenal Data Warehouse
Gambar 1. Satu sumber data dengan masing-masing proses/stream untuk setiap
keperluan
Mengapa mengambil dan memproses data yang sama berulang kali? Pertanyaan
inilah yang menjadi alasan utama mengapa data warehouse diperlukan. Ada alasan lain,
akibat situasi diatas, yang selalu menimbulkan keraguan pemakai tingkat-atas (senior
manager, misalnya kepala wilayah) akan kebenaran informasi yang diperolehnya.
Laporan harian pada contoh bank-bank diatas diatas dijadikan sumber data oleh fungsi-
fungsi dikantor cabang dan wilayah, untuk membuat laporan yang lain untuk keperluan
masing-masing. Akibat berantainya penggunaan dan pemrosesan individu ini (terutama
re-entry manual, perbedaan pengertian nilai data (definisi dan makna) dan formula
perhitungan), maka bila mereka mengadakanrekonsiliasi kembali berdasar laporan
individu tersebut (misalnya waktu rapat manajemen antar fungsi), hampir selalu muncul
masalah inconsistency informasi.Sistem gudang data (Data Warehouse) dibangun untuk
mengatasi masalah teknis dan bisnis dalam kasus-kasus sejenis diatas, yaitu kasus kasus
yang berkaitan dengan pengunaan data dan informasi untuk mengambil keputusan bisnis
dan manajemen. Bandingkan gambar 2 berikut ini dengan wilayah N Proses/stream Data
sekuensial Master files
Data hanya diambil dan diproses sekali, disimpan didalam data warehouse (proses ini
disebut ETL =Extract, Transform, Load); hanya bagian proses yang unik dari setiap
pemakaian data yang dilaksanakan masing-masing (biasanya menggunakan software
khusus – specialized tool)Fungsi utama Data Warehouse adalah: Mengambil (termasuk
data dari luar yang dibutuhkan,misalnya daftar kode pos dari kantor pos),
mengumpulkan, mempersiapkan (transforming, sepertimembersihkan, mengintegrasikan,
decoding), menyimpan (loading), dan menyediakan data untukpemakai atau aplikasi yang
bersifat query/reporting (read-only); hanya satu data terpercaya ini yangdigunakan oleh
semua yang membutuhkan (single version of truth), untuk pelaporan, analisainformasi
dan mengambil keputusan (analytical application)Seperti digambarkan di Gambar 2,
sekali data masuk kedalam data warehouse, data yang memangdirancang dan ditujukan
untuk bukan hanya satu atau sejumlah pemakaian yang sudah diketahui,dapat digunakan
untuk aplikasi mendatang dan belum pernah sebelumnya terpikirkan- bandingkanini
dengan pembangunan aplikasi operasional (fungsional)!
Empat karakteristik data warehouse
Ada 4 sifat yang mencirikan data yang disimpan didalam data warehouse – ini
didefinisikan olehsalah satu mahaguru data warehousing (Bill Inmon) Subject oriented:
Aplikasi untuk operasi perusahaan (operational system) berorientasi pada
proses(mengotomasi fungsi-fungsi dari proses bersangkutan – function oriented).
Misalnya di bank,aplikasi kredit mengotomasi fungsi-fungsi: verifikasi lamaran dan
credit checking, pemeriksaankolateral, approval, pendanaan, tagihan, dan seterusnya.
Didalam data warehouse data-data yangdihasilkan dari proses kredit ini, diatur kembali
(dikelompokkan) dan diintegrasikan (digabung)dengan data-data dari fungsi-fungsi lain,
agar berorientasi pada misalnya nasabah dan produk.Integrated: Data dari macam-macam
aplikasi transaksi (untuk bank misalnya: tabungan, kredit,rekening koran) semua
mengandung data nasabah, ada yang sama ada yang spesifik (yang sama misalnya: nama
dan alamat, yang spesifik misalnya: untuk kredit ada kolateral, untuk rekening koranada
overdraft) – didalam data warehouse data-data yang sama harus diintegrasikan disatu
database,termasuk misalnya diseragamkan formatnya (sederhana tetapi paling sering
terjadi – aplikasi-aplikasisering dibeli vendor berbeda, dibuat dengan/dijalankan di
teknologi berbeda-beda) 3.Time variant: Data warehouse menyimpan sejarah (historical
data). Bandingkan dengan kebutuhansistem operasional yang hampir semuanya adalah
data mutakhir! Waktu merupakan tipe atau bagiandata yang sangat penting didalam data
warehouse. Didalam data warehouse sering disimpanmacam-macam waktu, seperti waktu
suatu transaksi terjadi/dirubah/dibatalkan, kapan efektifnya,kapan masuk ke komputer,
kapan masuk ke data warehouse; juga hampir selalu disimpan versi,misalnya terjadi
perubahan definisi kode pos, maka yang lama dan yang baru ada semua didalamdata
warehouse kita. Sekali lagi, data warehouse yang bagus adalah yang menyimpan sejarah!
Non-volatile: Sekali masuk kedalam data warehouse, data-data, terutama data tipe
transaksi, tidakakan pernah di update atau dihapus (delete)Terlihat, bahwa keempat
karakteristik ini saling terkait – kesemuanya harus diimplementasikan agarsuatu data
warehouse bisa efektif memiliki data untuk mendukung pengambilan-keputusan.
Dan,implementasi keempat karakteristik ini membutuhkan struktur data dari data
warehouse yangberbeda dengan database sistem operasional.
Karakteristik Sumber Data untuk Data Warehouse
Data Warehouse (DW) menyimpan data yang berasal dari satu atau lebih sumber.
DW tidak menciptakan data baru. Data yang disimpan didalam DW sering diolah
sebelum disajikan untuk end-user, misalnya diringkas (summary) sebelum dicetak
sebagai laporan. Tulisan ini membahas 6 karakteristik penting dari sumber data yang
perlu diperhatikan waktu merancang dan membangun DW.
ARAH
Pemilik sumber data mengirim ke DW. Pengelola DW mengambil data dari
sumber sesuai jadwal yang sudah disetujui bersama pemiliknya. Pendekatan kedua lebih
populer, karena pemilik data pada prinsipnya cukup memberi ijin dan menyetujui kapan
pengelola DW boleh mengambil data yang diperlukan. Pada pendekatan pertama, pemilik
data terbebani untuk membuat program baru dan/atau menjalankan job untuk mengambil
data yang diinginkan untuk disimpan di DW, dimana proyek DW mungkin tidak ada
hubungan dengan aplikasi yang menjadi sumber data atau bukan prioritasnya. pendekatan
pertama,lebih baik dengan dua alasan utama:
1. Pemilik data yang paling tahu seluk beluk datanya.
2. Menggalakkan spirit atau kultur “berbagi data” (information sharing) didalam
perusahaan.
Dengan sponsor pimpinan yang efektif, pendekatan pertama pembangunan DW akan
memberikan hasil yang lebih besar nilainya – nilai “corporate information sharing
culture”.
ASAL
Dari dalam; ini merupakan sumber data utama untuk DW, berasal dari biasanya
aplikasi-aplikasiuntuk operasi, transaksi, dan administrasi perusahaan.. Dari luar;
misalnya data yang diperoleh/dibeli/berlangganan dari biro statistik, sepertidemografis
konsumen; dari kode pos dari kantor pos, misalnya untuk segmentasi geografispasar;
standar ISO, seperti kode mata-uang dan kode negara.
FREKUENSI
Satu kali (one time); diperlukan:
1. Waktu awal/pertama kali mengisi DW, bila sejarah data sebelum tanggal mulai ini
perlu/diinginkan disimpan di DW.
2. Untuk recovery, dari backup, bila ada masalah yang mengharuskan DW dihapus
seluruh/sebagian datanya dan dikembalikan ke status data sebelum terjadi masalah.
3. Untuk menggabungan data (merge), bila dua atau lebih DW dijadikan satu.
Berkala (regular); sesuai jadwal yang dirancang, untuk menambahkan data baru dan
perubahan (incremental update). Beberapa data (tabel database) mungkin lebih
efektif/efisien diupdate seluruh datanya (total refresh) daripada incremental.
Mengenal CORBA: Platform Untuk Komputasi Terdistribusi
Sistem Terdistribusi
Mari kita bayangkan masa depan, saat hampir semua aktivitas manusia
memanfaatkan komputer sebagai sarana utamanya. Berbagai basis data berskala besar
telah disimpan dalam format elektronis. Demikian pula berbagai aplikasi yang
mendasarkan pada basis data telah dikomputerisasi dalam sebuah lingkungan jaringan
komputer yang meliputi berbagai instansi dan perusahaan. Pada saat itu dimensi ruang
benar-benar telah berkontraksi sedemikian rupa sehingga dunia maya seakan-akan telah
menjadi dunia nyata dan berbagai aspek kehidupan manusia terhubung melalui suatu
jaring-jaring yang amat kompleks.
Sistem komputer terdistribusi adalah sebuah sistem yang memungkinkan aplikasi
komputer beroperasi secara terintegrasi pada lebih dari satu lingkungan yang terpisah
secara fisis. Sistem informasi kesehatan yang diilustrasikan di atas menunjukkan
komponen-komponen aplikasi yang terdistribusi (di tempat praktek dokter, di rumah
sakit, di apotik, dan di perusahaan asuransi kesehatan). Ciri khas sistem komputer
terdistribusi adalah heterogenitas dalam berbagai hal: perangkat keras, sistem operasi,
dan bahasa pemrograman. Adalah tidak mungkin untuk mengembangkan sistem
terdistribusi yang homogen secara paksaan, karena secara alamiah sistem komputer
terdistribusi tumbuh dari lingkungan yang heterogen. Kata kunci dalam menjembatani
perbedaan-perbedaan yang muncul adalah interoperabilitas (interoperability).
CORBA
Interoperabilitas adalah kemampuan saling bekerjasama antar sistem komputer.
Sebenarnya interoperabilitas bukanlah barang baru, karena protokol komunikasi datapun
(TCP/IP misalnya) pada dasarnya diciptakan untuk mewujudkan interoperabilitas. Yang
belum banyak dikenal adalah interoperabilitas pada level perangkat lunak aplikasi.
Dalam konteks sistem komputer terdistribusi, meskipun komponen-komponen
aplikasi dibuat dengan bahasa pemrograman yang berbeda, menggunakan development
tools yang berbeda, dan beroperasi di lingkungan yang beragam, mereka tetap harus
dapat saling bekerjasama.
Interoperabilitas perangkat lunak menuntut homogenitas pada suatu level tertentu.
Untuk itu diperlukan semacam 'standarisasi'. Berawal dari keperluan ini lahirlah CORBA
(Common Object Request Broker Architecture). CORBA adalah hasil 'kesepakatan'
antara sejumlah vendor dan pengembang perangkat lunak terkenal seperti IBM, Hewlett-
Packard, dan DEC, yang tergabung dalam sebuah konsorsium bernama OMG (Object
Management Group).
CORBA adalah sebuah arsitektur software yang berbasis pada teknologi
berorientasi obyek atau Object Oriented (OO) dengan paradigma client-server. Dalam
terminologi OO, sebuah obyek berkomunikasi dengan obyek lain dengan cara pengiriman
pesan (message passing). Konteks komunikasi ini kemudian dipetakan ke dalam model
client-server: satu obyek berperan sebagai client (si pengirim pesan) dan yang lain
bertindak sebagai server (yang menerima pesan dan memroses pesan yang bersangkutan).
Sebagai contoh, dalam ilustrasi di awal tulisan ini, jika si pasien memerlukan obat
tertentu, maka obyek aplikasi di tempat praktek dokter berlaku sebagai client dan
mengirim pesan ke obyek aplikasi di apotik guna mengetahui apakah obat yang
diperlukan tersedia di sana.
Keunikan dari CORBA adalah kemampuannya dalam menangani heterogenitas
antara client dan server (dalam terminologi CORBA, obyek server dinamakan
implementasi obyek (object implementation). Keduanya dapat saja diimplementasikan
dalam hardware, sistem operasi, bahasa pemrograman, dan di lokasi yang berbeda, tetapi
tetap bisa saling berkomunikasi. Kuncinya ada pada sebuah lapisan software yang disebut
dengan ORB(Object Request Broker). Arsitektur CORBA dan ORBnya ditunjukkan pada
gambar 1.
Tidak seperti pada lazimnya bahasa OO (C++ atau Java), proses pengiriman
pesan dari client ke implementasi obyek tidak dilakukan secara langsung. Pertama, stub
dan skeleton "mengisolasi" client dan implementasi obyek dari tugas-tugas level rendah
seperti proses marshalling dan unmarshalling data. Selanjutnya ORB berfungsi sebagai
"pialang" yang menjembatani heterogenitas antara kedua obyek. ORB menangani
perbedaan platform, pelacakan lokasi obyek, dan proses transfer pesan sedemikian rupa
sehingga transparan terhadap kedua obyek. Dengan demikian pemrograman client dan
implementasi obyek bisa berkonsentrasi sepenuhnya pada aspek fungsionalitas keduanya.
Mengapa memilih ColdFusion?Allaire ColdFusion adalah sebuah web
application server yang digunakan untuk melakukan pengembangan aplikasi e-business
yang membutuhkan tingkat skalabilitas tinggi. Artikel ini akan menjelaskan secara
singkat mengenai Allaire ColdFusion, manfaat dan fitur serta perbandingan ColdFusion
dengan web application server lain maupun dengan bahasa pemrograman web lainnya.
Seluruh isi artikel ini mengacu kepada Allaire ColdFusion versi 4.0 hingga 4.5.
Sekilas ColdFusion
ColdFusion adalah sebuah web application server yang digunakan untuk
melakukan pengembangan aplikasi e-business yang membutuhkan tingkat
skalabilitas tinggi dengan melakukan integrasi antara teknologi browser, server,
basis data dan component object lain. Berikut adalah diagram sederhana
bagaimana ColdFusion bekerja:
ColdFusion menyediakan fasilitas visual programming, basis data dan alat bantu untuk
melakukan pelacakan kesalahan dalam sebuah lingkungan pengembangan terintegrasi
yang disebut ColdFusion Studio.
Fitur-fitur penting yang disediakan oleh ColdFusion adalah kemampuannya
melakukan integrasi dengan teknologi maupun aplikasi lain seperti basis data, e-mail,
directory, XML dan enterprise system. ColdFusion mendukung pula pengimplementasian
pada lingkungan multi-server clusters dengan load balancing dan fail over yang sangat
dibutuhkan pada aplikasi web dengan beban kerja tinggi. ColdFusion menyediakan
kemudahan dalam melakukan koneksi dengan basis data melalui teknologi ODBC, OLE
DB, dan native drivers untuk Oracle dan Sybase. Sedangkan untuk pengembangan
lainnya, ColdFusion menyediakan fasilitas untuk berinteraksi dengan object-object lain
seperti Java Servlet, COM dan Corba.
Terdapat beberapa alasan utama mengapa ColdFusion dapat menjadi pilihan utama para
pengembang aplikasi web yang akhirnya membuat tingkat penjualan ColdFusion begitu
tinggi, yaitu:
1. Sederhana
Bagi para pengembang aplikasi web, ColdFusion akan sangat mudah untuk
dipelajari. Sintaks bahasa pemrograman yang digunakan ColdFusion atau
ColdFusion Markup Language (CFML) bersifat tag-based, atau dengan kata lain
memliki sifat yang sama dengan HTML. Selain itu bahasa pemrogramannya
mudah untuk dimengerti, tanpa harus mempelajari sintaks atau kata kunci dan
tanda pengenal lain yang biasanya dibutuhkan pada bahasa pemrograman lain.
2. Kekuatan
ColdFusion menggabungkan dua nilai penting dalam pemrograman web yaitu
simplicity (kemudahan) dan powerful (kekuatan). Lebih dari tujuh puluh (70) tag
CFML dan lebih dari dua ratus (200) fungsi-fungsi yang disediakan oleh
ColdFusion akan sangat membantu pengembang dalam proses pengembangan
aplikasi web (ALL1999).
Berikut adalah fasilitas-fasilitas yang memberikan kemudahan sekaligus kekuatan
pada ColdFusion:
o Konstruksi program yang jelas, seperti flow control dan decision making.
o Akses basis data dengan mudah, termasuk akses stored procedure dan
transactions melalui ODBC, OLE DB maupun native drivers yang disediakan.
o Kemudahan untuk melakukan komunikasi antar protokol seperti LDAP,
POP3, SMTP, FTP dan HTTP,
o Integrasi yang baik dan mudah dengan teknologi lain seperti COM,
CORBA dan EJB.
o Kemampuan untuk mengembangkan tag-tag khusus yang dapat diprogram
menggunakan bahasa lain seperti C++, Java dan tentu saja CFML sendiri.
o Application framework yang baik termasuk untuk faktor keamanaan.
3. Komunitas
Salah satu alasan utama penggunaan ColdFusion adalah adanya dukungan
dari komunitas pengembang lain. Allaire menyediakan fasilitas “developer
forum” dan "ColdFusion user group” yang juga dapat berfungsi sebagai
komunitas open source untuk membantu pengembang lain yang membutuhkan
bantuan.