Я читаю термины здесь, но я думаю, что наиболее кратким было спросить это.
Когда я говорю «линейный», я имею в виду линейный, как линейная операция в математике, т.е. f(t+p) = f(t)+f(p)
.
. На работе у нас есть наборы данных, которые мы храним в .h5
файлах. Мы делаем это по космическим причинам. Когда мы выполняем анализ данных и постобработку, нам нужно открыть файл .h5
и получить данные. Из-за того, как была настроена наша система, мы, к сожалению, в конечном итоге открываем этот файл .h5
несколько раз, каждый раз получая лишь небольшое подмножество таблиц. Это сложно для нашей файловой системы и вызывает очевидную производительность скриптов и сети в целом.
Интересно, не лучше ли хранить все таблицы в одном файле .h5
. Возможно, разбейте его на более мелкие или даже сожмите каждую таблицу по отдельности, так что когда скрипту нужен только доступ к небольшому набору таблиц, это не займет много времени.
Мне интересно, если это произойдет с компромиссом, т. е. потеряли бы мы пространство, сжимая по отдельности? Вот почему я назвал этот пост, как я сделал. Если процесс сжатия файла является линейным, то сжатие таблиц по отдельности должно в сумме равняться сжатию одного файла, содержащего все таблицы.
Я, конечно, сомневаюсь, что сжатие является линейным, но насколько велика разница в использовании хранилища?