Pull to refresh
370
8.4
Дмитрий EvilDBA @Tzimie

DBA

Send message

Нормализация SQL profiler трейса для группировки

Reading time5 min
Views2.4K

Если вы разбираетесь "почему тормозит база" и у вас есть трейс, созданный MS SQL profiler, то что вы делаете первым делом? Правильно, сохраняете его в таблицу, чтобы поразбираться с ним с помощью родного SQL, а не в GUI.

Очень хотелось бы сделать group by TextData, но увы - так не получится из-за разных параметров у процедур и кверей. А выразительных способностей SQL не хватет, чтобы эффективно 'нормализовать' трейс.

Но ведь можно скрестить ежа и ужа, SQL и Python, и решить задачу в несколько строк! Полезные скрипты ниже.

Читать далее
Total votes 4: ↑4 and ↓0+4
Comments0

Кто трусы ребятам шьёт? Ну конечно, не пилот

Reading time1 min
Views3.1K

Лётчик водит самолёты -
Это очень хорошо.

Повар делает компоты -
Это тоже хорошо.

Доктор лечит нас от кори,
Есть учительница в школе.

Ну а ваш покорный слуга сам не знает чем он занимается и полезен ли он человечеству.

Доктор, кто же я?
Total votes 20: ↑6 and ↓14-6
Comments12

С чем кушать Irregular Selectivity в MSSQL и не только

Reading time5 min
Views6.9K

Недавно мне пришлось объяснять это нашим братьям меньшим на работе, и я решил написать текст, который может пригодиться. В конце вы найдете ссылку на полезный скрипт для MSSQL, а также Postgres и MySQL.

В идеальном мире, если в таблице миллион записей, а разных значений например всего 100K, то на каждое значение приходится по 10 записей. Но что делать, если в список ваших значений затесалось особое значение, например, NULL, пробел или 'n/a'? Для SQL optimizier это головная боль. Для вас тоже.

Картинка иллюстрирует людей со значением 'n/a' в поле SSN

Читать далее
Total votes 3: ↑2 and ↓1+2
Comments19

Эволюция бесконечной случайной конфигурации в игре «Жизнь»

Reading time4 min
Views17K

Эту вещь я хотел сделать с детства, но тяжело такое имплементировать, когда у тебя что на ЕС-1022, что на СМ-4 не хватает памяти. Сейчас такие вещи делаются играючи.

Итак, засеем бесконечное поле в игре "Жизнь" клеточками с вероятностью p от 0 до 1. Какова будет плотность популяции клеток после N ходов?

В статье я рассматриваю эволющию в течение первых ходов, после десятков ходов, в течение тысяч ходов, и после Гугола ходов. Вывод очень вас удивит.

Читать далее
Total votes 58: ↑58 and ↓0+58
Comments71

Reverse DevOps, an invitation to project «Bell»

Reading time3 min
Views951

Typical DevOps handles code deploys in a single direction: from Dev to PROD, from lower environments to higher environments, and for this there are many well known solutions like Jenkins, Terraform, Octopus. But in the opposite direction the situation is not so good.

Yes, in many companies there are home-grown processes to copy databases from higher environments to the lower ones (with hiding/removing sensitive data) to reproduce problems, found on PROD. However, in complex scenarios an access to PROD is needed to find the root cause. Developers need at least logs. And in the Enterprise world it's all depend on the level of paranoya how sensitie the information is.

Thi is what we suggest, the project is to create a safe access method to the higher environments, combining easy friendly interface and interactivity with the full audit of all operations and controlled manner of what users can do and what they can't. The project is called Bell -Action at a distance, and a bearded guy on the logo is John Steward Bell, you know him if you had ever heard about the Quantum Entanglement.

Read more
Total votes 1: ↑1 and ↓0+1
Comments0

В поиске почти тонкого множества целых

Reading time4 min
Views4.4K

Если не бухать, то чем ещё заняться на новогодних праздниках, если у тебя нету девушки, как не абстрактной математикой и теорией чисел в частности?

