Quantcast
Channel:
Viewing all 74 articles
Browse latest View live

План запроса с уровнем изоляции «Read Committed»

$
0
0
Craig Freedman, 2 мая 2007г. Оригинал статьи тут: https://blogs.msdn.microsoft.com/craigfr/2007/05/02/query-plans-and-read-committed-isolation-level/

В прошлый раз мы рассмотрели то, как одновременные изменения могут стать причиной просмотра на уровне изоляции read committed. Также было показано что эти условия могут привести к выборке одной и той же строки несколько раз или вообще к отсутствию строки в выборке. Теперь давайте рассмотрим как одновременные изменения могут отразиться на работе более сложных планов запроса.

Продолжить чтение.

УЖи и выбор

$
0
0
ШО, опять?!

Наступил следующий високосный год, а это означает, что настала пора поста в нашем блоге, раз уж мы завели такую традицию.

Внимательный читатель уже разобрался в УЖах, а невнимательному как то пох. Но мне видится, что нужно сделать краткую выжимку предыдущих двух статей, дабы облегчить восприятие новой.

1. Таки да! УЖи это утверждения. Догма, аффирмация, тезис или какие вам там нравятся синонимы, как не зови все одно - ужи, они и в африке ужи (правда гугель говорит, что африканские зеленые, но ху кэрс).
2. На персональной коллекции ужей строится мышление индивида, читай свое собсное болотце. Болотце и ужей индивид стережет, критиков пинает, а новых ужей пускает редко. (не все, но в основном)
Я сама дочь офицера и тут ... ну вы поняли.
В общем здесь мы сделаем лирическое отступление. Болотце полагается у каждого свое, дается ему по праву рождения раз уж создатель наделил индивида сознанием. Ток в самом начале пути болотце пустое. И вот воспрянул он ото сна небытия.... хм... чет не туда, короче родился и понеслось. Начинает течь информационная вода, а дальше застой, болото, ужи... кароч четайте первую статью. Куда интереснее размерность болот. Мне видится, что создатель наделил нас более менее одинаковыми способностями, а значитца у размера болот есть лимит, верхняя граница, свыше которой индивид за ним уследить уже не может, разве что он шерлок холмс со своими чертогами разума. У обычного индивида не чертоги, а поскромнее жилище, так что лимиты наше все. Думаю это важно в принципе, но пока не размышлял на эту тему.
А еще есть индивиды у которых там по жизни одна вода, но это уже совсем другая история
.
3. В современном мире с ужами туго. Точнее проблема не в том, что их нет, а в том, что они как раз есть и много. Об этом подробнее.


Вот раньше!
Современные энторнеты это очередное чудо света, спустя 100 лет, когда мы будем жить в виртуальном мире (если мы уже не там) обмен информацией сильно упростится и эти ваши энторнеты станут не нужны. Это будет архаичная неповоротливая хрень, которой можно будет только восхищяццо восхваляя предков за их усидчивость, усердие и инвестиции частицы своих жизней в ЭТО. Но это потом, а вот прям щас энторнет это кран, не.... это информационное цунами. Оно огромным потоком пытается наполнить нас каждый день информацией как есть, то есть в сыром виде.

Раньше были книжки, они своей структурностью ломали волны мусора и было проще. Кто то взял информацию, приготовил её аналитикой, пролил соусом эпистолярного жанра и на красивом блюдечке подал. Вкусненько! Ну или не очень, тут уж как пойдет.

А тут никакого соуса - все сырое, без оформительского соуса, с паразитами глупости и необразованности.

Дерзай индивид! Копай!

Сложно братцы? А мне каково скажу я вам. И вот тут у нас плавная подводка.

Выбор УЖей значитца.

Почему выбор это проблема спросит внимательный читатель? Знаете ли вы или нет, но теория принятия решений и теория выбора это целая наука и предметная область. Целая статья в кипедии есть, даже в русской. Только в кипедии все идет про тервер и прочие эти ваши сопроматы. Шо за люди математики, всюду лезут.

