- Доктор, мне УЗИ назначили на 16 число. А можно я к вам после УЗИ без талона приду?
- Крайне желательно записаться
- Так там в регистратуре талонов к вам нет
- Уверены?
- Да
- Точно уверены?
- Ддда (неуверенно)
- А вы в регистратуре спрашивали?
- Нет ещё.
- Спросите, потом вернётесь *Через 20 минут*
- Доктор, доктор, мне дали талон на 16 число прям после УЗИ, представляете?!
В качестве дополнения к статье Первый пост
Важное пояснение
Статья только в качестве "на память" и для популяризации и обсуждения идеи , описываемые методики изменены и сейчас не используются, ведется работа по тестированию новой методологии и инструментария. Материалы и результаты расчетов - будут чуть позже.

Как известно, основная задача DBA - обеспечить наиболее эффективную и производительную работу вверенной ему в сопровождение СУБД. Для выполнения задачи одно из основных требований - умение определить насколько производительно/эффективно СУБД справляется с получаемой нагрузкой и выдает требуемый результат. Для этого необходимо определить такое понятие как производительность СУБД. Потому, что очень важно, для начала, хотя бы обеспечить мониторинг и иметь возможность сразу сказать - в каком состоянии СУБД - минимальная загрузка, оптимальная, перегруз, авария. Однако, как выясняется, общего понятия "производительность СУБД" до недавнего времени не существовало. Каждый DBA понимал под производительностью, то , что лично ему нравится - количество запросов в секунду, количество зафиксированных транзакций, среднее время отклика СУБД и даже процент утилизации CPU+RAM или вывести на экран десяток другой графиков мониторинга и каким то мистическим образом определить хорошо работает СУБД или плохо.
Ситуацию надо было менять , ибо , как говорится - для того, что бы чем то управлять и улучшать надо это уметь измерять.
Для начала надо определиться с определением и ответить на главный вопрос - что есть производительность СУБД ?
Вспоминая физику , можно использовать базовое понятие:
В физике производительность — это величина, которая обозначает объём работы, выполняемый за единицу времени (например, за час или за день). По-другому её можно назвать скоростью выполнения работы
На этапе нагрузочного тестирования одного проекта, возникла необходимость - оценить степень влияния изменений вносимых разработчиками, на эффективность работы СУБД. Тогда впервые и возникла идея - надо считать метрику производительности .
А может быть производительность СУБД это вектор: (N1, N2, N3),где:N1 - количество активных сессийN2 - количество транзакцийN3 - количество запросов к СУБД в секунду.
В принципе, метрика вполне себе работала и показывала ожидаемые результаты - основная часть изменений не оказывали вообще никакого влияния на работоспособность СУБД . В результате было сохранено очень много рабочего времени , потому , что не нужно стало объяснять и доказывать неэффективности предлагаемых изменений. Все видно на графиках и в таблицах.
Однако, как можно понять - метрика в общем то не совсем производительность считает. Очень важный момент - "количество активных сессий" , и тут возможна первая аномалия.
Аномалия учета ожиданий
Возможна ситуация - особенно при продуктивной нагрузке - работоспособность СУБД падает, а метрика растет.
Причина- количество активных сессий учитывает не только сессии выполняющие запросы , но и находящиеся в состоянии ожидания.
Порядок расчёта метрики производительности СУБД был изменен.
Было принято решение изменить методику расчета, используя вектор:(N1, N2, N3, N4, N5), где:N1 - количество страниц shared_buffer , прочитанных в секундуN2 - количество страниц shared_buffer, записанных в секундуN3 - количество страниц shared_buffer, измененных в секундуN4 - количество завершенных запросов в секундуN5 - количество зафиксированных транзакций в секунду
Этот вариант проработал дольше . И обеспечил хорошую базу для работ по статистическому анализу производительности СУБД.
Аномалия изменения плана выполнения запроса.
Для того, что бы обнаружить аномалию достаточно было провести очень простой эксперимент:
Создаем большие таблицы: родитель-потомок.
В таблицах не создаем индексы.
Подготавливаем запрос. Поскольку индексов нет , используется последовательное чтение.
Выполняем несколько итераций, фиксируем время выполнения запроса и показатель производительности СУБД.
Создаем индексы для таблиц.
Выполняем итерации того же самого запроса.
Фиксируем время выполнения запроса и показатель производительности СУБД.
Аномалия заключается в том, что запрос стал работать на порядки быстрее , стоимость запроса кардинально снизилась , следовательно эффективность резко возросла, но значение метрики - уменьшается.
Причина: При выполнении индексного доступа к данным количество обработанных страниц shared_buffer существенно уменьшается. А при использовании метода доступа Index Only Scan вообще будет нулевым. В результате значение метрики производительности уменьшается.
Для решения проблемы аномалии изменения плана выполнения запроса, расчет метрики был изменен. Необходимо было ввести новые определения .
Полезными операциями(результатами) работы СУБД являются:
Количество строк выданных пользователю.
Количество запросов выполненных пользователем.
Количество зафиксированных пользователем транзакций.
Разделив количество на количество секунд (DB Time), которые потребовались на выполнения операций СУБД в изменяемый промежуток получаем - вектор , определяющий операционную(результативную) скорость:
QPS: Количество запросов в секунду.
TPS: Количество транзакций в секунду.
RPS: Количество строк в секунду.
Для того, что бы иметь одну цифру используется модуль вектора ( QPS , TPS , RPS ).
Полученное значение и будет считаться операционной скоростью.
Работа СУБД заключается в обработке блоков информации:
Прочитанные разделяемые блоки
"Загрязнённые" разделяемые блоки
Записанные разделяемые блоки
Прочитанные локальные блоки
"Загрязнённые" локальные блоки
Записанные локальные блоки
Прочитанные временные блоки
Записанные временные блоки
Таким образом, применив тот же подход , что и для расчета операционной скорости получим- вектор, определяющий объёмную скорость :
RSBS : Прочитанные разделяемые блоки в секунду.
DSBS : "Загрязнённые" разделяемые блоки в секунду.
WSBS : Записанные разделяемые блоки в секунду.
RLBS : Прочитанные локальные блоки в секунду.
DLBS : "Загрязнённые" локальные блоки в секунду.
WLBS : Записанные локальные блоки в секунду.
RTBS : Прочитанные временные блоки в секунду.
WSBS: Записанные временные блоки в секунду.
Аналогично, для получения значения используем модуль вектора ( RSBS , DSBS , WSBS , RLBS , DLBS , WLBS , RTBS , WSBS ).
Полученное значение и будет объемной скоростью.
Отношение операционной скорости к объемной скорости и будет принято как производительность СУБД.
Как видно, производительность СУБД в течение заданного промежутка времени прямо пропорционально объёму полученного результата и обратно пропорциональна объёму обработанной для получения результата информации.
Другими словами - данная метрика показывает - насколько эффективно СУБД выдаёт результат, обрабатывая объем информации .
Т.е. если план запроса изменился так, что запрос стал выполняться быстрее и читать меньше блоков (стоимость запроса снизилась) , то в этом случае значение метрики - увеличится .
Для удобства , обозначим производительность СУБД как CPI. Тогда производительность СУБД в момент времени t , есть значение дискретной функции CPI(t).
Для сглаживания графика и исключения выбросов используется медианное сглаживание.
Дополнение: очень вероятно , что корреляция между операционной и объёмной скоростью - очень интересная тема для более подробного анализа . Нужно протестировать в самое ближайшее время .
Задача анализа производительности СУБД сводится к анализу временного ряда, сформированного из значений функции CPI(t) , для значений t от начала до окончания анализируемого периода .
Задача по оптимизации производительности СУБД сводится к задаче оптимизации функции CPI(t) при изменении набора конфигурационных параметров СУБД .
Задача - определить комбинацию параметров дающих наибольший прирост производительности .На текущий момент, первое, что сразу приходит в голову - использовать метод покоординатного спуска (в данном случае - подъёма )
Примечание
В настоящее время в стадии сбора данных несколько экспериментов по параметрической оптимизации. Результаты будут опубликованы после окончания и анализа.
В комментариях к предыдущей статье было предложено использовать не Евклидову, а Манхеттенскую метрику для расчета модуля векторов операционной и объёмной скорости . Поскольку , в общем случае, размерности векторов нельзя считать независимыми . В настоящий момент , тема в проработке. Возможно смена метрики позволит избежать каких то еще аномалий , которые пока не проявились.

