Необходимо отслеживать изменения, внесенные в объекты в базе данных.
Тривиальная реализация состоит в том, чтобы иметь зеркальную таблицу, которая получает записи, вставленные в нее триггерами, либо внутри базы данных, либо внутри приложения, но это влияет на производительность, и со временем зеркальная база данных становится огромной и существенно удваивает время обслуживания, когда исходная таблица имеетчтобы быть измененным (зеркальная таблица должна отражать это изменение).
Так как мое самое большое требование здесь - иметь минимальное влияние на производительность базы данных и приложения, мое текущее предпочтение - записать изменения в syslog-ng поверх udp и сохранить ихв простых текстовых файлах.
В конце концов, журнал изменений не является чем-то, к чему часто обращаются, поэтому даже нормально хранить его в архиве с течением времени.Но очевидно, что с такой установкой фактический доступ к этим данным довольно сложен.
Так что я предполагаю, что мой вопрос - есть ли уже система, которая хотя бы частично удовлетворяет моим потребностям?Идеально подходит система доступа к базе данных без доступа к схеме, доступная по протоколу UDP, с возможностью автоматического архивирования данных (или, по крайней мере, минимального объема конфигурации, необходимого для этого) или очень медленное снижение производительности вставки.MongoDB?CouchDB?YourDB