2016-10-06 11 views
0

Hinweis: Ich habe ein wenig umformatiert und einige zusätzliche Informationen hinzugefügt.

Bitte werfen Sie einen Blick auf diese: Question_Answer

möchte ich fragen - mit DSE 5.0 und die anstehenden Veränderungen, die bei C * Summit in diesem Jahr für 5.1 und 5.2, wird der gleiche Rat nützlich sein genannt wurden?SOLR und VNodes und Tokens

Unser Anwendungsfall ist:

Die Plattform jederzeit zur Verfügung stehen muss. (Cassandra)
Die Daten müssen durchsuchbar sein. (SOLR/Lucene)
Die Plattform muss liefern Analytik/Data Warehousing/BI usw. (Grafik/Funke)

All das ist möglich, in einem einzigen Produkt bietet dank DSE! Danke DataStax!

Aber unsere Menge an gespeicherten Daten und unsere Transaktionszahl sind sehr bescheiden.
Unsere Spezifikation ist für 100 gleichzeitige Sitzungen innerhalb der Anwendung - was natürlich nicht übersetzt zu 100 gleichzeitige DB Anfragen/Operationen.

Unsere Anwendung ähnelt größtenteils einer täglichen CRUD-Anwendung für Unternehmen.

Obwohl nicht lächerlich, sind AWS-Instanzen nicht gerade frei.
Ein separater Cluster für jede Auslastung (mit ausreichender Replikation für kontinuierliche Verfügbarkeit) ist für uns ein Kostenproblem.

Während ich verstehe, kann ein Proof of Concept einige Hilfe bieten - aber ohne eine echte Arbeitsbelastung/echte Benutzer - durch die Dienste/Anwendungen - in einer Weise, die nur ein "Produktionssystem" und Rogue User: wirklich bieten kann Einsicht für. Das Beste, was Sie tun können, ist ein "geladener" Funktionstest.

Kurz gesagt, wir sind hier ein wenig stecken aus einer Plattform Perspektive.

Wir zunächst denken an mit:

2 Rechenzentren für geographische Isolation
2 Körben pro DC
2 Knoten pro Rack-
RF von 3
CL von local_quorum

Wenn wir feststellen, dass wir Leistungsprobleme haben, können wir skalieren - fügen Sie ein zusätzliches Rack oder zusätzliche Knoten zu den ersten 2 Racks hinzu.

Wie für V-Knoten oder Anzahl der Token, wir haben keine Ahnung.

Die Dokumentation für die DSE-Suche besagt, dass V-Nodes 30% Overhead hinzufügt. Es klingt also so, als ob Sie keine V-Knoten verwenden sollten. In einer Tabelle in der Dokumentation heißt es jedoch 16 oder 32 verwenden es ist beides?

Wenn wir alle Workloads erfolgreich auf einem einzigen Knoten ausführen können (unsere Anforderungen sind wirklich minimal), laufen wir mit V-Knoten (16 oder 32) oder führen wir ein einzelnes Token aus?

Schließlich gibt es noch eine Alternative?
Können Knoten mit unterschiedlichen Workloads im selben Rechenzentrum vorhanden sein? Wo werden einzelne Knoten mit RAM/CPU-Anforderungen für eine bestimmte Auslastung eingerichtet?

Unter der Annahme, unsere 4 Knoten pro Rechenzentrum (als Ausgangspunkt nur - wir haben keine Ahnung, ob Sie erfolgreich Suche auf einem einzelnen Knoten/oder Funken auf einem einzelnen Knoten laufen können)

Node 1: Just Cassandra
Knoten 2: Cassandra und Suchen
Knoten 3: Cassandra und Graph
Knoten 4: Cassandra und Funken

Wenn Search 64GB RAM benötigt - es so sein ... aber die Cassandra nur Knoten könnte gut mit nur 8 oder 16.

So können wir in Bezug auf CPU und Arbeitsspeicher pro Arbeitslast gerecht werden - aber immer noch nur einen einzigen DC. (Wir haben 2 für Redundanz - aber effektiv ist es eine einzige DC-Installation: gespiegelt)

Vielen Dank im Voraus für Ihre Hilfe.

Antwort

1

Vnodes fügt einen zusätzlichen Overhead für den Scatter-Gather-Teil der Suchlösung hinzu. In einigen Benchmarks waren das bis zu 30%. Einige Kunden sind bereit, mit diesem Mehraufwand zu leben und VNodes aufgrund der Vorteile der dynamischen Skalierung zu verwenden.

Wenn Sie ein kleines Cluster haben oder planen - und es nicht im Handumdrehen skalieren müssen - dann würde ich definitiv empfehlen, mit einzelnen Token zu bleiben. Der versteckte Vorteil dieses Ansatzes ist, dass Ihre Reparaturen auch etwas schneller sind. Dies hilft bei der Suche, da Sie im Vergleich zu CL.ONE lesen.

Es ist möglich, alle Funktionen auf demselben DC (Search, Analytics und jetzt Graph) auszuführen, aber Sie werden feststellen, dass die Gemeinkosten steigen. Sie benötigen größere Knoten mit mehr Arbeitsspeicher und CPU-Ressourcen, um mit der Verarbeitungslast fertig zu werden. Ich würde wahrscheinlich mit 128 GB RAM beginnen und von dort gehen. Ich denke, wenn Ihre Ladung wirklich Licht ist, könnten Sie mit weniger davonkommen. Wie bei allem ist Benchmarking auf der Skala, die Sie ausführen möchten, der Schlüssel.

Nebenbei bin ich nicht ganz klar auf Ihre Absichten re RF. Du implizierst 2 Knoten und RF = 3. Ich vermute, es ist nur Phrasierung, aber wenn nicht - es ist erwähnenswert, dass Sie mindestens so viele Knoten wie die RF für die beste Abdeckung wollen!

+0

WRT zu RF; mit 2 Knoten pro Rack: und 2 Racks - das ergibt insgesamt 4 Knoten für ein Rechenzentrum. Wenn ich nicht etwas verpasse - was ich natürlich sein könnte -, scheint hier ein RF von 3 zu funktionieren. –

+0

Oh verpasste 2 racs - ja, das sollte in Ordnung sein. –

+1

Wenn Sie vnodes mit DSE Search in 5.0.x (oder früher) verwenden möchten, beachten Sie, dass Sie möglicherweise die Größe Ihres Solr-Filtercaches anpassen müssen, um sicherzustellen, dass die Abfrageleistung angemessen bleibt. (Natürlich sollten Sie den DSE-SolrFilterCache verwenden, der die globale Speichernutzung begrenzt und nicht die OSS-Solr-Cache-Implementierungen.) –