About Protocol Buffers

Alex De la rosa alex.rosa.box at gmail.com
Mon Jun 23 10:19:23 EDT 2014


Hi there,

I just installed RIAK 2.0 beta 1 and was playing with the Python library
using 'pbc' (Protocol Buffers).

test.py
--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------
import riak
client = riak.RiakClient(host ='127.0.0.1', http_port = 8098, pb_port =
8087, protocol = 'pbc')
bucket = client.bucket('people')

key = bucket.new('alex', data={"username":"Alex","age":33})
key.store()

print bucket.get('alex').encoded_data
--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------

it works perfectly and it prints {"username": "Alex", "age": 33} as it
should print.

However, I'm not using a proto file (person.proto) and compiling it into
binary for Python to use it... something like:

person.proto
--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------
message Person {
  required string username = 1;
  required int32 age = 2;
}
--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------

xxx.py
--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------
import person_pb2
person = person_pb2.Person()
person.username = "Alex"
person.age = 33
data = person.SerializeToString()
--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------

Am I using the 'pbc' interface wrong? however, on Riak's examples page is
done also without the "proto" file... I'm a bit confused at the moment as
it changed the way I normally would use Protocol Buffers.

Thanks,
Alex
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.basho.com/pipermail/riak-users_lists.basho.com/attachments/20140623/815ca963/attachment.html>


More information about the riak-users mailing list