@Elengar

Как лучше сделать MySQL базу данных типа account — key — value?

Здравствуйте.

Есть ли какие-нибудь эффективные методы реализации базы типа account - key - value ?
К сожалению, могу это реализовать только на MySQL или sqlite.

Выборка будет производится сразу всех полей, при создании "объекта", который хранился в БД. Обновление, скорее всего, тоже будет производится всего сразу, при сохранении/уничтожении "объекта". Я вообще задумываюсь над JSON'ом, но, возможно, есть лучшие варианты.
  • Вопрос задан
  • 2437 просмотров
Решения вопроса 1
index0h
@index0h
PHP, Golang. https://github.com/index0h
Если это не критичные данные и при их потере ничего не произойдет - смотрите в сторону redis.
Если значений не много - просто сериализируйте (правда фильтрация качественная пропадет).
Если значений прям таки дохрена + индекс на key - [id, key, value].
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
DmitriyEntelis
@DmitriyEntelis
Думаю за деньги
1) Без острой нужды я бы не стал класть в базу json. Особенно в mysql/sqlite. Это вот прямо источник кучи геммороя и проблем с произвордительностью когда выяснится что объект все таки можно для экономии ресурсов читать/писать не целиком.
2) Если у Вас стоят ограничения в стиле "доступно только это" - значит у Вас явно нет каких то ощутимых нагрузок, так что делайте как угодно, начнутся живые проблемы - перепишите на postgresql/redis/... в зависимости от ситуации
Ответ написан
Комментировать
benbor
@benbor
Помог ответ - не забудь лайкнуть
Эффективность у каждого проекта своя:
1. Нагрузка выборки
2. Нагрузка вставки
3. Малый разбер
4. Скорость выборки
и тд... в зависимости от того, что вас интересует в приложении
Но, могу предположить, судя по тому, что "могу это реализовать только на MySQL или sqlite." вот и реализовывайте, как можете, и настройте профайлер, и будете видеть, устраивает ли Вас Ваш критерий эффективности, или нет. И вот тогда уже суда на тостер, если сами не нагуглите как индекс поставить
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы