Ich arbeite für ein kleines Unternehmen, das ein bestehendes System erweitern möchte, aber dabei gibt es auch einige Probleme. Das System selbst wird zum Speichern von Bildern und Videos verwendet.Immer verfügbar sein, irgendwelche Gedanken?
Immer verfügbar sein
Also wir unseren Gastgeber gesprochen und sie empfohlen uns Ceph und Cassandra zu verwenden. Jetzt habe ich einige Nachforschungen angestellt und die Idee von Ceph gefällt mir sehr gut - aber Cassandra ... nun, es würde eine Weile dauern, bis das bestehende System daran angepasst wird.
Der Grund, warum sie Cassandra empfohlen haben, war, dass unsere Datenbank immer verfügbar sein würde. Jetzt - die Datenbank wird nicht massiv zunehmen, sie würde nur dazu dienen, einige Benutzerinformationen, Bild-Tags und andere kleine Metadaten zu speichern.
Ein weiteres Problem ist, dass viele Abfragen "like" verwenden, um die Tags zu finden. CQL unterstützt dies nicht.
Jetzt haben wir keine Entwickler, die Wissen über Cassandra haben, also könnte es eine Weile dauern, sich daran zu gewöhnen.
Meine Frage
- Gibt es eine Alternative für Cassandra, eine relationale Datenbank bevorzugt (also nicht NoSQL) , die nach wie vor hoch verfügbar ist (wie wenn ein Server ausfällt, nimmt andere über).
- Falls nicht - wie lange würde es dauern, um sich an Cassandras Abfragesprache für relativ unerfahrene Entwickler (~ 1 Jahr Erfahrung) zu gewöhnen, einschließlich des Knowhows, wie man ein System darauf anpasst.
- Nur für den Fall, dass ich meine Recherchen nicht richtig gemacht habe, ist Cassandra sogar das System, nach dem wir suchen, die DB wird nur für die Speicherung und einige kleine Funktionen verwendet.
- Im Fall empfehlen Sie eine NoSQL Sprache, welche anderen Möglichkeiten habe ich von Suchen und Finden von Daten (wie wir jetzt unter Verwendung von „..wo x wie‚etwas‘“ tun)
'Erstellen Sie Tabellen-Tags (tagid, videoid, Tagstring)' und jetzt müssen Sie nicht 'like' verwenden: D –
Mit Cassandra glaube ich nicht, dass Sie auf einem Nicht-Schlüssel oder Index suchen können oder haben Vielleicht habe ich das falsch verstanden? –
Ich weiß nichts über Cassandra, aber ich wäre sehr überrascht, wenn eine Datenbank nicht eindeutige Schlüssel nicht unterstützt. Setzen Sie einen Index auf "videoid" und Sie sollten eingestellt werden. –