Geleneksel yöntemlerle işlenemeyen, saklanamayan devasa büyüklükteki bilgilerin oluşturduğu veri yığınına Big Data (Büyük Veri) denmektedir. Gün geçtikçe daha popüler hala gelen bu kavram, beraberinde bu verileri işleyebilecek araçların gereksinimini de ortaya çıkarmıştır. Bu büyük veri yığınını analizi ve saklanması için kullanılan araçlardan biri de Elasticsearchtür. Elasticsearch Java ile geliştirilmiş, açık kaynak kodlu lucene tabanlı bir içerik analizi ve arama motorudur. Elasticsearch yapısı itibariyle dağıtık mimaride çalışabilen bir yazılımdır. Verileri aynı index içinde farklı shardlarda, aynı disk içinde farklı klasörlerde, aynı bilgisayar içerisinde farklı disklerde, aynı ağ içerisinde farklı sunucularda barındırabilir. Tüm bu seçenekler kullanıcıların ihtiyaçlarına göre şekillendirilebilir. Elasticsearch düğümü çalıştığı anda içinde bulunduğu kümede tüm indexler için aktif bir rol üstlenir. Diğer düğümlerle haberleşir ve yük dağılımı yapılmaya başlanır. Bu yük dağılımı normal şartlarda, düğüm üzerine düşen yükü parçalayarak performans artırmayı hedeflemektedir. Ancak elasticsearch tarafından otomatik olarak yapılan bu yük dağılımı her zaman performans artırıcı etkiler oluşturmayabilir. Yapılan bu çalışmada geliştirilen yazılım ile Elasticsearch düğümleri üzerindeki yük takip edilebilmekte ve manuel yapılandırılmasına olanak sağlayabilmektedir. Kullanıcıların düğüm kaynaklarının kullanım oranlarını görebileceği, indexlere ait shardları manuel dağıtabileceği, otomatik shard tahsisini açıp kapatabileceği ve tüm bu yapılandırmaların verimliliğini test edebileceği bir yazılım geliştirilmiştir.
Huge amount of data stack which cannot be stored nor processed by traditional methods is called Big Data. This term, which is becoming more and more popular, led to the necessity of tools to process this data. One of the tools which is used for analysis and storage of this huge among of data is Elasticsearch. Elasticsearch is a content analysis and search server based on Lucene and developed in Java as open source. It is a software which can operate as distributed architectural structure. It also can store data in different shards in the same index, in different files in the same disk, in different disks in the same computer, and in different servers in the same network. All these options are shaped by the needs of users. As soon as Elasticsearch node starts working, it takes an active role in all indexes of clusters. It also connects with other nodes and the share of load takes place. This load distribution normally aims to increase performance by decreasing load in each node. However , this load distribution done automatically by Elasticsearch might not always create effects which increase performance. With the software developed in this study, load in each Elasticsearch nodes are tracked and manual configuration is enabled. This software enables users to observe node activity rates, to distribute shards in indexes manually, to switch on and off shard automatically, to index all these configuration productivity, and to test as inquiry-based.
Birincil Dil | Türkçe |
---|---|
Konular | Mühendislik |
Diğer ID | JA46ZK46AV |
Bölüm | Makaleler |
Yazarlar | |
Yayımlanma Tarihi | 1 Haziran 2016 |
Yayımlandığı Sayı | Yıl 2016 Cilt: 4 Sayı: 2 |