Как перестать называть журнал транзакций SQL Server лог-файлом и прекратить борьбу за его размер.

добавлено: 10 апр 12
понравилось:0
просмотров: 4309
комментов: 22

теги:

Автор: SamMan

Фундаментальная статья описывающая внутренние механизмы приводящие в движение всю систему журналирования транзакций SQL Server. Так же рассматриваются некоторые компоненты имеющие значительное влияние на эти механизмы, но непосредственно к ним не относящиеся. Разбираются вопросы основ журналирования, структуры страниц данных, почему страницы становятся "грязными", как, когда, и почему случаются контрольные точки (checkpoint) и их влияние на журнал, внутренняя структура журнала и его записей, как читать и понимать записи журнала, что такое LSN и MinLSN, почему рост и усечение журнала процессы нормальные, а сжатие - нет, почему короткие транзакции лучше длинных и почему бывает наоборот, почему фиксация транзакции требует меньше ресурсов чем ее откат и еще десятки вопросов так или иначе имеющих отношение к журналу.
Для широкого круга читателей заинтересованных в глубоком понимании скрытых механизмов SQL Server.

Часть 1/12.
Часть 2/12.
Часть 3/12.
Часть 4/12.
Часть 5/12.
Часть 6/12.
Часть 7/12.
Часть 8/12.
Часть 9/12.
Часть 10/12.
Часть 11/12.
Часть 12/12.

