M2M SİSTEMLERDE SQL VEYA NOSQL KULLANIMI

Slides:



Advertisements
Benzer bir sunumlar
Maliye Bakanlığı Strateji Geliştirme Başkanlığı Operasyonel Planlama Stratejik Yönetim Dairesi.
Advertisements

BULUT BİLİŞİM GÜVENLİK VE KULLANIM STANDARDI M. Raşit ÖZDAŞ Huzeyfe ÖNAL Zümrüt MÜFTÜOĞLU Ekim 2013.
Veri Tabanı Yönetim Sistemleri Hafta 1. 2 Temel Kavramlar Veri Olguların, kavramların, veya talimatların, insan tarafından veya otomatik yolla iletişim,
SUNU HAZIRLAMA PROGRAMI: powerpoint
BULUT BİLİŞİM M. KÜRŞAT YILDIRIM İÇERİK  BULUT BİLİŞİM NEDİR?  BULUT BİLİŞİM ÖZELLİKLERİ  BULUT BİLİŞİM MİMARİ YAPISI  BULUT BİLİŞİM.
WhatsApp,Instagram,Skype ile Kurulan İletişim Hazırlayan İlker Kireççi
ROBOT.
Girişimcilik Öğr.Gör.Seda AKIN GÜRDAL. Ders Akışı İşletmenin Amaçları İşletme Çevre İlişkisi.
SUNUCU İŞLETİM SİSTEMİ Öğr. Gör. Ümit ATİLA.  1980’li yıllardan günümüze geldikçe, bilgi toplumuna yönelişte teknolojik rota, telekomünikasyon ve iletişim.
Zihinsel engellilerin sınıflandırılması
Arş.Gör.İrfan DOĞAN.  Bugün otizm tedavisinde en önemli yaklaşım, özel eğitim ve davranış tedavileridir.  Tedavi planı kişiden kişiye değişmektedir,
AİLELERLE İŞBİRLİĞİ.
ERASMUS+ GENÇL İ K KA2 İ L SOSYAL ETÜT VE PROJE MÜDÜRLÜ Ğ Ü.
TLS/SSL BILGI İŞLEM ORGANIZASYONU BERKE ÖMEROĞLU
İÇİNDEKİLER GRID COMPUTING NEDİR? NASIL ÇALIŞIR? GRID COMPUTING YAPISI
Yazılım Mühendisliği1[ 3.hft ]. Yazılım Mühendisliği2 Yazılım İ sterlerinin Çözümlemesi Yazılım Yaşam Çevrimi “ Yazılım Yaşam çevrimin herhangi bir yazılım.
ÇOK BOYUTLU SİNYAL İŞLEME
KYS KALİTE YÖNETİM SİSTEMİ. 2 İçerik Kalite Nedir? ISO 9001:2000 Hakkında Genel Bilgi Kalite Politikamız Kalite Hedefimiz KYS nin Şirketimizde.
Bilgi İşlem Departman Bütçelenmesi-1 Günümüzde Toplam Kalite kavramı yaygın olarak bahsedilmekte ve şirketler tarafından uygulanılmasına çalışılmaktadır.
HARİCİ VERİ DEPOLAMA SİSTEMLERİ. HARİCİ VERİ DEPOLAMA NEDİR?  Harici Veri Depolama: Verilerimizi saklamak ve gelecekte kullanmak amacıyla kullanılan.
NETWORK YÖNETIMI Ş. Bü ş ra Güngör NETWORK YÖNETIMI NEDIR? Network, sunucu, yazıcı, bilgisayar ve modem gibi veri ileti ş im araçlarının güncel.
E-YEDEKLEME.
E- İş.
VİRAL PAZARLAMA Emircan Turgaz
Sanayi ve ticaret limiteD şirketi
GELECEKTEKİ DÜNYAMIZ.
İnternet'e Bağlanmak İçin Neler Gereklidir?
Bilgiye Ulaşma ve Biçimlendirme
BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ
Öğr. Gör. Dr. İnanç GÜNEY Adana MYO
Erken çocukluk döneminde fen ve matematik kavramlarının gelişimi
TAM SAYILAR.
VPN (VİRTUAL PRİVATE NETWORK )
BARALAR.
E-posta Forum Sohbet Sesli Görüntülü Konferans
Tayfun Sazak, Yalçın ALBAYRAK
MUHASEBE YEDEKLEME.
HAZIRLAYAN SEDA KALKANDELEN
Güvenli İnternet Kullanımı
İnternet ve WEB Tanımları Html Temel Etiketleri
Ağ İşletim Sistemleri Öğr. Gör. Arif DAŞ.
Bilgi ve İletişim Teknolojileri
BULUT BİLİŞİM ( CLOUD COMPUTING)
Öğretim Görevlisi Emel ALTINTAŞ
AĞ DONANIMLARI BARIŞ BAYRAM :
STORAGE BÜŞRA KARADENİZ
OZAN TABAKOĞLU
Kırınım, Girişim ve Müzik
E-posta Forum Sohbet Sesli Görüntülü Konferans
İŞLETİM SİSTEMLERİ Bilişim Teknolojileri Araçlarında
MATEMATİK DERSİ ÖĞRETİM PROGRAMI
Bilişim Teknolojileri ve Yazılım Dersi
Bölüm 4: Tarımsal ürünlerin pazarlama fonksiyonları
Bu konudaki her şeyi okuyun Microsoft SharePoint Haberler
Akıllı kart teknolojisini Dünya’da ve Türkiye’de kurumsal harcamalar ve maaş dışı ödenekler alanında kullanan ilk şirket olan Multinet, bu kez okulları.
ÜNİVERSİTEDE YABANCI DİL ÖĞRETİMİNDE İNTERNET KULLANIMINA İLİŞKİN ÖĞRENCİ GÖRÜŞLERİ Mehmet AKSÜT Nihat ÇAKIN 
Ex-Go (Extreme Government)
Gurbet Güntürk Evsel BY423 Güz, 2015
Bilgi Teknolojileri Hafta 01
Dünya Üzerine Yayılmış Çok-Kullanıcılı Çevrim-İçi Eğitsel
NİŞANTAŞI ÜNİVERSİTESİ
TÜRKİYE BİLİMSEL VE TEKNİK ARAŞTIRMA KURUMU
AĞ TEMELLERİ (TCP/IP SUNUMU)
Bilgehan Arslan, Süreyya Gülnar
Sınıf Öğretmenlerinin Eğitsel Amaçlı İnternet Kullanım Öz Yeterlikleri
Hastane Bilgi Sistemlerinin Teknik Yönleri
Bilimsel Araştırma Yöntemleri
Bilişim Güvenliği: Güvenli Hesaplama
İŞ ZEKASI UYGULAMALARI İLE ÜST YÖNETİM GRAFİK RAPORLAMA
Sunum transkripti:

