universally str servicio not must python cassandra uuid pycassa

str - Generar UUID para Cassandra en Python



uuid python 3 (2)

Je, estoy usando

cf.insert(uuid.uuid1().bytes_le, {''column1'': ''val1''}) (pycassa)

para crear un TimeUUID para Cassandra, pero obteniendo el error

InvalidRequestException: InvalidRequestException(why=''UUIDs must be exactly 16 bytes'')

No funciona con

uuid.uuid1() uuid.uuid1().bytes str(uuid.uuid1())

ya sea.

¿Cuál es la mejor manera de crear un TimeUUID válido para usar con el indicador CompareWith = "TimeUUIDType"?

Gracias,
Henrik


Debe asegurarse de que su esquema de familia de columnas acepte el UUID como clave. Su código funcionará con una familia de columnas creada como (usando cassandra-cli):

create column family MyColumnFamily with column_type = ''Standard'' and comparator = ''AsciiType'' and default_validation_class = ''BytesType'' and key_validation_class = ''TimeUUIDType'';

Para agregar valores a este CF:

import pycassa pool = pycassa.ConnectionPool(''Keyspace1'') cf = pycassa.ColumnFamily(pool, ''MyColumnFamily'') cf.insert(uuid.uuid1(), {''column1'': ''val1''})