Database Reference
In-Depth Information
$ curl -X PUT http://localhost:8091/riak/cages/1 \
-H "Content-Type: application/json" \
-H "X-Riak-Meta-Color: Pink" \
-H "Link: </riak/animals/polly>; riaktag=\"contains\"" \
-d '{"room" : 101}'
MIME-Typen bei Riak
Riak speichert alles in Form binärkodierter Werte (genau wie normales HTTP).
Der MIME-Typ gibt den Kontext der Binärdaten vor - wir haben bisher nur
mit normalem Text gearbeitet. MIME-Typen werden auf dem Riak-Server ge-
speichert, sind aber eigentlich nur ein Flag für den Client, damit er beim
Download der Binärdaten weiß, was er mit ihnen anfangen soll.
Wir wollen in unserer Hundepension Bilder unserer Gäste hinterlegen. Wir
müssen nur das Flag data-binary des curl -Befehls nutzen, um ein Bild auf
den Server hochzuladen, und den MIME-Typ mit image/jpeg angeben. Wir
verlinken das mit dem /animals/polly -Schlüssel, damit wir wissen, wen wir
da vor uns haben.
Erzeugen Sie zuerst ein Bild namens polly _ image.jpg und legen Sie es im
gleichen Verzeichnis ab, in dem Sie die curl -Befehle ausführen.
$ curl -X PUT http://localhost:8091/riak/photos/polly.jpg \
-H "Content-type: image/jpeg" \
-H "Link: </riak/animals/polly>; riaktag=\"photo\"" \
--data-binary @polly _ image.jpg
Nun besuchen Sie die URL im Web-Browser, die genau so abgerufen und
dargestellt wird, wie Sie es von jedem Client/Server-Request erwarten.
http://localhost:8091/riak/photos/polly.jpg
Da wir das Bild mit /animals/polly verknüpft haben, können wir dem Link
vom Image-Schlüssel zu Polly folgen, aber nicht umgekehrt. Im Gegensatz zu
einer relationalen Datenbank gibt es keine „hat ein“- oder „ist ein“-Regel im
Bezug auf Links. Sie verlinken in die Richtung, in die Sie sich bewegen wollen.
Wenn wir glauben, dass wir in unserer Anwendung im animals -Bucket auf
die Bilddaten zugreifen müssen, muss ein entsprechender Link in diesem
Objekt existieren.
Was wir am ersten Tag gelernt haben
Wir hoffen, dass Sie Riaks Potential als flexible Speicheroption erkannt ha-
ben. Bisher haben wir nur die übliche Schlüssel/Wert-Praxis vorgestellt und
einige Links eingestreut. Wenn Sie ein Riak-Schema entwickeln, müssen Sie
Search WWH ::




Custom Search