Художник показал, как создавал фигурку кабана Пумбы из мультфильма "Король Лев". Однако есть один нюанс. Автор решил сделать из кабана зомби.

Источник: youtube.com

За острой болью вторглась боль тупая.
Тягучая, все рвущая в душе.
Сознание, на случай уповая,
Надежд рождало глупые клише.
.
Но разум, догорающий в безумстве,
Успел борьбе за жизнь предречь туше.
Взор, со слезой мечтавший о триумфе,
Поблек, скользя на жизни вираже.
.
Рука упала, пальцы разжимая.
Сверкнула сталь в пронзившем палаше.
Закрылись веки тьмою окуная.
Прервалась жизнь в смертельном рубеже.

Всё. Ушли с Кубы, пришли в Тринидад. В Тринидате только видео снимал, а его резать и грузить долго. Да и ничего интересного там нет.
















16 сентября 2013
------------------------------------------------------------
Голос из 2025:
Что ж. Куба...
Мне там было неуютно. Очень неуютно. Природа шикарная, очень комфортный климат, богатая почва, шикарные глубокие гавани, живописные горы (ну... горы... хоть и без снега). Но люди... Люди живут без "завтра". Я тут бухтю, что у нас нет ОБЩЕГО светлого будущего, а них там - вообще нет будущего. Есть только безвыходное серое нищее сегодня и никаких перспектив.
Архитектура - руины былых развитых цивилизаций, которые ни использовать, ни реставрировать - а тупо не на что. Как тебе отделение банка в фойе... а я хз фойе какого заведения то - театр наверное. Дорохобохатошыкарно ... было! триста лет тому назад. Ну, не 300, но 70. Двери ведущие внутрь здания - прям досками заколочены.
Ля, банк! Когда я обналичивал с карточки (Мастеркард) через кассира сто долларей в местной валюте (тоже порядка 100 единиц) - я физически ощутил взгляды горожан. Хватаю деньги, и в эту же секунду Ариэль хватает меня за локоть и мы спешно покидаем это некогда фойе - отделение банка, прыгаем в Мосич и спешно ходу.
Бабене он мне конечно же срастил. Юную, стройную. Ну, так. Без энтузиазма отработала, на 3 из 5. Цену не помню, но дороже Вьетнама (а там, к слову, работают с энтузиазмом и блестящими блядскими глазами).
Ром закупили по барам - оказалось дешевле. Сигары у кого-то с рук купили 2 коробки - до сих пор у отца лежат, рассыпались уже в труху наверное. Не любит он сигары.
Дороги хрущёв кубинцам отстроил - моё почтение. Почти без ремонта до сих пор стоят - потому что минусОв и твёрдой воды не видят.
Про автопарк в комментах дискутировали - очень мало ухоженных авто. БОльшая часть - уколхожены "лишь бы ехало и везло".
Жилые дома... Ну, фото дома Ариэля - это его отца-генерала армейского. Потому, очень даже нестыдно. По кубинским меркам - почти дворец и реально зажиточно они живут.
Обиталища простого люда я и представлять не хочу.
Поля стоят брошенные заросшие. Фруктов на базаре толком нет - я ваще афигел.
Обшорпанность зданий дополненная ставнями-жалюзи. Многие дома из-за этого кажутся заброшенными, хоть и заселены.
Дверь где-то тут в серии - кажется, её покрасили не позднее 1938 г. Как и бОльшую часть всего на острове мнимой свободы. Это прям конкретно режет глаз - лоск тут был, остались его осколки и обтёрки. Ну, и труха.
Плюс в комментах напомнили - относительно чисто на улицах. Тут не докопаться - реально блюдут.
▸Дата выхода: 20 февраля 2025 г. (мир)
▸Главный герой шоу — бывший президент США Джордж Маллен (Де Ниро), который возглавляет так называемую «Комиссию Нулевого дня». Её сотрудникам предстоит найти виновных в разрушительной кибератаке, которая вызвала хаос и тысячи смертей по всем США.
Камрады, принимайте новичка…
Я давно ушел с Пикабу… Заебало многое – и политота, и ботота, и школота, и… топовые посты, которые можно было по первым строкам продолжить цитировать, даже не читая до конца…
Собственно, если ставить цель набрать огромный рейтинг, то для этого нужно лишь изучить, как следует, топовые тамошние посты, проанализировать и понять, что все они пишутся по одному из 5-10 типовых шаблонов… И даже, при желании, сделать мануал «Как написать топовый пост на Пикабу». По аналогии с «Торжественным комплектом» Остапа Бендера…
Помните, как он создал этот медиа-шедевр на продажу бесталанным журналистам? Главка «Потный вал вдохновения» в «Золотом теленке», где из шаблонов компилировался текст любого формата и стиля ))
Пример заведомо рейтингового поста на Пикабу может выглядеть так:
«Я (хромая девушка, одноногий сирота, прыщавый-задрот-ботан – вписать нужное или любое аналогичное) много лет отдавал(а) все самые вкусные комочки новогоднего оливье по требованию (злого папки, безумной матери, садиста-брата – и т.п.) своему семиюродному триждыприемному полубрату. Мне уже 37 лет (или иное), и я по-прежнему вынужден отдавать лучшие кусочки, поскольку у семиюродного полубрата есть ключи от двери моей квартиры, и он просто приходит и берет. Но в этом году я думал-думал, и решил – а сменю-ка я замки в двери! И сменил! Полубрат пришел – а дверь не открывается! Мать (злой отец, сестра и т.п.) названивали мне неделю, возмущаясь, как я мог оказаться таким бесчувственным мерзавцем, но я купил новую симку, стер их из соцсетей, и ни о чем не жалею!»
Хотелось бы, чтобы на «Вомбате» атмосфера была более здоровой и без такой хуйни...
Всем хой! ))

