9404
Чат русскоязычного сообщества PostgreSQL, здесь мы обсуждаем технические вопросы, для поиска работы и предложения вакансий есть группа https://t.me/pgsqljobs For English discussion visit https://t.me/pg_sql
Есть кто в потроха сбора статистики зарывался?
Смотрю как сделано do_analyze_rel(). Похоже, происходит следующее:
* выбираем рандомно N блоков
* из них выбираем N строк, причём в этот раз уже не рандомно, а просто по порядку. Поэтому первый блок (из выбранных) прочитается целиком, второй тоже... а N-ый уже может и совсем не прочитается.
Таким образом, кажется(?), статистика склонна считаться по данным ближе к началу таблицы.
Или я ошибаюсь и для выборки строк какая-то рандомизация тоже есть?
Я crosstab взял уже на заметку, но вопрос упирается не в составление выходных данных а в их вывод.
Читать полностью…
Это вариант танцев с бубном с временной таблицей, пока так вижу. Подготавливаем, потом выводим, снаружи.
Читать полностью…
Спасибо! Я не специализируюсь по FastReport, почитаю.
Читать полностью…
Я вам про это и говорю - эта сущность - или вы, или кто-то, кого вы на сервере не хотите видеть. Может, забыли, когда сервер останавливали. SIGINT сам не берется из ни откуда.
Читать полностью…
В том-то и дело, что на сервере только я. Значит, SIGINT шлет некая сущность.
Читать полностью…
Вам уже написали ответ про то, что система баз данных остановлена сигналом SIGINT. Имейте в виду, что этот сигнал сам по себе ниоткуда не берется. Его или pg_ctl выдал - то есть, кто-то остановил сервер вручную с опцией fast, или кто-то выдал команду kill 2 постмастеру - тоже вручную (или совсем маловероятный, но существующиq вариант - кто-то запустил сервер командой pg_ctl, и в процессе запуска успел нажать Ctrl-C, тогда postmaster запустится и опять же от pg_ctl получит сигнал SIGINT). SIGINT, это не тот сигнал, который система генерит, типа segfault.
Читать полностью…
Не исключено, что можно просто транспонировать таблицу на уровне вашего "генератора отчетов".
Читать полностью…
Сомнительна в чем? Не вижу сомнительности. Нужна так называемая сводная таблица, с произвольным количеством строк и столбцом. В mssql нет проблем с этим.
Читать полностью…
Можете использовать JSONB (однако, ваша затея довольно сомнительна по определению, т.к. это заметно снижает предсказуемость поведения функции для её пользователя, даже если вы попытаетесь дать какие-то гарантии). Кстати, вам нужно вернуть одну строку (с N столбцами), или же N строк по M столбцов?
А record тут вам не помошник, т.к. при вызове такой функции надо будет определить набор столбцов, да.
Это один из тех вопросов, на которые нельзя ответить в двух словах.
Читать полностью…
не думаю, поскольку не помню такого функционала в systemd.
я лишь привёл пример того, что может вызвать fast shutdown. по сути всё сводится к тому, что fast shutdown вызывается отправкой сигнала SIGINT мастер-процессу, а вот кто это делает в вашем случае — не могу знать.
у вас есть patroni? возможно это он.
у вас есть repmgr? возможно это он.
у вас есть напарник? возможно это он...
Не специалист в редакторах, я больше по БД) Понял, спасибо.
Читать полностью…
Не, я имел в виду найти такую опцию прямо внутри вашего "FastReport". А если получится с временной таблицей – ну, почему нет, не так уж и ужасно.
Читать полностью…
Ну, если бы я этим занимался, то наверное бы таки транспонировал вывод (таблицу) от PostgreSQL (либо средством самого "генератора" (что вам видимо не подходит), либо самостоятельно вразрез между ним и СУБД).
Кстати, в PostgreSQL для этого из коробки есть tablefunc, но он тоже требует статического определения (к "сожалению").
Я в процессе поиска, с обеда вернулся вот :)
Подумал, что в чате накидают вариантов в случае, если на хосте только голый постгрес
но видимо он не совсем голый
json возьму на заметку.
Объем данных относителен, нельзя определить, зависит от внешних потребностей - вывод в конце за определенное время.
FastReport - редактор отчетов. Когда у него задача вывести не так как в наборе данных, он сильно тупит)))
https://github.com/hyperion-cs/pgsql_for_beginners#4-links
Читать полностью…
https://sql-ex.ru/?Lang=0
не смотрите на старый дизайн, там очень хорошие упражнения по написанию запросов
Всем добрый день!
Приобрела курс по SQL, начала изучать.
Тяжело дался урок по джоинам. Занимаемся в PostreSQL.
Подскажите пожалуйста какие-либо полезные материалы, которые помогут усвоить тему (литература/видео/статьи).
Благодарю заранее!
Вывод в jsonb?
Потом опять преобразовывать
Объем данных может быть большим
На данном этапе требуется вывод в FastReport
FastReport без такого, если всё плоско разместить работает не допустимо медленно
N строк с M столбцами, всё произвольное. Вывод в jsonb? (не понятно).
Потом опять преобразовывать, это что-то не то. Объем данных может быть большим.
На данном этапе требуется вывод в FastReport данных как они есть, т.е. что выдает запрос то и выводим (подключая c# обработку для вывода произвольного количества столбцом). FastReport без такого, если всё плоско разместить работает не допустимо медленно на больших объемах.
Интересно еще следующее: "структуру строк нужно описать в самом запросе, чтобы система знала, как разобрать запрос и составить его план"
В mssql, и даже если копнуть глубже в ранний Sybase, в 80-е, таких проблем не было.
Там не надо ничего описывать на выходе.
Видится как недоработка в postgres. Если захотеть то можно сделать, с виду. Это издержки изначально студенческого программирования?)
ничавой у меня нет, голый постгрес и системда)
Ну SIGINT это не SIGKILL, так что выглядит как штатная защита
хммммм, то есть это системда сама паркует сервис, когда оператива начинает угрожающе заканчиваться?
я подергал еще раз и своими глазами видел, как в мониторинге оператива заканчивается
и я много раз видел, как бд здыхает по ООМ, это происходит быстро и резко