Я новичок в базах данных и пытаюсь найти решение, которое обеспечит мне производительность, а также возможности хранения данных.
Вот моя ситуация:
- У меня непрерывный поток данных в реальном времени со скоростью несколько сотен миллисекунд.Я хочу хранить эти данные, а также получать их в будущем.
Вот мой план:
использовать центральный сервер данных, на котором работает MySQLхранить эти данные.Центральный сервер будет находиться во внутренней сети с сетью Gigabyte Ethernet.
Прокси-клиент, работающий под управлением SQLite.Клиент будет нести ответственность за получение данных, а также за их локальное хранение (SQLite) и удаленно (центральная база данных под управлением MySQL)
Другие подчиненные клиенты, работающие под управлением SQLite, могут получать данные из Центрального сервера.База данных и хранить их в своем собственном локальном SQLite.(Ведомые клиенты и центральная база данных не должны синхронизироваться с данными в реальном времени в режиме реального времени. Но должны периодически синхронизироваться - периодически)
Моя причина этогоявляется то, что SQLite должен быть намного быстрее, чем сетевая центральная база данных в этой ситуации.Я надеюсь, что хранение данных локально в режиме реального времени, а затем периодическая отправка этих данных в удаленную базу данных не приведет к слишком сильному снижению производительности.
Мне интересно, удовлетворяет ли это моим требованиям и существует ли какой-либо дизайнчто может достичь этого с лучшей производительностью и целостностью данных?(Расширяемость также учитывает, что производительность и целостность одинаковы)
Интерфейс базы данных будет написан на C ++, я уже нашел все необходимые интерфейсы для SQLite и MySQL, теперь просто нужно закрепить дизайнчасть.
Любой совет приветствуется.