Я решил с помощью вычислительных и аналитических методов нащупать границу между 'большими' и 'тонкими' бесконечными множествами натуральных чисел. Что это? Объясню под катом.

Читать далее
Total votes 18: ↑17 and ↓1+21
Comments6

DevOps «наоборот», приглашение в проект Bell — action at a distance

Reading time3 min
Views4.2K

Типичный DevOps обеспечивает движение кода от Dev по направлению к PROD, и с этим все хорошо. Ну, насколько это может быть хорошо в нашем IT мире. Jenkins, Terraform, Octopus и многое другое к вашим услугам. А вот с движением информации назад все куда сложнее.

Да, во многих компаниях есть процессы копирования баз из PROD в QA и DEV (с обрезанием секретной информации), однако в сложных случаях необходимо смотреть, что происходит именно на PROD. Хотя бы логи. И, если вы работаете в Enterprise, то все сложно или очень сложно - в зависимости от уровня паранойи важности информации.

Вот какое решение предлагается (и уже реально используется в компании, где работает один из авторов). Проект бесплатный, open-source и мы ждем тех, кому будет интересно его развивать. Welcome! Да, бородатый мужик на лого - это Джон Белл, вы его знаете по концепции "квантовой спутанности".

А предлагается вот что...
Total votes 9: ↑5 and ↓4+3
Comments12

Половой отбор с точки зрения программиста

Reading time5 min
Views16K

Когда я был молодым наивным юношей, из полезных материалов был разве что труд Протопопова "Трактат о любви, как ее понимает жуткий зануда". Сейчас материалов куда больше - везде можно прочитать про "баланс значимости", "френдзону", даны названия разным явлениям, например, "завиноватить" итд.

Однако, несмотря на то, что эта информация помогает с практической точки зрения, то есть отвечает на вопрос "что делать", мне хотелось бы сделать реверс-инжинеринг и разобраться, зачем это сделано, то есть зачем у нас в голове именно такая прошивка. В чем польза этого с эволюционной точки зрения?

Читать далее
Total votes 29: ↑19 and ↓10+17
Comments52

Зрительная афантазия от лица страдающего ею

Reading time2 min
Views35K

В одном из комментариев на одну мою статью я прочитал новое для себя слово - Афантазия. Полез в вики, и понял, что это как раз про меня. Ниже я разберу, как с точки зрения айтишника выглядит этот баг (или фича?) мозга. Картинка выше имеет прямое отношение к теме.

Читать далее
Total votes 17: ↑9 and ↓8+7
Comments88

Наблюдения за ковидной статистикой

Reading time2 min
Views7.5K

Играясь с публично доступными данными, я начал замечать странности в статистике по Ковид по разным странам. Я приглашаю публику принять участие в мини-расследовании или, хотя бы, помочь с идеями.

Читать далее
Total votes 15: ↑7 and ↓8+1
Comments42

Удивительная однозвенка на MS SQL

Reading time5 min
Views5.4K

... с объектной ориентированностью, сериализацией, reflection, полиморфизмом, визуальным программированием, no-code, блэкджеком и шлюхами - и это на MS SQL 6.5 в 1995 году!

Знакомые с историей IT при слове "однозвенка" вспомнят dBase и Clipper. Однако, я расскажу об ERP однозвенке на MS SQL. Интерфейсная программа для этой ERP общалась с базой через несколько интерфейсных таблиц и несколько процедур. То есть фактически она является браузером, который за слой не считается. Да, это #ненормальное программирование, которое дало ряд уникальных свойств.

Иногда ведь хочется ручку настройки повернуть до максимума и довести идею до абсурда логического завершения. Как говорили родители одному из героев фильма "О чем говорят мужчины, продолжение" - "Так ты дойдешь до черте-чего!", а он думал "Так уже хочется взять и дойти до этого черте-чего!".

Немного некрофилии
Total votes 19: ↑19 and ↓0+19
Comments40

