Przekaż plik hdf5 do h5py jako plik blob / string binarny?

Jak mogę ominąć dyskowe we / wy w h5py? Obecnie muszę zrobić coś takiego:

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)

Chcę zrobić coś takiego:

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

Moim problemem jest szybkość - dyskowe operacje we / wy są zbyt dużym wąskim gardłem. Czy istnieje szybki i łatwy sposób na tworzenie ciągów obiektów pliku h5py, a następnie wyodrębnienie pliku jako łańcucha? Jestem gotów pójść z czymś takim jak Cython, jeśli chodzi o to ...

questionAnswers(2)

yourAnswerToTheQuestion