MS SQL Server

  Все выпуски  

MS SQL Server - дело тонкое...


Информационный Канал Subscribe.Ru

#263<<  #264

СОДЕРЖАНИЕ

1.СЕМИНАР
1.1.Питер: Проектирование архитектуры & SQL Server 2005 Analisys Services
2.СТАТЬИ
2.1.AWE и locked pages in memory на 64-х битной платформе
3.ССЫЛКИ НА СТАТЬИ
3.1.Статьи на русском языке
3.2.Англоязычные статьи
4.ФОРУМ SQL.RU
4.1.Самые популярные темы недели
4.2.Вопросы остались без ответа
5.КНИГИ
5.1.Освой самостоятельно SQL. 10 минут на урок. 3-е издание

СЕМИНАР

Проектирование архитектуры & SQL Server 2005 Analisys Services

Санкт-Петербург. 30 июня 2005 года 18:00 в помещении компании DataArt состоится очередной семинар Russian SQL Server Club ( Microsoft & SQL.RU).

Встреча проводится при поддержке компании DataArt и Digital Design.

Для участия в семинаре требуется регистрация: Форма регистрации на семинар

Программа встречи:

  1. Практика проектирования архитектуры, обзор Case-средств, документы ФС, Концепции и логики, ТЗ и ЧТЗ
    Андрей Каливанов, Digital Design
    На примерах доказывается, что наличие внушительного объема документации не только затрудняет, но и облегчает ведение сложных, ресурсоемких проектов с большим количеством участников.

  2. Запуская Analysis Services 2005...Открытия.
    Полина Трофимова, Digital Design
    Доклад уровня 200. UDM, DataMining, Business Intelligence Studio. Краткий обзор нового подхода MS к технологиям многомерных хранилищ данных. Новые возможности, алгоритмы DataMining, инфраструктура BI. Продолжительность: 1 час.

Информация о месте проведения: DataArt, Санкт-Петербург, Большой Сампсониевский пр., д. 60 А
т. +7 812 333-4440, Email: info@dataart.com

Карта проезда

Форма регистрации на семинар

[В начало]

СТАТЬИ

AWE и locked pages in memory на 64-х битной платформе

По материалам статьи Slava Oks: Be Aware: Using AWE, locked pages in memory, on 64 bit
Перевод Александра Гладченко

Мы уже говорили о механизме Windows AWE на 32-х битной платформе и как SQL Server его использует. Сегодня я хотел бы пробежаться по AWE и связанным с ним механизмам на 64-х битной платформе.
Многие наверняка удивлены тем, что механизм AWE здесь все еще используется и оказывается полезным и на 64-х битных платформах. Вы уже знаете, что этот механизм состоит из двух частей, распределяющих физическую память и отображающую её на VAS данного процесса. Преимущество механизма распределения состоит в том, что если физическая память распределена, то операционная система уже не сможет её затребовать, пока использующий её процесс не будет завершён или это процесс освободит память, вернув её операционной системе. С помощью такого подхода приложение может управлять и даже полностью предотвращать листание. Преимущество механизма mapping/unmapping в том, что одна и та же физическая страница может быть отображена на разные участки VAS. Как Вы догадываетесь, на 64-х битных платформах в unmapping нет необходимости, поскольку VAS мы имеем достаточно, чтобы вместить всю имеющуюся физическую память.
Из теории операционных систем, для описания отображения страницы VAS на физические страницы, система оперирует записями таблицы страниц - Page Table Entry (PTE). Внутри физическая страница описывается номером блока страниц - Page Frame Number (PFN). Из PFN можно получить всю информацию о физической странице, которую он представляет. Например, PFN показывает, какому NUMA - узлу принадлежит эта страница. В операционной системе есть база данных, хранящая совокупность PFN, которыми система управляет. Если страница в VAS является закреплённой, существует PTE, который может указывать или не указывать на задействованные PFN. Концептуально, страница, которую представляет PTE, может быть в памяти или нет, например, если она выгружена на диск. В первом случае она привязана к задействованному PFN, а в последнем - нет. В свою очередь, как только физическая страница привязывается к странице в VAS, её PFN возвращаются PTE.
Когда операционная система закрепляет, освобождает, получает/отдаёт страницы задействованного PTE, или должна получить немного информации об этом (например аллокация NUMA), она должно задействовать блокировку рабочего множества процесса - чтобы обеспечить стабильность привязки PTE к PFN. Эта блокировка обходиться довольно дорого и может испортить масштабируемость процесса. В последних версиях Windows эта блокировка минимизирована насколько это было возможно, но меры, направленные на избежание её появления всё еще будут полезны для лучшей масштабируемости приложения.
При распределении физических страниц, использование AWE механизма предоставляет нам набор записей PFN непосредственно из базы данных PFN, но нужно помнить, что Вы не должны управлять этими записями или изменять набор этих записей, который Вам возвращён, и Вы не можете полагаться на их значения, которые были Вам возвращены. Операционная система обязана устанавливать блокировку на базу данных PFN во время распределения записей PFN. Используя механизм отображения AWE, Вы можете отобразить аллоцируемые записи PFN на VAS процесса. Когда происходит такое отображение, PTE аллоцируются, привязываются к PFN и отмечаются как блокированые. В этом случае операционная система должна разово установить блокировку рабочего множество процесса. При отображении обычных страниц, операционная система делает это по требованию и, следовательно, должна будет заполучить рабочее множество и установить блокировку в базе данных PFN для каждой страницы. Так как страницы в памяти блокированы, в момент листания эти PTE системой будет игнорироваться.
На 64-х битных платформах лучше называть такие страницы блокированными страницами (locked pages), и, пожалуйста, не путайте их со страницами, блокированными средствами VirtualLock API. Как было описано выше, у блокированных страниц есть два важных свойства - они не участвуют в листании, проводимом операционной системой, и во время распределения они захватывают рабочее множество и устанавливают разовую блокировку в базе данных для PFN.
Первое свойство имеет не очевидное влияние на высокопроизводительные системы, такие, как системы с архитектурой NUMA. Оно приводит к явной резидентности в памяти. Помните, что система закрепляет страницы по требованию. Для распределения физической памяти будет использоваться узел, на котором выполняется обращающийся к памяти поток. Только после этого страница может быть выгружена операционной системой во время свопинга. Далее, она может снова попасть в память, операционная система снова распределит физическую страницу узлу, на котором поток продолжает работать с этой памятью. В этом случае узел может оказаться уже совсем другим. Такое поведение приведет к дополнительной нагрузке на приложения, которые используют для страниц резидентность NUMA. Блокировка страницы позволяет разрешить эту проблему, полностью защищая их от листания. Кроме того, в Windows 2003 SP1 появился новый API - QueryWorkingSetEx. Он позволяет запрашивать расширенную информации о PFN в PTE. Вы можете использовать этот API для определения реальной резидентности страниц. Если страницы блокированы, Вам нужно будет сделать это только раз. В других случаях это нужно делать периодически, так как резидентность страницы реально может измениться.
Второе свойств -, захват рабочего множества и блокировка в базе данных только PFN, дает возможность приложениям работать быстрее и повышает масштабируемость пилообразной нагрузки.
В NUMA архитектуре, SQL Server Buffer Pool фиксирует каждую распределенную страницу с выделенным для неё узлом. Достигается этого за счёт использования QueryWorkingSetEx. Как только страница распределена, вызывается этот API, который позволяет узнать детали резидентности страницы. Делается это только один раз. Поэтому включение locked pages для SQL Server на 64-х битной платформе улучшает работу с пилообразной нагрузкой и повышает производительность и масштабируемость на более длительных отрезках времени. При работе SQL Server в режиме locked pages, Вам не нужно больше волноваться о производительности системы в целом, зависимости от изъятия памяти у SQL Server, когда он участвует в механизме листания операционной системы, прослушивая оповещения отвечающего в системе за память API, и сокращая своё рабочее множество, когда это от него требуют.
Давайте подведём итог этой статьи: на 64-х битной платформе механизмы locked pages in memory и AWE позволяют увеличить масштабируемость приложений и повысить производительность обслуживания пилообразной нагрузки на длительных временных интервалах. Однако, имейте в виду, что приложение все еще обязано уметь реагировать на вытеснение памяти, чтобы не привести к зависанию системы в целом из-за памяти.

[В начало]

ССЫЛКИ НА СТАТЬИ

Статьи на русском языке

Автоматическое тестирование с использованием Rational Robot
Владимир Сердюк
CASE: Данная статья посвящена использованию средства Rational Robot для автоматизированного тестирования в среде 1С. Хотя конечно эти механизмы можно использовать на любых платформах и клиентских приложениях...

Проблемы безопасности данных в системе 1С Предприятие 7.7. и MSSQL 2000
Владимир Сердюк
MSSQLServer: Все пользователи 1С работают с сервером MSSQL посредством одной учетной записи MSSQL. Права пользователя на работу с базой данных должны быть не менее db_owner. Нужно отметить, что в 90% случаев администраторы забывают выполнять эту процедуру до конца и делают как проще - назначают учетную запись от имени sa...

Сравнение версий SQL (сервис-паки 3а и 4)
Владимир Сердюк
MSSQLServer: Перед каждым запуском тестов база переиндексировалась, выполнялось сжатие () с перемещением страниц, после чего оба компьютера перезагружались. После перезагрузки стартовал SQL-сервер на сервере и 1С-предприятие на клиенте в разделенном режиме, и сразу запускалось восстановление последовательности. Тестирование представляет собой восстановление последовательности в разделенном режиме с помощью соответствующей обработки за период 2,5 месяца. Таким образом, были выполнены запросы на удаление, чтение и запись...

Управление индексами в 1С-SQL
Владимир Сердюк
MSSQLServer: Задача проектирования структуры БД является ключевой с точки зрения производительности и масштабируемости ИТ систем. Под структурой можно также понимать структуру индексов. В зависимости от того насколько правильно расставлены индексы один и тот же запрос может формироваться различное время. Соотношение во времени выполнения может составлять порядки. Кроме этого, совокупная нагрузка на серверные ресурсы будет существенно отличатся. Именно поэтому технология правильной расстановки индексов является одной из приоритетных в общей технологии оптимизации...

Проблема производительности системы в час пик, при условии нехватки серверных ресурсов
Владимир Сердюк
Недавние события, связанные с крупнейшим энергетическим кризисом в Москве натолкнули меня на мысль о написании этой статьи. На первый взгляд кажется, что общего между энергетической сетью и промышленной ИТ системой? Общего очень много. В первую очередь, это распределенные системы с большим количеством пользователей. У этих систем схожая сетевая топология , схожие проблемы и методы их разрешения. Я не буду вдаваться во все подробности, опишу основные моменты, касающиеся неравномерной нагрузки на систему по времени, а проще говоря, о <часах пик>...

