Я много работаю с данными pytables и HDF5, и у меня есть вопрос относительно атрибутов узлов (атрибуты, к которым вы подключаетесь через свойство node._v_attrs объекта pytables).Pytables, установка и удаление атрибутов HDF5,
Предположим, что я установил такой атрибут узла hdf5. Я это снова и снова сделать, установив определенный атрибут
(1) всегда на ту же величину (так общее значение, хранящееся в hdf5file качественно не меняется)
(2) всегда с другим значением
Каковы эти операции с точки зрения скорости и памяти? Я имею в виду следующее: установка атрибута действительно подразумевает удаление атрибута в файле hdf5 и добавление нового атрибута с тем же именем, что и раньше? Если да, значит ли это, что каждый раз, когда я обнуляю существующий атрибут, размер файла hdf5 немного увеличивается и продолжает медленно расти, пока мой жесткий диск не будет заполнен?
Если это правда, было бы более полезно проверить, прежде чем я сброшу ли я случай (1) [и я не должен хранить вообще, кроме сравнения данных с атрибутом, записанным на диске], и только переназначить, если я сталкиваюсь случай (2) [т.е. значение атрибута в файле hdf5 не является тем, которое я хочу записать в файл hdf5].
Спасибо и наилучшими пожеланиями, Роберт
Обратите внимание, что ограничение размера 64 kb является только значением по умолчанию. Существует два способа хранения более крупных атрибутов: хранение плотных атрибутов и отдельные наборы данных. Дополнительную информацию см. В [руководстве] (http://www.hdfgroup.org/HDF5/doc/UG/13_Attributes.html). – Yossarian
Знаете ли вы, как я могу включить плотное хранилище атрибутов HDF5 из Python и PyTables? – SmCaterpillar