Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
06.07.2018, 14:19
|
|||
---|---|---|---|
|
|||
Втавка в неиизвестную таблицу через процедуру |
|||
#18+
Добрый день, коллеги. С PostgreSQL работать начал совсем недавно, поэтому решил посоветоваться. Есть много однотипных табличек (вместо партиций). Вставка данных в них должна осуществляться через процедуру (требования безопасности). В какую именно таблицу вставлять данные - зависит от параметров вызова процедуры. Данные поступают в формате JSON. Вставка одновременно осуществляется 20-30 потоками по 100-500 строк за вызов. Каждый поток в своей сессии. Одновременно могут быть вызовы для вставки в одну таблицу из разных потоков (сессий). Всталяются только свежи данные (уже имеющиеся по ключу не перетираются). После вставки данных обязательно нужно определить MIN(ID), MAX(ID), MIN(DTTM), MAX(DTTM), COUNT(*);, Вопрос, собственно, в том какую конструкцию лучше использовать с точки зрения производительности и отказоустойчивости. Сам вижу вариант с использованием TEMP VIEW. Буду крайне признателен, если прокомментируете в чем плюсы / минусы подхода или посоветуете из опыта более эффективных путь. Использовать ЦИКЛЫ или текстовые преобразования JSON в формат совместимый с INSERT VALIES (...),(...),(...) - не хочется. Postgres 10, WINDOWS. Заранее спасибо! Вариант через использование TEMP VIEW: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=53&mobile=1&tid=1995679]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
105ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 194ms |
0 / 0 |