SQL Server 2000 Reporting Services
Serg Vorontsov
MSSQLServer: Изначально я решил писать данную статью весьма основательно. С длинным предисловием и рассуждением о том, зачем нам это надо и какие открываются перед нами перспективы использования этого грандиозного продукта. Перечитав все, что я написал и поймав себя на мысли, что исписав около пяти листов, я продвинулся лишь к середине процесса инсталляции. И почему-то мне стало скучно. А каково же будет читателю? В общем, одним махом я удалил весь написанный мною текст и решил писать поменьше текста не <по теме>. Тем, кто захочет очень основательно изучить этот продукт, я бы посоветовал книгу издательства Wrox с одноименным названием...

Почему нежелательно использовать компрессию файлов баз данных и журналов SQL Server
Ken Henderson
MSSQLServer: Наиболее опытные SQL Server DBA знают, что не стоит использовать автоматическое сжатие файлов данных и журналов, но я могу поспорить, что лишь немногие из них знают, почему это является таким уж плохим решением. Основным ответом на этот вопрос может быть "снижение производительности", и это правильно, но предположение о том, что производительность снижается из-за сжатия \ декомпрессии данных, это только отчасти правильное утверждение. Есть еще более важная причина...

Сравнение SQL Server 2000 Index Tuning Wizard и SQL Server 2005 Database Tuning Adviser
Luis Martin
MSSQLServer: Среди повседневных задач DBA, есть одна, для которой все мы должны находить время, это исследования. Автор проводит свои исследования с помощью новых инструментов, которые упрощают эти задачи...

Деревья в поддерживающих стандарты SQL базах данных
Eugene Lepekhin
MSSQLServer: Рано или поздно в своём проекте баз данных Вы столкнетесь с необходимостью хранения иерархической информации. Например: структура предприятия, категории товаров, каталог изделий или папок с документами; всё это хорошие примеры иерархических структур. Конечно же, можно реализовать их хранение в виде самосвязанной таблицы. Проблемы начнутся, когда нужно будет создавать запросы к иерархическим данным. Например: "Что, если мы имеем дело со структурой предприятия, и хотим узнать, сколько служащих подчиняются менеджеру X?". Такие решения подобных проблем уже были описаны. Например, можно посмотреть книгу и статьи Joe Celko, в которых есть подробные описания таких решений...

Контроль VAS в SQL Server 2005, продолжение:
Slava Oks
MSSQLServer: Некоторые из Вас, возможно, скучали, читая мою предыдущую статью "Обзор Virtual Address Space - VAS". Я понимаю, что тема VAS до этого была многократно освещена множеством авторов и ей было уделено много времени, и Вы наверняка знаете об этом больше, чем даже хотелось бы знать . Однако, наберитесь, пожалуйста, терпения. Я хочу дать достаточный предварительный обзор темы, что бы читатель смог легко ориентироваться в предлагаемом ему материале. Мне хотелось бы показать ту часть внутренней организации операционной системы, без которой будет сложно охватить тему, о которой Вы хотите узнать побольше: "Управление памятью в SQL Server". Поэтому я продолжу эту тему в следующий раз...

Обзор механизмов виртуальной памяти Windows (продолжение "Обзор Virtual Address Space")
Slava Oks
MSSQLServer: Как я обещал в прошлый раз, это будет следующая статья о памяти . Как Вы помните, моей целью является демонстрация того, как в SQL Server устроено управление использованием памяти. Но для читателя, чтобы в этом хорошо разобраться, я думаю важно также уяснить, как управляет памятью операционная система Windows. Важно понимать детали такого управления памятью, однако сейчас я хочу, чтобы Вы поняли заложенные в это концепции! В некоторых случаях я нарочно буду пропускать подробности, потому что в данном случае они не очень важны, и многие из них могут отличаться в разных версиях операционной системы....

Менеджер памяти SQLOS: диагностика вытеснения памяти
Slava Oks
MSSQLServer: При настройке SQL Server очень важно понимать, как он реагирует на вытеснение памяти. Я уже посветил довольно много времени описанию разных типов вытеснения памяти. В этой статье Вы узнаете, почему это так важно. Вытеснение памяти можно классифицировать двумя основными группами: вытеснение VAS и вытеснение физической памяти. Вытеснение физической памяти может быть спровоцировано операционной системой, мы назвали его внешним, или оно может быть спровоцировано процессом, такое вытеснение мы называем внутренним...

Графическое изображение плана исполнения, выдаваемого SQL Query Analyzer
softpoint.ru
MSSQLServer: SQL Query Analyzer - интерактивное графическое средство, которое позволяет администратору базы данных или разработчику писать запросы, выполнять различные запросы одновременно, просматривать результаты, анализировать план запроса и получать поддержку для улучшения плана выполнения. Опция просмотра плана выполнения графически показывает методы получения данных, используемые оптимизатором запроса Microsoft SQL Server 2000. В графическом исполнении плана используются иконки для представления специфичных действий и запросов в SQL Server, а не изображения в виде таблиц, созданных инструкциями SET SNOWPLAN_ALL или SET SNOWPLAN_TEXT. Это очень полезно для понимания скоростных показателей запроса. Кроме того, SQL Query Analyzer показывает советы по дополнительным индексам и ста...

<Гибкие> блокировки в 1С
Владимир Сердюк
MSSQLServer: Как то помню на форуме прочитал сообщение типа <а вот знакомый админ удалил Tablockx и поставил rowlock в хранимых процедурах и все закрутилось, завертелось>: Эта мысль по-моему достаточно показательна для многих из 1С программистов и особенно для новичков...

<Внутренние> блокировки в 1С
Владимир Сердюк
MSSQLServer: В предыдущей статье по <гибким> блокировкам я пожалуй не сделал акцент на то ,что блокировки в контексте 1С бываю двух видов. Первый вид это блокировки данных на уровне SQL servera. Второй вид это блокировки объектов 1С(клиентских форм). Хочу исправить свою ошибку и остановиться на описании второго вида блокировок подробнее...

Отключение процедуры верификации для 1С
Владимир Сердюк
MSSQLServer: Для начала ответим на вопрос - зачем это нужно? Это нужно для каких либо изменений в структуре внутренних таблиц 1С и в первую очередь для подключения стандартного механизма репликации MS SQL.При подключении стандартного механизма репликации сервер автоматически добавляет служебные поля к таблицам поставленным на репликацию. Также добавляются индексы и в некоторых случаях изменяются свойства столбцов, например identity.1С при прохождении процедура верификации анализирует структуру базы данных и в случае расхождения со структурой описанной в dds файле выводит ошибку и заканчивает сеанс...

Изменение структуры БД под 1С(SQL)
Владимир Сердюк
MSSQLServer: В одной из предыдущих статей я рассказал как при изменении структуры БД можно добиться того , что бы 1С проходила успешно процедуру верификации. Однако неприятности нас поджидают в дальнейшем при работе с 1С а именно при изменении данных. Например при введении нового элемента справочника.При попытке вставки нового элемента 1С выдает ошибку о несоответствии количества передаваемых параметров количеству полей таблицы. Почему это происходит? Дело в том что при использовании конструкции Insert 1C передает множество полей таблицы без явного указания полей и соответственно MSSQL server по умолчанию определяет это множество как полный список полей таблицы(без поля с признаком identity)...

Реализация системы логирования для 1С(SQL)
Владимир Сердюк
MSSQLServer: Скорее всего многие сталкивались с ситуациями когда шеф просит выяснить кто сделал изменения в документе в результате которых фирма потеряла деньги. Другая ситуация когда программист пытается доказать пользователю что это он сделал изменения а пользователь в свою очередь говорит, что это несовершенная программа выполнила эти изменения. Бывают ситуации когда необходимо кого-то поймать на воровстве, манипуляции с данными в БД. Иногда просто необходимо получить список измененных объектов в той последовательности в которой они изменялись. Все эти ситуации попадают под разряд решений аудита и логирования...

Реализации одного из инструментов отладки на примере определения внутренней структуры 1С Предприятие 8.0
Владимир Сердюк
MSSQLServer: Данная статья описывает реализацию одного из инструментов тестирования и отладки. Рассматривается это на примере идентификации внутренней структуры базы данных 1С Предприятие 8.0.(SQL) для произвольной конфигурации...

Интеллектуальное восстановление последовательности
Владимир Сердюк
Каждую ИТ систему по ведению учета на предприятии можно разделить на две условные категории с точки зрения хронологической коррекции данных...

Использование T-SQL для решения проблемы жесткого закрытия периода в бухгалтерской базе данных
Владимир Сердюк
MSSQLServer: Наверняка многим, кто занимался автоматизацией бухгалтерского учета, знакомы проблемы закрытия периода. А точнее периодически возникающие проблемы с изменением данных по закрытым отчетным периодам. Главного бухгалтера интересуют проблемы кто и зачем изменял данные в закрытом периоде. Программные это ошибки или сотрудники, имеющие доступ к открытию периода. Главное это конечный результат - закрытый период, по которому была сдана отчетность, был изменен. Хорошо если эти изменения удалось поймать сразу же и есть время на их исправление. Но, как правило очень часто это происходит в самый последний момент и тогда порой ситуация может выйти из-под контроля...

Построчное перепроведение документов
Владимир Сердюк
Довольно часто возникают ситуации, когда необходимо записывать или проводить изменения в документе не полностью, а частично...

Проблема замедления массового проведения документов в 1С MSSQL
Владимир Сердюк
MSSQLServer: Периодически в форумах и в обращениях ИТ специалистов звучат высказывания, что при длительной работе в одной сессии 1С v7.7 происходит общее замедление производительности...

Англоязычные статьи

Transform Data Task (DTS2000) and SSIS
SQL BI
My first period using SSIS in a real-world application convinced me that there is a lack of support in migration of SQL2000 DTS packages, expecially in a star schema transformation scenario

SQL-CLR: WindowsIdentity.Impersonate()
Christian Wade's Blog
There is some literature out there that says it is possible to impersonate the current user’s logon for external access (file system, registry, etc.) in SQL/CLR sprocs, but not much in the way of sample code. As I have crossed this bridge, I thought I should share the knowledge. This now works with assemblies catalogued as EXTERNAL_ACCESS. I think in previous betas, it would only work on UNSAFE assemblies

SSIS2005 feature request (small things)
SQL BI
May be it's too late, but I think this requests (for SQL Server Integration Services 2005) could be scheduled at least for a SP1 if it's not possible for the RTM

New ASP.NET 2.0 Things I love!
Shawn Wildermuth
I've been digging deep in to ASP.NET 2.0 the last couple weeks and I have been pleasantly surprised by a number of nice changes that probably didn't make the new features lists

Accessing a report anonymously in SQL Reporting Services 2000
Russell Christopher's Semi-Useful BI Musings
I've worked with several customers who use a custom authentication scheme in their enterprise, and therefore couldn't secure Reporting Services using Windows Authentication. Some of these folk also didn't want to write their own custom security extension or use/modify Microsoft's forms authentication sample found at http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnsql2k/html/ufairs.asp

Where do I deploy my custom assemblies when working with SQL Reporting Services 2005?
Russell Christopher's Semi-Useful BI Musings
There is a change from 2000 here, and it's not documented in Book Online yet. To further confuse matters, in some earlier builds of Yukon\Whidbey you'll actually find multiple copies of RSReportDesigner.Config on your disk, so you can't always key on it's location

#Error when using a custom assembly in SQL Reporting Services
Russell Christopher's Semi-Useful BI Musings
OK, you're using SQL Server Reporting Services and you've created and deployed your custom assembly to 80\Tools\Report Designer and MSSQL\Reporting Services\ReportServer\bin just like you're supposed to. You have also edited rssrvpolicy.config and rspreviewpolicy.config per the information found at http://msdn.microsoft.com/library/default.asp?url=/library/en-us/RSPROG/htm/rsp_prog_extend_install_25ia.asp

Missing Leading Spaces in SQL Reporting Services Reports
Russell Christopher's Semi-Useful BI Musings
Problem: In SQL 2000 Reporting Services, I need to display indented text in my report. I use leading, embedded spaces to do this work and they display correctly in PDF/TIFF/Excel, but the leading spaces in the report are stripped out in HTML. What gives?

Save Your Stored Procedures
Andy Warren
Version control of stored procedures is not exactly a SQL Server 2000 strong point. In fact, it is downright abysmal and there have been lots of ideas and solutions put forth to solve the problem. Andy Warren brings us a new one that's small and lightweight and may help you after getting inspired at TechEd 2005

What is mscorsvw.exe and why is it eating up my CPU? What is this new CLR Optimization Service?
David Notario's WebLog - CLR and JIT Compiler
mscorsvw.exe is precompiling .NET assemblies in the background. Once it's done, it will go away. Typically, after you install the .NET Redist, it will be done with the high priority assemblies in 5 to 10 minutes and then will wait until your computer is idle to process the low priority assemblies. Once it does that it will shutdown and you won't see mscorsvw.exe. One important thing is that while you may see 100% CPU usage, the compilation happens in a process with low priority, so it tries not to steal the CPU for other stuff you are doing. Once everything is compiled, assemblies will now be able to share pages across different processes and warm start up will be typically much faster, so we're not throwing away your cycles

SQL Server 2005 Service Broker Stuff in June CTP
Niels SQL Server Blog
As Bob is doing, whenever a new build is released I tend to check out various stuff to see if it works as before. This however jumped up and bit me the other day

Basics of the Service Master Key in SQL Server 2005
Randy Dyess
Now that SQL Server 2005 is just around the corner, more and more information on its new capabilities is being released. During the upcoming months it is likely that you will hear the term Service Master Key more and more in relation to SQL Server 2005’s data encryption support

Code/Module Signing in SQL Server 2005
Randy Dyess
One of the nice security features found in SQL Server 2005 is the ability to digitally sign a stored procedure. Code signing or module signing provides the ability to provide for a more granular control on the ability to access SQL Server tables

Basic Overview of Data Encryption for the DBA
Randy Dyess
Most SQL Server DBAs have not bothered to learn encryption concepts as encryption was one of those “things” that was someone else’s problem. As data regulatory acts and sensitive data security becomes more and more of an issue to today’s world, DBAs are faced with a new problem of how to help ensure that even when the layers of security companies rely on to keep people out of their databases fail, sensitive data is not made available to the attackers. In the past, SQL Server did not provide methods to accomplish this process without relying on third-party applications or without the application encrypting the data before it is sent to the database. However, seeing the increasing need for protecting sensitive data being stored in SQL Server, Microsoft decided help SQL Server DBAs and developers by incorporating encryption methods into the latest version of SQL Server, SQL Server 2005

SQL Server 2005 Security Terminology
Randy Dyess
As you start to review the new security in SQL Server 2005 you will come across terminology describing security components that is different from earlier versions of SQL Server. As SQL Server 2005 continues to mature and new information is release, an understanding of these changes in terminology will help you to understand the information

Encryption Hierarchy in SQL Server 2005
Randy Dyess
Seem to have picked up the flue or a strong respiratory infection this week and in between naps and bouts of fever, I tend to get bored quite easily. I had planned on working on a chapter in a SQL Server 2005 book Scalability Experts is producing, but my capacity for original, concise thought has eluded me this week. So to keep from going absolutely stir crazy, I thought I would at least write a blog or two this week

BACKUP LOG WITH TRUNCATE_ONLY has gone away
Randy Dyess
Just a quick blog today on a SQL Server 2005 Transact-SQL change. Often in the past a developer would create a query that did not run exactly how they wanted and they filled the transaction log. It didn't matter that you keep plenty of space for the log and that the log could auto-grow without a limit, the developer would kick off some query and a few hours later you would have GBs of data being placed into the log and just hose it

Simple Types
Galex's Semi-Structured Blog
My fellow team members have all blogged on static typing and anyone reading these blogs would be correct to conjecture that it is pretty important. There is so much to say about it and I'd rather not duplicate what my team members have written. For an introduction, read Denis' entry here and Mike's entry here. After reading these posts, it should be apparent that the point of static typing is to aid the developer in writing correct queries. Static typing is often used in other languages such as C# which are strongly typed. XQuery is a strongly typed language and implementations have the option of providing static type checking at query compile time. The XQuery implementation in SQL Server 2005 does in fact perform static type checking

XML and Draconian Error Handling
Microsoft XML Team's WebLog
I can just hear sound of the long-time XML users' mice clicking to get this horrible topic off the screen ASAP ... but maybe people who are newer to XML will get something out of revisiting one of the oldest controversies: what should be done with text that purports to be XML but doesn't meet the well-formedness criterion?

Effects of the type substitution mechanism on static typing (part I)
Typed XML in SQL Server 2005
The XML schema specs define a mechanism that allows for the use of derived types in instance documents. In short, if a schema contains an element ‘E’ of type ‘T’, and if there is a type ‘T1’ derived from ‘T’ then we can set the type of any instance of ‘E’ to ‘T1’ like this <E xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="T1">...</E> When that element instance is validated against a schema, it is type ‘T1’ and not type ‘T’ that must be used to determine if its value or contents are valid

An introduction to static typing
Typed XML in SQL Server 2005
XQuery in SQL Server 2005 is a statically typed language. This means type errors may be raised during query compilation when an expression returns a value that has a type or cardinality that is not accepted by a particular function or operator. In short, your query will be checked for possible type inconsistencies before it is even run

Optimizing searches in an OLTP database
TechRepublic
Are your assumptions about data singularity damaging your databases' performance? If so, we've got an new solution for you

How to force multiple lines of text into a textbox in SQL Reporting Services
Russell Christopher's Semi-Useful BI Musings
From time to time (generally in a header / footer), you'll want to force some linebreaking inside a textbox. For example, you may have a long column description that won't easily fit on a single horizontal place

Roman's Weekly SQL Server Tip - How to protect tables from being deleted, Part 2
Roman Rehak
A few months ago I wrote a tip showing you how you can make sure that a table doesn't get dropped by accident. At the time it generated a lot of feedback and comments in other blogs. The solution involved creating a dummy view using the "WITH SCHEMABINDING" clause. That solution is workable but it is somewhat kludgy, even though you can automate it if you wish so..

INF: Effects of Moving a Database from SQL 2000 Enterprise Edition to SQL 2000 Standard Edition
Microsoft
Moving or copying a database across various Microsoft SQL Server 2000 editions (such as Desktop Engine, Developer, Personal, Standard, Enterprise) is a seamless process and is independent of the edition of the server as far as the stored data is concerned. However, there are some feature differences between editions that may introduce variation as to how the stored data is used. Microsoft SQL Server 2000 Standard Edition includes the majority of features and functionality that Microsoft SQL Server 2000 Enterprise Edition (EE) provides. However, Microsoft SQL Server 2000 Developer Edition and Enterprise Edition contain edition-specific features not available in the other editions of the product

Dynamic Properties
Kathi Kellenberger
One of the most useful tasks in SQL Server 2000's DTS environment is the Dynamic Properties task. Author Kathi Kellenberger brings us a look at how this task can help you accomplish an unusal import task

MSSQL Server Reporting Services: Mastering OLAP Reporting: Percent of Total - Two Perspectives
William Pearson
An important consideration, when designing a Business Intelligence system within any environment, is a consideration for "where to put the intelligence" among the various "layers" within the system. I have stated many times in the past, in both articles and presentations, that "multi-layered reporting solutions require multi-layered architects," and nowhere is this truer than within the design and implementation of the Microsoft integrated business intelligence solution. This article provides an excellent example of such considerations: the option for placing a needed calculation at either the Analysis Services level (within the cube structure) or the Reporting Services level

Sidebar: The outsourcing option for predictive analytics
Robert L. Mitchell
Getting through a predictive analytics project typically requires the resources of business analysts, statisticians and database experts. For small and midsize organizations that don't have the skills or time required to complete such projects, outsourcing may be the best alternative. That's the approach taken by The Seattle Times Co., which hopes to use the technology to combat declining newspaper subscriptions. "If we can reduce our churn by 2% or 3%, it makes a huge difference in our profitability," says Janet Farness, strategic research manager

AMO Lets You Dig Deeper into Your Data from Your Own Applications
Liu Tang and Paul Bradley
This article is based on a prerelease version of SQL Server 2005. All information contained herein is subject to change

SQL Server 2005 Reporting Services Feature Matrix
Microsoft
On February 24, 2005, Microsoft announced pricing and licensing information for SQL Server 2005. In that announcement, only the Standard and Enterprise editions of SQL Server 2005 encompassed any reporting features provided by SQL Server 2005 Reporting Services. Furthermore, only the Enterprise version of SQL Server 2005 had Report Builder (ad hoc, self-service reporting). Since that time, SQL Server product management has sought and received significant feedback from both partners and customers on this decision. Because of these conversations, Microsoft is making the following modifications to its SQL Server product lineup relative to reporting

Scripting in Microsoft SQL Server 2005 Web Cast Resources
Michiel Wories' WebLog
This article contains extra information with regard to the web cast "Scripting in Microsoft SQL Server 2005 " that was held on 6/22/2005 9:30-11:00 PST

Scripting in Microsoft SQL Server 2005 -- Web Cast has finished
Michiel Wories' WebLog
I just finished the Scripting in Microsoft SQL Server 2005 webcast. Thanks all for being online (and also thank you MVP's for answering questions!) I was a little nervous doing this (it's a big deck with lots of demos) but I think it went quite OK. Let me know if you have any requests/comments! I will post samples, the session Q&A, and where to find more information about SQLCMD here. Should be all posted by tomorrow

Using ANSI SQL style DECLARE CURSOR statement in UDF...
SQL Server Engine Tips
Today I encountered a post in the Microsoft Technical forums where a user was trying to use the ANSI SQL style DECLARE CURSOR statement which will raise error # 1049 in SQL Server. This behavior is true in SQL Server 2000. Here is a code sample that demonstrates the problem

Tabbed mode in SQL Management Studio
SimonS' SQL Blog
I love the tabbed format of this however I have one gripe. The information available on the tabs in Management Studio is unreadable. Currently both the filename and the server and database name are truncated one on the right and one on the left. These means you can't see the full name of the file and also you can't see the server. This is a real nuisance especially if you have many files that start the same i.e. up_table_insert, up_table_update etc. and secondly if you have the same file open on many servers. To find the server you have to look at the bottom of the screen. It would be great if either the tab had 2 lines or the details where displayed in the application caption bar is the case when using MDI mode

Database Geek of the Week - Bob Beauchemin
Douglas Reilly
An interview with Bob Beauchemin. Bob Beauchemin is a developer who not only writes code and develops databases, but also teaches other developers to create applications and databases, often using the latest Microsoft technologies

SQlClrProject - Visual Studio Project Type for SQL Server 2005
Niels SQL Server Blog
have the pleasure to introduce the SqlClrProject project type. The SqlClrProject is a project type for Visual Studio 2005 for creation and deployment of assemblies to SQL Server 2005. It consists of templates for both Visual C# (C#) and Visual Basic (VB) with skeleton code for creation of CLR methods to be used as stored procedures, User Defined Functions (UDF’s), triggers, User Defined Types (UDT’s) and User Defined Aggregates (UDA’s)

IS NULL vs. IsNull
Isaac Kunen
SQL Server 2005: CLR Integration. When using CLR UDTs, there has been some confusion regarding the difference between the T-SQL IS NULL construct and the required UDT method IsNull(). Admittedly, this is not well-documented, so I thought I'd try to clear this up

SQL Server Clustering on Virtual Server 2005
Yih-Yoon Lee
Many of us would love to gain some first hand experience with SQL Server clustering. Unfortunately not many of us have the luxury of having a clustered SQL Server at work, much less a development server to play with

A SAN Primer
Hugh Scott
Storage is getting cheaper and cheaper, which means that more and more SQL Server servers will be incorporating SAN storage as an architecture moving forward. It seems that most DBAs, however, have never worked with this technology. New author Hugh Scott brings us a primer on this Storage Area Networks for DBAs new to this technology

Follow up on Database snapshot performance question from SQL Server™ 2005 High Availability TechNet evening 21/6/05
Mat Stephen's SQL Server WebLog
Question; how does a snapshot database perform compared to the original database when it comes to querying – can it make use of the indexes on the original database?

Follow up on Replication Columns question in my TechNet SQL 2005 presentation (14/6/05)
Mat Stephen's SQL Server WebLog
Question: How many columns does SQL Server 2005 allow in a published article (SQL Server 2000 was linited to 254)?

Here are some questions I was recently asked
Yukon BI by the Hitachi Consulting Yukon Team
Can you describe an example of when a calculated cell would be used? What about an example having multiple passes?

The Report Viewer Control
Thom Robbins .NET Weblog
The report viewer control is a new feature of Visual Studio 2005. The report viewer makes it easy to embed reports directly into your application. It’s important to understand that this control operates in two modes. Using the server side mode you can easily connect and display reports that are housed in the SQL Server Reporting Services back end infrastructure. The client mode allows the creation and distribution of reports that are embedded and travel within the application. In this video that can be viewed here, we take a look at how this control can be used to create a simple client side report

How to preview a report without direct access to its data source in SQL Server Reporting Services 2000
Russell Christopher's Semi-Useful BI Musings
You may have noticed that starting with SSRS SP1, when you preview a report which contains data in the designer, a ReportName.RDL.Data file appears on your file system. We store the data that was just displayed by your preview action in this file so we don't have to round-trip to the server over and over again each time you preview the report (assuming you don't change any parameter values, etc.)

SQL Server XML Statistics and Execution Plans
Joe Chang
One of SQL Server’s deficiencies when using XML queries is the lack of statistics capability in the XML driver. This is surprising because the ODBC API contains a function for providing statistics on remote data sources. SQL Server defaults to the fixed assumed row count values for remote servers, which is unreasonably high for XML in a transaction processing environment. A query to a remote SQL Server however, does pass back requested statistics data

Working with Direct Attached Storage Devices: Cost Effective Drive Alignment and RAID Configuration
Bill Wunder
As impressed as I am that SQL Server 2000 Books Online is the most complete and informative help system I have ever had the pleasure of working with, it's fascinating to me that for even the most rudimentary and somewhat antiquated disk hardware guidelines you have to drill deep down into the Optimizing Database Performance Chapter. Seems to me that getting the right disk subsystem fits right at the beginning of the Installing SQL Server Chapter because if you don't start out with an at least adequate IO subsystem you're either not going to like the way SQL Server performs or your database needs could have been filled with Access, MSDE or MySQL for a much lower cost than SQL Server

Restore technicolor in SQL 2000 after installing SQL 2005 CTP
SimonS' SQL Blog
Have you encountered the problem of losing your colour coding in Query Analyser and other SQL 2000 tools, after you install a SQL 2005 CTP/Beta

2005 Feature: encryptByPassPhrase
The SQL Doctor is In
2005 gives us a lot of cool encryption features but most of them are going to take some sussing to really understand how to use them best. On the other hand, the encryptByPassPhrase is very very simple, and very useful too. I can see a couple of reasons to use it

Changes and enhancements to full text indexing in Sql Server 2005
Raymond Lewallen
Sql Server 2005 brings some good enhancements to full-text searching capabilities. But why would you want to use full-text searches? Well, it is not always the case where people are given a drop down box of choices to choose from when wanting to perform a search. Certainly, that scenario is beneficial and efficient, as we are guaranteed to be able to make the most out of our indexing and data structuring techniques when we know the exact data that we are going to be querying. What is even better is that more times than not, that drop down list is populated from an indexed field in the database somewhere

