Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
02.07.2018, 15:13
|
|||
---|---|---|---|
Расперделить JSON поля по столбцам таблицы |
|||
#18+
Есть JSON документ типа: Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Я создал таблицу с полями: Код: plaintext
и т.д. Как лучше организовать вставку значений из JSON-документа в таблицу динамически, чтобы можно было менять/добавлять пары источник->назначение? Хочу написать функцию типа: Код: plaintext
Можно документ пихать целиком в jsonb поле, но боюсь потом запросы к такой таблице будут идти медленнее, чем к обычной реляционной: http://clarkdave.net/2013/06/what-can-you-do-with-postgresql-and-json/ ? Или нет? Благодарю! -- С уважением, Алексей. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.07.2018, 18:08
|
|||
---|---|---|---|
Расперделить JSON поля по столбцам таблицы |
|||
#18+
Aleksey K, есть ещё ЕАВ (EAV) у него есть клоники с партицированием Валуёв обычно по типам. или аж по атрибутам. в Пж можно партицироваться динамически. в момент прихода данного. (предок д.б. пуст, во избежание) понятно что с большой базенкой нахлебаешься тормозов. но гибкости изрядно. если ядро выдрать в обычную реляционку а в еав свалить мусор -- может и со скоростью быть неплохо. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.07.2018, 22:26
|
|||
---|---|---|---|
Расперделить JSON поля по столбцам таблицы |
|||
#18+
qwwqесть ещё ЕАВ (EAV) у него есть клоники с партицированием Валуёв обычно по типам. или аж по атрибутам. в Пж можно партицироваться динамически. в момент прихода данного. (предок д.б. пуст, во избежание) понятно что с большой базенкой нахлебаешься тормозов. но гибкости изрядно. если ядро выдрать в обычную реляционку а в еав свалить мусор -- может и со скоростью быть неплохо. А можно подробнее по пунктам, пожалуйста, или ссылки для примера? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
02.07.2018, 23:08
|
|||
---|---|---|---|
Расперделить JSON поля по столбцам таблицы |
|||
#18+
qwwq, в общем я понял, что ты имел в виду. Нечто подобное и мне в голову приходило, а EAV - это по науке. Однако посмотрел, что JSONB особенно с GIN jsonb_path_ops индексом иногда быстрее, или по крайней мере не намного медленнее: http://coussej.github.io/2016/01/14/Replacing-EAV-with-JSONB-in-PostgreSQL/. Решение иногда бысрее NoSQL баз данных: https://www.percona.com/live/e17/sites/default/files/slides/High Performance JSON - PostgreSQL vs. MongoDB - FileId - 115573.pdf А использовать лишь одно JSONB поле гораздо проще в реализации (по крайней мере вставка данных), чем куча мелких. Остановлюсь на простом JSONB. Запросы к нему не сложные тем более, что структура JSON у меня в основном фиксированная. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=53&tablet=1&tid=1995689]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
26ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
others: | 16ms |
total: | 134ms |
0 / 0 |