Nosql Database Önerisi
-
NoSql e biraz yabancıyım. NoSql e girişmek için piyasadakilerden hangisini seçeyim?
En iyi kullandığım şey MSSQL, Entity Framework.
İstediğim özellikler
- Database'im windows da da linux da da çalışabilsin.
- c# a mümkün olduğunca güzel entegre olsun (Entity framework gibi mümkünse). Fakat C++ delphi de falan kullanabileyim.
- Son derece portable olsun
- Her durumda bedava olsun.
- Çoğu projem tek sunucu, Tek sunucuda güzel çalışsın ama scalable de olsun.
- Gigabytelarca veri gömebileyim sağlam performans isteyen kurumsal senaryolarda güvenebileyim
Raven db güzel diyorlardı ama c# ın dışına çıkamadığından onu eledim.
mongodb güzel gibi ama diğerlerini hiç bilmiyorum.
MSSQL'i çok seviyorum ama sevmediğim özellikleri: windows dışında çalışmaması, ücretli (ve anormal ücretli) oluşu, Projenizin yanında otomatik kurmak için evliya sabrı ve şans gerekiyor oluşu.
-
abi neden nosql? sql ve entityden gelen birisi acayip yabancılık çekecektir. ( en azından ben öyle oldum).
nosqlin özel bir nedeni yoksa neden diğer rdms lere bakmıyorsun? İStediğin özelliklere bakınca mysql işini görür gibi. Yani illa da öyle kastırmaya gerek yok bence.
-
Nedenlerini yazdım hocam.
Düşün ki bir ürünün var. Bir cms yazılımı yaptın mesela. Müşteriye gidip kurucan. 10 mblik bi yazılım için 600 MB MSSQL kurulumu 1 saat sürüyor onda da powershell kur, KBxxxx güncellemesini kur gibi salak hataları geçtikten sonra şanslıysan çalışıyor. Unattended yapmak falan tamamen hayal. (teoride yapılıyor pratikte yok öyle bişey)
Aynı zamanda yazılıma 10.000 dolar para çekiosan, MSSQL lisansı 16.000 dolar falan çekiyorlar. hiç hoş değil. bide cpu limitleri fln var. Siz kurumsal projede kullanmadığınızdan sizin için MSSQL toz pembedir tabi, ver serali gitsin olmuyor =))
Programını linuxe port etmen Wine emulatoru fln devreye sokarsan çok zor değil. Ama yine MSSQL kısmında kitlenip kalıyorsun. çünkü linuxda çalışmıyor.
PostgresSQL enterprise olarak kullanabileceğin MSSQL ayarı en iyi database. Fakat yeni bişey öğreneceksem trend bişey öğrenmek isterim. 20 yıl öncesinin teknolojisini değil onun için nosql.
HolyOne tarafından 07/Tem/15 10:41 tarihinde düzenlenmiştir -
-
abi işte bende diyorum ki sırf bu nedenlerden dolayı sql i komple bırakmak yerine, platform bağımsız çözümlere yönel. sqllite aradığın çözüm olabilir.
https://www.sqlite.org/download.html buradan desteklediği platformlara bakabilirsin.
ayrıca ücretsizde :D
-
-
karpuz seçme gibi seçilmez hocam bu :) her veritabanının bir alanı var, CAP teorem diye geçiyor (acid in yeni versiyonu diyebilirsin), her nosql çözümü CAP tan en fazla iki özellik alabilir. o yüzden isteklerine hangi özellikler uyuyorsa CAP de, onun nosql sürümünü seçmelisin.
yani ca, cp, ap ye göre nosql ler çeşitli şekillerde var. şuan teldeyim çok yazamıyorum ama bu dediklerime bakıp doğru çözümü seçebilirsin. istersen pc ye geçince daha detaylı yazabilirim
-
cassandra var redis var şuan biz şirkette cassandra kullanıyoruz gayet güzel performans veriyor işlenmemiş veriler için gayet iyidir.
Redis ise şu aralar kişisel incelememde redis in güzel yani verileri inmemory tutuyor gayet hızlı geri alabiliyorsun ve inmemory'nin dezavantajı olan makina elektriği gittiğinde verilerinde gitmesine karşı belirli aralıklarda sabit diske yazım yapabiliyor.
Big data ile çalışıp elinde 30-40gb lık bir veritabanı var isede ve bunların içindede çok hızlı bir sorgulama ile veri çekmek istiyorsanda Solr öneririm solr tam bir arama motoru canavarı hatta son sürümda %50'ye varan bir performans artışı olduğu söyleniyor. Zaten zamanında facebook kullanıyormuş şimdi ise apache tarafından geliştirilmektedir. Cassandra ve Solr hakkında bir sorusu olan varsa elimden gelen yardımı yapabilirim şirkette bu iki teknoloji üzerine baya bir haşır neşir oluyoruz. Tabi bide şu var 2sinin kurulumlarıda inanılmaz basit heleki ubuntu makinaya 2 apt-get le hallediyosn.
-
şeyhim mongodb ile redis i kullandık redis i cache amaçlı mongodb yi log tutmak amaçlı kullandık mongo db nin community si çok geniş csharp la çok rahatça bağlayabiliyorsunuz onun dışında ciddi hızlı ve önerebileceğim bir yapıdır. Redis konusunda da oda hızlı ancak redis te bir takım sorunlar yaşıyorduk linux makinede kurulu idi biz tabi iis falan kullanıyoruz nedense bağlantımız falan kopuodu bizde de bi hata olabilir bazen ağır çalışıyordu falan ama mongodb ile başın ağrımaz hocam yinede sen biliyorsun. :)
-
.net ve Windows sunucuları için RavenDB öneririm.
NoSQL'de aslında hangi veri tabanı değil ne tür bir objeye sahipsin diye düşünüp ona göre seçim yapman lazım. Direk mongo,cassandra ne bilim neo4j diye atlamamak lazım :D
-
sandman bunu yazdı
.net ve Windows sunucuları için RavenDB öneririm.
NoSQL'de aslında hangi veri tabanı değil ne tür bir objeye sahipsin diye düşünüp ona göre seçim yapman lazım. Direk mongo,cassandra ne bilim neo4j diye atlamamak lazım :D
bu forumda beni anlayan nadir kişilerden birisin hocam :) insanlar sadece hızlı olsun ya da kendilerinde iyi çalışsın yeter diye bakıyor, oysa arkasındaki teknolojilerin, beklentilerin, uyumun v.s. pek önemi yok bir çokları için.