BAB 2 LANDAS AN TEORI 2.1. Data dan Informasi W.H. Inmon pada bukunya “Building the Data warehouse” (2005,p.493) mendefinisikan data sebagai kumpulan fakta, konsep, dan instruksi yang disimpan pada media penyimpanan untuk komunikasi, pengambilan, dan pemrosesan dengan cara otomatis dan dipresentasikan sebagai informasi yang dapat dimengerti oleh manusia. Contoh dari data, yaitu : saldo tabungan, jumlah penduduk, nilai kuliah. Sedangkan informasi didefinisikan sebagai data yang digabungkan dan dievaluasi untuk menyelesaikan masalah atau membuat keputusan. Contoh dari informasi, yaitu : laporan saldo tabungan bulanan dari setiap nasabah, pertumbuhan penduduk pada setiap provinsi. 2.2. Database M enurut Connoly(2005. p.14), Database adalah kumpulan dari data – data yang terhubung secara logika yang dibuat untuk memenuhi kebutuhan informasi dari sebuah organisasi. Database merupakan penyimpanan data dalam skala besar dengan jumlah duplikasi minimum yang dapat digunakan secara bersamaan oleh beberapa pengguna. Database mewakili entitas, atribut, dan hubungan logika antara beberapa entitas. 6 7 2.3. Database Management System (DBMS ) M enurut A.Silberschatz (2006, p.1), Database M anagement System (DBM S) adalah kumpulan dari data yang saling berhubungan dan program – program untuk mengakses data tersebut. Tujuan utama dari DBM S adalah menyediakan sarana untuk menyimpan dan mendapatkan informasi database secara efisien. Dalam DBM S terdapat Data Definition Language (DDL), Data M anipulation Language (DM L) dan pengaturan akses ke database sebagai fasilitasnya. 2.3.1. Data Definiton Language (DDL) Data Definiton Language (DDL) M emungkinkan user untuk memilih tipe dan struktur data serta constraint pada data yang akan disimpan di dalam database. 2.3.2. Data Manipulation Language (DML) Data M anipulation Language (DM L) memungkinkan user untuk melakukan insert, update, delete, dan mengambil data dari database. 2.4. OLTP (Online Transaction Processing) M enurut Conolly (2005, p.1149) OLTP adalah system yang dirancan g untuk menangani jumlah transaksi yang tinggi, dengan transaksi yang secara khusus melakukan perubahan kecil terhadap data operasional organisasi, yaitu data yang dibutuhkan oleh organisasi untuk menangani operasi harian. 8 2.5. OLAP (Online Analytical Processing) M enurut Connolly(2005, p.1204), OLAP adalah teknologi yang menggunakan multi-dimensional view dari aggregate data untuk menyediakan akses yang cepat ke informasi strategis untuk mendukung proses pengambilan keputusan. OLAP memungkinkan user untuk mendapatkan pemahaman dan informas i yang mendalam mengenai berbagai aspek dari data perusahaan mereka melalui akses yang cepat, konsisten, dan iteraktif ke berbagai macam data view. 2.6. Data Mart Data mart adalah fasilitas penyimpanan data yang berorientasi pada subject tertentu atau berorientasi pada departemen tertentu seperti sales, marketing, operation atau collection. Sehingga suatu organisasi bisa mempunyai lebih dari satu data mart. Data mart pada umumnya diorganisasikan sebagai suatu dimensional model, seperti star schema yang tersusun dari sebuah tabel fakta dan tabel dimensi. 2.7. Extract, Transform, Loading (ETL) Data operasional yang belum terintegrasi bersifat kompleks dan sulit ditangani. Untuk itu diperlukan sebuah metode untuk mengintegrasikan data dari 9 level operasional ke data warehouse. M etode tersebut memiliki tiga proses, yaitu: 1. Extraction M enurut Kimball(2002, p8), extraction adalah langkah awal dalam proses pengambilan data ke data warehouse. Extracting artinya membaca dan memahami sumber data dan menyalin data yang dibutuhkan oleh data warehouse ke staging area untuk dimanipulasi lebih mendalam. 2. Transformation Setelah data diekstrak ke dalam staging area, ada beberapa transformation yang mungkin dilakukan seperti : cleansing data (memperbaiki kesalahan pengejaan, memperbaiki konflik domain, mengatasi elemen yang hilang, atau mengubah ke dalam format standar), menggabungkan data dari beberapa sumber, mengurangi duplikasi data, dan memberikan warehouse keys. 3. Loading Pada akhir proses transformasi, data berada dalam bentuk load record images. Loading data ke dalam data warehouse berarti mengambil replika dari tabel dimensi dan tabel fakta lalu mempresentasikan tabel – tabel tersebut ke bulk loading facilities pada data mart. 10 2.8. Data warehouse 2.8.1. Pengertian Data warehouse Data warehouse adalah kumpulan data yang bersifat subjectoriented, integrated, nonvolatile, dan time-variant yang mendukung proses pengambilan keputusan manajemen. Data pada data warehouse dapat digunakan untuk tujuan yang berbeda termasuk untuk mengetahui requirements yang akan dibutuhkan di masa yang akan datang. (W.H Inmon , 2005.p29) Data warehouse dibangun dari data aplikasi yang didapat dari operational environment. Data tersebut kemudian diintegrasikan lalu kemudian dialihkan ke data warehouse. Aliran data berjalan dari data warehouse ke level department atau disebut juga data mart environment. Data pada level department atau data mart dibentuk dari hasil pemrosesan requirements setiap department. Proses pengambilan keputusan pada data warehouse lebih mudah karena data diambil dari sumber yang terintegrasi (data warehouse), granularity dari data warehouse yang mudah diakses, dan karena data warehouse memiliki fondasi yang reusable dan mudah untuk disusun kembali. 2.8.2. Karakteristik Data warehouse Pada pengertian data warehouse yang dijelaskan dalam poin sebelumnya dikatakan bahwa data warehouse memiliki beberapa 11 karakteristik. M enurut Conolly (2005, p.1151) karakteristik – karakteristik data warehouse adalah sebagai berikut : • Subject oriented (berorientasi subyek) Data warehouse berorientasi subyek artinya data warehouse didesain untuk menganalisa data pada area subyek – subyek utama dalam organisasi bukan pada area aplikasi. Data warehouse diorganisasikan pada subjek – subjek utama seperti pelanggan, produk, dan penjualan bukan pada area aplikasi seperti invoice, pengontrolan stok, dan penjualan produk. Hal ini dikarenakan data warehouse dirancang untuk memenuhi kebutuhan akan penyimpanan data yang mendukung proses pembuatan keputusan daripada aplikasi yang berorientasi terhadap data. • Integrated (terintegrasi) Data warehouse menyimpan data yang berasal dari berbagai sumber secara konsisten karena sumber data tersebut terkadang tidak konsisten seperti format data yang berbeda. Format data pada data warehouse dibuat konsisten dan terintegrasi untuk memberikan data yang seragam kepada pengguna. Contoh proses pengintegrasian ini dapat dilakukan dengan cara melakukan konversi dan menyesuaikan format data. • Time – variant (variasi waktu) Seluruh data pada data warehouse dikatakan akurat dan berlaku pada suatu rentang waktu atau interval tertentu. Variasi 12 waktu dari data warehouse dapat dilihat ketika pada kasus tertentu, sebuah record memiliki time stamp. Dalam kasus lain, setiap record memiliki tanggal transaksi. Tetapi pada setiap kasus pasti ada pemberian waktu untuk menunjukkan rentang waktu dimana data tersebut berlaku. • Non-volatile (tidak mudah berubah) Dikatakan tidak mudah berubah karena data tidak diupdate secara realtime tetapi dengan cara di-refresh dari sistem operasional secara regular. M eskipun diupdate secara reguler dari database operasional tetapi data warehouse berbeda dari database operasional karena pada data warehouse hanya ada dua kegiatan yaitu loading data dan pengaksesan data secara massal tetapi tidak ada proses updating data seperti pada database operasional. 2.8.3. Keuntungan Data warehouse Pengimplementasian data warehouse yang baik akan memberikan keuntungan bagi sebuah organisasi. Keuntungan – keuntungan tersebut menurut Connolly (2002, p.1048) adalah : • Potensi nilai return of investment (ROI) yang tinggi. • Keuntungan yang kompetitif • M eningkatkan produktifitas para pengambil perusahaan pada sebuah perusahaan. 13 2.8.4. Arsitektur Data warehouse Penjelaskan mengenai proses, tools, dan teknologi yang berhubungan dengan data warehouse akan diuraikan pada poin ini. Arsitektur data warehouse menurut Connolly (2002, p.1052) digambarkan seperti berikut ini : 2.8.4.1. Operational Data Sumber dari operational data dapat diperoleh dari : • M ainframe data operational yang terdapat pada generasi pertama dari database jaringan dan hierarkikis. Dapat diestimasikan bahwa mayoritas data operasional perusahaan tersimpan pada sistem ini. • Data dari masing – masing departemen yang tersimpan pada file system seperti VSAM , RM S, dan file sistem dari relational DBM S seperti Informix dan Oracle. • Private data yang tersimpan di workstation dan private server. • Sistem eksternal seperti internet, database komersial, atau database yang berhubungan dengan perusahaan supplier atau customer. 14 2.8.4.2. Operational Datastore Operational Datastore penyimpanan data operasional (ODS) yang adalah tempat terintegrasi yang digunakan untuk analisis. ODS memiliki struktur dan cara penyediaan data yang sama dengan data warehouse tetapi sesungguhnya bertindak secara sederhana sebagai tempat penyimpanan sementara sebelum dipindahkan ke data warehouse. 2.8.4.3. Load Manager Load manager melakukan semua operasi yang berhubungan dengan ekstraksi dan loading data ke data warehouse. Data dapat diekstrak secara langsung dari sumber data atau biasanya diambil dari operational datastore. 2.8.4.4. Warehouse Manager Warehouse manager melakukan semua operasi yang berhubungan dengan kegiatan manajemen data pada warehouse. Operasi – operasi tersebut meliputi : • Analisis untuk memastikan konsistensi data. 15 • Transformasi dan penggabungan sumber data dari tempat penyimpanan sementara ke tabel data warehouse. • Pembuatan index dan view dari tabel - tabel dasar. • M elakukan denormalisasi dan aggregrasi bila diperlukan. • M em-back up dan mengarsipkan data. 2.8.4.5. Query Manager Query manager melakukan semua operasi yang berhubungan dengan kegiatan manajemen query yang dilakukan oleh user. Operasi – operasi yang dilakukan oleh komponen ini meliputi pengarahan query ke tabel yang sesuai dan menjadwalkan waktu eksekusi dari query. Pada beberapa kasus, query manager juga membuat query profiles untuk mengizinkan data warehouse agar bisa menentukan index dan fungsi aggregate mana yang sesuai. 2.8.4.6. Detailed Data Area data warehouse ini menyimpan semua data detail dari database schema. Pada banyak kasus, data detail tidak disimpan secara online melainkan disimpan pada level berikutnya dengan melakukan proses aggregating. 16 2.8.4.7. Lightly and Highly S ummarized Data Area ini menyimpan data lightly dan highly summarized yang dihasilkan oleh warehouse manager. Area ini adalah tempat penampungan sementara sebelum dilakukan perubahan secara berkelanjutan untuk merespon perubahan profil query. Tujuan dari ringkasan informasi ini adalah untuk meningkatkan kecepatan query. Data diupdate secara terus menerus setiap data baru di-load ke data warehouse. 2.8.4.8. Archived / Backup Data Area ini menyimpan data detail dan ringkasan data untuk tujuan pengarsipan dan back up. Walaupun ringkasan data dihasilkan dari data detail, tetapi back up online dari ringkasan data diperlukan seandainya data disimpan dalam waktu yang melebihi batas periode penyimpanan data detail. Data dipindahkan ke media penyimpanan arsip seperti magnetic tape atau optical disk. 2.8.4.9. Meta Data Area ini menyimpan semua definisi meta-data (data tentang data) yang digunakan oleh semua proses di dalam 17 data warehouse. M eta-data digunakan untuk berbagai macam tujuan seperti : • Proses loading dan ekstraksi : meta-data digunakan untuk memetakan sumber data ke view yang terdapat pada data warehouse. • Proses manajemen warehouse : meta-data digunakan untuk meng-otomatisasi pembuatan tabel ringkasan dari data yang ada di dalam data warehouse. • Sebagai bagian dari query management process : metadata digunakan untuk mengarahkan query ke sumber data yang paling sesuai. 2.8.4.10. End-User Access Tools Tujuan utama dari data warehouse adalah untuk menyediakan informasi kepada bisnis user untuk membuat keputusan strategis. User berinteraksi dengan data warehouse menggunakan end-user access tools. Tools ini dibagi kedalam 5 kategori , yaitu : • Reporting and query tools. • Application development tools. • Executive information system (EIS) tools. • Online analytical processing (OLAP) tools. • Data mining tools. 18 2.9. Data warehouse Data Flows M enurut Connolly (2005, p.1162) data warehouse fokus pada management lima data flows primer, yaitu : 1. Inflows adalah proses yang berhubungan dengan pengekstrasian, pembersihan dan pemuatan data dari source system ke dalam data warehouse. 2. Upflow adalah proses yang berhubungan dengan penambahan nilai pada data yang ada di dalam data warehouse melalui peringkasan, packaging, dan pendistribusian data. 3. Downflow adalah proses yang berhubungan dengan pengarsipan dan back up data pada data warehouse. Downflow memastikan agar data warehouse dapat dibangun kembali jika terjadi kehilangan data atau kerusakan pada software/hardware. 4. Outflow adalah proses yang terkait dengan penyediaan data sehingga data selalu ada untuk end-users. Ada 2 kunci kegiatan yang terlibat dalam outflow, yaitu: a. Accessing, artinya mampu memenuhi permintaan end-users akan data yang mereka butuhkan. b. Delivering, secara proaktif mengirim informasi ke lingkungan kerja endusers. 5. Meta-flow adalah proses yang terkait dengan manajemen meta-data. 19 2.10. Metodologi Perancangan Data warehouse M enurut Conolly (2005, p.1187) ada sembilan langkah dalam merancan g data warehouse yang dikenal dengan “Nine-step method”, yaitu : 1. M emilih proses (Choosing the process) Yang dimaksud dengan proses adalah subjek masalah dari data mart. Data mart yang dibuat harus bisa menjawab pertanyaan – pertanyaan penting dari bisnis dan mudah diakses dari sudut pandang ekstraksi data. 2. M emilih Grain (Choosing the grain) M emilih grain berarti menentukan apa yang sebenarnya direpresntasikan oleh record – record yang ada pada tabel fakta. 3. M engidentifikasi dan menyesuaikan dimensi (Identifying and conforming the dimensions) M engidentifikasi dimensi – dimensi yang ada dengan detail secukupnya agar data mart menjadi mudah dimengerti dan mudah digunakan. 4. Choosing the facts M emilih fakta yang akan digunakan oleh data mart. Semua fakta harus ditampilkan pada level yang sama dengan grain. Fakta harus berupa numerik dan aditif. 5. Storing precalculations in the fact table Setelah fakta dipilih, maka setiap fakta harus diuji kembali untuk mengetahui apakah ada kemungkinan untuk dilakukan pre-kalkulasi. 6. Rounding out the dimension tables 20 M enambahkan sebanyak mungkin teks deskripsi kepada tabel dimensi. Teks deskripsi harus intuitif dan mudah dimengerti oleh user. 7. Choosing the duration of the database M enentukan durasi atau umur dari tabel fakta. 8. The need to track slowly changing dimensions Ada 3 tipe dasar dari perubahan dimensi yang lambat, yaitu : • Type 1, dimana atribut yang mengalami perubahan di-overwrite. • Type 2, ketika atribut dimensi yang mengalami perubahan menyebabkan terbentuknya record dimensi baru. • Type 3, ketika atribut dimensi yang mengalami perubahan menyebabkan adanya atribut pengganti sehingga nilai lama dan nilai baru dapat diakses secara bersamaan pada dimensi record yang sama. 9. Deciding query priorities and query modes. 2.11. Konsep Pemodelan Data warehouse 2.11.1. Dimensional Modeling Dimensional modeling adalah metodologi untuk membuat model logika dari data agar lebih mudah digunakan dan memberikan query performance yang tinggi. Data ditampilkan pada dimensidimensi yang tidak terpisahkan menggunakan relational model dengan beberapa batasan tertentu. Setiap dimensional model digabungkan dalam satu tabel dengan multipart key yang disebut tabel fakta dan sekumpulan tabel – tabel yang lebih kecil yang disebut tabel dimensi. 21 Setiap tabel dimensi memiliki satu primary key yang berhubungan dengan salah satu komponen dari multipart key pada tabel fakta. Struktur yang menyerupai anatomi bintang ini disebut star join atau star schema. Kimball(data warehouse life cycle toolkit, 2002, p54). 2.11.2. Tabel Fakta dan Tabel Dimensi Tabel fakta merupakan fondasi utama dari data warehouse. Tabel ini berisi pengukuran dan informasi fundamental dari sebuah bisnis yang merupakan target utama dari data warehouse query. Pada star schema, tabel fakta merupakan tabel sentral yang menyimpan pengukuran numerik dan memiliki composite key yang setiap elemen nya merupakan foreign key yang diambil dari tabel dimensi. Relas i yang dimiliki oleh tabel fakta merupakan many-to-many relationship dari dimensi – dimensi yang ada pada dimensional model. Tabel dimensi merupakan tabel pada dimensional model yang mengelilingi tabel fakta pada star schema. Tabel ini mendeskripsikan satu aspek penting dari tabel fakta yang ditunjukkan dengan singlepart primary key dan atribut kolom yang deskriptif. Atribut – atribut dari tabel dimensi memegang peranan penting pada data warehouse karena mereka merupakan sumber dari constraints dan report label yang diperlukan untuk membuat data warehouse berguna dan mudah dimengerti. 22 2.11.3. Skema Bintang (Star Schema) Star schema merupakan arsitektur data warehouse paling sederhana yang terdiri dari tabel fakta dan tabel – tabel dimensi. Tabel fakta menjadi pusat dari star schema yang dikelilingin oleh tab. l – tabel dimensi yang lebih kecil. Tabel fakta dan tabel dimens i dihubungkan dengan hubungan many-to-one untuk menjamin hirarki dari star schema. Star schema bisa memberikan respon yang cepat dalam memberikan akses pada database optimizers untuk diimplementasikan pada struktur database agar menghasilkan execution plan yang lebih baik. Gambar 2.1 S kema Bintang (Sumber : http://datawarehouse4u.info/Data‐warehouse‐schema‐ architecture‐star‐schema.html) 23 2.11.4. Skema Snowflakes (Snowflakes Schema) Skema snowflakes merupakan variasi yang lebih kompleks dari model skema bintang dimana semua data pada tabel dimensi disimpan dalam bentuk 3-NF sehingga memungkinkan adanya tabel dimens i tambahan sementara struktur tabel fakta nya tetap sama. Untuk menjaga dari model ini, tabel – tabel dimensi dihubungkan dengan tabel sub-dimensi menggunakan many-to-one-relationships. Skema ini bisa mengurangi redundancy dan menghemat media penyimpanan. Dampak yang kurang baik dari skema ini adalah berkurang nya efektifitas browsing karena skema yang kompleks dan menurunnya system performance karena adanya tabel – tabel tambahan. Gambar 2.2 S kema Snowflakes (sumber : http://datawarehouse4u.info/Data-warehouse-schemaarchitecture-snowflake-schema.html ) 24 2.12. Teori Data Flow Diagram (DFD) M enurut Jeffery L. Whitten (2004, p.344) , data flow diagram adalah alat yang digunakan untuk menggambarkan aliran data yang melewati sistem serta pekerjaan atau proses yang terjadi didalam sistem. 2.12.1 Komponen DFD Ada 4 komponen utama yang membentuk data flow diagram , yaitu : aliran data , external agent , proses , dan data stores. M enurut Jeffery L. Whitten (2004, p.357) , data flow merupakan data yang masuk atau keluar dari sebuah proses. Data flow merepresentasikan data/informasi yang masuk ke dalam sistem atau hasil dari sebuah proses. Data flow hanya memiliki 1 arah antar symbol. Gambar 2.3 Konsep Data Flow (Sumber : Jeffery L. Whitten (2004, p. 357)) 25 Jeffery L. Whitten (2004, p. 363) , menjelaskan bahwa external agent merupakan orang, unit organisasi, sistem luar atau organisasi yang berinteraks i dengan sistem. Disebut juga external entity. M enurut Jeffery L. Whitten (2004, p. 366) , data stores merupakan inventory data atau tempat penyimpanan data. Data Stores dapat berupa file dokumen dan atau database. Process M enggambarkan penyelenggaraan kerja atau jawaban, dimana input ditransformasikan menjadi output. Sehingga setiap proses setidaknya memiliki 1 input dan 1 output. Jika proses hanya memiliki output, maka itu bukanlah proses melainkan external agent. Jika proses hanya memiliki input, maka itu bukanlah proses melainkan data stores. Ada 2 cara untuk menggambarkan DFD , yaitu menggunakan simbol DeM arco/Yourdan atau menggunakan simbol yang diperkenalkan oleh Gane dan Sarson. Komponen DeM arco/Yourdan Data Flow External Agent Gane dan Sarson 26 Data Stores Process Tabel 2.1 Simbol – Simbol DFD 2.12.1 DFD Level DFD dapat digambarkan dalam diagram konteks dan Level n. Levelisasi dimulai dari tingkatan tertinggi (diagram konteks) , lalu diuraikan ke bentuk yang lebih rinci yang dinamakan dengan diagram level-n. Tingkatan pada DFD adalah sebagai berikut : 1. Diagram Konteks (context data flow diagram) M enurut Jeffery L. Whitten (2004, p.372) , diagram konteks merupakan model proses yang digunakan untuk mendokumentasikan scope untuk sebuah sistem. Juga disebut environmental model. Gambar 2.4 Contoh Diagram Konteks (sumber : http://nyobayoo.blogspot.com/2008/09/diagram‐konteks.html) 27 2. Diagram Nol (context data flow diagram) M enurut Hoffer (1996, p.318) level-0 diagram meripakan diagram aliran data yang menggambarkan sebuah major proses , data flow, dan data stores dari sebuah sistem yang berada pada tingkatan tertinggi untuk detailnya Gambar 2.5 Contoh Diagram Nol (sumber : http://nyobayoo.blogspot.com/2008/09/diagram-nolzerooverview-diagram.html) 3. diagram rinci Diagram rinci menggambarkan rincian dari proses yang terdapat dalam diagram nol atau diagram level ditingkat sebelumnya. 28 Gambar 2. 6 Contoh Diagram Rinci (level 1) (sumber : http://nyobayoo.blogspot.com/2008/09/diagram-rinci-leveldiagram.html) 2.13. Teori Khusus 2.13.1. Purchase Order M enurut Romney & Stenbart (2003, p.421) purchase order adalah dokumen atau formulir elektronik yang secara formal meminta pemasok untuk menjual dan mengirimkan produk tertentu sesuai dengan harga yang telah ditetapkan. Purchase order juga berfungsi sebagai janji pembayaran sekaligus menjadi kontrak saat purchase order diterima pemasok. 29 2.13.2. S ales Order M enurut Romney & Stenbart (2003, p.713) Sales order merupakan dokumen yang dibuat selama pencatatan pemesanan barang yang akan dijual, merangkup nomor barang, kuantiti, harga dan syarat penjualan. 2.13.3. Plafon Berdasarkan KBBI , plafon dalam istilah ekonomi diartikan sebagai batas tertinggi (biaya, kredit, dsb) yg disediakan.