Twissandra : un twitter like
▶ Twissandra utilise pycassa , API de haut
niveau pour accéder à cassandra
▶ Pycassa utilise thrift, un framework d'appel de
procédure à distance
▶ Thrift gere 12 languages dont python
[Link]
▶ Opération sur la famille de colonne
>>> cf = [Link](client, 'UserName')
## insertion d'une colonne
>>> [Link]('user1', {'id': 'User'})
1261349837816957
>>> [Link]('foo')
{'column1': 'val1'}
## inserion de plusieurs colonne
>>> [Link]('user2', {'id': 'User', 'name': 'Name User'})
## recuperation des lignes
>>> list(cf.get_range())
[Link]
yMap
▶ Pour mapper des objets avec des colonnes
>>> class Test(object):
... string_column = [Link](default='Your Default')
... int_str_column = [Link](default=5)
... float_str_column = [Link](default=8.0)
... float_column = pycassa.Float64(default=0.0)
... datetime_str_column = [Link]() # default=None
>>> [Link] = [Link](Test, cf)
>>> t = Test()
>>> [Link] = 'maptest'
>>> t.string_column = 'string test'
>>> t.int_str_column = 18
>>> t.float_column = t.float_str_column = 35.8
>>> from datetime import datetime
>>> t.datetime_str_column = [Link]()
>>> [Link](t)
1261395560186855
Les autres librairies python
pour cassandra
▶ Tragedy: [Link]
▶ Lazy Boy:
[Link]
▶ Telephus:
[Link]
(Twisted)