Я много работаю с данными pytables и HDF5, и у меня есть вопрос относительно атрибутов узлов (атрибуты, к которым вы обращаетесь через свойство pytables 'node._v_attrs').
Предположим, что я установил такой атрибут узла hdf5. Я делаю это снова и снова, устанавливая определенный атрибут
(1) всегда одно и то же значение (поэтому в целом значение, хранящееся в файле hdf5, качественно не меняется)
(2) всегда с другим значением
Как эти операции с точки зрения скорости и памяти? Я имею в виду следующее: действительно ли установка атрибута подразумевает удаление атрибута в файле hdf5 и добавление нового атрибута с тем же именем, что и раньше? Если да, значит ли это, что каждый раз, когда я сбрасываю существующий атрибут, размер файла hdf5 немного увеличивается и продолжает медленно расти, пока мой жесткий диск не заполнится?
Если это так, то было бы полезнее перед сбросом проверить, есть ли у меня случай (1) [и я вообще не должен хранить, а сравнивать данные с атрибутом, записанным на диске] и переназначать только в том случае, если столкнусь с случаем (2) [т.е. значение атрибута в файле hdf5 не то, которое я хочу записать в файл hdf5].
Большое спасибо и с наилучшими пожеланиями, Роберт