Minggu, 15 November 2009

Business Intelligence dan Data Warehouse

Business Intelligence dan Data Warehouse

Business Intelligence dan Data Warehouse adalah dua hal yang berbeda namun hampir tidak bisa dipisahkan. Data Warehouse bicara mengenai bagaimana data-data yang besar dan beragam disimpan dalam satu repository dan disusun sedemikian sehingga memudahkan pencarian (query), sedangkan Business Intelligence adalah suatu alat yang digunakan untuk menyajikan data-data tersebut sehingga memudahkan analisa dan pengambilan keputusan secara bijak berdasakan informasi yang akurat. Suatu solusi Business Intelligence yang baik memerlukan Data Warehouse yang baik.

Data Warehouse
Data Warehouse yang secara harfiah berarti gudang data, sebetulnya memiliki makna lebih dalam dari sekedar “gudang”. Bill Inmon, yang dianggap sebagai Bapaknya Data Warehouse mendefinisikan bahwa Data Warehouse adalah Database yang memiliki karakter: Subject Oriented, Integrated, Non-volatile, Time Variant.

Subject Oriented
Suatu Data Warehouse harus berorientasi subject atau disusun menurut jenis subyeknya. Suatu data transaksi (OLTP) biasanya disusun berdasarkan jenis transaksi yang ditangani oleh aplikasi transaksi tertentu. Misalnya aplikasi teller suatu bank akan menyimpan data transaksi yang terjadi, misalnya transaksi penarikan atau penyimpanan dana. Tentu saja setiap transaksi, teller akan memasukan data utama dan pendukungnya seperti nomor rekening, nilai transaksi, tanggal, dsb.

Subject oriented (lawan dari transaction oriented) menuntut agar data-data transaksi ini disusun dengan melihat subject areanya. Dalam hal data perbankan tersebut, subject areanya adalah nasabah, jenis transaksi, wilayah, kantor cabang, dsb. Menyusun data menjadi subject oriented berarti memastikan bahwa data tersebut akan dengan mudah disajikan berdasarkan subject areanya. Anda mungkin berfikir bahwa dengan data transaksi yang ada pun kita bisa manampilkan report berdasarkan subject. Anda tidak salah 100%, namun demikian apabila data transaksi ini disimpan berdasarkan transaction oriented, proses query terhadap data tersebut untuk menyajikan suatu report mungkin membutuhkan join banyak table dan bahkan mungkin antara database yang memakan resource cukup besar.
Integrated
Data Warehouse biasanya dibentuk dengan menggabungkan beberapa database yang mungkin berbeda baik dari segi teknologi maupun kodifikasi suatu table referensinya. Untuk menghasilkan subject oriented yang konsisten, data-data dari berbagai sumber harus diintegrasikan. Hal ini berarti teknologi yang beragam harus disatukan dan kode-kode referensi yang mungkin berbeda, contohnya kode wilayah, harus disamakan.

Non-volatile
Data Warehouse idealnya adalah data final dan bukan data yang masih bergerak. Data-data operational biasanya mencakup data-data yang bergerak, seperti Order yang belum diverifikasi atau Transaksi yang belum di-approve. Data-data ini masih memiliki status yang belum final dan dikatakan masih volatile. Untuk menghindari penggunaan data yang salah, Data Warehouse harusnya hanya memuat data-data yang sudah final (dan menjadi history). Untuk memastikan non-volatilitas, Data Warehouse adalah data yang hanya bisa dibaca dan tidak bisa ditulis/dimodifikasi (Read Only).
Time Variant
Karakteristik time-variant lah yang membuat suatu Data Warehouse menjadi sangat berarti untuk analisis. Time-variant berarti memiliki dimensi waktu sebagai variable. Sebagai contoh, apa artinya mengatakan suatu kantor cabang berhasil menjual 1500 items? Tanpa dimensi waktu informasi ini menjadi tidak berarti: apakah 1500 item itu angka hari ini? Bulan ini? Tahun ini? Tahun lalu?

Aspek time variant dari suatu Data Warehouse memberikan kemampuan untuk menyajikan informasi dalam bentuk trend. Hampir semua bisnis saat ini membutuhkan trend analysis untuk melihat performance maupun untuk forecasting.

ETL (Extract, Transform, Load)
Data Warehouse dibangun dengan mengintegrasikan data-data yang berasal dari berbagai sumber data, yaitu database operasional. Dalam suatu perusahaan, data-data operasional biasanya berada pada daerah kekuasaan departemen masing-masing dalam bentuk database OLTP. Untuk melakukan proses integrasi ini Data Warehouse Architect menggunakan suatu aplikasi yang disebut ETL (Extract, Transform, Load).

Sesuai dengan namanya, aplikasi ETL melakukan fungsi-fungsi Extract, Transform dan Load. Proses Extract adalah proses pengambilan data dari sumber data. Disebut extract, karena proses pengambilan data ini tidak mengambil keseluruhan data yang ada di database operasional, melainkan hanya mengambil data-data matang saja. Proses Extract ini harus mengakomodir berbagai macam teknologi yang digunakan oleh sumber data dan diintegrasikan ke dalam databsae tunggal.