M2M SİSTEMLERDE SQL VEYA NOSQL KULLANIMI 2015 Hazırlayan: Arş. Gör. Saadin OYUCU - Yrd. Doç. Dr. Hüseyin Polat E-Posta: saadinoyucu@gazi.edu.tr – polath@gazi.edu.tr

Makinalar Arası İletişim (M2M:Machine to machine) Kısaca farklı cihazlar arasında iki yönlü veri iletişimi ifade etmektedir. Belirli bir cihaz (algılayıcı, sayaç, akıllı telefon vb.) sayesinde bir olayı (sıcaklık, nem, ivme vb.) ağ üzerinden (kablolu, kablosuz yada hibrid) merkezi bir alana taşıyıp belirlenen bu olayı anlamlı bilgiye dönüştürme işlemidir. BTK, “Makineler Arası İletişim(M2M)”,Ekim,2013

Nesnelerin İnterneti (IOT) M2M sistemlerin gelişmesi yeni proje ve teknolojilere öncülük etmektedir. Bunların başında Nesnelerin İnterneti (IOT: Internet of Things) kavramı gelmektedir. Nesnelerin interneti, fiziksel dünya ve dijital dünyanın entegrasyonunu kolaylaştırmaktadır. En önemli IOT uygulama alanları altyapı inşaatı, kamu güvenliği, çevre koruma, modern tarım, akıllı sanayi, kentsel yönetim, iş hizmet ve diğer alanları kapsamaktadır . L. Atzori, A. Iera and G. Morabito, "The Internet of Things: A Survey", Computer Networks, Vol. 54, No. 15, pp. 2787-2805, Oct. 2010

