Передать файл hdf5 в h5py как двоичный объект / строку?

Как я могу обойти дисковый ввод-вывод в h5py? В настоящее время мне нужно сделать что-то вроде этого:

msg = socket.recv()
fp = open("tmp.hdf5", 'wb')
fp.write(msg)
fp.close()
f = h5py.File('tmp.hdf5', 'r')

... # alter the file

fp = open("tmp.hdf5", 'rb')
msg = fp.read()
msg = f.toString()
socket.send(data)

Я хочу сделать что-то вроде этого:

msg = socket.recv()
f = h5py.File(msg, driver='core')
... # alter the file
msg = f.toString()
socket.send(msg)

Моя проблема здесь в том, что скорость -дискового ввода-вывода слишком велика для узкого места. Есть ли быстрый и простой способ создания строк файловых объектов h5py и последующего извлечения файла в виде строки?Я готов пойти с чем-то вроде Cython, если до этого дойдет...

5
задан vaultah 29 May 2015 в 12:18
поделиться