17
Gambar 6 Topologi Data Warehouse Snowflake Schema
Selanjutnya, setelah menentukan arsitektur staging area dan skema snowflake, langkah berikutnya adalah merancang alur Oracle Streams untuk proses data
warehouse loading. Perancangan Oracle Streams menggunakan metode one-way replication atau metode satu arah, yaitu data yang ada pada database sumber akan
direplikasi ke database tujuan [15].
Pada tahap ketiga, perancangan Oracle Streams dilakukan sesuai dengan desain model yang terlihat dari gambar 2. Semua proses capture, staging, dan
consumption dilakukan dengan cara pengkodean menggunakan bahasa pemrograman PLSQL di database Oracle 11g.
Tahap keempat adalah tahap hasil dan pembahasan berupa pengujian terhadap penerapan Oracle Streams di data warehouse. Pengujian dilakukan dengan cara
melakukan penambahan data di setiap tabel pada kedua sumber data untuk melihat apakah penambahan data tersebut akan terimplementasi di data warehouse
database target.
3. Hasil dan Pembahasan
Pembuatan data warehousing dengan Oracle Streams memiliki beberapa proses yang dilakukan, antara lain migrasi database ke Oracle database; konfigurasi
Oracle Streams pada database sumber; dan yang terakhir konfigurasi Oracle Streams pada database target.
Migrasi database non Oracle menjadi database Oracle dilakukan dengan cara memasukkan data yang sudah di extract ke dalam database MySQL dan SQL
Server. Proses pengiriman data dari bentuk extract ke bentuk database disebut juga sebagai proses Transform pada data warehouse. Pada tahap ini proses migrasi akan
dilakukan menggunakan SQL Developer pada kedua database secara online, karena MySQL dan SQL Server harus aktif.
tb_charge
CHARGE_ID USER_ID
ITEM_ID
tb_fakultas
KODE_FAKULTAS NAMA_FAKULTAS
tb_mahasiswa
NIM NAMA
ALAMAT
tb_nilai
KODE_NILAI IPK
NIM
tb_progdi
KODE_PROGDI NAMA_PROGDI
KODE_FAKULTAS
tb_propinsi
KODE_PROPINSI NAMA_PROPINSI
tb_fakta_peminjaman
NIM KODE_PROPINSI
KODE_PROGDI KODE_NILAI
CHARGE_ID DISCHARGE_DATE
18
Setelah migrasi database selesai, untuk menentukan keberhasilan migrasi database, diperlukan koneksi baru di SQL Developer sesuai dengan nama database
yang dimigrasikan. Kemudian, melihat user atau nama skema database yang masuk kedalam sistem database Oracle, dilakukan dengan cara menjalankan script
“select username from dba_users order by username
” pada sistem Oracle di komputer B. Dari script tersebut, akan memberi keluaran berupa nama-nama user yang ada
didalam database source Oracle. Pada bagian ini dapat diketahui bahwa database DB_SIASAT dan DB_PERPUSTAKAAN sudah masuk ke dalam database Oracle.
Kemudian setelah kedua database sudah menjadi satu dalam staging area, konfigurasi Oracle Streams diterapkan di kedua database Oracle seperti pada
Gambar 7.
Gambar 7 Alur Penerapan Konfigurasi Oracle Streams
Pada database sumber, terdapat dua skema yang akan di-capture menggunakan Oracle Streams, yaitu skema DB_SIASAT dan skema DB_PERPUSTAKAAN.
Dua skema ini terletak di sumber database dengan nama instance database adalah source. Penerapan Oracle Streams pada kedua schema tersebut menggunakan
metode level-schema. Dalam mengimplementasikan Oracle Streams, keadaan pada kedua database harus berstatus archive log. Archive log berguna untuk merekam
atau mencatat semua transaksi yang terjadi pada suatu database.
Dalam melakukan replikasi data menggunakan Oracle Streams, diperlukan sebuah user baru strmadmin yang berperan sebagai admin replikasi dengan Kode
Program 1. User strmadmin akan berguna untuk mengeksekusi semua perintah konfigurasi Oracle Streams pada database.
Kode Program 1 kode program membuat user
Selanjutnya, membuat konfigurasi capture seperti yang terlihat di Kode Program 2. Konfigurasi capture yang diterapkan di skema SIASAT dan skema
connect SYSoraclesource as SYSDBA create user STRMADMIN identified by STRMADMIN;
ALTER USER STRMADMIN DEFAULT TABLESPACE USERS TEMPORARY TABLESPACE TEMP
QUOTA UNLIMITED ON USERS; GRANT CONNECT, RESOURCE, AQ_ADMINISTRATOR_ROLE,DBA to STRMADMIN;
execute DBMS_STREAMS_AUTH.GRANT_ADMIN_PRIVILEGESTRMADMIN;
19
PERPUSTAKAAN berfungsi untuk merekam semua perubahan obyek database baik perubahan secara DML dan DDL.
Kode Program
2 kode program capture process
Perubahan data di sumber database diterapkan di database tujuan dengan cara melakukan konfigurasi apply process pada skema database sumber, yaitu skema
data warehouse DW_LIBRARY seperti pada Kode Program 3.
Kode Program 3 kode program apply process
Selanjutnya, untuk mengetahui perubahan apa yang harus diterapkan ke dalam database target, sistem Oracle Streams membutuhkan proses instantiation process.
Instantiation process membantu proses penerapan perubahan pada database target dengan cara memberi penomoran pada setiap perubahan data di database yang telah
tersimpan di redo logs. Dalam Oracle Streams, instantiation process dapat dilakukan dengan berbagai cara, antara lain melakukan export import data yang
memakai data pump maupun export import data menggunakan RMAN Recovery Manager. Kode program yang digunakan untuk export import data adalah sebagai
berikut:
Kode Program 4 kode program export import data pump
Pada Kode Program 4 terdapat dua macam konfigurasi yaitu export dan import data. Proses export dilakukan di sumber database yang bertujuan untuk menyalin
conn STRMADMINSTRMADMINSOURCE BEGIN
DBMS_STREAMS_ADM.ADD_SCHEMA_RULES schema_name
= DB_SIASAT, streams_type
= CAPTURE, streams_name
= STRMADMIN_CAPTURE, queue_name
= STRMADMIN.STREAMS_QUEUE, include_dml
= true, include_ddl
= true, source_database
= SOURCE; END;
conn STRMADMINSTRMADMINTARGET BEGIN
DBMS_STREAMS_ADM.ADD_SCHEMA_RULES schema_name = DW_LIBRARY,
streams_type = APPLY, streams_name = STRMADMIN_APPLY,
queue_name = STRMADMIN.STREAMS_QUEUE, include_dml = true,
include_ddl = true, source_database = SOURCE;
END;
exp USERID=SYSTEMoraclesource OWNER=db_siasat FILE=db_siasat.dmp LOG=db_siasat_exp.log OBJECT_CONSISTENT=Y STATISTICS = NONE
imp USERID=SYSTEMoracletarget FROMUSER=db_siasat TOUSER=dw_library CONSTRAINTS=Y FILE=db_siasat.dmp IGNORE=Y COMMIT=Y LOG=db_siasat_imp.log
STREAMS_INSTANTIATION=Y
20
semua objek database di skema siasat. Setelah itu data yang sudah dieskpor di import ke database tujuan dimana proses import dilakukan di database tujuan.
Pada tahap ini, pengujian berhasil atau tidaknya simulasi data warehousing dengan Oracle Streams dilakukan dengan cara memberi penambahan data pada
database sumber source yang kemudian akan diterapkan di database tujuan target.
Proses pengujian dilakukan dengan cara melakukan penambahan data di database sumber pada salah satu tabel di skema DB_SIASAT yaitu pada tabel
TB_NILAI. Data yang akan ditambahkan pada TB_NILAI adalah mahasiswa yang memiliki unsur NIM 972011. Keadaan awal tabel sebelum diberi penambahan data
adalah enam baris dengan acuan mahasiswa yang memiliki NIM 972011 saja. Banyaknya jumlah record atau baris dapat dilihat dengan mengeksekusi perintah
“select from tb_nilai where nim like 972011 order by nim;”. Kemudian dilakukan penambahan data dengan mengeksekusi perintah insert yang dapat
dilihat pada Kode Gambar 5,
Kode Program 5 kode program insert data mahasiswa
Setelah dilakukan penambahan data sebanyak satu baris, keadaan banyaknya data pada tabel nilai di sumber database saat ini adalah sebanyak tujuh baris.
Banyaknya data pada TB_NILAI dapat dilihat dengan mengeksekusi kembali perintah “select from tb_nilai where nim like 972011 order by nim;”.
Keberhasilan dari penerapan Oracle Streams terlihat dari perubahan pada database target data warehouse. Perubahan data dilihat dengan mengeksekusi
perintah “select from tb_nilai where nim like 972011 order by nim;”. Eksekusi perintah tersebut memberi hasil berupa penambahan data pada data warehouse
DW_LIBRARY dan diperlihatkan dengan bertambahnya record pada database target yang semula sebanyak enam baris menjadi tujuh baris. Hasil tersebut
mendandakan bahwa proses Apply pada database target sudah berjalan dengan baik dan perubahan DML pada schema DB_SIASAT serta DB_PERPUSTAKAAN ke
database target dapat berjalan dengan baik. Di mana perubahan yang dilakukan tetap mengacu pada bentuk topologi data warehouse yang sudah ditentukan.
4.
Simpulan
Simpulan dari penelitian ini adalah database multiplatform dapat dijadikan satu ke dalam sebuah data warehouse menggunakan arsitektur staging area. Fungsi
replikasi data di Oracle Streams dapat digunakan tidak hanya untuk melakukan replikasi database saja, namun replikasi data di Oracle Streams bisa digunakan
dalam pembuatan data warehouse. Menggunakan fitur data warehouse loading, Oracle streams dapat diterapkan dalam pembuatan data warehouse tersebut.
insert into tb_nilai values 12013,972011007,1,1,1,97;
21
5. Daftar Pustaka