{"id":23136,"date":"2024-12-15T02:08:48","date_gmt":"2024-12-14T19:08:48","guid":{"rendered":"https:\/\/stei.itb.ac.id\/?page_id=23136"},"modified":"2024-12-16T08:15:38","modified_gmt":"2024-12-16T01:15:38","slug":"agregasi-dan-partisi-berdasarkan-query-pada-nosql-abstract-model-noam","status":"publish","type":"page","link":"https:\/\/stei.itb.ac.id\/en\/prima\/agregasi-dan-partisi-berdasarkan-query-pada-nosql-abstract-model-noam\/","title":{"rendered":"Agregasi dan Partisi Berdasarkan Query Pada NoSQL Abstract Model (NOAM)"},"content":{"rendered":"<div class=\"wpb-content-wrapper\"><div class=\"fullwidth\" ><div class=\"vc_row wpb_row vc_row-fluid kepala vc_custom_1734236300248 vc_row-has-fill\"><div class=\"wpb_column vc_column_container vc_col-sm-12\"><div class=\"vc_column-inner\"><div class=\"wpb_wrapper\"><div class=\"container\" ><div class=\"vc_row wpb_row vc_inner vc_row-fluid\"><div class=\"wpb_column vc_column_container vc_col-sm-12\"><div class=\"vc_column-inner\"><div class=\"wpb_wrapper\"><div class=\"vc_btn3-container vc_btn3-inline vc_do_btn\" ><button class=\"vc_general vc_btn3 vc_btn3-size-lg vc_btn3-shape-rounded vc_btn3-style-modern vc_btn3-icon-left vc_btn3-color-white\" onclick=\"history.back()\"><i class=\"vc_btn3-icon fas fa-home\"><\/i> Kembali ke Beranda<\/button><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/div><div class=\"fullwidth\" ><div class=\"vc_row wpb_row vc_row-fluid vc_custom_1734170418007\"><div class=\"wpb_column vc_column_container vc_col-sm-3\"><div class=\"vc_column-inner\"><div class=\"wpb_wrapper\">\n\t<div class=\"wpb_text_column wpb_content_element\" >\n\t\t<div class=\"wpb_wrapper\">\n\t\t\t<p><strong>Fazat Nur Azizah<\/strong><br \/>\nSTE-ITB<\/p>\n\n\t\t<\/div>\n\t<\/div>\n<\/div><\/div><\/div><div class=\"wpb_column vc_column_container vc_col-sm-3\"><div class=\"vc_column-inner\"><div class=\"wpb_wrapper\">\n\t<div class=\"wpb_text_column wpb_content_element\" >\n\t\t<div class=\"wpb_wrapper\">\n\t\t\t<p><strong>NG Kyle<\/strong><br \/>\nSTEI ITB<\/p>\n\n\t\t<\/div>\n\t<\/div>\n<\/div><\/div><\/div><div class=\"wpb_column vc_column_container vc_col-sm-3\"><div class=\"vc_column-inner\"><div class=\"wpb_wrapper\"><\/div><\/div><\/div><div class=\"wpb_column vc_column_container vc_col-sm-3\"><div class=\"vc_column-inner\"><div class=\"wpb_wrapper\"><\/div><\/div><\/div><\/div><\/div><div class=\"fullwidth\" ><div class=\"vc_row wpb_row vc_row-fluid vc_custom_1734168902943\"><div class=\"wpb_column vc_column_container vc_col-sm-12\"><div class=\"vc_column-inner\"><div class=\"wpb_wrapper\">\n\t<div class=\"wpb_text_column wpb_content_element\" >\n\t\t<div class=\"wpb_wrapper\">\n\t\t\t<p><strong>Abstrak<\/strong><br \/>\nNoSQL Abstract Model (NOAM) adalah salah satu teknik pemodelan data untuk basis data NoSQL. Pemodelan data logis NoAM mempertimbangkan komonalitas basis data NoSQL berbasis agregat. Walaupun disebutkan dalam pemodelan NOAM, pola akses data seharusnya dipertimbangkan, belum terdapat prosedur yang jelas tentang bagaimana memanfaatkan pola akses data (query) dalam proses pemodelan. Pada penelitian ini, pola akses data dalam bentuk partisi dan agregasi berdasarkan query diterapkan dalam tahap pemodelan NOAM dengan memanfaatkan tiga artefak pemodelan UML Class Diagram, dokumen query, dan dokumen frekuensi sebagai model konseptual. Modifikasi terhadap metode desain agregat Chen dkk. digunakan sebagai prosedur pembentukan agregat. Algoritma partisi vertikal Navathe &amp; Ra digunakan sebagai metode partisi agregat. Eksperimen untuk melihat kinerja model data yang dihasilkan dilakukan terhadap basis data NoSQL berjenis key-value store dan document store. Hasil dari eksperimen menunjukkan kinerja yang baik pada operasi query dengan kekurangan pada operasi create\/update baik pada basis data key-value maupun document-store.<\/p>\n<p><strong>Kata kunci:<\/strong> basis data, pemodelan data, NoSQL, NOAM, UML class diagram<\/p>\n<p><strong>Pendahuluan<\/strong><br \/>\nNoSQL adalah sistem basis data yang menyimpan data dalam format selain relasional. Ciri khas basis data NoSQL yang membedakannya dari basis data relasional adalah sifatnya yang minim skema (schema-less) yang memberikan fleksibilitas kepada pengembang untuk mendefinisikan struktur basis data. Walaupun demikian, tidak berarti proses pemodelan data yang baik tidak diperlukan. Pemodelan data diperlukan selain untuk mendefinisikan struktur data yang diperlukan, juga untuk mengakomodasi kebutuhan pengembangan, pemeliharaan, dan operasional aplikasi yang memanfaatkan basis data.<\/p>\n<p>NoSQL Abstract Model dikembangkan oleh Atzeni dkk. (2020) sebagai teknik pemodelan data untuk basis data NoSQL memiliki tiga aktivitas dalam transformasi model konseptual menjadi model data pada target sistem basis data NoSQL, yaitu (1) pemodelan data konseptual dan desain agregasi; (2) representasi data NoAM dan proses partisi agregat, serta (3) implementasi yaitu transformasi menjadi model data kelompok basis data NoSQL target.<\/p>\n<p>Tujuan dari penelitian ini adalah mengembangkan proses pemodelan data NOAM dengan memanfaatkan pola akses data (query) untuk mendukung proses agregasi dan partisi. Sebagai pemodelan konseptual dimanfaatkan UML Class Diagram untuk mendefinisikan struktur dari data yang akan dimodelkan, ditambah dengan dokumen query dan dokumen frekuensi query.<\/p>\n<p><strong>Metodologi<\/strong><br \/>\nModel data NoAM didefinisikan sebagai kumpulan koleksi (collections) yang terdiri kumpulan blocks yang diidentifikasikan unik dengan sebuah key dan terdiri dari himpunan tidak kosong atas entry yang diidentifikasikan sebagai pasangan &lt;ek,ev&gt; dengan ek: entry key dan ev: entry value. Terdapat tiga jenis representasi model logis NoAM yaitu, (1) Entry per Aggregate Object (EAO), yaitu setiap block agregat direpresentasikan sebagai sebuah entry dengan ek kosong dan ev berupa nilai kompleks objek agregat; (2) Entry per Top-level Field (ETF), yaitu setiap agregat direpresentasikan sebagai kumpulan entry unik dengan key merupakan nama atribut data dan value merupakan data atribut yang mungkin kompleks; (3) Aggregate Partitioning, yaitu bentuk intermediat antara ETF dan EAO.<\/p>\n\n\t\t<\/div>\n\t<\/div>\n<\/div><\/div><\/div><\/div><\/div><div class=\"fullwidth\" ><div class=\"vc_row wpb_row vc_row-fluid vc_custom_1734169162466 vc_row-o-content-bottom vc_row-flex\"><div class=\"wpb_column vc_column_container vc_col-sm-12\"><div class=\"vc_column-inner\"><div class=\"wpb_wrapper\">\n\t<div  class=\"wpb_single_image wpb_content_element vc_align_center wpb_content_element\">\n\t\t\n\t\t<figure class=\"wpb_wrapper vc_figure\">\n\t\t\t<div class=\"vc_single_image-wrapper   vc_box_border_grey\"><img loading=\"lazy\" decoding=\"async\" width=\"491\" height=\"560\" src=\"https:\/\/stei.itb.ac.id\/wp-content\/uploads\/Metode-Pemodelan.jpg\" class=\"vc_single_image-img attachment-full\" alt=\"\" title=\"Metode Pemodelan\" \/><\/div><figcaption class=\"vc_figure-caption\">Gambar 1. Metode Pemodelan<\/figcaption>\n\t\t<\/figure>\n\t<\/div>\n<\/div><\/div><\/div><\/div><\/div><div class=\"fullwidth\" ><div class=\"vc_row wpb_row vc_row-fluid vc_custom_1734203050307\"><div class=\"wpb_column vc_column_container vc_col-sm-12\"><div class=\"vc_column-inner\"><div class=\"wpb_wrapper\">\n\t<div class=\"wpb_text_column wpb_content_element\" >\n\t\t<div class=\"wpb_wrapper\">\n\t\t\t<p>Penelitian ini mengembangkan dua aspek pada pemodelan data NOAM yang belum terdefinisi dengan baik, yaitu pemodelan agregasi pada tahap pemodelan konseptual serta aggregate portioning pada tahap pemodelan logis NoAM. Metode yang dikembangkan dalam penelitian ini dapat dilihat pada Gambar 1. Metode ini dibagi menjadi dua tahap, yaitu (1) pemodelan data konseptual serta desain model agregat dan (2) transformasi model agregat menjadi model logis NoAM. Agregasi model konseptual dilakukan dalam dua tahap, yaitu pengelompokan berdasarkan relasi dan pengelompokan berdasarkan query. Masing-masing tahapan ditujukan untuk agregasi kelas-kelas pada class diagram.<\/p>\n<p>Prosedur agregasi model konseptual dilakukan dalam dua tahap, yaitu pengelompokan berdasarkan relasi dan pengelompokan berdasarkan query. Masing-masing tahapan ditujukan untuk agregasi kelas-kelas pada class diagram.<\/p>\n<p><strong>Pengujian<\/strong><br \/>\nDua kelompok pengujian dilakukan, yaitu pengujian pemodelan dan pengujian performa. Pengujian pemodelan ditujukan menghasilkan skema ketiga model logis NoAM dari UML Class Diagram dan artefak-artefak lainnya. Pengujian performa ditujukan menghasilkan metrik berupa kecepatan setiap operasi read\/write pada basis data berdasarkan masing-masing skema yang dihasilkan dari pemodelan. Kelompok basis data tujuan yang digunakan adalah Document Store, yaitu MongoDB, dan Key-Value Store, yaitu RiakKV. Pengujian performa dibandingkan dengan pekerjaan sebelumnya oleh Valiandi dan Aizah (2022) dan metode Shin dkk (2017). Hasil pengujian pada key-value database untuk operasi read dan update dapat dilihat pada Gambar 2 dan Gambar 3.<\/p>\n<p>Hasil pengujian menunjukkan bahwa operasi query read ketiga model NoAM memiliki performa yang lebih baik dari model pembanding. Hal tersebut menunjukkan hasil dari agregasi kelas yang mengurangi keperluan banyaknya query read yang perlu dilakukan untuk mendapatkan seluruh informasi yang diperlukan. Berbanding terbalik dengan model pembanding yang berbentuk lebih ternormalisasi. Namun, dengan alasan yang sama, timbul kekurangan pada update\/create yang perlu dilakukan pada beberapa koleksi dengan sifat model agregat dengan duplikasi data.<\/p>\n\n\t\t<\/div>\n\t<\/div>\n<\/div><\/div><\/div><\/div><\/div><div class=\"fullwidth\" ><div class=\"vc_row wpb_row vc_row-fluid vc_custom_1734169162466 vc_row-o-content-bottom vc_row-flex\"><div class=\"wpb_column vc_column_container vc_col-sm-6\"><div class=\"vc_column-inner\"><div class=\"wpb_wrapper\">\n\t<div  class=\"wpb_single_image wpb_content_element vc_align_center wpb_content_element\">\n\t\t\n\t\t<figure class=\"wpb_wrapper vc_figure\">\n\t\t\t<div class=\"vc_single_image-wrapper   vc_box_border_grey\"><img loading=\"lazy\" decoding=\"async\" width=\"621\" height=\"325\" src=\"https:\/\/stei.itb.ac.id\/wp-content\/uploads\/Performa-Query-Read-Key-Value.jpg\" class=\"vc_single_image-img attachment-full\" alt=\"\" title=\"Performa Query Read Key-Value\" \/><\/div><figcaption class=\"vc_figure-caption\">Gambar 2. Performa Query Read Key-Value<\/figcaption>\n\t\t<\/figure>\n\t<\/div>\n<\/div><\/div><\/div><div class=\"wpb_column vc_column_container vc_col-sm-6\"><div class=\"vc_column-inner\"><div class=\"wpb_wrapper\">\n\t<div  class=\"wpb_single_image wpb_content_element vc_align_center wpb_content_element\">\n\t\t\n\t\t<figure class=\"wpb_wrapper vc_figure\">\n\t\t\t<div class=\"vc_single_image-wrapper   vc_box_border_grey\"><img loading=\"lazy\" decoding=\"async\" width=\"632\" height=\"333\" src=\"https:\/\/stei.itb.ac.id\/wp-content\/uploads\/Performa-Update-Create-Key-Value.jpg\" class=\"vc_single_image-img attachment-full\" alt=\"\" title=\"Performa Update-Create Key-Value\" \/><\/div><figcaption class=\"vc_figure-caption\">Gambar 3. Performa Update\/Create Key-Value<\/figcaption>\n\t\t<\/figure>\n\t<\/div>\n<\/div><\/div><\/div><\/div><\/div><div class=\"fullwidth\" ><div class=\"vc_row wpb_row vc_row-fluid vc_custom_1734203050307\"><div class=\"wpb_column vc_column_container vc_col-sm-12\"><div class=\"vc_column-inner\"><div class=\"wpb_wrapper\">\n\t<div class=\"wpb_text_column wpb_content_element\" >\n\t\t<div class=\"wpb_wrapper\">\n\t\t\t<p><strong>Kesimpulan<\/strong><br \/>\nKetiga model logis NoAM hasil metode yang dikembangkan memiliki performa query read dan kemampuan query read yang lebih baik dari model pembanding. Model logis EAO memiliki performa query terbaik di antara ketiga model NoAM. Model aggregate partitioning memiliki performa query read menyerupai EAO untuk basis data key-value dengan data yang diproses relatif lebih kecil. Aggregate Partitioning kurang cocok pada model data berbasis dokumen.<\/p>\n\n\t\t<\/div>\n\t<\/div>\n<\/div><\/div><\/div><\/div><\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"Kembali ke Beranda Fazat Nur Azizah STE-ITB NG Kyle STEI-ITB Abstrak NoSQL Abstract Model (NOAM) adalah salah satu teknik pemodelan data untuk basis data NoSQL. Pemodelan data logis NoAM mempertimbangkan [...]","protected":false},"author":1,"featured_media":0,"parent":22933,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-23136","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/stei.itb.ac.id\/en\/wp-json\/wp\/v2\/pages\/23136","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/stei.itb.ac.id\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/stei.itb.ac.id\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/stei.itb.ac.id\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/stei.itb.ac.id\/en\/wp-json\/wp\/v2\/comments?post=23136"}],"version-history":[{"count":2,"href":"https:\/\/stei.itb.ac.id\/en\/wp-json\/wp\/v2\/pages\/23136\/revisions"}],"predecessor-version":[{"id":23571,"href":"https:\/\/stei.itb.ac.id\/en\/wp-json\/wp\/v2\/pages\/23136\/revisions\/23571"}],"up":[{"embeddable":true,"href":"https:\/\/stei.itb.ac.id\/en\/wp-json\/wp\/v2\/pages\/22933"}],"wp:attachment":[{"href":"https:\/\/stei.itb.ac.id\/en\/wp-json\/wp\/v2\/media?parent=23136"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}