Магазин JSON Blobs в MySQL или S3
-
27-10-2019 - |
Вопрос
Я собираюсь хранить некоторые данные спецификации в виде струн JSON (высота, веса и т. Д.) - по одному на продукт. Данные будут доступны очень редко (однажды изначально, а затем снова, только если я изменю алгоритм и должен обновить сводные метрики). Мой план состоит в том, чтобы сохранить ссылку на местоположение строки JSON в базе данных MySQL, а также остальные данные о продукте.
Каждая капля составляет около 6 тысяч, и, предполагая, что я собираюсь хранить 10 м из них, мои тесты показывают, что размер таблицы MySQL с этими 10 -метровыми рядами будет ~ 70 ГБ (включая столбец идентификатора с индексом). Хранение их в S3 сработало бы немного дешевле, но в обоих случаях он низкий.
Есть ли какой -либо недостаток в том, чтобы поместить их в MySQL. Повлияет ли одна очень большая таблица на производительность остальной части сервера?
Решение
Я советую тебе
- Сжатие их: это идеальный сценарий для торговли пространством на расстоянии против циклов процессора декомпрессии. JSON обычно очень сжимается, скажем, 2: 1 как минимум до 10: 1
- Храните их непосредственно в отдельной таблице Myisam: Таким образом, это гарантированно не мешать вашим другим таблицам