Введение
У меня есть столбец больших двоичных объектов в семействе столбцов Cassandra 1.2, таблица определяется следующим образом:
CREATE TABLE objects (
id text,
obj blob,
PRIMARY KEY (id)
);
Проблема:
Проблема в том, что когда мне нужно вставить/обновить столбец BLOB-объектов из Python с помощью библиотеки cql, мне нужно, чтобы base 16 кодировал содержимое столбца следующим образом:
import cPickle
import cql
...
def save_object(connection, obj):
object['id'] = obj['id']
object['obj'] = cPickle.dumps(obj).encode("hex")
cql_statement = "INSERT INTO objects (id, obj) values (:id, :obj)"
cursor = connection.cursor()
cursor.execute(cql_statement, object)
Вопрос:
Есть ли способ выполнить этот запрос без использования кодировки (строки) объекта с основанием 16? Причина этого заключается в том, чтобы уменьшить накладные расходы на отправку по сети строки, закодированной с основанием 16, вместо простых байтов.
Заранее спасибо!