23 May 2012 Cloud, RavenDB, RavenHQ Robert Muehsig

Ayende Rahien hat es heute verkündet – RavenHQ, der RavenDB Cloud Hoster (natürlich von und mit Ayende) ist ab heute raus aus der Beta und man kann es von überall aus nutzen. In der Betaphase waren nur Nutzer von AppHarbor zugelassen.

Was ist RavenHQ?

RavenHQ ist im Grunde ein gehostes RavenDB in den Rechenzentren von AppHarbor. Ähnliches wäre z.B. die SQL Variante auf Azure oder MongoHQ – eigentlich gibts zu fast allen NoSQL Lösungen auch Hoster ;)

Was hat man von RavenHQ?

Ein Wort: Backups. Vielleicht auch sechs: Die Jungs sind cleverer als ich. RavenHQ nimmt einen die Bürde des Datenbank Managements und fertig Backups an und spielt Updates ein. Nebenbei macht es natürlich den Einstieg in die Entwicklung mit RavenDB wesentlich einfacher. Wer RavenDB lieber selber hostet – auch kein Problem – es ist nur eine Variante RavenDB zu nutzen :)

Erste Schritte in RavenHQ

Nach der völlig kostenlosen Anmeldung aur RavenHQ.com erblickt man eine schlanke Oberfläche. Erste Aufgabe: Eine Datenbank anlegen.

image

RavenHQ Preisspanne – von kostenlos bis 500$

Bei der Anlage einer Datenbank wählt man seine Plan aus. Solange man keine Rechnungsdaten hinterlegt hat gibt es aber nur die “Bronze” Variante. Diese ist kostenlos und reicht zum Experimentieren aus. Die einzelnen Featuresets sieht man hier.

image

RavenHQ ConnectionString + ApiKey

Nach der Anlage der Datenbank kann man sich Details zur Datenbank anschauen (verbrauchter Speicherplatz), die Datenbank über “Admin Tasks” löschen und den Plan über “Upgrade” ändern. Wichtigster Punkt am Anfang ist der ConnectionString, welchen wir auch gleich benötigen.

image

Die Angaben sollten natürlich streng geheim bleiben – aber die Datenbank, welche hier abgebildet ist, existiert ohnehin nicht mehr ;)

RavenDB Management – in the Cloud!

Natürlich kommt auch die Management Software mit. Der Link ist unter dem “Database Information” zu finden.

image

image

Demo Projekt

Um zu zeigen wie easy das ist, mal eine winzige ASP.NET MVC DemoApp.

Den RavenDB Client via NuGet runterladen:

SNAGHTML670bb06

Achtung: Den Code würde ich so nicht in ernsthaften Projekten einsetzen!

public ActionResult Index()
        {
            using (var documentStore = new DocumentStore { Url="https://1.ravenhq.com/databases/Robert0Muehsig-CodeInside", ApiKey="c4c3c135-e202-4a9e-b7d7-baa67298722a" })
			{
				documentStore.Initialize();

			    using(var session = documentStore.OpenSession())
			    {
			        var album = session.Load<Album>("albums/609");
                    ViewBag.Message = "Album Nr. 609 on RavenHQ cost about " + album.Price;
			    }


			}

            return View();
        }

 

Nicht schön, aber dafür zeigen wir Daten von RavenHQ an!

image

Das Projekt findet ihr hier – auch wenn es nicht wirklich viel ist ;)

Was gibt es Negatives?

Aktuell ist RavenHQ in US Rechenzentren gehostet, erst in ca. 2 Monaten stehen auch europäische Rechenzentren mit RavenDB bereit:

image

Natürlich sollte man sich immer überlegen, ob man die Daten fremdhosten möchte und wenn es um sensible Kundendaten geht den Kunden entsprechend auch aufmerksam machen.

RavenDB Lizenzieren oder auf RavenHQ “mit nutzen”

RavenDB ist Open Source, allerdings benötigt man für den kommerziellen Einsatz eine Lizenz. Wer RavenHQ nutzt, bekommt auch für Closed Source Applikationen eine Lizenz. Damit relativiert sich der Preis doch noch um einiges wie ich finde.


Written by Robert Muehsig

Software Developer - from Saxony, Germany - working on primedocs.io. Microsoft MVP & Web Geek.
Other Projects: KnowYourStack.com | ExpensiveMeeting | EinKofferVollerReisen.de