За что ты бьёшь меня нещадно?
За что так лупишь по щекам?
За что относишься прохладно?
За что? Себе отвечу сам.
.
Может за то, что справедливым
Всегда с тобой старался быть.
Под взглядом пристально-пытливым,
Стремился к правде путь открыть.
.
А ты меня учила дальше,
Не раз проверив слово честь.
Я отвечал тебе без фальши:
"Мне тяжело, но силы есть".
.
Мы слабым вместе помогали,
Подставив грудь наперекор.
И страх с тобой мы тоже знали,
его защелкнув на затвор.
.
Умели мы и веселится,
Любили женщин целовать,
Земле умели поклониться,
Ей долг священный свой отдать.
.
Тебя предать я мог, коль нужно
Или в размен вступить с судьбой...
Но ты шепнула осторожно:
"Пора прощаться нам с тобой".
.
Я удивлен был, опечален.
Да, так случается порой.
Что ж, до развилки путь короткий,
Пройдем любуясь красотой.
.
Так думал я, но ты решила
Меня еще раз испытать,
Проверить все, чему учила,
На сколько я силен узнать.
.
За что ты бьешь меня нещадно?
За что так лупишь по щекам?
"Нет сил!" - кричу тебе досадно.
Ты бьёшь сильнее тут и там.
.
Я слаб, я сдался, я повержен.
Ты не уходишь, смерти ждешь.
Прощанья снова миг задержан.
Как я устал, когда ж поймёшь?
Эту историю рассказала мне коллега, а произошла она лет тридцать назад. Как раз тогда церковь вышла из подполья и стало модно "верить в бога", массово стали венчаться и крестить детей. Дальше от имени коллеги рассказ:

