HUBUNGAN DATA WAREHOUSE DAN SERVICE ORIENTED ARCHITECH (SOA)

Dewasa ini perkembangan teknologi sangat pesat, termasuk teknologi data warehouse. Data semakin bertambah jumlahnya dan segala jenis data yang kita butuhkan saat ini sudah hampir semuanya tersedia di internet. Sebagaimana diketahui, Data Warehouse merupakan koleksi dari informasi suatu perusahaan/organisasi dan data yang diperoleh dari operasional sistem dan sumber data lainnya, dapat digunakan untuk mengambil keputusan sehingga memudahkan pengguna untuk menganalisa seluruh data yang ada di dalam suatu database.

Tujuan utama dibangunnya data warehouse adalah untuk menyediakan/menyajikan informasi-informasi terkait bisnis atau penting kepada pengguna agar dapat diambil keputusan secara cepat dan tepat. Data warehouse harus terkandung seluruh data-data perusahaan yang secara rutin digunakan oleh pengguna untuk melakukan analisis.

Dari pengertian dan tujuan dibuatnya data warehouse, kita dapat melihat keuntungan dari penggunaan data warehouse, yaitu:

  1. Data-data terorganisir dengan baik dan menghasilkan analisis yang tepat sehingga mempercepat proses transaksi;
  2. Perbedaan pada beberapa struktur data yang tersebar dibeberapa tempat dapat diatasi;
  3. Dapat mengetahui proses analisis yang hasilnya terjadi berulang-ulang;
  4. Mengurangi biaya operasional perusahaan;
  5. Seluruh proses proses analisa tidak mengubah sistem produksi perusahaan;
  6. Akses data cepat dan data konsisten.

Umumnya suatu data warehouse mengadopsi three-tier architecture, yaitu:

  1. Bottom Tier, tier terbawah dari arsitektur data warehouse adalah database server yang merupakan sistem relational database. Pada arsitektur ini digunakan tools yang digunakan untuk melakukan Extract, Clean, Load, dan fungsi lainnya;
  2. Middle Tier, pada tier ini terdapat OLAP Server yang dapat diimplementasikan dengan beberapa cara, yaitu:
  • Relational OLAP (ROLAP), yang merupakan extended relational database management system berfungsi memetakan operasi pada multidimensional data ke standard relational;
  • Multidimensional OLAP (MOLAP), yang langsung mengimplementasikan multidimensional data dan operasi;
  1. Top-Tier, layer yang terdapat di front-end client. Layer ini memiliki tools seperti query, reporting, analysis, dan data mining;

Gambar 1. The three-tier architecture of data warehouse

Service Oriented Architech (SOA) adalah model arsitektur teknologi yang terdiri dari sekumpulan layanan berlingkup kecil untuk menyelesaikan suatu permasalahan .  Ada lima manfaat SOA dalam penerapannya untuk layanan sistem, sebagai berikut:

  1. Fleksibel, mudah untuk dirubah-rubah;
  2. Dapat digunakan kembali, meningkatkan kualitas dan minim pengeluaran;
  3. Transparan, operasional manajemen bersifat terbuka termasuk manajemen keamanan, performance layanan, dan optimasi modul;
  4. Keterbukaan, layanannya mudah untuk diperpanjang;
  5. Mudah dipahami, komunikasi yang konsisten melalui perencanaan, design, pengiriman, dan perubahan.

