Komunitas Cloud Indonesia

Windows Azure dan NoSQL Database

Penulis :   |   October 8, 2012

Berbeda dengan konsep database relational yang umumnya digunakan, NoSQL database tidak dibangun dengan menggunakan konsep tables serta tidak menggunakan bahasa SQL untuk melakukan querying. NoSQL umumnya digunakan dalam proses-proses yang berkaitan dengan key-value storing, dan pengaksesan dokumen dengan data model tertentu. Hal ini membuat NoSQL database lebih cepat dan scalable dalam proses retrieval data serta operasi-operasi yang berkaitan dengan key record — sebuah hal yang tidak membutuhkan proses querying secara SQL yang kompleks. Pada NoSQL database, umumnya data di-encode dalam sebuah bentuk dokumen, misalnya XML ataupun tipe dokumen lainnya. Salah satu contoh database yang menggunakan konsep NoSQL adalah MongoDB.

Berikut ini akan dijabarikan beberapa fitur yang dimiliki oleh Windows Azure dan SQL Azure, serta konsep NoSQL yang digunakan :

1. Azure Table Storage

Pada postingan sebelumnya kita sudah melihat bahwa table storage pada Azure sangat berbeda dengan konsep relational database. Azure table storage mengimplementasikan konsep key-value record, suatu hal yang membuat fitur ini memiliki kesamaan dengan konsep NoSQL database, walaupun secara umum terdapat perbedaan di antara keduanya. Seperti pada ilustrasi di bawah, setiap key dan value “terikat” pada sebuah Entity object yang sejenis, dimana entity tersebut berhubungan dengan sebuah table. Namun table pada Azure table storage ini berbeda dengan konsep table pada relational DBMS.

2. SQL Azure XML Columns

Windows Azure SQL Database mempunyai tipe data “xml” yang dapat digunakan untuk menyimpan data-data berbentuk XML. Kita dapat menggunakan method-method pada tipe data xml untuk melakukan proses query ke sebuah instance XML yang disimpan pada variabel atau kolom bertipe xml. Berikut adalah beberapa method yang mendukung tipe data xml :

  • query() Method (xml data type)
  • value() Method (xml data type)
  • exist() Method (xml data type)
  • modify() Method (xml data type)
  • nodes() Method (xml data type)
Dengan menggunakan konsep XML untuk penyimpanan data, kita lebih mudah dalam mengubah schema sebuah database (struktur table, tipe data, constraints) secara dinamis. Hal ini sulit dilakukan dengan menggunakan relational database biasa.

3. OData

OData adalah sebuah open web protocol untuk melakukan proses querying dan updating data via internet. OData memudahkan user untuk melakukan querying menggunakan protokol HTTP dan mendapatkan hasil dari proses query tersebut dalam format Atom, XML, ataupun JSON. Proses querying umum nya terhubung dengan sebuah web service yang berfungsi sebagai communication gate diantara dua proses tersebut.

Pada Windows Azure and aplikasi Microsoft pada umumnya, OData menjadi transmission format dan API dari WCF Data Services. Selain itu, fitur storage pada Windows Azure seperti Azure Table Storage dan SQL Azure mendukung interface OData untuk setiap table penyimpanan mereka. Khusus untuk SQL Azure, terdapat sebuah tools bernama SQL Azure OData Service dimana akses ke OData dapat diaktifkan melalui konfigurasi.

Pada teknologi ini, konsep NoSQL banyak diimplementasikan terutama pada bagaimana cara data tersebut disimpan. Seperti yang sudah disampaikan sebelumnya, user akan mendapatkan hasil query mereka dalam beberapa format data sepert XML dan JSON, yang mana merupakan format penyimpanan dokumen yang banyak digunakan pada konsep NoSQL.

Apabila kita menggunakan konsep relational database, umumnya kita akan mendapatkan response dalam bentuk records pada sebuah table. Record ini harus mempunyai field yang sama, serta panjang yang sama. Sementara itu, dengan menggunakan dokumen yang ter-encode dalam tipe XML ataupun yang lainnya, kita bisa mendapatkan sebuah data dengan field dan panjang record yang bervariasi.

Ilustrasi dari proses pengaksesan menggunakan OData dapat dilihat pada gambar di bawah ini :

Beberapa informasi tentang Windows Azure dan No SQL di atas saya dapatkan dari white paper mengenai Windows Azure dan NoSQL Database. Sumber :

1. NoSQL and the Windows Azure Platform oleh Andrew J. Brust

2. http://blogs.msdn.com/blogfiles/jnak/WindowsLiveWriter/SimpleTableStorageWalkthrough_DE36/image_thumb_2.png untuk ilustrasi gambar table storage

3. http://social.technet.microsoft.com/wiki/cfs-filesystemfile.ashx/__key/communityserver-wikis-components-files/00-00-00-00-05/2703.OData-SQL-Azure-Scenario.png untuk ilustrasi gambar OData

  1. Jakarta Cloud Computing Meetup 09.2016
  2. Big Data dengan Google Cloud
  3. Cloud Computing dan Big Data : Sebuah Kombinasi Ideal
  4. Keynote CEO Oracle mengenai Transformasi Cloud Computing
  5. Cloud Computing sebagai Skill yang Paling Dicari di Dunia Kerja

Penulis :

Seorang technology enthusiast yang saat ini bekerja sebagai mahasiswa pascasarjana di NUS Singapura. Dapat dihubungi via email ke enrico.budianto@cloudindonesia.or.id. Silakan mengunjungi http://enricobudianto.wordpress.com/ untuk melihat hasil-hasil tulisan yang pernah dibuat.

Komentar

Leave a Reply

Your email address will not be published. Required fields are marked *