А вот проблеме выбора в психологии пара строчек в конце статьи еще и обозвали Шварца неавторитетным источником. Его! Единственного изучателя этой области более менее понятно. Не то что бы я восторгался мистером Шварцем, есть у меня вопросы к его постулатам, но этот персонаж заводит весьма себе важную терминологию в своих книжонках и на выступлениях в ТЕД.

Знали ли вы, что выбор имеет не только точку счастья, но и точку паралича. Это очень интересный феномен, я про подобное исследование слышал в каком то видосе на ютьюбчике. Давайте по простому, пришел ты за колбаской в какую нить магнитерочку, а там дегустация колбас. Если ты видишь, что там 5 видов колбас на дегустации, то колбаску ты купишь с вероятностью 33%, а ежели там будет 25, то уже 3%. Смекаешь о чем я?

Картинка с другого сайта.

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

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

Собсно все!

Да ладно, ты же не поверил, что я брошу тебя вот тут. К чему ведут все излагаемые выше мысли. Если исходить из того, что
  • энторнеты массово наплыли к нам в 10-тых годах (ппц, ты ощущаешь какие мы старые, ёпт?)
  • это породило огромный набор ужей в этих самых торнетах, в том числе от психов, убийц или, чего хуже, всяких хипстеров
  • огромный набор ведет к параличу выбора
мы с тобой мой юный читатель столкнулись с первым массовым параличем формирования болотц.

Да, в десятых годах сложно оценить последствия этого явления. Это как эпидемиями, начинаются они тихо и малозаметно.
Паралич выбора уже начался. Эпидемия паралича началась. ТЫ вот думаешь что аффтор врет, никакого паралича лично на себе ты не ощущаешь. Но зацени, что я написал аффтор с двумя Ф. Это я так показал, что я и ты стары как г..но мамонта. Мы не поколение десятых, своих ужей мы уже наловили. Последствия нашей эпидемии мы почувствуем в ближайшие 5 лет.

Тут уж даже господин Геббельс сложил бы лапки, взял ведро попкорна и понаблюдал со стороны.

Собсно цель моего блога найти чудо таблетку лечение этого заболевания. Но пока получается только описать симптомы.
В следующей части попробуем описать способы алгоритмизации сбора ужей.

Tips for DBA: The SQL Server service and the SQL Server Agent Service fail to start on a stand-alone

$
0
0
Если в журнале приложений есть ошибки для MSSQLService: “…TDSSNIClient initialization failed with error 0x80092004…” нужно В POWERSHELL создать самоподписной сертификат (заменив в скрипте имя SERVERNAME.DOMENNAME.ru на полное имя вашего сервера):

New-SelfSignedCertificate -Type SSLServerAuthentication -DnsName SERVERNAME.DOMENNAME.ru -KeyLength 2048 -KeySpec KeyExchange -KeyUsage KeyEncipherment -TextExtension @(“2.5.29.37={text}1.3.6.1.5.5.7.3.1”) -NotAfter (Get-Date).AddMonths(1200)
Далее нужно указать для протоколов созданный сертификат, как это описано в главе “Configuring SSL for SQL Server” статьи: https://docs.microsoft.com/en-us/previous-versions/sql/sql-server-2008-r2/ms189067(v=sql.105)

Полная информация об академике Глухих

Фонтомные системы автоматизации

$
0
0
Такие системы начали появляться там в конце прошлого тысячалетия с рождества Христого. Разработка их проводилась в текстовом формате, затем на платформах выделялся ресурс для закачки собственно систем, после проведения работ они уничтожались Что и являлась целью их создания

Установка FastReport вручную

$
0
0
Пример для Delphi Rio (D26).

1. Запустить recompile и скомпилировать пакеты.
2. Появится папка LibD26.
3. Удалить все frx*.bpl, fs*.bpl, fqb*.bpl из System32/SysWOW64.
4. Переместить все *.bpl из LibD26 в C:\Users\Public\Documents\Embarcadero\Studio\20.0\Bpl.
5. Установить bpl через Component/Install packages: dclfrx*.bpl, dclfs*.bpl из вышеуказанной папки Bpl.
6. Из папки LibD26 удалить все pas-файлы, чтобы при сборке проекта каждый раз не перекомпилировались dcu-файлы.
7. Добавить папку LibD26 в Tools/Options/language/Delphi/library/library path.
8. Добавить папку Source в Tools/Options/language/Delphi/library/Browsing path (на ваше усмотрение).


