Security and performance comparison of NoSQL database systems
- Global styles
- Apa
- Bibtex
- Chicago Fullnote
- Help
Abstract
Günümüzde giderek büyüyen verilerin ortaya çıkardığı ihtiyaçlara cevap vermek için çeşitli temel teknolojiler ve platformlar geliştirilmektedir. NoSQL bu teknolojilerden birisidir. NoSQL veri tabanları büyük verilerin ortaya çıkmasından önce gelişmeye başlamış olsa da büyük verilerin saklanmasına ve işlenmesine ihtiyaç duyulana kadar NoSQL veri tabanlarının benimsenmesi gerçekleşmemiştir.Bununla birlikte, NoSQL veri tabanlarının her biri farklı mimari tasarıma, sorgulama diline ve ölçeklenebilirlik, sıkıştırma, güvenlik, kümelenme için kendi çözümlerine sahiptir ve bu da hangi NoSQL veri tabanının mevcut ihtiyaca bir çözüm sunacağına karar vermeyi zorlaştırmaktadır. Bu nedenle, NoSQL veri tabanlarını sorgulama hızı, veri güvenliği ve ölçeklenebilir ortamlarda kullanılmaya hazır olma gibi çeşitli faktörlerle test etmeye yönelik çalışmalar yapılmalıdır.Bu çalışmada iki aşamalı bir araştırma yapılmıştır: Birinci aşamada, iki farklı NoSQL veri tabanının, MongoDB (3.6.3) ve Cassandra'nın (3.11.1), Yahoo Cloud Hizmet Ölçümü (YCSB-0.12.0 sürümü) kullanarak performansını tek bir düğümde ve çok düğümlü (küme) konfigürasyonlarda inceleyerek karşılaştırılmıştır. Bu aşamada, farklı iş yükleri için bir test ortamı kurulmuş ve çalışmada kullanılan her bir veri tabanı yönetim sisteminin yanıtları her iş yükü için incelenmiştir. Bu çalışma, özellikle karar vericilerin, hangi veri tabanının gereksinimlerine göre daha iyi olduğunu belirlemesine yardımcı olacaktır. Bu çalışmanın ikinci katmanı, her iki veri tabanının güvenliğini araştırmaktır. İlk adım, her iki veri tabanının literatürdeki on seçilmiş özelliğe göre güvenlik özelliklerinin karşılaştırmalı bir çalışmasıdır. Güvenlik incelememizin ikinci adımı, veri şifreleme yükünün karşılaştırılmasıdır. Veri şifreleme yükü, veri tabanı motorunun tüm gelen veri akışlarını şifrelemek için harcadığı süreyi ve sorguları yanıtlamak için verilerin şifresini çözmek için harcanan toplam süredir. Bu çalışmanın sonuçları, her bir sistemin performansının, veri saklama mekanizmalarındaki farklılıklar nedeniyle farklı olduğunu göstermiştir. Sonuçlar, MongoDB'nin performansının tek düğümlü bir testte Cassandra'dan daha iyi olduğunu göstermiştir. Bununla birlikte, çok düğümlü testte Cassandra'nın özellikle büyük kayıtlarda daha iyi performans gösterdiği ortaya çıkmıştır. Güvenlik karşılaştırması araştırması, her iki veri tabanının da önceki çalışmalarda ortaya çıkan sonuçlara göre önemli ölçüde iyileştiğini göstermiştir. Ancak Cassandra, daha iyi güvenlik özelliklerine sahip olarak öne çıkmaktadır. Son olarak, MongoDB şifreleme performansı Cassandra'dan yaklaşık 2x ve 2,5 kat daha hızlı olduğu ortaya çıkmıştır, bu da şifrelemenin bir gereklilik olduğu ortamlarda MongoDB'nin kullanılmasının daha uygun olduğunu göstermektedir. The advent of Big Data has led the development of several key technologies and platforms to answer the ever-growing nowadays data. NoSQL was one of these technologies. Although NoSQL databases began to develop before the appearance of big data, the adoption of NoSQL databases did not occur until big data created the need. However, many versions of NoSQL databases appeared each with different architectural design, its query language, and its own set of solutions for scalability, compression, security, clustering, which render it to become difficult to decide which NoSQL database provides the solution to a given problem or issue. Therefore, studies should be dedicated to testing these databases concerning several factors such as query processing speed, security of data, and its readiness to be used in the scalable environment. In this study, we propose an investigation in two-folds: first, examining the performance of two NoSQL databases, MongoDB (3.6.3) and Cassandra (3.11.1) in single node and multi-node (cluster) configurations using the recent version of Yahoo Cloud Serving Benchmark (YCSB-0.12.0). A testing environment is set up for each workload, and the responses for each database management system used in the study are examined for each workload. This study will help IT decision makers to determine which database is better according to its deployment requirements. The second fold of this study is to investigate the security of both databases. The first step is a comparative study of both databases' security features according to ten selected features from the literature. The second step of our security investigation is data encryption overhead. Overhead is the time spent by the database engine to encrypt all incoming data streams plus the time spent to decrypt the data to answer queries. The results of this study have shown that the performance of each system differs due to the differences in its respective data storing mechanisms. The results have also revealed that the performance of MongoDB is better than Cassandra in a single node test, whereas in proposed multi-node test Cassandra performed better in one workload and took the lead in two other workloads when testing bigger record size. Security comparative investigation has shown that both databases have improved significantly concerning previous studies. However, Cassandra took the lead as it has better supported and the implementation of the selected security features is presented in this study. Lastly, MongoDB encryption performance regarding runtime and throughput was between nearly 2x and 2.5x faster than Cassandra which makes it more suitable to be used in the environments when encryption is a requirement.
Collections