В Raspberry PI как добиться минимальных циклов записи на SD-карту и отключить RPI в любой момент? - PullRequest
0 голосов
/ 03 октября 2018

Я использую raspberry PI для одного из моих проектов, где он загружается с карты micro SD.Приложение записывает транзакции в структуре данных c ++ и позже сохраняет в базе данных sql внутри карты microsd.Я не могу потерять эти данные, поскольку это финансовая транзакция.

Проблема здесь в том, что резервное питание доступно только в течение 30 секунд.Я могу обнаружить событие сбоя питания и инициировать отключение.Но я не уверен, будет ли он выключен в течение 30 секунд после безопасной записи данных в sql db.

Мне также интересно минимизировать циклы записи на карту micro SD.

Я видел, как интернет-маршрутизаторы используют Linux, но его можно безопасно отключить в любое время.Я думаю, что они используют оверлеи.

  1. Так возможно ли создать аналогичную файловую систему для Raspberry Pi?
  2. Могу ли я смонтировать SD-карту и затем загрузить всю ОС в память изатем запустите оттуда, чтобы я беспокоился только о том, чтобы записать данные в раздел данных SD-карты, но если это не безопасно завершить работу, моя корневая файловая система SD-карты не будет повреждена?

1 Ответ

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

Если это важная информация, нельзя ли подключить ее к интернету для ее резервного копирования?Если интернет не возможен, то у вас не должно быть ОС и важных данных на одной SD-карте.Вы не знаете, какой тип сбоя может повредить данные.

Решение:

Есть две SD-карты или два устройства хранения данных.Запустите операционную систему на одной и, когда транзакция инициируется, предоставьте ОС доступ к другой SD-карте для выполнения транзакции.Только когда ОС установлена ​​со второй SD-картой, она заявляет, что транзакция прошла успешно.ОС не должна инициировать транзакцию, если обнаруживает потерю мощности.Я предполагаю, что ни одна транзакция не займет где-то около 30 секунд (это никогда не должно занимать так много времени).Если транзакция происходит во время потери питания, она должна завершить транзакцию, а затем указать, что она прошла успешно, но отказаться от получения большего количества записей.Если 1 SD-карта действительно необходима, то храните их в отдельных разделах, но используйте интерактивность, как описано выше.

Конечно, это напрямую не связано с отключением.Теперь узнайте, что происходит с вашей реализацией PI Rasberry, но его выключение и запись на SD-карту не должны занимать около 30 секунд.Если это так, то возникает другая проблема.Компьютеры очень быстрые.«Минимизация записи на SD-карту» - это очень расплывчатый вопрос, когда мы не знаем, что пишется.

...