"Уверовала мама моей подруги Наташи в бога. Сходила в церковь и окрестилась. Стала на службу регулярно ходить. Тут Наташа дочку родила. И пристала к ней мама - мол надо девочку окрестить, а то негоже некрещёным ребёнку жить. Наталья какое-то время посопротивоялась и сдалась. Мама все вопросы с организацией крещения уладила, а Наталья предложила мне стать крёстной мамой. Я отказываться не стала.
В назначенное время приехали мы в церковь. Зашли в помещение. Мама Наташи осталась снаружи. Только зашли, как девочка расплакалась. А поп стал ругаться:
- Чей это ребёнок орёт? Быстро уймите его.
Я возмутилась:
- Что значит "орёт"? У вас впервые ребёнок в церкви что-ли? Раньше детей не крестили?
- А ты кто такая? Зачем сюда пришла? - поп аж покраснел от возмущения.
- Ну... Я буду крёстной мамой девочке. Меня позвали.
- Нет, не будешь. Непутёвая ты.
И выгнал меня из церкви. Правда перед этим спросил, есть ли ещё кто-нибудь с ребёнком. Поэтому я, когда вышла из церкви, сказала маме Наташи идти вместо меня.
В общем, стою рядом с церковью, жду. Тут Наташа выходит и говорит, что её тоже выгнали потому, что она непутёвая, так как некрещёной оказалась. Вздохнули мы, достали сигареты и закурили. Вот так мы, матери непутёвые, стояли с сигаретами, пока нашу девочку крестили.
Честно говоря, мы были несколько шокированы таким отношением к людям со стороны священнослужителя."
Дороти была первой чернокожей ученицей в старшей школе имени Гарри Хардинга города Шарлотт, Северная Каролина, в которой разрешили совместное обучение белых и цветных в 1957 году

Екатеринбург Ленина, 49 (вход через «Дом Печати»).

Работа «Стрелы». Авторы: Стас Bags и Никита Nomerz сделана в рамках фестиваля уличного искусства «Стенограффия»