XML Databases – Reinventing the Wheel?
Dejan Sarka
Couple of days ago I had opportunity to listen to a presentation on XML databases. I must admit I got an incentive for thinking. It is not just the presentation; many times lately I heard relational model is obsolete and the time has come for XML and object databases. Although I don’t underestimate XML, I have a lot of concern with this way of thinking. I don’t want to get involved into some kind of flame war; I just want to present what I missed during the presentation and during some talks I had with object-oriented developers

XML Databases – Reinventing the Wheel? Part 2
Dejan Sarka
In my previous blog I dealt with XML databases in theoretical and serious way. I decided to split two additional comments in a separate blog because one is not so serious and the other one deals with practical implementation

Reading and Writing XML in .NET Version 2.0
Alex Homer
It must be tough for companies that develop software for working with XML. No sooner do they get a product out of the door, the World Wide Web Consortium (W3C) changes the recommendations and standards so that their product is out of date. Yet the manufacturers still have to maintain backward compatibility with their previous releases, while attempting to encompass all the new standards. We've seen this several times before in Microsoft's XML product space, and the process shows little sign of stabilizing yet

Effects of the type substitution mechanism on static typing (part II)
Typed XML in SQL Server 2005
In this follow-up to last week’s post I’d like to look at more examples, in particular those involving the use of wildcards in XPath expressions

Normalization and Microsoft -- whats the story?
Sorting It All Out
This is a word that has been way too overloaded. To date I have heard of four specific uses since I have come to Microsoft

Another way to deal with defaults and snapshots in SQL Reporting Services
Russell Christopher's Semi-Useful BI Musings
Here's an interesting scenario one of my customers had and how we approached it. The customer filters his report by region and subregion using parameters. The @Region parameter is given a default value and then hidden: the cutomer uses this parameter so he can build multiple linked reports that filter using different regions

Introduction to XQuery in SQL Server 2005
Prasadarao K. Vithanala
This white paper provides an introduction to various features of XQuery implemented in SQL Server 2005 such as the FLWOR statement, operators in XQuery, if-then-else construct, XML constructors, built-in XQuery functions, type casting operators, and examples of how to use each of these features. Non-supported features of XQuery in SQL Server 2005 and workarounds are described in this article. It also presents three scenarios where XQuery is useful. (30 printed pages)

Finding Table Space
Amit Lohia
One of the most popular questions on SQL Server 2000 deals with determining how much space the various tables in your database take up. There are a variety of reasons for this and a few ways to gather the information. Author Amit Lohia takes a look at how sp_spaceused works and how you might customize it to suit your needs

[В начало]

ФОРУМ SQL.RU

Самые популярные темы недели

Кто на чем пишет клиентов под SQL Server?
Tool Вы знаете что твориться на ваших 10-30+ серверах ?
Больше книг хороших и разных!
Помогите с DTS советом!
Безопасность данных. STOLEN DATABASE
Прошу голосовать за SQL.RU в конкурсе Интернить 2005
Помогите с оптимизацией запроса
Не получается создать тригер, подскажите, что я делаю не так :(
Маленькие вопросы.
Win2003 SP1 & MS SQL Server 2000
несколько БД для одной задачи
Глючит MS SQL :(
И снова ADSI & LDAP. Помогите...
Как вызвать WINDOWS API из TRANSACT SQL?
SP4 - делитесь опытом
Field Terminator = пробелу
Как склеить длинный текст для селекта?
Задачка по програмированию
SQL Запрос в Delphi СРОЧНО ПОМОГИТЕ СКОРО ДИПЛОМ!!!
Восстановление соединения

[В начало]

Вопросы остались без ответа

SQL аналог Running Total - помогите !!!
Как изменить Default Character Set в MS SQL2005
Восстановление полей sql_variant после копирования БД
Помогите с доступом!
проблемы с Report Manager Reporting Service
SQLServerCentral.com Database Performance Survey
Training
Заеженный OpenRowSet
SQLXMLBULKLOAD

[В начало]

КНИГИ

Освой самостоятельно SQL. 10 минут на урок. 3-е издание

Бен Форта

Переплёт: мягкий. Объём: 288 стр. ISBN: 5845908272. Формат: 84x108/32. Издательство: Вильямс

Данная книга поможет вам в кратчайшие сроки освоить SQL - самый популярный язык баз данных. Начиная с простых запросов на выборку данных, автор урок за уроком рассматривает все более сложные темы, такие как использование операций объединения, подзапросы, хранимые процедуры, индексы, триггеры и ограничения. На изучение материала каждого урока вам потребуется не более 10 минут.
Благодаря этой книге вы быстро научитесь самостоятельно составлять запросы к базам данных на языке SQL без чьей-либо помощи. Примеры, приведенные в книге, будут работать во всех наиболее популярных СУБД - IBM DB2, Microsoft Access, Microsoft SQL Server, MySQL, Oracle, PostgreSQL и Sybase Adaptive Server

[В начало]


Вопросы, предложения, коментарии, замечания, критику и т.п. оставляйте Виталию Степаненко и Александру Гладченко в форуме: Обсуждение рассылки

СЕМИНАРЫ  КОНФЕРЕНЦИИ

МИНИФОРМА
ПОДПИСКИ



ПУБЛИКАЦИИ  АРХИВ


Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: comp.soft.winsoft.sqlhelpyouself
Отписаться
Вспомнить пароль

В избранное