Microsoft’ a göre ise 2020 yılı itibariyle Nesnelerin İnterneti’nin parçası olması öngörülen nesnelerin sayısı 30 milyar civarındadır. IDC, “Worldwide Internet of Things (IoT) 2013- 2020 Forecast: Billions of Things trillions Of Dollars”, Belge No. 243661, Ekim 2013

Basit M2M Mimarisi Birinci katmanda M2M sistemi için veri sağlayan algılayıcılar bulunmaktadır. Bu algılayıcılar M2M sistemi için gerekli olan verileri aktarmaktadırlar. Örneğin ısı, nem, gaz algılayıcıları ile kamera, akıllı telefonlar vb. cihazlar bu adımda verilecek örneklerden birkaçıdır. Veriler sisteme aktarılırken ikinci katman olan İletişim Ağı yardımıyla istenilen alana aktarım gerçekleşir. Bu alanlar insan etkileşimin olduğu sistemler ya da doğrudan haberleşme yeteneğine sahip makineler olabilmektedir İletişim Ağı üzerinden veriler anlamlı birer bilgi olarak son kullanıcıya sunulmalıdır. Bu noktada ise üçüncü katman olan Uygulama Katmanı devreye girmektedir. Burada kullanıcılar verileri incelemekte, analiz etmekte ve gerektiğinde M2M sistemine komut verebilmektedir.

M2M Mimari Standartları Avrupa Telekomünikasyon Standartları Enstitüsü (ETSI: European Telecommunications Standards Institute) http://www.etsi.org/technologies-clusters/technologies/m2m

oneM2M Standartları Horizontal (Ortak Katmana dayalı) (vertical): IP Applications share common infrastructure, environments and network elements (vertical): 1 Application, 1 NW, 1 (or few) type of Device Business Application #1 Business Application #2 Business Application #n Business Application Common Application Infrastructure/Service layer Communication Network (mobile, fixed..) Communication Network 1 Communication Network 2 Local NW IP Gateway Gateway Local NW Device Device Device Device Device ONEM2M SERVICE LAYER PLATFORM – INITIAL RELEASE

oneM2M Standartları Kullanım Örneği oneM2M-TR-0001-UseCase-V0_0_5 2014

ÖRNEK: Kendi yetki seviyesine göre sağlık personeline bildirimde bulunan ve uzaktan sensör cihazları izleme ve denetleme yeteneğine sahip bir e-Sağlık hizmeti uygulaması. oneM2M-TR-0001-UseCase-V0_0_5 2014

ÖRNEK: Araç / Bisiklet Paylaşım Uygulaması oneM2M-TR-0001-UseCase-V0_0_5 2014

Türkiye’de M2M Uygulama Alanları (Kaynak: BTK 2013)

Algılayıcı Verileri M2M sistemde algılayıcıdan gelen verilerin boyutu ve türü kullanılan algılayıcıya göre değişmektedir. Örneğin basınç ölçümü yapan bir algılayıcıdan gelen veri ile sıcaklık ölçümü yapan bir algılayıcıdan gelen veri birbirinden farklıdır. M2M uygulaması hangi özel alanda gerçekleştiriliyor ise o alana uygun algılayıcılar kullanmak gerekir. Veriler uygun şekilde alınır ve veri tabanına kaydedilir.

Çeşitli Algılayıcılar

M2M sistemlerinde veriler düzenli olarak veri tabanına kaydedilirken yazma işleminde farklı veri tabanlarında, farklı dalgalanmalar gözlenmektedir. Okuma işlemi sırsında ise birden fazla kullanıcı, birden farklı platformda verileri analiz etmek için veri tabanından istekte bulunabilir. Bu işlem sırasında Şekil 1’de görüldüğü gibi veri tabanına aşırı yüklenme olabilmektedir. Jan Sipke V., Bram W., Robert J. M., “Sensor Data Storage Performance: SQL or NoSQL, Physical or Virtual”, Cloud Computing (CLOUD), 2012 IEEE 5th International Conference on, 24-29 June (2012)