Gambar 2. Ilustrasi 5 manfaat SOA ( https://miftahfauzy.wordpress.com/2010/07/16/benefits-of-soa-manfaat-manfaat-soa/ )

SOA sebagai arsitektur berorientasi layanan diadopsi oleh banyak perusahaan dan organisasi untuk menyediakan layanan integrasi aplikasi dan data. SOA dapat mengidentifikasi layanan yang dapat digunakan kembali dan membuatnya tersedia sebagai sumber daya terpusat (biasanya menggunakan aplikasi berbasis web). Untuk memasukkan data warehouse ke dalam SOA, dibutuhkan jembatan yang disebut Business Intelligence melalui konsolidasi, penggabungan, dan analisis data. Oleh karena itu, menggabungkan data warehouse ke dalam SOA secara keseluruhan sangat penting untuk mengintegrasikan proses bisnis menjadi business intelligence. Fungsi-fungsi yang diberikan oleh SOA tidak terikat dengan sistem operasi dan bahasa pemrograman yang digunakan untuk membangun suatu aplikasi. Hal ini yang membuat SOA menjadi rekat sekali dengan proses bisnis dilingkup perusahaan.

Tujuan membuat SOA, yaitu:

  1. Menghilangkan redundansi, fitur-fitur yang sama dapat digunakan dan diimplementasikan untuk seluruh aplikasi;
  2. Fungsionalitas mudah ditambah, aplikasi baru dapat menggunakan servis yang telah ada sebelumnya dan servis yang baru pada suatu aplikasi dapat digunakan di aplikasi yang lain;
  3. Mengadaptasi sistem terhadap perubahan, tersedianya mekanisme komunikasi antara aplikasi dan servis sehingga tidak terganggu bila ada perubahan pada suatu servis;
  4. Mempertahankan sistem yang telah ada, karena SOA tidak mengganggu servis yang berjalan di aplikasi.

Untuk mewujudkan SOA, diperlukan pengetahuan untuk beberapa orang yang terlibat didalamnya, yaitu infrastructure developer, application developer, dan service provider.

Untuk segi infrastruktur, SOA mengadopsi aplikasi infrastruktur 3-tier, yaitu:

  1. Client tier, tier ini untuk interaksi dengan pengguna (front-end);
  2. Application tier, sebagai server (back-end), memproses seluruh permintaan dari pengguna;
  3. Resource tier, tier database, mengelola seluruh data dalam sistem basis data.

Untuk pembuatannya, SOA memiliki 3 tahapan siklus, yaitu:

  1. Initiate.

Pada tahapan ini harus diputuskan fungsi dan proses bisnis terkait bagian mana yang dapat ditingkatkan atau digantikan fiturnya dengan SOA. Oleh karena itu organisasi atau perusahaan pada siklus ini harus menetapkan tim proyek, sasaran proyek, pembuatan timeline, dan pengiriman. Perusahaan harus membuat estimasi keuntungan terkait pembuatan SOA tersebut. Proses siklus ini harus benar-benar terkait dengan bisnis perusahaan/organisasi, aplikasi dan data yang digunakan.

  1. RoadMap

Pada siklus ini, tim proyek harus membuat kalkulasi terkait pembuatan SOA untuk perusahaan/organisasi tanpa melupakan prinsip-prinsip dasar SOA, dan membuat peta transisi keadaan sekarang dan masa depan.

  1. Action Plan.

Siklus ini menerangkan pelaksanaan dari siklus Roadmap. Tim proyek harus melaksanakan semua tahapan sesuai roadmap yang telah dibuat sesuai urutan. Mereka juga harus melakukan review teratur terhadap Action Plan dan melakukan perbaikan bila terdapat perubahan besar pada perencanaan awal.

Service Oriented Architecture (SOA) mempunyai empat karakteristik, yaitu:

  1. Loose coupling, yaitu suatu sifat dimana suatu aplikasi dapat dipanggil oleh aplikasi yang lain tanpa perlu tahu dimana dan platform apa yang berjalan di aplikasi tersebut;
  2. Service interface, suatu kondisi dimana aplikasi/layanan tertentu dapat di panggil langsung dari lokasinya (dapat dikatakan table data langsung);
  3. Service implementation, logic dari service interface yang dijalankan. Untuk karakteristik ini sangat berkaitan dengan pemrograman yang digunakan;
  4. Business oriented, artinya seluruh layanan maupun aplikasi harus melakukan proses bisnis.

Service Oriented Architecture (SOA) berhubungan dengan data warehouse untuk pembuatan business intelligence. SOA telah menjadi standar untuk integrasi berbagai aplikasi dengan komponen yang berbeda-beda dan layanannya didefinisikan pada tingkat bisnis. Hal ini mengurangi lalu lintas data di jaringan dan menyederhanakan integrasi. Demikian layanan yang disediakan SOA memungkinkan penggunaan kembali layanan diseluruh proses dan aplikasi yang sangat penting untuk penyajian solusi yang efisien.

Apabila SOA diimplementasikan secara tepat, SOA dapat mengurangi banyak redundansi dalam proses bisnis perusahaan/organisasi sehingga cukup banyak menghemat resources. Pada awal implementasinya, efek SOA tidak akan langsung terasa, namun ketika seluruh sistem dijalankan satu per satu, efek daripada efisiensinya akan terasa oleh perusahaan/organisasi. Layanan data akan terasa cepat, biaya operasional berkurang, dan berimplikasi terhadap naiknya keuntungan perusahaan/organisasi.

Terkait dengan fungsinya, SOA sangat cocok diterapkan di perusahaan maupun organisasi yang proses bisnisnya bergerak di bidang layanan terhadap pelanggan. Di pemerintahan juga sangat cocok dikarenakan banyaknya layanan masyarakat dan dapat memotong jalur birokrasi yang bertele-tele yang menghambat layanan terhadap masyarakat. SOA di pemerintahan dapat terhubung ke data warehouse yang berisi data-data skala besar untuk diproses analisis bisnisnya.

Hingga saat ini, SOA merupakan solusi terbaik untuk dijalankan dilingkup perusahaan/organisasi besar dikarenakan implementasinya yang memiliki kelebihan, yaitu:

  1. Menyatukan berbagai sistem dari platform yang berbeda-beda (contoh: Java dan .NET). Menurut SOA, kedua contoh sistem yang berbeda tersebut dianggap layanan;
  2. Tahan terhadap perubahan. Biasanya perusahaan/organisasi skala besar sering kali melakukan perubahan struktur yang dimaksud untuk meningkatkan efisiensi dan kinerja perusahaan/organisasi. Hal ini mempengaruhi operasional proses bisnis. Oleh karena itu SOA dipilih untuk permasalahan ini untuk mengurangi usaha memodifikasi perangkat yang terdampak dikarenakan perubahan struktur tersebut.

Kesimpulannya, SOA dapat menjadi layanan/aplikasi untuk membantu menganalisis proses bisnis yang ada di dalam data warehouse dikarenakan konsep utama SOA sebagai layanan. Mekanisme SOA dalam menjalankan layanannya harus dapat berjalan disemua platform. Data yang disajikan oleh SOA harus berisikan informasi yang juga menjelaskan keterbatasan dari layanan yang disediakan.

By NANDA ADYTIANSYAH, OEI KURNIAWAN UTOMO

 

Sources:

  1. https://www.onepetro.org/conference-paper/SPE-106941-MS ;
  2. http://blog.umy.ac.id/datawarehousemargonowibowo/2016/09/22/introduction-to-data-warehousing/ ;
  3. https://www.quora.com/How-does-a-Data-Warehouse-fit-into-a-Service-Orientated-Architecture ;
  4. https://www.onepetro.org/conference-paper/SPE-106941-MS ;
  5. http://www.oracle.com/technetwork/articles/soa/j-lawson-soa-data-101713.html ;
  6. https://www.networkworld.com/article/2280292/tech-primers/the-importance-of-soa-for-business-intelligence.html ;
  7. http://en.wikipedia.org/wiki/Service-oriented_architecture .
Abba Suganda Girsang