
Dmitry
03.11.2016
10:24:18
Ну мааам
чего-то я тебе еще обещал, обновить инсталятор для винды :)
а чем ты на клиент тянешь 60k строк?

Евгений
03.11.2016
10:24:47
Из методички https://postgrespro.ru/docs/postgrespro/9.5/sql-copy
HEADER
Указывает, что файл содержит строку заголовка с именами столбцов. При выводе первая строка файла будет содержать имена столбцов таблицы, а при вводе первая строка просто игнорируется. Этот параметр допускается только для формата CSV.
Можно как-то сделать, чтобы этот HEADER с перечислением столбоц не игнорировался, а учитывался при вставке?

Google

Евгений
03.11.2016
10:26:21
Поясню: у меня есть унаследованная таблица. С "боя" я тырю из нее пару сотен свежиз строк с помощь
COPY (SELECT * FROM tab WHERE ...) TO stin;
копирую файл к себе и хочу залить
копируются все ссобственнве колонки таблицы не унаследованные
ествественно вставка ломается - ей не хватает колонок
Решение "врукопашную":
Вначале тырим список колонок и сбоку прикручиваем к ним команду:
"COPY (SELECT * FROM tab WHERE false) TO stin WITH CSV HEADER;" | sed 's/.*/COPY table(&) FROM stdin;/gi' >> dump.sql
затем сами данные:
"COPY (SELECT * FROM tab WHERE ...) TO stin;" >> dump.slq
А как-то более по-человечески можно?

[Anonymous]
03.11.2016
10:38:37

Dmitry
03.11.2016
10:39:07
мож дело в адаптере?
в смысле через ADO али как
сравни время count(*) с тем что у тебя на стороне апликейшена получаешь
конечно же count(*) должен быть быстрее, но не на пару порядков.

[Anonymous]
03.11.2016
10:41:00
ща

Roman
03.11.2016
10:46:50
не используйте count(*), вместо этого правильно юзать count(1)

Darafei
03.11.2016
10:47:02

Google

Anton [Mgn, az09@osm]
03.11.2016
10:47:06
да она просто оче широкая!

Roman
03.11.2016
10:47:13
то

Darafei
03.11.2016
10:48:13
первый результат гугла http://www.sql.ru/forum/362230/count-1-vs-count
кто распространяет суеверия? :)

[Anonymous]
03.11.2016
10:50:36

Dmitry
03.11.2016
10:50:53
а если на pgadmin дотащить всю Documents?

[Anonymous]
03.11.2016
10:51:32
до этого в sql server ре работали 100 тыс записей за сек отрабатывало

Dmitry
03.11.2016
10:51:50
libpq также скорее всего
до pgadmin дотащи всю Documents

[Anonymous]
03.11.2016
10:52:47
Помогите ребята.. разобраться .. всю оптимизацию сделал.. кк написанно.. результат то же остаёться

Петр
03.11.2016
10:57:11
скорее всего твой sql server-клиент не вытаскивал все, а сотню, например

Darafei
03.11.2016
10:57:34
а с какой целью делается select * from "Documents"?

Павел П.
03.11.2016
10:57:36
вакуум аналайз давно был?
Понимаю что очевидно, но всё же

Darafei
03.11.2016
10:57:39
что потом происходит?

[Anonymous]
03.11.2016
10:58:05

Darafei
03.11.2016
10:58:36

Roman
03.11.2016
10:59:38
@Komzpa ок, готов провести ревизию знаний

Vadim
03.11.2016
10:59:53
Если вам нужны все строки то может проще в файл? pgAdmin это позволяет делать:) Если просто посмотреть первые строки, то совет выше как раз подойдет)

Google

[Anonymous]
03.11.2016
10:59:55

Darafei
03.11.2016
11:01:18
а какая схема у Documents?
возможно, там лежит семисотмегабайтный text, и ты хочешь его подрезать перед передачей в грид? :)

