У меня есть такой сценарий:
У вас есть заводская технологическая линия, которая работает 24/7. Простои чрезвычайно дороги.
Программное обеспечение, управляющее всеми различными частями, должно использовать общую форму хранения базы данных.
Основная причина этого заключается в том, чтобы знать, в каком состоянии находится фабрика. Например, некоторые продукты могут быть смешаны при использовании одного и того же набора оборудования, а другие, безусловно, нет.
Требования:
- Я хочу, чтобы программное обеспечение могло обнаружить ошибку в одной части
установка должна привести к остановке машины на расстоянии более 1 км. поэтому хранение данных в ПЛК не вариант.
- Частые обновления и обновления до заводской среды
- нагрузка (в компьютерном выражении) будет действительно низкой.
Системы обрабатывают несколько заданий в день, для которых выполняются расчеты / проверки, после чего следуют инструкции, отправляемые для заводских станков. Системы будут скучать большую часть времени. Самое важное требование - центральная компьютерная система должна быть корректной и всегда работать.
Я думал об использовании базы данных на основе динамо (риак или кассандра), где данные записываются на несколько машин, причем каждая машина имеет всю базу данных
Когда одна система выйдет из строя, она выйдет из строя без помех. Традиционная база данных sql может быть более трудной для обновления, когда таблицы изменяются, и этот главный подчиненный сложнее настроить.
Каким было бы ваше решение?
Сеть стала избыточной, и большинство других отдельных точек отказа. Система базы данных имеет решающее значение, поскольку время простоя базы данных означает время простоя для всего предприятия, а не только для одной из машин, что является приемлемым.
- Как решить проблему общего состояния.
- сложность в базе данных не будет проблемой. Я буду больше похож на простое хранилище значений ключей, чтобы получать самые свежие и правильные данные.