2016-04-19 5 views
2

Hallo Ich bin ein SQL Server DBA und ich bin neu bei MarkLogic und ich habe ein paar Fragen.Marklogic Fragen

  1. würde MarkLogic unterstützt .net-Framework. Damit meine ich, dass unsere Entwickler .NET Framework 4.5 verwenden und LINQ verwenden, um Skripte für sql zu generieren. Können sie MarkLogic-Skripts zum Ausführen von CRUD-Vorgängen mit der MarkLogic-Datenbank generieren?

  2. Wäre es möglich, sql oder sql wie Skripte auszuführen, um Daten aus der MarkLogic-Datenbank abzurufen (Dokumente mit sql auswählen). Ich weiß, CouchBase unterstützt so etwas wie niql.

  3. erfordert die horizontale Skalierung, dass der gesamte Cluster nicht aktiv ist? Kann ich einen Knoten zu einem MarkLogic-Cluster hinzufügen oder entfernen, während der Cluster noch online ist?

  4. Unterstützt MarkLogic die Wiederherstellung nach Zeitpunkt (Datenbank und Dokument). SQLServer verfügt über das Konzept der Transaktionsprotokollsicherungen und ermöglicht mir die Wiederherstellung einer bestimmten Zeit. Gibt es etwas Ähnliches?

  5. Ich werde nicht die gesamte Anwendung auf MarkLogic verschieben, sondern nur einen Teil davon, wo SQLServer Konflikte hat. Es wird also ein hybrides Modell sein. Wird es Probleme mit zwei Phasen geben? (Ich meinte Commits von SQLServer sowie Commits von MarkLogic)

  6. Gibt es eine Mindestanzahl von Knoten für den Erwerb der Lizenz erforderlich? Und welche minimale Anzahl an Knoten benötigt ein Cluster?

+3

Es kann ein Dutzend Gründe geben, sich für MarkLogic oder Couchbase zu entscheiden, je nach den endgültigen Anforderungen. Aber auf jeden Fall sind sie bei weitem nicht die gleiche Lösung ... http://db-engines.com/en/system/Couchbase%3BMarkLogic –

+2

Ich empfehle Ihnen, für jede Frage, die Sie beim nächsten Mal haben, separate SO-Fragen zu verwenden. Einfacher mit Abstimmen und alternative Antworten zur Verfügung stellen, wenn einer von ihnen mehrere hat. – grtjn

Antwort

5

Eine Dokumentendatenbank ist nicht mit einer relationalen Datenbank identisch. Sie zu vergleichen und zu erwarten, dass Ihre bestehenden Werkzeuge funktionieren, ist eine unwahrscheinliche Szenerie.

1) MarkLogic kann XML als eine der Dokumentquellen speichern. LINQ hat ein gewisses Maß an XML-Unterstützung (ich kenne LINQ nicht - lesen Sie einfach ein Tutorial). Aber dies scheint, dass Sie haben, was ein akzeptabler Ausgangspunkt sein kann.

2) MarkLogic hat eine SQL-Ebene - aber mehr für BI-Anforderungen. Ich schlage vor, dass Sie sich die robusten REST-API- oder XCC.net-Optionen und robusten Suchfunktionen genauer ansehen und die vollständigen Funktionen von MarkLogic nutzen.

3) Cluster müssen nicht zum Hinzufügen oder Entfernen von Knoten verwendet werden. Es gibt andere Konfigurationsänderungen, die einen Neustart des Hosts erfordern, aber nicht die von Ihnen erwähnten Elemente.

Aber bedenken Sie, gibt es andere Möglichkeiten, um auf die Notwendigkeit maßstabs abhängig - wie zusätzliche Daten Wälder hinzufügen, so Skalierung muss nicht immer = new Knoten ..

4) Ja. Sie können eine Gesamtstruktur (Ihre Daten) mithilfe des Journals auf einen bestimmten Zeitpunkt zurücksetzen. Details finden Sie hier: http://docs.marklogic.com/guide/admin/backup_restore#id_21622

5) Keine transaktive Datenbank mag Transaktionen, die lange offen bleiben. Solange Sie sich daran halten können, gibt es gute Nachrichten. In MarkLogic können Sie sogar Mehrfachanweisungstransaktionen über die REST-API mit mehreren REST-Aufrufen durchführen (https://docs.marklogic.com/guide/rest-dev/transactions). Also ich glaube, Sie sind hier gut abgedeckt.

Denken Sie aber auch daran, dass es Möglichkeiten gibt, MarkLogic direkt mit Ihrem SQL-Server kommunizieren zu lassen - daher können Sie beim Entwerfen der integrierten Lösung sehr gut andere Optionen haben.(https://developer.marklogic.com/code/mlsam)

6) Die Mindestanzahl der Knoten kann mit Sales von MarkLogic besprochen werden - aber es gibt Installationen mit einem Knoten.

Für 'Cluster' hängt es davon ab, was Sie meinen. Aber wenn Sie HA in Betracht ziehen, dann benötigen Sie 3 Knoten, um die Datenredundanz zu erhalten.

+2

Nur ein Kommentar, um auf Davids Punkt # 2 aufzubauen. Als ich einer großen Firma half, einen Teil einer Anwendung von SQLServer nach MarkLogic zu migrieren, bestand ein Teil der Logik darin, ihre Lucene-Schicht zu entfernen, um ihre Architektur zu vereinfachen. Sobald Sie an die Vorteile des Suchzugriffs (insbesondere der Facettensuche) denken, stimme ich zu, dass Sie möglicherweise nicht immer nach SQL als primärem Datenzugriffsmechanismus greifen. –