Database Reference
In-Depth Information
das zu erreichen, erzeugt ein kurzes Populations-Skript in Ruby die Daten
für ein gigantisches Hotel mit 10.000 Zimmern.
Ruby ist (falls Sie nicht mit ihr vertraut sind) eine beliebte Allzweck-Program-
miersprache. Sie ist sehr nützlich, um schnell Skripten auf einfache und gut
lesbare Weise zu entwickeln. Mehr zu Ruby erfahren Sie in Programming Ru-
by: The Pragmatic Programmer's Guide von Dave Thomas und Andy Hunt
sowie online. 4
Sie benötigen außerdem den Ruby-Paketmanager namens RubyGems. 5 So-
bald Ruby und RubyGems zur Verfügung stehen, installieren Sie den Riak-
Treiber. 6 Sie könnten außerdem den json-Treiber benötigen.
$ gem install riak-client json
Jedes Zimmer unseres Hotels verfügt über eine zufällig gewählte Kapazität
von ein bis acht Personen und einen zufälligen Typ wie Einzelzimmer oder
Suite.
riak/hotel.rb
# Erzeugt viele Zimmer mit zufälligen Typen und Kapazitäten
require 'rubygems'
require 'riak'
STYLES = %w{single double queen king suite}
client = Riak::Client.new(:http _ port => 8091)
bucket = client.bucket( 'rooms' )
# 100 Stockwerke für das Gebäude erzeugen
for floor in 1..100
current _ rooms _ block = floor * 100
puts "Making rooms #{current _ rooms _ block} - #{current _ rooms _ block + 100} "
# 100 Zimmer auf jedem Stockwerk (ein riesiges Hotel!)
for room in 1...100
# Eindeutige Zimmernummer als Schlüssel erzeugen
ro = Riak::RObject.new(bucket, (current _ rooms _ block + room))
# Zimmertyp zufällig wählen und Kapazität ergänzen
style = STYLES[rand(STYLES.length)]
capacity = rand(8) + 1
# Zimmerinformationen als JSON-Wert speichern
ro.content _ type = "application/json"
ro.data = { 'style' => style, 'capacity' => capacity}
ro.store
end
end
$ ruby hotel.rb
4. http://ruby-lang.org
5. http://rubygems.org
6. http://rubygems.org/gems/riak-client
Search WWH ::




Custom Search