ист
https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=190407&msg=22120299

Базовые наборы структур данных

$
0
0
При развитии систем автоматизации рекомендуется пользоваться разработанными и опытными методами форматирования данных. Например для систем подготовки производства рекомендуется использовать структуры МПИ, спецификаций, маршрутных карт. Для разработки более больших вторичных структур в нашем случае необходимо пользоваться структурой картотек, где структуризация проводится по разделам, обозначению карточки и графам карточки, а также таблицы к обозначению карточки. Этот набор структур может являться базовым для систем архивации данных документов и проведению необходимых работ.
Добавим к существующим структурам форму Я для разделов картотек. Тогда с помощью структур картотек можно реализовать и первичные документы ТЕКРАМ.

Tips for DBA: “SET QUERY_STORE = OFF” AND “QUERY STORE BACKGROUND FLUSH DB”

$
0
0
Если выполнение отключения QS для базы данных блокируется системным процессом: QUERY STORE BACKGROUND FLUSH DB

SETDEADLOCK_PRIORITY HIGHALTERDATABASE[DATABASENAME]SET QUERY_STORE = OFFWITH NO_WAIT
GO


Подключиться через DAC и сделать:

TRUNCATEtable sys.plan_persist_runtime_stats;TRUNCATEtable sys.plan_persist_runtime_stats_interval;TRUNCATEtable sys.plan_persist_plan;TRUNCATEtable sys.plan_persist_query;TRUNCATEtable sys.plan_persist_query_text;TRUNCATEtable sys.plan_persist_context_settings;


Подробности можно найти тут: Manually Clearing the Query Store

О наших технологиях программирования

$
0
0
Наконец мы получили платформу для создания майнеров текстовых открытых систем. Такой платформой может стать КОТЛИН, как средство создания майнеров для закачки и обработки классов текстовых структур. Почитать о ней можно в https://kotlinlang.org/docs/reference/server-overview.html.Для получения профессиональной оценки ваших проектов можно обратиться например к Михаилу Игоревичу Глухих - потомку нашего академика, который и является фигурой, объединяющей наши усилия по созданию компьютерных информационных систем.

Сортировка TStringDynArray

$
0
0
не забудьте подключить
uses
System.Generics.Collections, System.Generics.Defaults;


procedure Foo;var
  arrFiles: TStringDynArray;begin//получаем список каких-то файлов
  arrFiles := GetListDocs('d:\MyFiles\RootDir');//сортируем
  TArray.Sort<string>(arrFiles, TStringComparer.Ordinal);end;

Уровень изоляции «Repeatable Read»

$
0
0
В двух предыдущих статьях было продемонстрировано как запросы с уровнем изоляции «read committed» могли порождать неожиданные результаты. Это становилось возможным из-за выполняющихся в одно и то же время изменений затронутых запросом строк. Чтобы недопустить подобных неожиданностей (но не всех), следует использовать для выборки уровень изоляции «repeatable read». В этой статье мы как раз и рассмотрим как одновременные изменения ведут себя с уровнем изоляции «repeatable read» (повторяемое чтение).
В отличие от просмотра с «read committed», просмотр с «repeatable read» удерживает блокировки каждой затронутой строки до окончания транзакции. На всём протяжении транзакции заблокированными могут оказаться даже некоторые строки, которые не соответствуют выборке в результате запроса. Такое блокирование гарантирует, что затронутые запросом строки не будут изменены или удалены в параллельном сеансе, пока текущая транзакция не будет завершена (независимо от того, будет ли она зафиксирована или произойдёт её откат). Эти блокировки не защищают от изменения или удаления те строки, которые еще не были охвачены просмотром, и не препятствуют вставке новых строк межу уже заблокированными строками.

Продолжить чтение.

Вариационное программирование Jump

$
0
0
В отличии от линейного программирование где исполняемые команды следуют одна за другой в строгом соответствии с линейным алгоритмом, вариационное программирование нарушает такой порядок. Следующая команда начинается исполняться из другого места программы. Начало этого мы находили в определённых версиях Assembler. Именно там началось то что мы иногда называем искусственным интеллектом.

