Отправляет email-рассылки с помощью сервиса Sendsay

MS SQL Server

  Все выпуски  

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


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

#257<<  #258

СОДЕРЖАНИЕ

1.СТАТЬИ
1.1.Контроль VAS в SQL Server 2005, продолжение…
1.2.Руководство по работе с Microsoft SQL Server 2000 Analysis Services (продолжение)
2.ССЫЛКИ НА СТАТЬИ
2.1.Статьи на русском языке
2.2.Англоязычные статьи
3.ФОРУМ SQL.RU
3.1.Самые популярные темы недели
3.2.Вопросы остались без ответа

СТАТЬИ

Контроль VAS в SQL Server 2005, продолжение…

По материалам статьи Slava Oks: Tracking VAS in Yukon, cont...
Перевод Александра Гладченко

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

Сегодня автор предлагает Вам небольшое развлечение. Ранее мы обсудили VAS и то, как можно оценить его использование с помощью специального представления vasummary, которое обсуждалось в предыдущей статье: Контроль VAS в SQL Server 2005. Теперь, учитывая возможности этого представления и других dmv - представлений, фактически мы можем получить больше информации о VAS в SQL Server. Давайте же сделаем это!

Как многим из Вас известно, размер стека потока SQL Server равен 512 КБ (0x80000). Это означает, что каждый поток для своего стека резервирует в VAS 512 КБ. Есть ещё и дополнительные 4 КБ в VAS, которые используется для Thread Environment Block (TEB) - блока окружения потока, но в данном случае это не очень важно. Вопрос заключается в следующем: имея представление vasummary, возможно ли оценить число потоков, выполняющихся в данный момент на сервере. Ответ - ДА! И вот нужный запрос:

--- Оценка числа потоков на сервере --- SELECT * FROM vasummary WHERE size=0x0000000000080000


Size Reserved Free ------------------ -------- ----------- 0x0000000000080000 89 1

Вот это да, как всё оказалось просто ! Но это только оценка. Таким же образом можно получить реальное число потоков, если использовать системное представление: dm_os_threads.

--- Реальное число потоков в системе --- SELECT count(*) FROM sys.dm_os_threads


----------- 86

Как можно видеть, количества потоков в этих двух запросах различны. Почему? Причина может быть в том, что другой компонент резервировал в SQL Server область VAS точно такого же размера. Обычно находится немного таких компонент. Это означает, что первый из запросов более достоверно отражает число потоков в SQL Server. Только, пожалуйста, имейте в виду, что первый запрос более дорог в плане исполнения, чем второй. В реальной жизни, для получения имеющихся в процессе SQL Server потоков, предпочтительнее использовать показывающее потоки dmv. Наверное, Вы не забыли, что всё это мы проделывали только для развлечения .

Мы должны помнить, что значение параметра максимального числа потоков сервера в sp_configure фактический не является верхним пределом для реального числа потоков в SQL Server. Потоки могут быть созданы разным библиотеками dll, включая netlibs, rpc, xps и т.д.. Во многих случаях мы никак не можем управлять такими потоками, но, исполняя представленный выше запрос, мы получим реальную информацию обо всех потоках в VAS SQL Server, а не только о потоках, созданных нами.

Можно получить и больше информации об использование потоков в VAS. Информирующее о потоках dmv-представление включает информацию о стеке потока и о его TEB:

--- Дамп TEB и стека потока --- --- SELECT thread_address , stack_base_address FROM sys.dm_os_threads


thread_address stack_base_address -------------- ------------------ 0x7FFDBE30 0x02820000 0x7FFDAE30 0x028B0000 0x7FFD9E30 0x02930000 0x7FFD8E30 0x029C0000 0x7FFD7E30 0x02A40000 0x7FFD6E30 0x02AD0000 0x7FFD5E30 0x02B50000 0x7FFD4E30 0x02BE0000 0x7FFAFE30 0x02C60000 0x7FFAEE30 0x02CF0000 0x7FFADE30 0x02D70000 0x7FFACE30 0x02E00000 0x7FFABE30 0x02E80000

Используя это dmv и системное dm_os_virtual_address_dump, фактически можно показать поток в VAS. Ну, разве это не круто? Автор не будет приводить здесь такой запрос, оставляя его реализацию читателю, в качестве тренировки...