SQL Sorgu Dili Veri tabanı uygulamaları için kullanılan en yaygın sorgu dilidir. IBM, ilişkisel veri tabanı yönetim sistemi geliştirmek amacıyla System/R adlı bir proje başlatarak bu sistem için Structured English Query Language (SEQUEL) adında bir sorgu dili geliştirilmeye başlamıştır. 1979’ da tamamlanan bu proje sırasında geliştirilen dilin adı Structured Query Language (SQL) olarak değiştirilmiştir. System/R projesini izleyen bir grup mühendis, ilişkisel veri tabanındaki potansiyeli görmüş ve Relational Software Inc. Adında bir şirket kurmuşlardır. 1979’da ORACLE adını verdikleri ilk ticari ilişkisel veri tabanı yönetim sistemini geliştirmişler ve SQL’i bu sistemde sorgu dili olarak kullanmışlardır. Donald D. C., Morton M. A., Michael W. B., and others., “A History and Evaluation of System R” IBM Research Laboratory San Jose, California, Oct. (1981)

SQL Veri Tabanı Temel Özellikleri İlişkisel veri tabanı, önceden tanımlanmış ve kategorize edilmiş tablolar içerisine veri yerleştirme biçimidir. Her tablo sütunları bir veya daha fazla veri kategorisi içerir. Her satır, sütunlara göre belirlenen kategoriler içinde eşsiz bir veri örneğini içerir. Kullanıcı veri tabanı tablosunun yapısını bilmeden veri tabanındaki veriye erişebilirsiniz.

Sınırlılıklar SQL veri tabanı sınırlılıklarından ölçeklenebilirlik ve karmaşıklık aşağıda açıklanmaya çalışılmıştır. Ölçeklenebilirlik: İlişkisel veri tabanında ölçeklenebilirlik çok güçlü ve pahalı sunucular ile gerçekleştirilebilir. Tek bir yerden depo edilmeli prensibine dayanan bu veri tabanı birden fazla yerdeki kaynakların birleştirilmesi oldukça zordur. Karmaşıklık: SQL sunucu verilerini tablolar içerisinde saklar bu durum farklı boyutta verilerin girilmesinde zorluklar ortaya çıkarır.

NoSQL NoSQL veri tabanı kavramı, yıllardır bilişim dünyasında kullanılan ilişkisel veri tabanı sistemlerine alternatif olarak çıkmıştır. İnternet ortamında gün geçtikçe büyüyen verileri depolayabilmek ve yüksek erişilebilirliğin yanında yatay ölçeklenebilen sistemlere verilen genel bir isim olarak günümüzde anılmaktadır. Google’ın BigTable ve Amazon’un Dynamo teknolojisinde kullandığı ilişkisel olmayan veri tabanındaki başarısı ve aynı zamanda NoSQL veri tabanlarının ölçeklenebilirliği, hızı, erişim kolaylığı, maliyeti vb. gibi kavramlarda sağladığı üstünlük NoSQL veri tabanlarının popülaritesini arttırmıştır.

NoSQL veri tabanlarının belge odaklı olması ile farklı teknolojiler bir arada kullanılabilmektedir. Bir NoSQL veri tabanı XML,TXT, JSON veya BSON dosya yapılarını destekleyebilir. Veriler belirtilen bu dosya serileri halinde bulunmaktadır.

NoSQL Sistemlerinin Çeşitleri ve Farkları Günümüzde farklı teknolojilerde bulunan NoSQL veri tabanlarının SQL gibi standartları olmadığı için kendi aralarında da çeşitli farklılıklar göstermektedirler. HBase, Cassandra, Redis, MongoDB, Voldemort, CouchDB, Dynomite, Hypertable günümüzde kullanılan NoSQL veri tabanlarıdır.

