cassandra
için yeni ve analitik görevler için kullanıyorum (iyi endeksleme gerekli).Cassandra - birincil anahtar olmayan dezavantajları olan WHERE yan tümcesi
Bu yazımda (ve başkaları) okudum: cassandra, select via a non primary key DB'mi WHERE clause
numaralı birincil anahtar sütunlarla sorgulayamıyorum. (Performans sorunları için önerilmez)
- ikincil indeks oluşturma Bunu yapmak için:
, (TÜM büyük dezavantajları ile birlikte) 3 olasılık var gibi görünüyor.
- Yeni bir tablo oluşturun (gereksiz veriyi istemiyorum, çünkü cassandra ile sorun yok).
- Sorgulamak istediğiniz sütunu birincil anahtarın içine koyun ve bu durumda birincil anahtarın tüm bölümlerini WHERE yanımda belirtmem gerekir ve
IN
veya=
'dan başka bir operatör kullanamıyorum.
Yukarıdaki 3 kısıtlamaya sahip olmadan yapmaya çalıştığım (WHERE clause
birincil olmayan anahtar sütunu) başka bir yolu var mı?
Cassandra gerçekten tanımladığınız kullanım durumu için uygun değildir. Sorgu esnekliğine ihtiyacınız var gibi geliyor ve bunu Cassandra'dan çıkarmayacaksınız. Alt satırda, sorgu tabloları (yedekli verilerle) oluşturmanın önerisi, ölçeklenebilir bir çözümdür ***; Cassandra'yı ilişkisel bir veritabanı gibi kullanmaya çalışırken değil. – Aaron
Hi @Aaron oups, problem, sorgunun esnekliği için 'mongodb' 'cassandra' 'dan daha fazla tavsiye edildi, fakat' read/write '(benim durumumda çok önemli olan) performans için ve ikincisi bu noktada çok kötü. – farhawa
Ve bu performansı görebilmenin tek yolu, gereksiz verileri kullanarak sorgu tabanlı bir modelleme yaklaşımı almaktır. Sorgu esnekliği elde etmek için ilişkisel bir model veya benzer yöntemler kullanmaya çalıştığınızda Cassandra oldukça korkunç bir performans sergiliyor. – Aaron