Обзор: у нас есть таблица в базе данных (Oracle), которая занимает почти 80% общего пространства, выделенного для базы данных.Эта конкретная таблица хранит данные в формате BLOB-объекта JSON и содержит информацию трассировки, в основном связанную с тем, как центральный механизм работает в приложении.
Проблема: для некоторых клиентов эта информация трассировки быстро выросла доотметьте, что эта таблица теперь содержит почти терабайт информации трассировки.Это вызвало опасения, связанные с высокой стоимостью хранилища и ухудшением производительности запросов.
Вопрос: Каковы наилучшие варианты решения этого сценария:
- Использование NoSQL для хранения JSONданные блоба?Не уверен, что соответствует стоимости.
- Сохранить данные BLOB-объекта в более дешевом хранилище объектов и использовать поиск Lucene / Elastic и т. Д. Для индексации и поиска?У нас есть собственное устройство хранения данных (ECS) EMC, которое может взаимодействовать через S3 API.ECS дешевле, чем хранилище SAN, однако я не уверен в производительности.
- Использовать секционирование Oracle для хранения BLOB-объекта JSOB в отдельном табличном пространстве?Это было предложено администратором базы данных несколько лет назад, но я не уверен, что оно решит вопрос о стоимости или производительности проблемы.
- Любое другое предложение?