NoSQL sistemlerini genel olarak veri modeline göre üç grupta toplamak mümkündür. Döküman Tabanlı: Bu sistemlerde bir kayıt döküman olarak isimlendirilir. Dökümanlar genelde JSON veya XML formatında saklanır. Bu dökümanların içerisinde sınırsız alan oluşturulabilir. MongoDB, CouchDB, HBase, Cassandra ve Amazon SimpleDB bunlara örnektir. Anahtar / Değer Tabanlı: Bu sistemlerde anahtara karşılık gelen tek bir bilgi bulunur. Yani kolon kavramı yoktur. AzureTable Storage, MemcacheDB ve BerkeleyDB bunlara örnektir. Grafik Tabanlı: Diğerlerinden farklı olarak verilerin arasındaki ilişkiyi de tutan, Graph theory modelindeki sistemlerdir. Neo4J, FlockDB bunlara örnektir. “NoSQL Nedir” , http://devveri.com/nosql-nedir(Erişim Tarihi: 03.12.2014)

SQL ve NoSQL İşlem Güvenirliği: İşlem güvenirliği ilişkisel veri tabanlarında oldukça yüksek olmasına rağmen NoSQL veri tabanı sistemlerinde oldukça düşüktür. Bunun nedeni ise ilişkisel veri tabanı sistemlerinin ACID (Atomicity– Consistency–Isolation-Durability) işlemlerini desteklemesidir. Atomicity : İşlemin tamamlanması ya da iptal olması. Consistency : Transaction ın bir durumdan diğerine başarı ile geçerek koynulan transaction kurallarının tamamını başarılı olarak gerçekleştirmesi (Commit) veya herhangi bir adımı gerçekleştiremediği durumda tüm transaction işleminin iptal etmesi.(Roll Back) Isolation : Ayrım, herhangi bir transaction tüm adımları tamamlanana kadar diğer herhangi bir transaction tarafından yapılmış olan işlemler görünmez. Durability : Sağlamlık, onaylanan commit edilen bir transaction sonucunda veriler harddisklere yazılır ve artık bundan sonra oluşabilecek sistem hatalarından korunmuş olur.

Veri Modeli: SQL veri tabanı sistemleri verileri tablo yapılarında saklar ve SQL sorgu dili ile bu verilere erişimi sağlamaktadır. SQL veri tabanlarında aynı anda birden fazla tablo üzerinde işlem yapılabilir ve kolon sayıları arttırılabilir. Veri tabanını büyütmek amacıyla ise dikey ölçeklenebilirlik sağlanırken yatay ölçeklenebilirlik kısıtlıdır. NoSQL veri tabanı sistemlerinde ise yatay ölçeklenebilirliği hat safhada kullanıcıya sunarken veriler genellikle anahtar/değer tabanlı olarak kolon kavramı olmadan saklanır.

Ölçeklenebilirlik: Ölçeklenebilirlik NoSQL kavramının çıkmasında önemli ölçüde paya sahiptir. İlişkisel veri tabanlarında büyüme dikey olarak sağlanırken, büyük verilerin gereksinim duyduğu ölçüye ulaşmak için donanım gereksinimi duyulur ve bu gereksinim oldukça pahalıdır. NoSQL ise yatay olarak ölçeklenebilirlik sunmakta ve büyük verilerin saklanmasını kolaylaştırdığı gibi maliyetini de azaltmaktadır. Karmaşıklık: İlişkisel veri tabanlarında verilerin tablolarda tutulması ve bir tablonun birden fazla tablo ile ilişkisinin olması karmaşıklığı beraberinde getirmektedir. Özellikle yapısal olmayan verilerde karmaşıklık daha da artmaktadır. Belge tabanlı NoSQL veri tabanlarında ise bu durum farklıdır. Farklı belgelerde saklanan veriler birbirlerinden etkilenmemektedirler.

Hata Kurtarma: Veri tabanında oluşabilecek problemler kilitlenme ve verilerde hasara yol açabilir. İlişkisel veri tabanı sistemleri özellikle log yönetimi ile veri tabanını izleme ve hata kontrolü sağlamada oldukça başarılıdır. NoSQL veri tabanları ise farklı teknolojilerde olduğundan her veri tabanı bu duruma farklı bir çözüm bulmaya çalışmıştır. Örneğin MongoDB kazalardan kaçınmak için yedekleme mekanizmasına sahiptir. Güvenlik: Günümüzde yaygın olarak kullanılan ilişkisel veri tabanları üzerine yıllardır güvenlik çalışmaları yapılmış ve bu çalışmalar meyvesini vermiştir. Basit olarak SQL Injection veya Cross Site Scripting gibi işlemlere karşı önlemler alınmaya çalışılmıştır fakat NoSQL performans bakımından ön plana çıktığından güvenlik üzerine çalışmalar geri planda kalmıştır. Bu nedenden dolayı veri tabanı seçiminde güvenlik kısmının iyice araştırılması gerekmektedir.