Комментарии


  • К какому конкретно SQL серверу относится столь внушительный объем статьи? Или ко всем сразу не зависимо от производителя?

  • Гмм... Ну вообще-то, если перейти НА ЛЮБУЮ страницу блога (а на sql.RU идут лишь анонсы блога оригинального), то шапка блога (присутствующая, опять же, НА КАЖДОЙ его странице) не оставляет ни малейших сомнений кому/чему именно посвящен блог в целом и означенная статья в частности. Ну, по крайней мере, автору кажется что сомнения должны развеяться моментально...

  • Да, и помимо этого - автору в принципе известна ровно одна коммерческая СУБД в названии которой есть сочетание букофф "SQL Server" (и оно же присутствует в анонсе).

  • Я попробовал прочитать пару частей, но так и не понял окончательно о каком сервере идет речь, хотя интуитивно понимаю, что скорее всего это относится к продуктам Майкрософт.

    Автор, твоя следующая статья должна быть "Как разбираться в названиях SQL Server`ов и перестать считать продукты MS единственными на рынке".

  • >>Я попробовал прочитать пару частей, но так и не понял окончательно о каком сервере идет речь

    Еще раз поясняю: "SQL Server" - это, по вашему мнению, может быть Оракл? MySQL? IBM DB2? Postgre? А на логотип в шапке блога Вы внимание обращали?

    >>Как разбираться в названиях SQL Server`ов

    В них нечего разбираться, ибо приведите список всех альтернатив которые приходят вам в голову при сочетании слов "SQL Server". Если в том списке будет ОТ 2-х пунктов - обсудим предложение.

    >>перестать считать продукты MS единственными на рынке

    Автор так и не считает, и даже ни разу. Однако вместе с тем он считает, что статьи (особенно ТАКОГО объема) следует писать исключительно о вещах в которых Разбираешься с большой буквы "Р". Если вы способны Разбираться на таком уровне сразу в пяти СУБД - честь вам и хвала. Автор же полагает, что ему, лично, еще в направлении "SQL Server" рыть и рыть (хотя и познано в данной области не мало). Отсюда его (автора) целеполагание и проистекает. Ну и блога автора заодно.

  • Как ни странно, но и Oracle и FireBird и PostgeSQL и еще множество других продуктов можно назвать "SQL server", в том числе и какой нибудь абстрактный, не существующий в природе.

    Поэтому, при этих словах мне приходит в голову, что автор пишет о каком то "SQL сервере" и мне захотелось понять о чем конкретно идет речь без рассматривания логотипов и поиска этой информации по тексту.

    Если Вам приходит в голову, что это словосочетание ассоциируется только MS SQL Server, тогда сделайте для себя открытие ;-)

  • >>но и Oracle и FireBird и PostgeSQL и еще множество других продуктов можно назвать "SQL server"

    Так и Аксес от того же MS можно так назвать. И даже обосновать это "обзывание", хоть это и в корне не верно. НО ЗАЧЕМ?? Зачем Оракл называть "SQL server"? Подчеркнуть что он по клиент-серверной архитектуре построен и обрабатывает SQL запросы? А что, может быть вариант что с человеком есть резон затевать любой разговор об Оракле, но при этом человек не в курсе двух означенных вещей? Ну я не знаю... Тогда MS SQL Server можно упорно называть "главный Оракл-конкурент", потому что он действительно без проблем конкурирует с последним (впрочем как и последний с первым). Однако просто "SQL Server" как то менее заморочено выглядит, ага?
    Одним словом, если вы пытаетесь доказать что собирательным термином для произвольной СУБД может выступать словосочетание "SQL Server" то тут нам не суждено понять друг-друга. У авторов употребляющих означенное в означенном контексте (я, правда, не знаю ни одного, но, раз вы говорите...) какая-то извращенная фантазия должна быть, ИМХО. Неужели они не видят, что здорово путают своих читателей? Термины "любая СУБД", "любая коммерческая СУБД", "любая СУБД клиент-серверной архитектуры", "любая СУБД с гарантией транзакционной целостности" им не "катят"?

    >>только MS SQL Server, тогда сделайте для себя открытие

    как и вы, собственно, осознайте, что использование "SQL Server" для обозначения совокупности похожих по назначению софтверных платформ - идея КРАЙНЕ неудачная. Альтернативные варианты обходят этот корпуса на четыре минимум... Кроме того, напомню, что в конкретном случае, даже простое визуальное оформление конкретного блога вообще снимает вопросы на тему "о чем спич".

  • Это круто!

    >> Одним словом, если вы пытаетесь доказать что собирательным термином для произвольной СУБД может выступать словосочетание "SQL Server" то тут нам не суждено понять друг-друга.

    Вы не поверите, но собирательным термином для произвольной СУБД ДЕЙСТВИТЕЛЬНО может выступать словосочетание "SQL Server". Особенно, когда идет речь не о конкретном продукте, типа Oracle, MS SQL Server и т.д., а об абстрактном "SQL сервере в вакууме", что очень удобно использовать для обсуждения различных вопросов не связанных с какой-то конкретной реализацией СУБД.

  • SamMan,
    не кормите троллей.

    Ваш блог однозначно заслуживает уважения:)

  • >>Вы не поверите, но собирательным термином для произвольной СУБД ДЕЙСТВИТЕЛЬНО может выступать словосочетание "SQL Server".

    "Можно ли произвольную СУБД обозначать термином 'SQL server'?" - "Можно."
    "Можно ли бэкапы базы данных не делать никогда в жизни?" - "Можно."

    Надеюсь, я обозначил свою позицию.

    >>Ваш блог однозначно заслуживает уважения:)
    Спасибо Вам, Acce_Ekb. Приятно, чего там скрывать. :)

  • @Реалист

    А может ли словосочетание "Internet Explorer" выступать собирательным термином для любого веб-обозревателя? Если может, то браузер производства Microsoft правильно называть только "Microsoft Internet Explorer"?

  • Вот выдержка из Copyright:
    "Microsoft, Access, Active Directory, ActiveX, Authenticode,Excel, InfoPath, Internet Explorer, Internet Explorer 8, JScript,MSDN,Outlook, PowerPoint, Visual Basic, Windows, Windows Server, Windows Server 2008, Windows Server 2003, Windows 7, Windows Vista и Windows XP являются либо зарегистрированными товарными знаками, либо товарными знаками корпорации Майкрософт в США и (или) в других странах."

    Поэтому словосочетание Internet Explorer однозначно относится к конкретному продукту конкретной компании и "собирательным термином" быть не может.

  • 18 апреля 2012, 22:34 SomewhereSomehow

    Реалист,
    уважаемый, помимо того, что во фразе SQL >S<ervrer, слово сервер написано с большой буквы, что кагбэ намекает на имя собственное, а не нарицательное, в целом, термин SQL Server в IT сообществе обозначает именно MS SQL Server. Если вы наберете в гуле "SQL Server", то да, первой ссылкой высветится статья "SQL Server может означать: SQL-сервер — какую-либо серверную систему управления базами данных, поддерживающую структурированный язык ...". Да, это все так, но википедия пишется людьми и в том числе для людей, которые может быть никогда не были знакомы с IT. И если вы принадлежите к сообществу IT, и после того как увидели это название, сразу не ассоциировали его с продуктом MS, это уже говорит о вашей слабой осведомленности. Чего на зеркало пенять? А если вы потрудились открыть блог и увидеть там крупными красивыми буквами, с логотипом (чем кстати я не могу похвастаться как блогер) эмблему Microsift SQL Server и это вам все еще ни о чем не сказало... То может быть стоит начать не с чтения блогов, а с чтения википедии?
    Резюмируя, мое имхо, вы не правы. Можно критиковать статью в техническом плане (если у вас хватает квалификации), можно в орфографическом (хотя как правило авторы допускают ошибки не по безграмотности, а потому что хотят быстрее поделиться с людьми, и еще у них как правило нет литературных редакторов, так что с этом тоже можно быть снисходительным), можно в оформлении. Вы либо буквоедствуете, что характеризует вас как упрямого зануду формалиста, либо искренне не понимаете, что характеризует вас еще хуже, как неспособного ориентироваться в терминах.

    SamMan,
    Забейте. Можете даже удалить комменты и никто вас не осудит (кроме троля), они не конструктивны. Из них, ни один человек читающий впоследствии ваши статьи на протяжении лет (ибо это увековечено инетом) ничего не вынесет. Имеет смысл оставлять только конструктив,а ув.Реалист превращет это в стену контакта. Я сталкивался с таким, и если это бред, как в данном случае, никто вас не будет обвинять в цензуре и анальном огораживании (http://lurkmore.to/Фундаментальное_огораживание). Все ок.

  • @SomewhereSomehow
    Вы можете думать все, что вам в голову взбредет, даже тот бред, что Вы написали. У меня и мысли не было придираться к какой либо стороне материала (технической или орфографической). И автору большой респект хотя бы за то, то он может писать такой большой объем, что например у меня самого не всегда выходит.

    Что касается сути вопроса, то я просто показал возможный взгляд с другой стороны, но ни в коем случае не настаиваю на подобном трактовании. Автор сам решает, как ему писать.

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

  • 18 апреля 2012, 23:31 SomewhereSomehow

    Положительно, вас задело мое замечание о некомпетентности в терминах =)))
    И вы даже принялись высказывать респекты автору, к которому ранее придирались по какой-то глупости, а тут вдруг осознали какую работу он проделал и раскаялись!Непоследовательно, однако.
    Впрочем, ладно, в троли вас, в палату мер и весов =)))

    SamMan,
    прошу прощения, не смог себе отказать в удовольствии =)

  • http://www.microsoft.com/about/legal/en/us/intellectualproperty/trademarks/en-us.aspx


    SQL Server ®

  • @Knyazev Alexey
    Спасибо большое за информацию. Для меня это неожиданная и прикольная новость ;-).

  • На счет того, что можно ловко называть SQLServer: можно конечно и вилку называть ложкой, только люди-то не поймут. Ты попросишь ложку — тебе её и дадут, и будешь ложкой макароны есть.
    SQLServer — это название СУБД фирмы Microsoft. Для названия аналогичных продуктов принято употреблять термин СУБД, РСУБД или на англ. DBMS & RDBMS.

  • @MasterZiv
    Разъяснение вопросов "по аналогии" приводит к очевидному, но часто не правильному выводу, или получается как в анекдоте "На самом деле Иллиаду написал не Гомер, а другой грек по имени Гомер, тоже кстати слепой".

    "SQL Server" - название продукта от MS, а "SQL сервер" - класс программ, которые действительно сервера и которые действительно SQL. Я согласен, что скорее всего вместо термина "SQL сервер" правильнее употреблять "СУБД" или "РСУБД", в том числе и по причине наличия на рынке продукта, созвучного до степени смешения.

    А ведь законодательство прямо запрещает регистрацию подобных товарных знаков, http://www.consultant.ru/popular/gkrf4/79_33.html#p2189
    1. Не допускается государственная регистрация в качестве товарных знаков ...
    ...
    2) являющихся общепринятыми символами и терминами;
    3) характеризующих товары, в том числе указывающих на их вид, качество, количество, свойство, назначение, ценность, а также на время, место и способ их производства или сбыта;
    ...

    Что касается самого обсуждения, то я виноват в том, что не придал значения тому, что слово "Server" написано английскими буквами. Спасибо Knyazev Alexey, он единственный, кто помог мне разобраться в ситуации.

  • Коллеги!

    Я, видит Бог, был крайне толерантен, но, как выразился поэт, "всему же есть границы". Начиная с этого коммента, все последующие обсуждающие вопрос "ху из SQL Server?" БУДУТ СТИРАТЬСЯ! Заведите же топик на нашем замечательном форуме (вот линк на него удален из комментов НЕ будет) по этому поводу, и там уже друг-друга... Спасибо за понимание.

  • Почему-то не работают ссылки на статью. Поправьте, пожалуйста.

  • Ссылки на архив тут https://www.sql.ru/forum/1063739/blog-sqlcmd-ru



Необходимо войти на сайт, чтобы оставлять комментарии