Прежде, чем мы перейдём к загруженным модулям, автор хотел предложить Вам задуматься над следующим, ну хотя бы немного : Как VAS и получаемый из dmv-представлений результат отличались бы, если бы SQL Server был запущен в режиме "Fiber mode"? Пока же, автор отложит ответ на этот вопрос до того момента, пока мы не поговорим о планировании.

Из всего вышесказанного мы узнали способ оценки числа потоков, запущенных в SQL Server. К сожалению, не возможно использовать представление vasummary для того, что бы узнать об использовании VAS библиотеками dll. Причина в том, что разные dll имеют разные размеры. Однако мы можем использовать системные представления: dm_os_loaded_modules и dm_os_virtual_address_dump, которые позволяют получить информацию о загруженных dll.

--- Обзор того, как библиотеки dll мапируются на наше VAS --- SELECT base_address , name FROM sys.dm_os_loaded_modules


base_address name ------------ ---------------------------------------- 0x00400000 D:\MSSQL\MSSQL.3\MSSQL\Binn\sqlservr.exe 0x7C800000 C:\WINNT\system32\ntdll.dll 0x77E40000 C:\WINNT\system32\kernel32.dll 0x7D000000 C:\WINNT\system32\MSVCR80.dll 0x77BA0000 C:\WINNT\system32\msvcrt.dll 0x7C080000 C:\WINNT\system32\MSVCP80.dll 0x77F50000 C:\WINNT\system32\ADVAPI32.dll 0x77C50000 C:\WINNT\system32\RPCRT4.dll 0x77380000 C:\WINNT\system32\USER32.dll 0x77C00000 C:\WINNT\system32\GDI32.dll 0x761B0000 C:\WINNT\system32\CRYPT32.dll 0x76190000 C:\WINNT\system32\MSASN1.dll 0x76F50000 C:\WINNT\system32\Secur32.dll ....

Как и в случае с представлением для потоков, соединяя это представление с системным представлением dm_os_virtual_address_dump, Вы сможете получить информацию о расположении dll внутри SQL Server VAS. Поскольку Вы теперь понимаете, что это представление очень важно для понимания того, как используется VAS SQL Server, всё это даст Вам хорошую индикацию того, что запущено в VAS. Во многих случаях DBA и разработчики, при использовании разнообразных внешних компонент, просто не имели инструментов для того, что бы наблюдать их загрузку в VAS SQL Server. Сейчас автор готов продемонстрировать, что SQL Server может работать вне VAS... Когда сформировался дамп загруженных dll, автор был просто потрясен тем, как много всего разного загрузилось в пространство процесса SQL Server. Некоторые из загруженных туда dll несут функциональность только пользовательского интерфейса. Для чего понадобилось загружать библиотеки пользовательского интерфейса в пространство сервера? Автору было смешно .

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

[В начало]

Руководство по работе с Microsoft SQL Server 2000 Analysis Services (продолжение)

По материалам статьи Carl Rabeler и Dave Wickert, Microsoft Corporation: Microsoft SQL Server 2000 Analysis Services Operations Guide
Перевод Виталия Степаненко

Содержание

Введение
Управление конфигурацией
Управление выпуском
Управление изменениями
Администрирование безопасности
Управление сервисом и доступностью
Управление свободным пространством и производительностью
Управление разрешением проблем и ошибок

Конфигурирование Analysis Services