Datastax firmasının sunduğu bir uygulama için neden NoSQL veri tabanının seçilmesi gerektiği aşağıdaki özellikleri vurgulanarak belirtilmiştir[10]. Büyük verinin var olması. Geliştirilen uygulamalar için sürekli kullanılabilir verilerin olması. Platformdan bağımsız sistemlerin oluşturulma isteği. Modern işlem desteğine olan ihtiyaç. Daha esnek bir veri modelinin gerekliliği. Daha iyi bir mimari isteği.

SQL ve NoSQL Sorgu Örnekleri db.sensor.find({”create_date”: ”2014-12-21”}) // 21.12.2014 tarihinde sisteme yazılmış olan sensor bilgilerini listeler. SELECT ADI, SICAKLIK, SAAT FROM SENSOR WHERE ALGILAYICI_NO = 10; // 10 numaralı algılayıcı için ad, sıcaklık ve saat” bilgilerinin bulunmak istendiği kolayca anlaşılmaktadır.

M2M Sistemlerinde NoSQL İnternet ortamındaki verilerin gün geçtikçe büyümesinin nedenlerinden biri de Nesnelerin İnterneti ve M2M kavramlarıdır. 2020 yılı itibariyle Nesnelerin İnterneti’nin parçası olması öngörülen nesnelerin(otonom) sayısı 30 milyar civarındadır[12]. Bu sistemler haberleşmeyi algılayıcılar sayesinde yaptıkları gibi anlık olarak konum, hareket, sıcaklık, basınç vb. değerleri hem birbiri ile paylaşırken hem de depolamaktadırlar. Bu kadar büyük boyutlara ulaşan bir veri yapısını işlemek saklamak oldukça maliyetli ve zordur. İşte tamda bu noktada yeni teknolojileri kullanarak proje geliştirmek oldukça önemlidir.

Algılayıcı verileri, veri tabanına yazım sırasında belirli aralıklarla veri tabanı yoğunluk yaşar. Aynı zamanda veriler veri tabanından okuma esnasında birden fazla kullanıcı veri tabanından farklı isteklerde bulunabilir. Bu durumda veri tabanının cevap verme süresi geç olursa, sistemde kilitlenmelere neden olmaktadır. Bu durumu engelleyebilmek için performans bakımından üst düzey bir belge tabanlı NoSQL veri tabanı tercih nedeni olmalıdır. Bunun için ise MongoDB kendini kanıtlamış bir sistemdir ve Türkiye Halk Sağlığı Kurumu “Soğuk Zincir Takip ve Stok Yönetim Sistemi” projesinde de kullanılmaktadır[5]. Sanal ve fiziksel veri tabanları üzerine yapılan bir çalışmada birden fazla okuma ve yazma işlemi için sistemin performansı Şekil 2’de gösterilmiştir.

Veri Tabanı Karşılaştırılması[3].

Maliyet veri tabanları için önemlidir Maliyet veri tabanları için önemlidir. Saklanılan veri boyutu ne kadar artarsa depolama gereksinimi de bir o kadar artmaktadır. İlişkisel veri tabanlarında kolonlar dikey ölçeklendiğinden veri tabanı için yeni donanımlar satın almak gerekebilir. İlişkisel veri tabanlarını yatay ölçeklemek zordur. NoSQL de ise bu durum farklıdır. Yatay ölçeklenebilen NoSQL veri tabanları maliyeti oldukça düşürmektedir ve benzersiz bir ağ yapısı ile performansı arttırmaktadır.

Örnek JSON Yapısı - MongoDB { "_id" : ObjectId("54ca3e0a338f97042433d195"), "_class" : "com.saadinoyucu.model.Cihaz", "ip" : "10.12.87.61", "sicaklik" : "24", "cihaz_adi" : "Arduino1", "createdDate" : ISODate("2015-01-29T14:04:57.922Z") }

