Конвертировать rrd файлы из 32-битной ARM в x86_64 - PullRequest
0 голосов
/ 08 октября 2018

У меня много rrd-файлов, сгенерированных на Cubieboard 1-го поколения (1 ГГц ЦП, 1 ядро, 1 ГБ ОЗУ), и около года назад, когда я перенес регистраторы данных на компьютер x86_64, я заметил,что я больше не могу читать эти старые файлы.Я не знал, что они зависят от платформы.

Я знаю, что есть рабочий процесс, в котором я экспортирую данные из файлов в файлы XML, а затем импортирую их в другую архитектуру, но это не мой первый выбортак как старая плата мучительно медленная и у нее есть другая важная работа, например, быть DNS-сервером.Версия rrdtool застряла на 1.4.7, и для обработки требуется 1,4 гигабайта файлов.

Есть ли способ эмулировать Cubieboard на быстрой машине Intel или какой-нибудь инструмент на базе x86_64, который может конвертировать эти rrdфайлы

1 Ответ

0 голосов
/ 23 октября 2018

Файл RRD не переносим между архитектурами, как вы заметили.Формат зависит не только от 32-64-битного целочисленного размера, но также от «порядковых» характеристик и даже от поведения компилятора с заполнением структуры.Может быть возможно скомпилировать библиотеку в 32-битном режиме на новой платформе, но она по-прежнему вряд ли будет совместима с вашими старыми RRD-файлами, так как существуют другие аппаратные различия, которые следует учитывать.

Короче говоря,ваш лучший вариант - (медленно?) экспортировать в XML, а затем повторно импортировать в новой архитектуре, как вы уже упоминали.Ранее я делал это на большой установке RRD, которая некоторое время работала параллельно, чтобы избежать пробелов в данных, но это занимает время.

Кажется, я помню, что Тоби когда-то планировалновый независимый от архитектуры формат RRD в RRD 1.6, но даже если это произойдет, он не поможет вам с вашими устаревшими данными.

...