После установки Analysis Services Вам всегда следует проверять настройки конфигурации, некоторые из которых обычно должны быть изменены. Большинство настроек конфигурации могут быть изменены с помощью Analysis Manager, хотя есть и такие, которые Вы должны менять непосредственно через реестр Windows. В этой статье рассматриваются самые важные настройки конфигурации. Для информации о других настройках, связанных с производительностью, зайдите на сайт Technet Web (http://www.microsoft.com/technet) и посмотрите статью "Microsoft Analysis Services Performance Guide". Для информации об общем диапазоне записей реестра для Analysis Services, зайдите на сайт библиотеки Microsoft MSDN (msdn.microsoft.com) и посмотрите статью "Registry Entries for Microsoft SQL Server 2000 Analysis Services". Если Вы хотите отслеживать ключи реестра, которые были созданы Analysis Services (или любым другим приложением Windows), то для этого Вы можете использовать различные утилиты, которые подходят для платформы Windows. Одной из широко распространенных утилит является Regmon от Sysinternals (http://www.sysinternals.com/). Эта бесплатная утилита мониторинга реестра показывает приложения, которые обращаются к реестру, ключи реестра, к которым обращаются эти приложения, и данные, которые эти приложения читают из реестра или пишут в него.

Замечание: некоторые возможности Analysis Services доступны только в Enterprise Edition. Используйте скрипт DSO, который Вы найдете ниже в Приложении J, "Скрипт для определения версии Analysis Services", чтобы определить версию Analysis Services, которую Вы используете.

Настройки памяти

Достаточное количество памяти для Analysis Services увеличивает скорость выполнения запросов и общую производительность работы. Правильная настройка доступной памяти максимизирует ее использование, ограничивает использование ресурсов диска для обработки информации и предотвращает слишком быстрое удаление записей из кэша чистящим потоком. Количество памяти, используемое Analysis Services, регулируется несколькими настройками памяти:

- Настройки максимального и минимального размера памяти
- Настройка порога Very Large Dimension Memory (VLDM)
- Настройки буфера обработки

Значения этих настроек установлены по умолчанию или на основе объема физической памяти в компьютере во время установки. Настоятельно рекомендуется изменить некоторые из этих настроек памяти.

Настройки максимального и минимального размера памяти

Analysis Services использует набор средств для удержания объема выделенной ей памяти в рамках, определенных двумя параметрами на вкладке Environment диалогового окна Server Properties в Analysis Manager: параметром Memory conservation threshold (порог резервирования памяти) и Minimum allocated memory (минимальная выделенная память) - значения HighMemoryLimit и LowMemoryLimit в реестре. Значение параметра Memory conservation threshold по умолчанию - объем физической памяти компьютера во время установки. Значение параметра Minimum allocated memory по умолчанию - половина физической памяти компьютера во время установки. Если Вы измените объем памяти компьютера после установки, то Вам нужно будет вручную отредактировать эти значения. Иначе Analysis Services может неэффективно использовать текущий объем физической памяти компьютера.

Analysis Services использует поток очистки памяти для уменьшения объема памяти, выделенной для Analysis Services, когда этот объем достигает среднего значения между настройками Memory conservation threshold и Minimum allocated memory. Когда поток очистки памяти активирован, он начинает удалять записи из кэша результатов запросов, основываясь на алгоритме издержек и выгоды, который принимает во внимание множество факторов, включая такие, как часто эти данные используются в кэше результатов запроса, ресурсы, необходимые для повторного получения записей, и пространство, занимаемое этими записями. По умолчанию поток очистки памяти работает с приоритетом ниже среднего. Частота, с которой запускается этот поток, определяется параметром реестра BackgroundInterval. По умолчанию значение равно 30 секундам. На самом деле этот параметр управляет интервалами между обработками для множества фоновых задач, включая поток очистки памяти, логирование запросов и отложенная обработка. Если Вы хотите установить интервал для потока очистки памяти отдельно от этих фоновых задач, то добавьте ключ реестра CleanerInterval и установите значение только для потока очистки памяти.

Когда количество памяти, используемое Analysis Services, превышает значение Memory conservation threshold, Analysis Services повышает приоритет потока очистки памяти до нормального, чтобы быстро уменьшить объем выделенной памяти до Minimum allocated memory. Если общий объем памяти, выделенный всем задачам Analysis Services, превышает порог выделения памяти более чем на 6,25 процента, то Analysis Services сразу начинает удалять из кэша записи целых кубов для быстрого уменьшения используемого Analysis Services объема памяти. В этом случае, из-за того, что Analysis Services очищает память очень быстро, общий объем выделенной памяти может опуститься ниже значения, указанного в параметре Minimum allocated memory.

Если Вы установите значение Minimum allocated memory слишком низким, то поток очистки памяти будет удалять слишком много записей из кэша результатов запросов. Это увеличит время отклика запросов и потребует дополнительных ресурсов для повторного заполнения кэша результатов запросов. Допустим, что у вашего компьютера 2 гигабайта физической памяти и Вы устанавливаете параметр Memory conservation threshold равным 1.4GB и параметр Minimum allocated memory равным 100 мегабайт. Если использование памяти значительно превышает 1.4 гигабайта, то поток очистки памяти принудительно будет удалять записи из кэша результатов запроса до объема в 100 мегабайт или даже меньше. После этого Analysis Services должен снова добавлять записи в кэш результатов запросов при выполнении новых запросов. Более подходящее значение параметра Minimum allocated memory для этой системы - 1 гигабайт, что дает потоку очистки памяти возможность выполнять свою работу без ненужных удалений записей кэша, когда объем выделенной памяти превышает значение, заданное в параметре Memory conservation threshold.

Как Вы можете видеть, установка для параметра Memory conservation threshold слишком низкого значения также уменьшает общую производительность и может вызвать ошибку нехватки памяти. Никогда не устанавливайте параметр Memory conservation threshold больше объема физической памяти компьютера (иначе это приведет к интенсивному использованию файлов подкачки). Если Вы установите флажок /3 GB, то не следует устанавливать параметр Memory conservation threshold больше 2.7 гигабайт. Установка этого значения немного ниже 3-гигабайтной границы гарантирует, что поток очистки памяти имеет достаточно времени для реагирования на недостаточность памяти и для уменьшения выделенной памяти до того, как Analysis Services использует все 3 гигабайта адресного пространства. Порог выделения памяти не ограничивает количество памяти, используемое Analysis Services, напрямую. Это означает, что у Analysis Services может произойти нехватка адресного пространства в пространстве главного процесса или использовать больше памяти, чем физически есть в компьютере.

Совет: Если Вы добавляете память или устанавливаете флажок /3 GB в файле boot.ini, то Вам следует увеличить значения параметров Memory conservation threshold и Minimum allocated memory в Analysis Manager.

Замечание: Если у Вас не установлен Analysis Services Service Pack 3, то Вам нужно изменить значение HighMemoryLimit напрямую в реестре, чтобы позволить Analysis Services использовать более 2 гигабайт памяти, вместо установки значения параметра Memory conservation threshold в Analysis Manager. Установка SP3 изменяет Analysis Manager, что позволяет администратору вводить значение, превышающее 2 гигабайта (до 3 гигабайт). В SP2 и более ранних версиях Analysis Manager позволял ввести только значения от 1 до 2047 мегабайт. Для дополнительной информации зайдите на сайт Microsoft Knowledge Base (support.microsoft.com) и посмотрите статью "INF: How to Enable Analysis Server To Use 3 GB of RAM".

ПРОДОЛЖЕНИЕ СЛЕДУЕТ

[В начало]

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

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

Существует ли инструмент для облегчения процесса настройки монитора производительности на станциях Windows?
Джон Севилл
Microsoft выпустила Performance Monitor Wizard, загрузить который можно по ссылке. После загрузки .zip-файла следует распаковать архив. В нем два файла, в одном из которых - лицензионное соглашение по использованию утилиты, а другой представляет собой собственно мастер настроек perfwiz.exe. Программа Performance Monitor Wizard - не такой замысловатый инструмент, как Windows Server 2003 Server Performance Advisor, но зато этот мастер можно использовать на большем числе операционных систем Windows...

Как удалить запись, если у неё есть подчинённые записи
Tadas Budvytis
C-sharp: Часто бывает, что при удалении записи из таблицы необходимо что-то проделать с подчинёнными записями - удалить их, переназначить другой записи, убрать информацию о подчинении. Механизм, описанный ниже, позволит вам решать такие проблемы. Допустим, у вас есть таблица Employees и таблица дефектов - Defects, а одна из записей первой таблицы должна быть удалена. Отсюда дилемма - что делать с подчинёнными записями таблицы Defects: удалить их, оставить без подчинения или переназначить другой записи? Проблема становится непростой, если есть многоуровневые отношения. Что же делать? Читайте дальше...

Как создать класс-помощник для создания таблиц на Visual C# .NET
Microsoft
C-sharp: В этой статье рассказывается как реализовать и использовать класс DataSetHelper, который содержит простой код для создания таблицы на основе списка полей и типо полей, разделённого запятыми. Также здесь существует второй метод создания таблицы - уже с ключевыми полями...

Слой доступа к данным для выполнения хранимых процедур (ХП)
Surapureddy Sriram
C-sharp: этой статье рассказано каким образом можно выполнить одну или несколько ХП из слоя приложения. Поскольку слой доступа к данным полностью отделен от слоя приложения, нам необходимо только лишь изменить слой приложения при изменениях в схеме БД...

Строим независимые от конкретной БД приложения ASP.NET
Fredrik Alund
ASP: В этой статье мы покажем вам как написать независимое от баз данных и провайдеров данных веб-приложение с помощью технологии ASP.Net и ADO.Net, используя новый менеджер поставщиков данных Mimer Provider Manager (MPM)...

Пристальный взгляд на выражения привязки к данным
Scott Allen
ASP: В этой статье обсуждаются некоторые трюки при работе с DataBinder.Eval в приложениях ASP.NET, работающих с данными...

Экспорт данных в файл XML в SQL Server 2005
Jasper Smith
C-sharp: В этой статье будет рассказано как скомбинировать интеграцию CLR с улучшенным FOR XML для лёгкой генерации файлов xml из ваших реляционных данных. Для ознакомления с хранимыми процедурами .NET, ознакомьтесь со статьёй Introducing CLR Stored Procedures in SQL Server 2005. В этой статье используется таблица Orders в БД Northwind. Демонстрационные БД для сервера SQL 2005 вы можете найти здесь...

Вредоносные SQL-строки
Fons Sonnemans
C-sharp: Знаете ли вы о том, что злоумышленник может повредить данные в вашей БД путём использования вредоносных вставок в строки SQL-запросов? Для предотвращения таких SQL-инъекций можно использовать коллекцию параметров при построении строк SQL-запросов. Однако, я разработал более усовершенствованный метод для создания и безопасного выполнения запросов на языке SQL с использованием пользовательского ввода. В этой статье я опишу использование объектов вместо строк при создании и выполнении SQL-запросов. Эти объекты также будут ответственны за специфический для разных RDBMS синтаксис SQL-запросов - они позволят вам писать код, независимый от той RDBMS, которую вы будете использовать...

Динамическое добавление DSN
Bas Goedemans
C-sharp: Начнём с того, что обычно я использую OLEDB-соединение к БД. Но после того, как я столкнулся с ошибкой в .NET Framework (в европейской, в моём случае датской версии, теряется десятичный разделитель из-за того, что это не точка). У меня просто не было другого выбора и я стал использовать ODBC - в нём такой ошибки нет. Всё бы ничего, если бы не эти чёртовы DSN-имена. У меня не было никакого желания добавлять DSN-имена вручную, я обшарил всю сеть и: не нашёл ничего. После того, как я получил несколько подсказок на форуме Microsoft, я решил написать эту статью. Используем вызовы функций API для динамического создания имён DSN....

Обработка событий элементов управления вставленных в ячейки DataGrid
mkruppa
C-sharp: Одной из самых больших загадок для меня при работе с DataGrid была обработка событий элементов управления, вставленных в ячейку DataGrid без затрагивания самого компонента DataGrid. Например, обработка события OnCheckedChanged элемента управления CheckBox с установленным свойством AutoPostBack в true...

Управляем вложенными транзакциями
Brian Noyes
C-sharp: ADO.NET позволяет вам легко оформить несколько обращений к БД в виде одной транзакции. Однако программисты часто неохотно используют такой подход, поскольку они полностью не понимают взаимодействие между транзакциями, объявленными в коде ADO.NET и транзакциями, использующимися в хранимых процедурах (ХП). Ситуация часто усугубляется исключениями, вызванными SQL Server'ом при использовании вложенных транзакций с ХП, которые сами используют транзакции. В этой статье мы проясним указанные моменты, и я покажу вам, как использовать вложенные транзакции и правильно обрабатывать ошибки...

Степени параллелизма и степени неопределенности в Microsoft SQL Server
Mat Stephen's WebLog
MSSQLServer: Max degree of parallelism (DOP) - дополнительна опция конфигурации SQL Server, с которой связано много вопросов и которой посвящено множество публикаций. В этой статье своего блога, автор надеется внести немного ясности в то, что эта опция делает и как её нужно использовать...

Автоматизация исполнения DTS
Augustin Carnu
MSSQLServer: Автор в значительной степени использует технологию DTS для перемещения и преобразования данных внутри BI Приложения; потребовалось найти допустимое решение повторного связывания пакетов на Промышленном сервере после перемещения их из среды разработки и QA. Эта статья представляет решение задачи трудоёмкой работы ручного соединения 50 и более пакетов DTS после импортирования их на новый SQL Server...

Основы I/O в SQL Server 2000
Bob Dorr
MSSQLServer: Изучение требований к операциям ввода-вывода (I/O) с файлами баз данных Microsoft SQL Server поможет Вам поднять производительность системы и избежать ошибок, связанных с I/O...

[В начало]

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

SQL Server 2005 - SQL Server Integration Services - Part 2
Marcin Policht
In the first article of this series, we presented the basic concepts relevant to understanding SQL Server 2005 Integration Services, which is the primary mechanism for Extraction, Transformation, and Loading (ETL) functionality available in SQL Server 2005. We also provided a quick overview of tools that allow you to manage such activities as DTS package design, development, and storage, as well as interactive and scheduled execution. In order to gain better familiarity with each of these activities, we will look at them from a more practical perspective, using a number of fairly straightforward examples

Processing XML Showplans Using SQLCLR in SQL Server 2005 - Make Use of the New XML Showplans
Mat Stephen's WebLog
SQL 2005 now provides Showplan (Query plan) output in XML - why? To make it easier for a dba/developer to write TSQL, or other code, that can determine the cost of a query and thus dynamically determine if the query should be prevented from running based on the load it will create on the server

On Managed Code Performance, Again
Coding Horror
Managed code may be fat and slow, but it fares surprisingly well in Rico's C# port of Raymond Chen's C++ Chinese/English dictionary reader

SQL Server 2000 Schema: How do I list all the indexes in a database?
aspfaq
Yes, you can use the following for a specific table

Display all tables from SQL Server using Visual Basic 6.0
Jeremy Kadlec
How do I display all of the tables from SQL Server using Visual Basic 6.0? For example, if I have three tables in a public database, how do I display only the table names that are in the public database?

On the road again...
The SQL Doctor is In
Back to the home planet for four days of data warehouse design and ETL. Leaving (on a jet plane) at 6:40, meaning my taxi will arrive at 4:40 and yet I cannot make myself stop typing!

The end of the MDAC Redistributable [Brad Rhodes]
DataWorks WebLog
Microsoft Data Access Components version 2.8 sp1 is the last stand alone redistributable of MDAC that Microsoft will ship

Does ADO.NET update batching really do something?
DataWorks WebLog
I’ve gotten this same question several times in the last few weeks, so I thought it would be a good idea to put together some details on the topic. Update batching is a new ADO.NET 2.0 feature that, when enabled, introduces an optimization to the process of executing a DataAdapter.Update call (which basically takes the changes from a DataTable and pushes them into a database using the INSERT/UPDATE/DELETE commands)

An Introduction to SQL Server 2005 Integration Services
Kamal Hathi
This paper discusses the challenges that face businesses that rely on data integration technologies to provide meaningful, reliable information to maintain a competitive advantage in today’s business world. It discusses how SQL Server 2005 Integration Services (SSIS) can help Information Technology departments meet data integration requirements in their companies. Real-world scenarios are included

Database Architecture: The Storage Engine
Cathan Cook
This article provides insight into the inner workings of SQL Server architecture. It covers database engine enhancements, providing usage tips and pointers to more information. Understanding depth information about the SQL Server engines can help a Database Administrator (Database System Engineer) take greater advantage of SQL Server when designing, building or enhancing database systems. Although targeted at database professionals, this material may also be useful from an educational or marketing perspective. (21 printed pages)

SQL Server service fails to start
sqlexpress's WebLog
In some cases on a non-English OS, the SQL Server Service will fail to start. The workaround for this problem is to run the service as Local System or a Domain user account and not the Network Service Account (which is set if you do a default installation)

Long Running Jobs
Leo Peysakhovich
SLQ Server has a fantastic job scheduling system, but there are some times that things go wrong. Leo Peysakhovich brings us another great article that looks at a way to check if your job engine is running and how to restart it. Practical code included in this one

SOA, Multi-Tier Architectures and Logic in the Database
Ken North
Programmers, webmasters, Web services developers and database administrators (DBAs) are not strangers to the "Can we have it tomorrow?" request. That's why software and web developers have embraced a continuous stream of silver bullet technologies that promised to accelerate development. The developer community has experienced "web time", object-oriented programming (OOP), rapid application development (RAD), "extreme programming" and "agile development". Accelerated development schedules put a premium on understanding architecture and knowing how to match the tools to the job. Today that means understanding today's model of applications as services and what role a database can play. If you understand SQL technology, for example, you can adapt databases to application and service requirements by embedding logic in a database

2005 IW Salary Survey
Steve Jones
Knowing where you stand as a SQL Server 2000 DBA in terms of salary can be great information for your next review or raise discussion. Steve Jones participated in Information Week's 2005 survey and got the results back. Here are a few notes and thoughts from the survey

How to Asynchronously Execute a DTS package from ASP or ASP.NET
Davide Mauri
This article is written by Davide Mauri. It describes a clever yet simple way to aysnchronously execute a DTS package from inside SQL Server. This can be easily called from ASP or ASP.NET

Statistics Used by the Query Optimizer in Microsoft SQL Server 2005
Eric N. Hanson
Microsoft® SQL Server™ 2005 collects statistical information about indexes and column data stored in the database. These statistics are used by the SQL Server query optimizer to choose the most efficient plan for retrieving or updating data. This paper describes what data is collected, where it is stored, and which commands create, update, and delete statistics. By default, SQL Server 2005 also creates and updates statistics automatically, when such an operation is considered to be useful. This paper also outlines how these defaults can be changed on different levels (column, table, and database)

Database Mirroring in SQL Server 2005
Ron Talmage
Database mirroring is a new SQL Server 2005 technology for increasing database availability. Database mirroring transfers transaction log records directly from one server to another and can quickly fail over to the standby server. You can code client applications to automatically redirect their connection information, and in the event of a failover, automatically connect to the standby server and database. Fast failover with minimal data loss has traditionally involved higher hardware cost and greater software complexity. Database mirroring, however, can fail over quickly with no loss of committed data, does not require proprietary hardware, and is easy to set up and manage

Implementing Row and Cell Level Security in Classified Databases Using SQL Server 2005
Art Rask, Don Rubin, and Bill Neumann
This paper describes how SQL Server 2005 can be used to support Row- and Cell-Level Security (RLS/CLS). The examples provided in this white paper show how RLS and CLS can be used to meet classified database security requirements

Database Concurrency and Row Level Versioning in SQL Server 2005
Kalen Delaney
Modern relational database systems potentially allow hundreds, if not thousands, of simultaneous connections to the data. The architecture of the database system itself determines the various ways that concurrent access to the same data can be managed with as little interference between users or connections as possible. Most database systems provide features that an application developer can use to exert some control over how concurrent access is managed, allowing the developer to find a balance between concurrency and data consistency

Introduction to SQL Server 2005 Relational Engine Security Features
Microsoft
Security is a sensitive topic that affects the work of all Microsoft SQL Server administrators and developers. One of the primary objectives for Microsoft SQL Server /2005 is to redefine the server’s security framework, using a model of a simple set of rules that can be explained clearly without a long list of exceptions. This whitepaper will address changes to SQL Server /2005 that implement this new security model

Visual Studio 2005 Team System Modeling Strategy and FAQ
Microsoft Corporation
Customers and partners are keen to understand Microsoft's strategy for model-driven development and its support in Visual Studio Team System. When we explain our strategy to them, they frequently express interest in some of the same topics, and raise some of the same concerns. In this document we set out our strategy for model-driven development as a series of questions and responses that address these topics and concerns. The first five questions deal with the main pillars of our strategy, which we have described with detailed answers and explanations. Other frequently asked questions are gathered in a conventional FAQ in the last section. (15 printed pages)

New Team System Stuff - 2005-05-25
Rob Caron's Blog
Yesterday marked the one-year anniversary of the public announcement of Visual Studio Team System, which was announced at TechEd 2004 in San Diego [Visual Studio 2005 Team System!]

Event Log RSS Feed Generator
Sergio Pereira
A simple utility to provide remote, organized access to the system Event Log messages

SSIS: Using InfoPath XML Files in SSIS XMLSource Adapter
Ashvini Sharma
InfoPath forms can be saved to XML, these XML Files can later be used in SSIS XMLSource adapter to pull out the data in tables and columns. However, there are some common problems you may meet in these scenarios. This article describes how to work around these potential problems. The issues mentioned in this article is not only specific to InfoPath files, it can also be referenced in other similar situations as well

SSIS: Downloading a file over HTTP
Ashvini Sharma
A question came up on an internal alias about how can one download a file over HTTP. Here's a script that does that, should be trivial to wrap it inside a task if you forsee doing this over and over again

Efficient Property Promotion from XML Instances
XQuery Inside SQL Server 2005
In many cases, when storing XML data, some of the elements/attributes will be more important for storage/querying than others. Access to values inside XML data-type instances requires additional overhead when compared with just selecting relational data from a table. Thus, there are many times when we would like to take some of the data out of an instance and promote this into relational tables – this is often referred to as ‘property promotion’. SQL Server 2005 allows the user to define views and computed columns over XML data-type instance. These views/computed columns are useful for simplifying queries, but they will not provide any additional performance unless their contents are materialized somehow

10 Baselining Tips for SQL Server: Lessons From the Field
Geert Vanhove
“A known value against which later measurements can be compared” is one of many definitions for SQL Server baselining. In this article I want to share my findings with you on this subject

How to Optimize the Use of the "OR" Clause When Used with Parameters
Preethiviraj Kulasingham
Have you ever tried to use parameter validation within a SQL Server stored procedure using an OR clause? At times, it can cause performance problems. I found this recently when I was asked to fine tune a stored procedure. The procedure had two parameters, and either of them could be optional. The developer who wrote the stored procedure combined both conditions into one WHERE clause using “AND” and “OR”.

SQL Server 2005 Import/Export Server Registrations
Vinod Devasia
SQL Server 2000 has a great management tool in Enterprise Manager, but one of the hassles is registering large numbers of servers on all your workstations. SQL Server 2005 makes this easier and new author Vinod Devasia shows us how

How to pass array of values into SQL Server stored procedure using XML and Visual Basic .NET
Val Mazur
You are required to pass array of values into SQL Server stored procedure to use it as a list for a IN clause

Using ANSI SQL as a Conceptual Hierarchical Data Modeling and Processing Language for XML
Michael M David
This paper will explain and show how standard ANSI SQL processors can naturally model and automatically process complex multi-leg hierarchical data structures at a full conceptual hierarchical level. This also means the query user does not need to have structure knowledge of the hierarchical structures involved. The data modeling capability includes dynamically combining logical hierarchical relational and physical XML data structures at a full hierarchical level. This also includes the ability to link below the root of the lower level structure intuitively forming a valid unified hierarchical structure. As will be shown, ANSI SQL’s high level hierarchical data processing allows the flexible conceptual control of hierarchical node promotion, fragment processing, structure transformation, and variable structure creation

Microsoft SQL Server 2005
Michelle Dumler
This paper provides an overview of the new benefits and functionality available in SQL Server 2005

Solving Business Problems with SQL Server 2005 Analysis Services
Craig Utley
This paper examines a number of common business problems and shows how SQL Server 2005 Analysis Services solves these problems in a simple and cost-effective manner. Types of business problems covered are providing a simple, integrated view of data, data mart and niche application consolidation, intelligent views of data, localization challenges, and real-time business intelligence data. These business problems typically have been challenging or impossible with other data warehousing products. Microsoft brings these new capabilities to the enterprise in a simple yet powerful package

SQL Server 2005: Real-time Business Intelligence Using Analysis Services
Paul Sanders
This paper covers features in SQL Server 2005 Analysis Services that overcome many of the barriers to gathering and analyzing real-time business intelligence data faced by companies today

SQL Server 2005 Reporting Services (SSRS)
Alex Payne and Brian Welcker
SQL Server 2005 Reporting Services is a key component of SQL Server 2005. Reporting Services was first released with SQL Server 2000 and provided customers with an enterprise-capable reporting platform with a comprehensive environment for authoring, managing, and delivering reports to the entire organization. Reporting Services in SQL Server 2005 provides additional enterprise reporting capabilities and addresses a new audience—business users who want to interact with data in an ad hoc fashion as well as create their own reports from scratch and to share them with others. In Reporting Services, the requirements of different types of users who want to interact with reports can, for the first time, be addressed with one reporting solution. This document describes the new capabilities in SQL Server 2005 Reporting Services

[В начало]

ФОРУМ SQL.RU

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

Ваше мнение об упражнениях SELECT на http://sql.ipps.ru
Новые упражнения на http://sql.ipps.ru
Больше книг хороших и разных!
SQL Server Health and History Tool (SQLH2) Reports
Как отследить ссылки на процедуру из других процедур?
Прошу голосовать за SQL.RU в конкурсе Интернить 2005
Дедлок. U vs X
Непонятности с использованием XLOCK хинта в select
Импорт данных из MS Excel
Проблема с линкованием сервером! Выдает: Login failed for user '(null)' :(((
две таблицы из одной
Знает ли процедура собственное имя?
Нужена помощь в алгоритме триггера
Как заблокировать одну запись в таблице?
Как выбрать нужнкю строку из таблицы?
С Днем Рождения, Glory!
Extended Procedure
Что не так в скрипте?
расширенная хранимая процедура
SQL 6.5. Перенос базы, без потери связей.

[В начало]

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

share registration information. Не совсем работает
Проблемы с Reporting Services
Небольшой трабл после установки SP4
хэш-доступ к данным
Кластер и слетевшие настройки
Нужен совет по ма-а-аленькому локальному поисковичку
FETCH_STATUS & Linked Server
Виснет вызов MSScriptControl, а за ним все последующие

[В начало]


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

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

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



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


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

В избранное