MonjaDB Eclipse ile görünüm aa

Sonuç ve Öneriler Öncelikle SQL ve NoSQL veri tabanları incelenmiş ve belge tabanlı veri tabanı sistemlerinin önemi üzerine durulmuştur. Yatay ölçeklenebilirlik büyük veriler için önemli olduğundan ve yapılan karşılaştırılmalar sonucu M2M sistemler için NoSQL veri tabanı tercih edilmelidir sonucuna varılmıştır. Ayrıca farklı durumlarda SQL ve NoSQL veri tabanı sistemleri karşılaştırılmıştır ve M2M sistemler için en uygun veri tabanının seçilmesi için bilgiler sunulmuştur.

İlişkisel veri tabanı ve NoSQL veri tabanlarının kendine göre avantaj ve dezavantajları bulunmaktadır. M2M sistemlerinde algılayıcılardan veri tabanına ve sisteme sürekli veri akışı olacağından hız oldukça önemlidir. NoSQL veri tabanı yazılımı olarak MongoDB gibi birden fazla ücretsiz yazılımda mevcuttur. MongoDB belge veri modeli, zengin sorgu desteği, yatay ölçeklenebilirlik, yüksek kullanılabilirlik, esneklik ve dinamik şema gibi birçok özelliği geliştiricilere sunmaktadır. Veri saklama işleminde JSON yapısını kullanmaya izin veren NoSQL veri tabanı ile Temsili Durum Transferi (Representational State Transfer: RestFUL) web servislerinin kullanıldığı sistemler, daha dinamik bir yapı ve platformdan bağımsız uygulamalar geliştirilmesine olanak sağlayacaktır. Bu nedenlerden dolayı M2M projelerinde veri tabanı olarak NoSQL veri tabanlarını kullanmak uygulamalarda başarılı sonuçlar almayı kolaylaştıracaktır.

Teşekkürler Soru ve Önerileriniz..

Kaynaklar [1] Yishan L., Sathiamoorthy M., “A performance comparison of SQL and NoSQL databases”, Communications, Computers and Signal Processing (PACRIM), 2013 IEEE Pacific Rim, Conference on, 27-29 Aug. (2013)   [2] Lior O., Nurit G., Yaron G., Ehud G., Jenny A., “Security Issues in NoSQL Databases”, Trust, Security and Privacy in Computing and Communications (TrustCom), 2011 IEEE 10th International Conference on, 16-18 Nov. (2011) [3] Jan Sipke V., Bram W., Robert J. M., “Sensor Data Storage Performance: SQL or NoSQL, Physical or Virtual”, Cloud Computing (CLOUD), 2012 IEEE 5th International Conference on, 24-29 June (2012) [4] Han J., Haihong E., Le G., Du J., “Survey on NoSQL database”, Pervasive Computing and Applications (ICPCA), 2011 6th International Conference on, 26-28 Oct. (2011) [5] Ankaref, Gökhan F. Türkiye Bilişim Dergisi, Sayfa 106, Yıl 42, Sayı 171, Aralık (2014) [6] Donald D. C., Morton M. A., Michael W. B., and others., “A History and Evaluation of System R” IBM Research Laboratory San Jose, California, Oct. (1981) [7] Rick C., “Scalable SQL and NoSQL Data Stores” , SIGMOD Record, December 2010 (Vol. 39, No. 4) [8] “NoSQL Nedir” , http://devveri.com/nosql-nedir(Erişim Tarihi: 03.12.2014) [9] Mohamed A. M., Obay G. A., Mohammed O.I., “Relational vs. NoSQL Databases: A Survey”, International Journal of Computer and Information Technology (ISSN: 2279 – 0764) Volume 03 – Issue 03, May (2014) [10] White Paper BY DATASTAX CORPORATION October (2013) [11] “Why NoSQL” , http://www.couchbase.com/nosql-resources/what-is-no-sql (Erişim Tarihi:03.12.2014)  [12] IDC, “Worldwide Internet of Things (IoT) 2013-2020 Forecast: Billions of Things trillions Of Dollars”, Belge No. 243661, Ekim 2013

Dinlediğiniz İçin Teşekkür Ederim 2015