[Anonymous]
03.11.2016
11:02:32
да нет размер маленький
10 мг или 15 мг
а почему иммено так отрабатывает 12 sec для 60 тыc записей это нормально ?
как его оптимизировать
и уменьшить до 1 sec

Anton [Mgn, az09@osm]
03.11.2016
11:05:24
дать памяти больше

Vadim
03.11.2016
11:05:42
сделайте EXPLAIN и пришлите пожалуйста

[Anonymous]
03.11.2016
11:05:58
ща
explain пришлю

Anton [Mgn, az09@osm]
03.11.2016
11:06:49
1,3 сек

[Anonymous]
03.11.2016
11:07:46
1,3 сек
это если set maintenance_work_mem
написать

Vadim
03.11.2016
11:07:55
EXPLAIN (ANALYZE,BUFFERS,VERBOSE)

Evgeniy
03.11.2016
11:08:09
10 секунд это со временем сети и клинта
сам постгрес за 4мс вычитывает всё

Anton [Mgn, az09@osm]
03.11.2016
11:08:50

Darafei
03.11.2016
11:09:02

Google

Evgeniy
03.11.2016
11:09:13
не понимаю как maintenance_work_mem тут поможет

Darafei
03.11.2016
11:09:31
никак
set work_mem бы ещё как-нибудь

Vadim
03.11.2016
11:09:47
да там из буффера просто читалось второй раз

Admin
ERROR: S client not available

Evgeniy
03.11.2016
11:10:01
на люнупсе помогает замерить время такое
timing

Dmitry
03.11.2016
11:10:06

Evgeniy
03.11.2016
11:10:09
\o /dev/null

Dmitry
03.11.2016
11:10:10
а не сеть.

Evgeniy
03.11.2016
11:10:12
и выполнить запрос

Vadim
03.11.2016
11:10:18
пришлите пожалуйста вот это EXPLAIN (ANALYZE,BUFFERS,VERBOSE) select * from documents

Anton [Mgn, az09@osm]
03.11.2016
11:10:25

Dmitry
03.11.2016
11:10:49
work_mem - не причем (это для seq scan зачем, для какой ноды?)
диск не причем (там 60k строк карл, точно влезет в файловый кэше)

Anton [Mgn, az09@osm]
03.11.2016
11:11:06
"тихо свопами шурша едет шиндошс неспеша"

Vadim
03.11.2016
11:11:32
ну вот. Читаем из кеша

Dmitry
03.11.2016
11:12:03
я говорю ADO-адаптер какой?

Vadim
03.11.2016
11:12:05
для чистоты эксперимента нужно посмотреть что будет если читать с диска

[Anonymous]
03.11.2016
11:14:08
если ORM ка то Telerik Open acces

Google

Dmitry
03.11.2016
11:14:19
ок, начнем с языка :)
http://www.npgsql.org/ ?
это используете?

[Anonymous]
03.11.2016
11:14:47
C# Asp net MVC

Sergey
03.11.2016
11:15:08
@vadvmkn можно вопрос про mamonsu?

Dmitry
03.11.2016
11:15:26
конечно.

Sergey
03.11.2016
11:16:14
в логах zabix_agent очень часто пишет что гора ключей is not supported

Dmitry
03.11.2016
11:16:20
C# Asp net MVC
http://www.telerik.com/download/data-access видимо это используете?

[Anonymous]
03.11.2016
11:16:29

Dmitry
03.11.2016
11:16:44

Sergey
03.11.2016
11:16:45
на сервере эти ключи помечаются как не поддерживаемые агентом но через некоторое время по ним приходят данные

Dmitry
03.11.2016
11:17:17
mamonsu - для zabbix это агент с активными проверками
zabbix_agent не нужен
если вы все таки хотите его использовать, то вам нужно подцепить соот-вующие темплейты на хост

Sergey
03.11.2016
11:18:07
тот темплейт, что в доке описан я подключил