Kemudian data-data hasil extract ini menjalani proses transformasi yang pada prinsipnya adalah mengubah kode-kode yang ada menjadi kode-kode standard, misalnya kode propinsi. Hal ini perlu dilakukan mengingat data-data yang diambil berasal dari sumber yang berbeda yang kemungkinan memiliki standarisasi yang berbeda pula. Standarisasi diperlukan untuk nantinya memudahkan pembuatan laporan.
Arsitektur Data Warehouse yang umum biasanya menempatkan satu server database terpisah yang disebut Staging yang berfungsi untuk menangani proses Extract dan Transform ini sebelum dilakukan proses Load ke tujuan akhir Data Warehouse.

Proses Load dalam ETL adalah suatu proses mengirimkan data yang telah menjalani proses transformasi ke gudang data akhir, yaitu Data Warehouse itu sendiri di mana aplikasi reporting dan business intelligence siap mengakses.

Untuk memudahkan pembuatan report dan meningkatkan performance, struktur database dari suatu Data Warehouse biasanya berbentuk Star Schema. Disebut demikian karena bentuk ERD (Entity Relationshio Diagram) dari table-tablenya mirip Bintang (star) (Catatan : Sebetulnya saya tahu bahwa bentuk bintang tidak seperti itu melainkan sama seperti matahari yang kita ketahui yaitu rada bulat, namun demikian untuk menghargai guru-guru saya sejak kecil yang terlanjur memberikan gambar bentuk bintang seperti itu, maka saya ikuti saja).

Selain bentuk Star Scheme, bentuk lain yang sering digunakan adalah bentuk snowflake atau gabungan antara star schema dengan snowflake (starflake).

Reporting & Business Intelligence
Dahulu sekali (sebelum ada teknologi spreadsheet), executive mengandalkan laporan tercetak untuk melihat performance perusahaannya. Proses analisa dilakukan langsung dikepalanya sambil membaca laporan ini. Laporan dicetak dalam berbagai bentuk untuk membantu analisa ini, misalnya di sort berdasarkan field tertentu. Seperti yang anda bayangkan, setelah laporan ini dicetak, maka user tidak bisa melakukan sortir lagi dengan field yang lainnya. Sebetulnya bisa saja kalau memang mau mengurutkan laporan yang sudah dicetak tersebut dengan kunci urutan yang lain, namun hal ini membutuhkan gunting, lem dan waktu yang banyak.

Kemudian lahirlah teknologi spreadsheet seperti Lotus 123 dan Microsoft Excel, maka laporan dapat dibuat lebih “interactive” dengan memberikan users pilihan sorting dan filter yang diinginkan. Pembuatan grafik pun dapat dilakukan dengan mudah. Dengan mengikuti kursus dasar Microsoft Excel yang cuma makan waktu 1-2 hari, seorang executive dapat “bermain-main” dengan data. Namun demikian, masih banyak executive yang lebih senang mengirimkan staffnya untuk kursus, sementara dirinya masih dimanja oleh “pelayanan data” oleh staffnya. Mungkin sang executive punya misi suci untuk meningkatkan kemampuan staffnya atau karena merasa sudah terlalu tua untuk belajar. Alasan yang kedua kayaknya yang lebih masuk akal.

Permasalahan dengan teknologi spreadsheet adalah pada akses terhadap datanya. Apakah data yang di worksheet up-to-date? Butuh effort yang lumayan besar untuk memastikan bahwa data di excel selalu up-to-date. Selain itu MS Excel memiliki keterbatasan jumlah baris data yang bisa disimpan. Beberapa kendala lain adalah bahwa dengan MS Excel, data yang tersedia untuk “bermain-main” terbatas kepada data yang telah di-export ke file excel terebut, ketika dibutuhkan kolom lainnya, maka users harus meminta IT Department untuk menambahkan data tersebut.

Pada awal 90-an lahirlah Business Intelligence yang didahului oleh kemunculan DSS (Decision Support System) dan kemudian Executive Information System (EIS). Business Intelligence lahir untuk menjawab tantangan yang tidak bisa dipenuhi oleh standard reporting, yaitu yang berkaitan dengan empat hal: accessibility, timeliness, format, data integrity. Business Intelligence memiliki sambungan langsung ke Data Warehouse, hal tersebut saja sudah menjawab dua hal yaitu accessibility dan timeliness. User selalu mendapatkan akses terhadap informasi yang dibutuhkan (accessibility) secara cepat (timeliness).

Business Intelligence memberikan kebebasan kepada users untuk mendefinisikan format laporan sesukanya. Sedangkan Data Integrity dipenuhi oleh Data Warehouse di mana BI ini dijalankan.

Salah satu yang menjadi kelebihan dari Business Intelligence adalah dimanjakannya users dengan struktur data yang memudahkan pembuatan report secara self-service dalam bentuk dimensi dan measures. Dengan mengkombinasikan measures dan dimensi yang tepat, users mendapatkan report yang diinginkan. Selanjutnya dia dapat menyajikannya dalam bentuk tabel atau dalam berbagai bentuk grafik yang dapat dipilih. Setelah report disajikan, user diberi fasilitas untuk menyimpan tampilan report tersebut dalam bentuk excel, xml, pdf, jpeg, dll sesuai kebutuhan.

Tidak ada komentar:

Posting Komentar