Android için veri tabanı kalıcı bir veri depolama şeklidir. Cihazlarda yerel depolaman oluşmaktadır, bu nedenle cihazın bağlantısı kesilse bile uygulama kullanılmaya devam edilir.
SDK içine SQLite dahil edilmiştir. Bu yüzden en yaygın olarak bu veri tabanı kullanılmaktadır.
Mobil veri tabanında ne aranır?
Veri tabanları genelde veri depolama, sorgulama ve işleme özelliği sağlasa da tüm veri tabanları aynı değildir.
Veri tabanı türlerine bakmadan önce şu maddelere dikkat etmek gerekir
Ne tür veriler depolayacaksınız ?
Yapılandırılmış/yapılandırılmamış verileri mi yoksa büyük dosyaları mı depolayacaksınız? Veriler kullanıcılar arasında paylaşılmalı mı yoksa sadece cihazda mı saklanmalı?
Verilerinize nasıl erişim sağlayacaksınız ?
Birden çok veri kaynağından gelen verileri birleştirmek için ne gibi karmaşık sorgular gerçekleştirmeniz gerekiyor?
Barındırma Yöntemi;
Kullanıcılar, uygulamanızın verileriyle nasıl etkileşim kuracak?
Kullanıcılar, gözle görülür bir gecikme olmadan gerçek zamanlı olarak işbirliği yapabilmeyi bekliyor mu? Verilerin kullanıcılar ve cihazlar arasında paylaşılması gerekiyor mu?
Android veri tabanının farklı türleri;
Yukarda sıraladığımız veri tabanında nelere dikkat etmemiz gerektiğini öğrendiğimize göre bazı Android veri tabanı türlerine bakabiliriz.
Temel olarak üç kategoriye ayrılırlar: ilişkisel, anahtar-değer ve nesne odaklı.
İlişkisel veri tabanı;
Tablolar arasında ilişkiler oluşturmak için anahtar kullanılır bunlarda tabloları ve paylaşılan sütunlardır. En yaygın örnek, Android SDK içinde bulunan SQLite’dir.
Anahtar-Değer veri tabanı;
Bilgileri depolanması için tek değer eşlemesi için bir anahtar kullanır. Genellikle kullanıcı ayarları gibi şeyleri kaydetmek için Android veri tabanlarında kullanılır. Örnek, Android için Paylaşılan Tercihler olacaktır.
Nesne yönelimli veri tabanı;
Nesne yönelimli programlama dillerinde olduğu gibi karmaşık veri nesneleri ile çalışabilir. Karmaşık verilerle hızlı sorgular yapılabilir. Veri tabanındaki kod genellikle daha basittir çünkü veri tabanındaki kod ve nesneler birbirine yakındır.
Diyar;
Nesne yönelimli bir veri tabanıdır.
Bir veri tabanının nasıl barındırılabileceğine ve nasıl çalıştığına dair dikkate alınması gereken bazı faktörler vardır;
Yerel depolama:
Mobil uygulamalarda en önemli özellik verilerin yerel olarak saklanması ve çevrimiçi kullanılabilir olmasıdır. Kullanılabilir olmaya devam etmesi çok daha iyi bir kullanıcı deneyimi sağlar. Fakat taşınabilir olmalarından dolayı mobil cihazlarda ağ bağlantıları tutarsız olabilir.
Bulut Veri Depolama
Kullanılan bir çok mobil uygulama ve cihazlar arasında muhakkak bir veri paylaşımı gerekmektedir, fakat bu yerel depolama çözümleri tarafından desteklenmeyen bir özelliktir. Bu yüzden mobil geliştiricilerinin uygulama verilerini bir sunucuya kaydetmeleri gerekmektedir buda bulut veri depolama anlamına gelir.
Bir bulut veri tabanının çeşitli avantajları vardır.
Örneğin MongoDB
Ancak, veritabanı ile iletişim kurmak için kullanılan sürücü her zaman ağ erişimi gerektirir, bu da cihazların sürekli bağlantısının kesildiği ve yeniden bağlandığı mobil kullanım durumları için deneyimi optimalden daha az hale getirir.
Sunucu:
Kendi sunucularını yada veri merkezinizi kullanarak verileriniz kendiniz tutmayı tercih edebilirsiniz. Fakat kendi kendine barındırılabilen ve mobil cihazlarda çalışabilen bir veri tabanını dikkate alınmalıdır. Ancak, bu yine erişim için internet erişimi gerektirecektir,.
Cihaz üzerinde veri tabanı tutmak ya da bulutta tutmak
Bağlantı sorunlarını ele alan ve gerçek zamanlı veri paylaşımı sağlayan iki seçenek vardır. Bunlar bulut veri tabanı ve yerel bir veri tabanı ‘dır.