Вариационное программирование if then else

$
0
0
После появления вариационных вариантов протекания программных процессов появились бифуркационные варианты. В этом случае рассматриваются два возможных варианта дальнейшего продолжения. Не очень вариационное развитие событий так как дальнейший вариант развития может никогда не исполниться при наличии применения JUMP при выполнении условий.

Ещё раз о MUMPS

Ещё о майкрософт


Миграция группы доступности AlwaysON в другой кластер

$
0
0
Миграция в новый кластер подразумевает, что для перемещаемой группы доступности необходимо создать новую первичную реплику на сервере в новом кластере. Основной целью планирования миграции группы доступности в другой кластер является минимизация времени недоступности ресурсов. Для этого ресурсы переезжают на новый, специально выделенный для этого сервер. Новый сервер вначале подключается, как вторичная реплика с синхронной фиксацией, а потом принимает на себя роль первичной реплики. Прослушиватель группы доступности удаляется из старого кластера и заново создаётся в новом кластере, вслед за созданием группы доступности.

Продолжить чтение.

Теперь ещё раз о ДИАМС

$
0
0
Я как свидетель тех процессов, происходящих в конце 80-х годов заявляю, что ДИАМС как идея был оригинальной версией MUMPS, созданной трудом советских инженеров И только крах в производстве советских ЭВМ остановил процесс создания собственной операционной системы. Присутствующая версия ДИАМС является только частью того что разрабатывалось в Советском Союзе и мы полноправные владельцы этих систем. Кто за ДИАМС - голосуем http://wikiredia.ru/wiki/ДИАМС

Serializable vs. Snapshot Isolation Level

$
0
0
По материалам статьи Craig Freedmanhttps://docs.microsoft.com/ru-ru/archive/blogs/craigfr/serializable-vs-snapshot-isolation-level
16.05.2007
Уровни изоляции транзакций Serializable и Snapshot обеспечивают согласованное чтение из базы данных. На любом из этих уровней изоляции транзакция может читать только зафиксированные данные. Более того, транзакция может читать одни и те же данные несколько раз, не заботясь о каких-либо параллельных транзакциях, вносящих изменения в эти же данные. Те нежелательные эффекты, которые были продемонстрированы в предыдущих статьях при Read Committed и Repeatable Read, на уровнях изоляции Serializable и Snapshot просто невозможны.

Продолжить чтение.

35 лет СРПОС ТЕКРАМ - так что же там было

$
0
0
Обобщённая программа печати
1.Формирование ТЕКРАМ как операционной системы начиналась с создания обощённой программы печати формирования текстовых файлов выходных документов.
2.Программы печати документов формировались как формирование выходной формы на основе оформления в текстовом виде произвольных массивов ДИАМС.
3.Текстовый файл печати документов был представлен как трёхчастный файл, состоящий из шапки, рабочего поля и основной надписи.
4.Для однозначного представления информации в шапке и основной надписи был создан числовой кодификатор, где под числом кодировался тип информации для граф части выходной формы.
5.Для формирования рабочего поля документа была написана программа, на основе которой формировались строки рабочего поля в массив.
6.Следующей программой была программа формирования листов печати на основании массивов шапок, рабочего поля и основных надписей.
7.Заключительной программой была программа формирования билистинга и вывод на устройства печати.
8.При переходе от ДИАМС на технологии, работающие под операционной системой MS DOS на основе этих программ было создано программное обеспечение формировния текстовых файлов этой ОС.
9.В последующей реализации этих технологий была сделана попытка автоматизированного создания комплекта документов ПП в виде текстовых файлов MS DOS.
10.Не претендуя на особенную оригинальность в реализации программных реализаций ДИАМС эти программы оригинальны в контексте построения СРПОС.

Подарок от мультиграф

$
0
0
Можете скачать 28 000 книг электронной библиотеки совершенно бесплатно если не можете заплатить 300 рублей там https://yadi.sk/d/JK5RhKSboM5TWg
Viewing all 74 articles
Browse latest View live