У меня есть таблица базы данных (в Postgresql), в которой у меня есть один столбец в виде JSON, где я храню несколько пар ключ-значение. Друг посмотрел на мою схему и предложил сохранить эти пары значений ключей в отдельной таблице вместо того, чтобы сохранять ее как объект JSON, особенно если я хочу выполнять операции поиска в будущем.
Я использовал JSON, потому что пары ключ-значение в объекте JSON могут меняться со временем. Количество пар ключ-значение, а также сами пары ключ-значение.
Его предложения основаны в основном на двух фактах.
- У меня есть планы выполнить поиск по крайней мере в одном из полей в этом объекте JSON, который я сейчас храню.
- Я хочу сделать схему настолько универсальной, насколько это возможно, чтобы у меня было как можно больше вариантов, когда я думаю о переносе базы данных с минимальными изменениями, необходимыми для внутреннего кода, что происходит с Java в JPA Hibernate
Я согласен с моим другом. Но прежде чем вносить изменения, я хотел бы полностью понять преимущества и недостатки использования JSON в системе управления реляционными базами данных. Общие ответы, а также ответы, подходящие для моего конкретного случая использования, приветствуются.