Неотправленное письмо боссу в кровавом Enterprise

Reading time5 min
Views24K

Хоть я и интроверт, но с soft skills у меня неплохо. Поэтому я стараюсь придерживаться принципа:

True wisdom: 1. Having a lot to say. 2. Not saying it.

Вариацией пункта 2 являются неотправленные письма менеджерам. Для ускорения процесса они пишутся в голове. Однако иногда хочется поделиться рассуждениями, чтобы не держать все в себе.

Читать далее
Total votes 71: ↑54 and ↓17+55
Comments48

Email Chart — это вам не ASCII Art

Reading time4 min
Views3K

Отправляем графики (peformance, да и вообще все что угодно) по почте с PROD серверов, куда просто так не добраться .

Мужик! Графики по почте? Что, cерьезно? Web интерфейс, интерактивность, Grafana - "нет, не слышал"? Ты бы еще звездочками графики нарисовал бы в письме, ASCII art-ом. - говорит мне мой воображаемый оппонент.

Конечно, он абсолютно прав в идеальном, воображаемом мире. Это вам подтвердит любой пролетающий там розовый единорог. Однако, если мы не в стартапе, а в кровавом enterprise, то все не так розово.

Читать далее
Total votes 12: ↑12 and ↓0+12
Comments3

Еще один взгляд на парадокс Ферми

Reading time4 min
Views25K

Где же разумные существа во вселенной? Как решается парадокс Ферми - да где же все? Одно решение я уже предлагал, а это заход с другой стороны.

У меня есть одна мысль, но мне придется вначале аккуратно разложить перед вами кусочки пазла, чтобы в самом конце собрать все воедино. Поэтому прошу немного терпения и Welcome под кат.

Читать далее
Total votes 54: ↑43 and ↓11+48
Comments314

Воспоминания бумера: Америка в эпоху дот-комов

Reading time7 min
Views15K

Продолжение карьеры бумера в Америке.

Культурный шок, холодная ночевка в лесу на куртке, взлет и крах дот-комов, сдача на права и разговор с копом. Карьера, разные фирмы, жизнь. Простые путешествия на самолетах до 9/11.

Читать далее
Total votes 46: ↑46 and ↓0+46
Comments16

IT в «лихие 90е» — из воспоминаний бумера

Reading time6 min
Views33K

Карьера ITшника в "лихие 90е" и первые заработанные деньги. Марс и Сникерс, видеомагнитофон, первая машина, Btrieve, NLM модули, ERP для фирмы, собранная на коленке и отлаживаемая сразу на PROD, взлет и падение Novell.

Годы: 1991-2000.

Читать далее
Total votes 84: ↑81 and ↓3+109
Comments106

Путь в IT, воспоминания бумера. Часть 2, институт, PDP-11 (СМ ЭВМ)

Reading time4 min
Views9.2K

Первая часть тут

Мое программирование продолжилось в сентябре, после поступления в институт (ЛЭТИ). Программировал я вечерами, в совхозе под Любанью (Ленинградская область), после уборки морковки на полях, потому что учеба в ЛЭТИ началась именно с помощи совхозу, причем на это ушел весь сентябрь. На чем же я программировал, спросите вы? Я программировал ручкой в тетрадке, на языке PASCAL. Других студентов это удивляло, но я не был полным ботаником - теперь я понимаю, что в моем поведении был протест и элементы троллинга окружающих.

Писал же я интерпретатор для языка ИИ PLANNER. Этот LISP-подобный язык обладал куда большей простотой и выразительностью, чем LISP, и имел back-tracking. Вскоре после возвращения в город я стал получать машинное время на одной кафедре, где стояли СМ ЭВМ - аналог PDP-11. Выглядели они примерно так:

Читать далее
Total votes 21: ↑20 and ↓1+29
Comments76

Information

Rating
724-th
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Registered
Activity

Specialization

Specialist
English
C
SQL
Python
High-loaded systems
C#