SORU
22 Ocak 2013, Salı


Arama, birden çok dizin farklı veri setleri için vs Bir dizin ve çeşitleri elastik?

Uygulama MVC deseni kullanılarak geliştirilen ve birden fazla modeli, her modelin farklı bir veri yapısı vardır demek şimdi dizin etmek istiyorum.

  • Mutliple dizinler, her model için kullanın veya her model için aynı dizin içerisinde bir tür olması daha mı iyi? Her iki şekilde de bence farklı bir arama sorgusu gerektirir. Ben sadece bu konuda başladı.

  • Farkları ise veri kümesi küçük ya da büyük ise, her iki kavram arasında performancewise var mı?

Eğer biri bana bu amaç için iyi bir örnek veri tavsiyem Eğer 2 soruyu kendim test edeyim.

CEVAP
28 Ocak 2013, PAZARTESİ


Her iki yaklaşım için farklı etkileri vardır.

Varsayıyorsunuz Elasticsearch kullanarak varsayılan ayarlar, sahip 1 indeks için her model olacak önemli ölçüde artış sayısını kendi parçaları olarak 1 endeks 5 kırıkları, 5 veri modelleri kullanılır (25 kırıkları; sahip 5 nesne türleri 1 dizin hala kullanacak 5 kırıkları.

Her bir veri modeli olarak dizin: olan etkileri

  • Veri miktarı farklı endeks için dağıtılır beri her parça daha küçük olması gerektiği gibi ve dizin içinde arama yapmak için verimli hızlı.
  • 2 veya daha fazla endeksleri veri modelleri bir arada arama sorgusu endeksleri, ve kullanıcıya geri gönderilen derlenmiş genelinde daha fazla parçaları gönderilmesi için ek yük oluşturur.
  • Eğer veri kümesi önerilen her ek parça yaratılan ile daha fazla depolama ödeyecektir beri Küçük ve performans artışı marjinal.
  • Veri seti büyük ve sorularınıza özel parçaları sizin özel veri depoluyor beri işlemek için uzun bir zaman ayırmak, karıştırmak ve işlemek için Elasticsearch için daha kolay olacaktır.

Bir dizin içerisinde: nesne türü olarak her bir veri modeli olan etkileri

  • Daha fazla veri wiill farklı veri modelleri arasında sorgulandığında, daha az yükü sorunlar var demektir Bir dizin, 5 parçaları içinde saklanır ama shard boyutu önemli ölçüde daha büyük olacaktır.
  • Parçaları içinde daha fazla veri Elasticsearch için daha uzun bir zaman filtre için daha fazla belge olmadığı içinde arama yapmak için alacak.
  • Eğer veri 1 terabayt geçiyor biliyorsanız tavsiye ve farklı bir dizin veya birden fazla kırıkları arasında veri dağıtma Elasticsearch eşleştirme.
  • Marjinal performans için depolama alanı israf etmeyin, çünkü küçük veri setleri için önerilen, her shard beri donanım yer almak kazanmak.

Eğer alacaksanız çok fazla veri vs küçük veri nedir? Genellikle değişir işlemci hızı ve RAM donanım, veri miktarını saklamak içinde her değişken eşleme için Elasticsearch ve sorgu gereksinimleri; kullanarak birçok yönü sorgular. yavaşlayacak tepki süresini önemli ölçüde. Bunun basit bir cevabı yoktur ve hiçbir kriter olacak ihtiyaçlarınıza göre.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BASS212M

    BASS212M

    15 Temmuz 2009
  • Matt Davis

    Matt Davis

    4 ŞUBAT 2006
  • super1988guy

    super1988guy

    9 Aralık 2007