SQL.RU
 client/server technologies
 Главная | Документация | Статьи | Книги | Форум | Блоги | Опросы | Гостевая | Рассылка | Работа | Поиск | FAQ |
   
#344<<  #345  >>#346

Лучшие презентации с мероприятия «Платформа 2007: Определяя будущее»

Встреча MCP клуба в Нижнем Новгороде

Обсуждение терминологии по MS SQL Server. Желающие приглашаются!

СОДЕРЖАНИЕ

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

 

СТАТЬИ

Основы ввода-вывода Microsoft SQL Server. Часть 2 (продолжение)

По материалам статьи Bob Dorr: Microsoft SQL Server I/O Basics. Chapter 2

Контрольные суммы в оперативной памяти

В SQL Server 2005 защита страниц данных получила дополнительные возможности, механизм PAGE_VERIFY CHECKSUM расширен теперь и на оперативную память, и контрольная сумма может вычисляться для находящихся там страниц. Существует несколько ситуации, для которых это может оказаться полезным, например, это может быть загрязнение памяти (in-memory scribblers), нестабильность файла подкачки и нестабильность оперативной памяти.
Для обслуживания контрольных сумм находящихся в оперативной памяти страниц данных используется всё тот же алгоритм расчёта контрольной суммы - PAGE_VERIFY CHECKSUM. Сохранённые на долговременный носитель с состоянием CHECKSUM страницы, будут вовлечены в алгоритм расчёта контрольных сумм в оперативной памяти, если включён динамический флаг трассировки -T831. Страница данных предварительно должна получить при записи на долговременный носитель начальное значение контрольной суммы, чтобы для неё стала возможна защита, использующая алгоритм проверки контрольных сумм в оперативной памяти.
Когда во время некоторых переходов страницы из одного состояния в другое выполняется проверка контрольной суммы находящейся в оперативной памяти страницы, это приводит к небольшому снижению производительности. В следующей далее таблице описаны состояния, в которых может находиться страница:

Состояние
страницы

Описание состояние

Грязная
(Dirty)

Считается, что страница данных является "грязной", когда она была изменена, но не была ещё записана на долговременный носитель. Как только грязная страница сохранена на долговременный носитель, её считают "чистой".

Чистая
(Clean)
 

Страница данных считается чистой или постоянной, когда её образ хранится на долговременном носителе.

Проверка контрольной суммы находящейся в оперативной памяти страницы данных выполняется, если истинны следующие условия:

  • Страница была записана на диск при включённой PAGE_VERIFY CHECKSUM.

  • Для базы данных была включена опция PAGE_VERIFY CHECKSUM.

  • Был включён флаг трассировки -T831.

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

Действие

Описание

Чтение страницы

 

Состояние страницы

Описание состояния

Физическое чтение

Контрольная сумма проверяется после окончания чтения; контрольная сумма сохраняется для проверки в оперативной памяти.

Логическое чтение
 

Проверка контрольной суммы в оперативной памяти не производится.

Запрос изменения страницы

 

Состояние страницы

Описание состояния

Грязная
(Dirty)

После того, как страница помечается "грязной", контрольная сумма для неё больше не проверяется. Контрольная сумма будет ещё раз рассчитана, когда страница будет записана на долговременный носитель.
Проверка контрольной суммы в оперативной памяти не производится.

Чистая (Clean)

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

Возврат (Discard)

Страница считается "возвращённой", когда она возвращена в список свободных страниц.

Состояние страницы

Описание состояния

Грязная
(Dirty)

Грязная страница не может быть возвращена. Страница должна сначала быть записана на долговременный носитель и переведена в состояние "чистая", и только после этого она может быть возвращена в число свободных страниц.

Чистая (Clean)

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

Обратите внимание, что не изменяющиеся страницы (которые никогда не становятся "грязными") остаются в состоянии "чистые", пока они не будут возвращены, и всё это время контрольная сумма тоже не будет меняться.
 

Процесс отложенной записи использует защиту, основанную на проверке контрольной суммы буферов чистых (постоянных) страниц. Эти проверки выполняются всегда, и для этого не требуется включать флаг трассировки -t831. Каждую секунду процесс отложенной записи вносит изменения в счётчики производительности буферного пула и выполняет разнообразные вспомогательные действия. Во время этих служебных операций, отложенная запись может переместить более шестнадцати буферов. Когда отложенная запись находит чистый буфер с действительной контрольной суммой, она проверяет правильность этой контрольной суммы. Если проверка оканчивается ошибкой, об это сигнализируется генерацией сообщения об ошибке 832. Это становится возможным, поскольку выполняемый в фоновом режиме аудит контрольной суммы в оперативной памяти потребляет мало ресурсов. Страницы, которые долгое время остаются в состоянии "чистые" (постоянные), позволяют средствам защиты процесса отложенной записи обнаружить возможные повреждения ещё до того, как такие страницы будут возвращены.
Если контрольные проверки выявляют проблемы, SQL Server генерирует сообщение об ошибке 832, которое указывает на то, что было зафиксировано состояние ошибки. Если Вы сталкиваетесь с расхождениями контрольной суммы в оперативной памяти, используйте представленную ниже диагностику:

  • Проверьте резервные копии, чтобы убедиться в корректности стратегии восстановления.

  • Проведите полное тестирование аппаратных средств, сосредоточив особое внимание на компонентах памяти.

  • Проверьте все сторонние программы, используемые в системе или работающие в адресном пространстве SQL Server. Сторонние компоненты могут привести к засорению памяти, что часто приводит к возникновению проблем. Такими компонентами могут быть COM - объекты, расширенные хранимые процедуры, связанные серверы или другие, аналогичные объекты.

  • Убедитесь в том, что на сервере применены все заплатки и сервисные пакеты для операционной системы.

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

  • Проверьте, что размещение файла подкачки соответствует требованиям к вводу-выводу SQL Server.

  • Включите форсированные краткие блокировки, как это будет описано ниже в этом документе, что помогает изолировать источник проблем.

  • Попробуйте использовать для воспроизведения проблемы те же самые входные буферы или воспользуйтесь возможностью воспроизведения трассы (Replay) в SQL Server Profiler. Если проблема воспроизводится, попробуйте воспроизвести её на другом компьютере. Если проблема воспроизводится и на других компьютерах, обратитесь за дополнительной помощью в службу поддержки Microsoft SQL Server.

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

[В начало]

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

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

Примеры полезности индексов
Craig Freedman
Чтобы прочитать данные из каждой таблицы запроса, оптимизатор должен выбрать соответствующий путь доступа. При этом для индексов он учитывает несколько факторов, с помощью которых он определяет, нужно ли использовать просмотр (сканирование) или поиск, и понадобится ли делать поиск закладок. Вот некоторые из этих факторов:

TreeView и База
framez
Есть таблица вида id | name | idpar, где idpar - id родителя в этой же таблице. В treeview отображается дерево этой таблицы. Дерево загружается не все, а по частям (т.е. ветвь загружается при нажатии на +) Необходимо при добавлении новой записи обновить дерево и выделить ту запись, которая была выделена до внесения изменений.

Рекурсивные запросы в SQL:1999 и SQL Server 2005
Frederic BROUARD
Каждый хотя бы однажды за свою жизнь имел опыт использования рекурсии. Когда я был молод, однажды находился в отпуске в Париже в старом здании, в котором коридор имел две зеркальные стены. Когда я прошел между этими зеркалами, мое тело было отражено бесконечное число раз, и я был очень горд, радостно восхищаясь моим изображением и имея конкретное представление бесконечности. Это и есть рекурсия... Процесс, который способен воспроизводить сам себя в течение некоторого промежутка времени.

Уловка, добавляющая промежуточную материализацию в соединение
Adam Machanic
Работая с SQL Server 2000, я частенько использовал эту небольшую уловку, которая мне помогала, когда уже не было других идей по тюнингу запроса. И я уже думал, что эта уловка наверняка не будет работать с SQL Server 2005, но благодаря коллеге (являющемуся SQL Server MVP) Робу Фарлею, я могу смело представить эту уловку на страницах своего блога.

Введение в соединения
Craig Freedman
Соединение (JOIN) - одна из самых важных операций, выполняемых реляционными системами управления базами данных (РСУБД). РСУБД используют соединения для того, чтобы сопоставить строки одной таблицы строкам другой таблицы. Например, соединения можно использовать для сопоставления продаж - клиентам или книг - авторам. Без соединений, имелись бы раздельные списки продаж и клиентов или книг и авторов, но невозможно было бы определить, какие клиенты что купили, или какой из авторов был заказан.

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

Инструменты Хранилищ данных. Результаты анализа рынка
Intersoft Lab
Согласно исследованиям западных аналитических компаний, за последний год рынок инструментов ХД (DW - data warehouse) вырос более чем на 10%[1].

Microsoft SQL Server 2005 Обзор продукта
Michelle Dumler
Эта статья содержит обзор новых функций и преимуществ SQL Server 2005

Интеллектуальная обработка данных и хранилищ данных в SQL Server 2005
Alex Payne
Данный документ является обзором улучшений, внесенных в платформу интеллектуальной обработки данных в Microsoft SQL Server 2005. Документ не является руководством, в нем только дается информация об улучшениях в платформе интеллектуальной обработки данных.

Введение в SQL Server 2005 Integration Services
Kamal Hathi
Данная статья посвящена проблемам, которые возникают в тех сферах деятельности, что связанны с технологиями интеграции данных, которые должны снабжать современный деловой мир ясной и достоверной информацией для создания преимущества над конкурентами. В статье рассказано, как SQL Server 2005 Integration Services (SSIS) могут помочь департаментам информационных технологий выполнить требования их компании. Приведены практические примеры.

Новые возможности SQL Server 2005 Integration Services
Mark Chaffin, Brian Knight
Данная статья представляет собой практическое руководство для изучения новых особенностей платформы SQL Server Integration Services (SSIS).

SQL Server 2005 Reporting Services (SSRS)
Alex Payne, Brian Welcker
SQL Server 2005 Reporting Services представляет собой ключевой компонент SQL Server 2005. Reporting Services впервые была выпущена с SQL Server 2000, и предоставила пользователям платформу подготовки отчетов уровня предприятия, с комплексной средой для подготовки, управления и доставки отчетов по всей организации. Reporting Services в SQL Server 2005 предоставляет дополнительные возможности подготовки отчетов, и охватывает новую аудиторию - бизнес-пользователей, которым необходимо обрабатывать данные, а также создавать свои собственные отчеты с нуля, и использовать их совместно с другими сотрудниками. В Reporting Services, требования четырех разных типов пользователей, которым необходимо использовать отчеты, могут быть удовлетворены с использованием одного решения. В этом документе описываются новые возможности SQL Server 2005 Reporting Services.

Решение задач бизнеса с помощью SQL Server 2005 Analysis Services
Craig Utley
Данный документ описывает несколько общих бизнес задач и показывает, как SQL Server 2005 Analysis Services решает данные задачи простыми и наименее затратными способами. Под типами бизнес задач понимается обеспечение простого и интегрированного представления данных, консолидация витрин данных и разрозненных приложений, аналитического представления данных, решение проблем связанных с локализацией и получение аналитических данных в реальном времени, что обычно является либо сложным, либо вообще невыполнимым при использовании других продуктов работающих с хранилищами данных. Microsoft предоставляет предприятиям новые возможности в виде единого, мощного и функционального пакета программ.

Скрытые возможности MS SQL: расширенная функциональность или уязвимость системы?
Константин Марченко
Сегодня базы данных - основа любой крупной информационной системы, хранящей и обрабатывающей разнообразные данные. Это системы электронного документооборота и бухгалтерского учета, биллинговые системы и системы управления контентом web-сайтов, системы управления технологическими процессами на производстве. Поскольку в базах данных хранится критичная для ведения бизнеса информация, то первоочередная задача администраторов баз данных - поддержание конфиденциальности, целостности и доступности этих данных. Помимо того, что в случае успешной атаки потенциальный нарушитель может получить доступ к хранимой в базе данных информации, существует возможность исполнения произвольных команд на сервере с привилегиями процесса СУБД, что в свою очередь, может привести к получению нарушителем полного доступа непосредственно к серверу, на котором установлена СУБД.

Новые возможности T-SQL в MS SQL Server 2005
Гайдар Магдануров
В MS SQL Server 2005 появилось множество новшеств, позволяющих еще более продуктивно использовать эту СУБД. Многие из них, такие как новые типы данных, интеграция с платформой .NET, поддержка XML, новые функции ранжирования, улучшения в системе безопасности и прочее, уже были ранее описаны в журнале RSDN Magazine [1, 2, 3, 4, 5]. В этой статье будут рассмотрены новые операторы и функции работы с данными. В связи с грядущим в ноябре выходом финальной версии, приведенная информация является предельно актуальной для всех разработчиков, использующих SQL Server.

Руководство по работе с Microsoft SQL Server 2000 Analysis Services
Carl Rabeler и Dave Wickert
Каждый администратор, который использует Microsoft® SQL Server™ 2000 Analysis Services, сталкивается с определенными эксплуатационными проблемами. Analysis Services и его среда должны быть правильно сконфигурированы. Приложение Analysis Services должно быть развернуто из среды разработки в рабочую среду. Должен выполняться контроль изменений, чтобы убедиться, что изменения в существующей среде полностью протестированы, и что подтвержденные изменения правильно развернуты. Проблемы со свободным пространством должны предупреждаться заранее. Проблемы должны решаться быстро и согласованно. Должна быть обеспечена согласованная пригодность кубов Analysis Services для выполнения запросов. Этот документ является руководством для помощи администраторам в использовании и обслуживании баз данных Analysis Services как компонентов существующей инфраструктуры ИТ и баз данных. Вам следует интегрировать существующие структуры и методы для решения эксплуатационных проблем Analysis Services вместо разработки новых процессов только для Analysis Services. Например, вам следует использовать те же самые методы отслеживания ошибок и решения проблем, которые вы используете в реляционных базах данных; используйте те же методы автоматизации для составления расписаний работ и скриптов; и используйте те же методы контроля изменений, чтобы убедиться, что изменения проконтролированы, протестированы и задокументированы.

Репликация через Интернет или между доменами без доверительных отношений
Paul Ibison
Репликация через Интернет или домены, не имеющие доверительных отношений, обычно выполняется с использованием Виртуальной Частной Сети (VPN), и, следовательно, при этом используется такая же конфигурация как в LAN. В данной статье не рассматривается случай, когда VPN недоступна. Не смотря на то, что считается правильным не выставлять порты SQL Server в Интернет, гибкость подобных коммуникаций очевидна. Такие сети защищаются с помощью брандмауэров, которые выделяют для серверов демилитаризованную зону DMZ/ECZ, что может стать причиной серьёзных проблем в репликации. Эта статья представляет собой только практическое руководство, поскольку описание сложной схемы конфигурации сетей могли бы сделать статью слишком большой.

Новые хинты для запросов в MSSQL 2005
OLEG AKSENOV
Оригинал на английском здесь. Я просто добавлю свое личное мнение (как сторонника минимального но возможного использования хинтов):

Как реляционная база данных выполняет и оптимизирует ваш запрос
Robert l. Bogue
Некоторые люди относятся к реляционной базе данных как к мистическому оракулу, который отвечает на вопросы, заданные программистом. Однако есть ряд правил, которыми руководствуется реляционная база данных при выполнении вашего запроса. Разные реляционные базы данных по-своему подходят к процессу выполнения запроса; однако, фундаментальные концепции, которым они следуют, едины для всех. Эта статья поможет вам понять основы действий анализатора, направленных на выполнение запроса.

Подписчикам MSDN стал доступен для скачивания SQL Server 2005 Developer Edition (Russian)
Anton Belousov
Новость с небольшой задержкой, но все равно нужно об этом рассказать. Спасибо Саше Гладченко за интересную новость. Теперь, подписчикам MSDN стали доступны два образа CD дисков, на которых размещается дистрибутив переведенного на русский язык SQL Server 2005 Developer Edition.

Новые продукты сертифицированные ФСТЭК
Ренат Минаждинов
Позвольте поделиться приятной новостью. Список сертифицированных (для России) продуктов MS пополнился вот этими достойными программами: SQL Server 2005 Standard Edition (Russian version); SQL Server 2005 Enterprise Edition (Russian version). Это особенно приятно в свете того, что не так давно мы также получили сертификат на Windows Server 2003 R2 Enterprise Edition (Russian version). Это, наверняка, облегчит построение безопасной ИТ-инфраструктуры даже на "специализированных" предприятиях. Полный список сертифицированных продуктов можно найти здесь http://www.microsoft.com/Rus/Security/Certificate/Default.mspx (скоро он обновится с учетом новых продуктов). P.S. сейчас в процессе сертификация ISA Server 2006 Standard edition, а процесс по Windows Vista стартует в скором времени (подговоительный этап уже пройден).

[В начало]

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

Performance of IIF function in MDX
Mosha Pasumansky
IIF is one of the most popular MDX functions, (this was proved by these surveys). Yet, it can cause significant performance degradation, which is often blamed on other parts of the system. Many times it is simple to rewrite the MDX expression to get rid of IIF altogether, and other times it is possible to slightly change the IIF to increase performance. While I and others mentioned this fact several times in blog entries, forum postings etc, people keep using and using it (and using it wrong). What is worse, after seeing CASE operator in samples and BOL, people start using CASE instead of IIF. From the performance point of view, CASE is always worse than IIF, at least IIF is possible to optimize in some case, but never CASE. So I decided to dedicate special blog to go over IIF usage and demonstrate with examples how horrible it can be and how to fix it.

How Many Data Files Should I Create for a User Database?
Linchi Shea
Whenever this question comes up, my typical response is to pass along the following Microsoft recommendations:

Data Quality and Data Stupidity
Donald Farmer
"But this isn't about data quality, it's about data stupidity!" It was difficult to disagree. A customer had narrowly avoided dispatching several tons of architectural goods from Seattle to Portland, Maine rather than Portland, Oregon. The address cleansing system had done its best, and only the truck driver (I would prefer to say lorry, but must localize) noticed at the last moment. I had been telling the client for some time that his creaking data quality system was not adequate and that data quality is a lifecycle, a process, a metier, a way of life, a calling ... but for him it was just a function between processing orders and scheduling deliveries.

Using Constraints and Expressions
Matt Masson
Besides the regular Success and Failure constraints, you can create precedence constraints that are linked to an expression.

Conditional Constraints
Matt Masson
Here's a more practical example of using constraints based on variables.

Stored procedures with output parameters
Matt Masson
When executing Stored Procedures with the Execute SQL Task, SSIS passes the statement to the underlying provider without parsing it. While efficient, the different ways of handling the input between the various providers can be a little frustrating. I was working on a couple of issues found in SP1, and realized that when dealing with stored procedures with output parameters, each provider wanted the SQL in a different format.

SqlCredit - Developing a Complete SQL Server OLTP Database Project
Rob Garrison
The purpose of the SqlCredit series is to demonstrate the database design and development portion of a development project. We will build a complete, functioning, tested credit card database to illustrate the complete software development lifecycle. Microsoft provides us with AdventureWorks, but all we get to see is the final product. This series will be about the process that results in a well-designed, well-coded, and well-tested database.

Finding Primes
Kathi Kellenberger
While it's not likely that many of you need to find prime numbers using T-SQL, it is an interesting programming exercise. SQL Server guru Kathi Kellenburger brings us one solution after taking a break over the holidays and reading some popular fiction.

Using Indexed Computed Columns to Improve Performance
graz
I recently read a blog post on doing case-insensitive text searches on SQL Server 2005. The post said that an index on a computed column might be used even if the computed column itself wasn't used in the WHERE clause. I was curious to test that and see how far I might take it. Years ago I worked on a case-sensitive application and I vividly remember all the headaches that caused me. I was also curious to see if I could use that for datetime columns to strip off the time portion and easily do a "date-only" search.

Planning, Implementing, and Administering Scaleout Solutions with SQL Server 2005
Bob Beauchemin
This white paper describes planning guidelines and administration tasks to consider when implementing a scaleout solution with SQL Server 2005. Different scaleout features are compared to determine when to use a particular feature.

How To Restart A Remote Computer
SQL
Sometimes you have to login to your work PC from home over the VPN and after a while for some reason or another you want to restart your PC. How can you do that? You can't use the start menu because only the log off button is displayed

Display 1 When Any Column Is 1 And 0 Otherwise by Using SIGN, SUM Or (Bitwise OR)
SQL
You have three columns; if any of the columns is 1 you want to display 1 if they are all 0 you want to display 0. how can you do that?

Scaling Out SQL Server 2005
Microsoft Corporation
This article explains the different technologies that are available for scaling out a SQL Server 2005 database application, focusing on the factors that go into deciding which solution(s) to use in your application. (16 printed pages)

Working with nested subqueries in SQL Server
Arthur Fuller
Arthur Fuller provides an example that demonstrates the power of nested subqueries. He notes that nested subqueries can help you find the answers you need when the pieces are scattered across a number of tables.

Components of a Service Broker application in SQL Server 2005
Tim Chapman
SQL Server 2005 Service Broker applications provide powerfully robust functionality that allow for scalability and asynchronous processing. Tim Chapman takes a look at how you can use Service Broker to model business processes.

Create cross-platform database-driven applications with JDBC
Contributor Melonfire
The Java Database Connectivity (JDBC) API offers a unified interface to different databases, providing a series of generic functions that are internally translated into native function calls. This makes it extremely easy to create database-driven applications that work across different RDBMS types. This introduction shows you how to use JDBC methods to perform basic database operations.

Surrogate vs. NaturalKeys - References
Mystery Blogger
Although not a complete listing, this is a good start for anyone interested in the debate over natural versus surrogate keys...

Analysis Services 2005 Performance Guide
Elizabeth Vitt
This white paper describes how application developers can apply performance-tuning techniques to their Microsoft SQL Server 2005 Analysis Services Online Analytical Processing (OLAP) solutions.

Palindromes Puzzle - Solutions
Itzik Ben-Gan
First of all, thanks to all who posted your solutions (publicly or privately). I got solutions from: Steve Kass, Adam Machanic, Rob Farley, Maciej Pilecki and FoxTrot.

Using CLR integration to compress BLOBs/CLOBs in SQL Server 2005
Yoel Martinez
Working with large objects, BLOBs in SQL Server, has always been a little tedious. The forums are filled with questions on this topic. New authro Yoel Martinez brings us a more advanced looked at BLOBs in SQL Server 2005 with code and a technique for compressing large amounts of data to save space.

Internals, Troubleshooting, and Best Practices for use of Scaleout Technologies in SQL Server 2005
Bob Beauchemin
This white paper describes the internal details of SQL Server 2005 scaleout technologies, and suggests troubleshooting techniques for technical issues involved in scaleout. In addition, best practices are suggested for each technology.

Another DMV a Day
Glenn Berry
High signal waits (above 20%) are another indication of CPU pressure. The results from this query are cumulative since your SQL Server has been running.

SQL Server 2005 Express Starter Data Schemas
Barry Williams
This data schema series is designed for new database administrators and enthusiasts to quickly get started learning the basics of managing and administering SQL Server 2005 Express Edition in real-world environments. These fully-functional starter data schemas cover a wide-range of scenarios that are designed to help you quickly and easily deploy SQL Server 2005 Express Edition within your organization.

Beware: New Query Hints Added to SQL Server 2005
Brad M. McGehee
If you have spent much time reading the tips, FAQs, and articles I have written on this Web site, you have probably noticed that I am not in favor of using query hints in queries. For those of you who may be a little new to SQL Server, a query hint is a way to force the SQL Server query optimizer to optimize a specific query in a very specific way. For example, a query hint can be used to force the query optimizer to always use a specific index, to force a query to use a specific type of join, or to force the query optimizer not to use more than one CPU to execute a query. There are many different query hints available.

TDSSNIClient initialization failed with error 0x50, status code 0x50
MING LU
In this post, I want to talk about a special cause of this specific error message when you try to start SQL 2005 instance.

Service Orientation in Oil and Gas (Part 2) - Service Oriented Business Intelligence (SoBI)
Jamie Thomson
When I joined my current project project in 2005 I didn't know much about Service Oriented Architectures (SOA). I knew it was something to do with transferring information via standard protocols and making it available to consumers but that was about it. My background is Business Intelligence (BI) which is all about it collecting data for storing in a data warehouse and I didn't see how these two seemingly incompatible architectures could work together. The trouble was, that is exactly what our customer wanted them to do.

Careful when using rc:Toolbar=false
John Gallardo
I'm in the middle of reinstalling Visual Studio, and so I thought I would share an interesting story from a couple of weeks ago. An internal customer (Microsoft-speak for some other team at Microsoft) of Reporting Services was encountering seemingly random rsExecutionNotFound errors when navigating around their application. Of course, things like this are never random and there was a perfectly good explanation. After digging through their application for a little while, and with the help of Fiddler, I stumbled upon the problem. They were rendering the same report in two different contexts, one of them was specifying rc:Toolbar=false, and the other wasn't. Basically, their call to the report server looked something like this in the two places:

Dealing With Upper and Lower Case Data
Gregory A. Larsen
When working with data in SQL Server you might run across different needs to change the case of the data. For instance, you might want to convert all the characters in a varchar column to upper case, lower case, or change only the first character of a column value to upper case. In addition, you might want to compare different character strings and either have them be equal or not equal when the characters are the same but the case is different. In this article, I will show you different examples of how to deal with different situations related to the case of character strings.

Managing SQL Server using PowerSMO
Dan Sullivan
PowerSMO combines two new Microsoft technologies:

SQL Server Spotlight on Bob Dorr
Steve Jones
We continue with our look at the people behind SQL Server with a very interesting interview from one of the senior support engineers, Bob Dorr.

little SQL-helpers: Last day of month
Markus Fischer
Do you need the last day of a month in a SQL Statement?

little SQL-helpers: fillup string
Markus Fischer
If you need to fill up a string to a defined total count you will be glad if you have a function like this

How to schedule a database backup operation by using SQL Server Management Studio in SQL Server 2005
Microsoft
This article describes how to schedule a database backup operation by using SQL Server Management Studio in Microsoft SQL Server 2005.

Encrypting Your Valuable Data With SQL Server 2005: Part 2
Dinesh Asanka
After reading Part I in this series, you will have an architectural understanding of data encryption in SQL Server 2005. In this article, we will discuss the real implementation of it.

Warm Lager and a Sarong
Mick Horne
Allow me to be the second to congratulate Jamie Thomson on reaching #2 in the Google search results for SQL Server Integration Services (SSIS).

Performance Impact of Disk Misalignment
Linchi Shea
Just google for Windows disk alignment best practice, and you would find thousands of articles, whitepapers, and posts, all preaching the practice of aligning disk partitions on the 64K boundary. For instance, one of the EMC recommendations prescribes a disk alignment value of 64K for the host file systems when deploying SQL Server 2005. Microsoft states that, "misalignment can defeat system optimization of I/O operations designed to avoid crossing track boundaries."

VistaDB 3.0 Worth a Look
Ken Cox
For data deployment simplicity on a shared host, it's hard to beat FTPing your database file to the site and configuring its connection string. We almost have that simplicity with SQL Server 2005 Express, but not all ASP.NET hosters offer Express. For some, you've got to move your Express database to their SQL Server 2005 system. It's doable, but takes some effort.

Putting Unit Tests to Work
Grant Fritchey
Testing is an important part of any software development process, but it's a part that many of us skimp on or ignore because of the tedious nature of testing. Longtime author Grant Fritchey has been working with Visual Studio Team Edition for Database Professionals and has written us an article on how you can make your unit testing easier.

Partitioned Table - Number of Rows in Filegroups
Dejan Sarka
Lately I met a problem with partitioned tables. I needed a report on number of rows of a partitioned table in different filegroups. It is quite easy to find number of rows in partitions with the following query:

Object - Role Modeling Part 1
Dejan Sarka
Object-Role Modeling (ORM) is a very powerful method to model a relational database. It is very easy to use as well. However, the method is far from being well known and spread around. I decided to introduce ORM through couple of blogs. For a quick overview how an ORM diagram looks like, look at the picture bellow. It represents a simple model to support an imaginary Sales application. I will explain how to come to such a model and how to create an ER model and DDL script from it with MS Visio in forthcoming blogs.

Encrypting Your Valuable Data With SQL Server 2005: Part 2
Dinesh Asanka
After reading Part I in this series, you will have an architectural understanding of data encryption in SQL Server 2005. In this article, we will discuss the real implementation of it.

Crossjoin function now takes more than two parameters
Chris Webb
Crossjoin is a function which, for obvious reasons, is dear to my heart. It's been at least a year since I last found a feature in AS2005 MDX that I wasn't aware of, but the other day I found out that the Crossjoin function can now take more than two sets as parameters, much in the same way that NonEmptyCrossjoin can. Here's an example:

SQL 2005 Maintenance Wizard Part 1
Don Schlichting
There are a number of database housekeeping tasks that should be done on a regular basis to insure SQL performance and data integrity are optimized. Backing up the database, reorganizing data and index files, compressing the data file, updating the index statistics, and performing consistence checks are a few examples. All of these tasks can be executed using TSQL commands. However, SQL 2005 includes a graphical wizard (Maintenance Plan Wizard) that makes selecting these tasks and their options easy. In addition, the wizard will roll all of your selected tasks into a reusable and customizable package.

Transactions in SQL Server 2005 Integration Services
Jamie Thomson
SQL Server 2005 no longer has DTS. Instead, the next evolution of ETL tools from Microsoft is Integration Services, with many enhancements and capabilities, far beyond what was available in SQL Server 2000 DTS. New author Jamie Thomson brings us a look at the transaction capabilities of SQLIS in Yukon.

Writing Secure Transact-SQL
Bart Duncan
There are plenty of good sources of information about how to deploy SQL Server in a secure fashion. However, these resources are often targeted at database administrators tasked with securing already developed applications. In addition, there is a rich body of information that discusses writing secure .NET and ASP.NET code, including .NET code that accesses SQL Server. However, many of these resources focus on the data access code that runs on the application servers rather than the Transact-SQL (T-SQL) code that executes within SQL Server. Developing T-SQL code that runs securely on SQL Server is the primary focus of this column.

Activity Viewer - kill queries in Analysis Services
Jesse Orosz
One of the neat things about SSAS2005 is the ability to tell what's going on under the hood. This was sorely lacking in AS2000 and resulted in many restarts of the OLAP service to clear things up.

CALUMO BI & the Microsoft effect - Part 1
Calumo
With the imminent release of Microsoft PerformancePoint, I have been asked several times how this will effect our vision for CALUMO and the impact it will have on the BI market generally.

Beginners Guide to BI: It's all about the Metadata
Myles Matheson
A while ago I wrote a blog describing a definition of a Data warehouse. I did not cover anything to do with Metadata in any depth. Metadata has become even more important with the new reporting standards such as Sarbanes-Oxley. This subject should really be considered, when building any BI system.

SYSK 279: What's New in the World of Database Tuning?
Irena Kennedy
Did you know that SQL 2005 Database Engine Tuning Advisor (replacement for SQL 2000 Index Tuning Wizard) can do its analysis using production server's hardware configuration information, metadata and statistics, but perform the actual tuning on a test server? And it does this without copying the actual business data (it only copies the metadata and necessary statistics)!

Wincing the Night Away (Tips for SSRS in SharePoint Mode)
Brian Welcker
Here is some useful information about using SSRS in SharePoint Integrated mode (included with SP2):

Designing High Performance Stored Procedures
Gene Pinski
Stored procedures can be an effective way to handle conflicting needs, but it's not always so obvious how to write them so they both perform well and scale.

Logical Functions: IsAncestor(): Conditional Logic within Calculations
William Pearson
In this lesson, we will expose another logical function which we can use for testing a member or level at which a cell is being calculated, the IsAncestor() function. The general purpose of IsAncestor() is to return whether or not a specified member is an ancestor of another member we specify. (By "ancestor," of course, we mean a member from which the specified member is descended within a dimensional hierarchy.)

The Clustered Index Debate Continues...
Kimberly L. Tripp
Well, I've promised to blog more and I'm really going to try to do so. This morning I got the perfect question/comment (in email) to respond to and after working through a response that was taking me upwards of 3 hours (you'll learn later why I have 3 "spare" hours :)......... I figured that it was time to turn the response into a blog post. ;)

Hash Warning SQL Profiler Event
Steve Herbert
One of the less well-known warning events that is logged to SQL Profiler trace is the Hash Warning event. Hash Warning events are fired when a hash recursion or hash bailout has occurred during a hashing operation. Both of these situations are less than desirable, as they mean that a Hash Join or Hash Aggregate has run out of memory and been forced to spill information to disk during query execution. When a hashing operation spills to disk, this almost always results in slower query performance and can cause space consumption increase in tempdb.

Database Programming: Using The modify() Method Against An XML Variable
Ward Pond
Here's the first technical tid-bit on this blog in awhile, courtesy of a long-concluded internal conversation that I rediscovered when I was cleaning out three months' worth of email from my inbox.

Using Plan Guides in SQL Server 2005
Brad M. McGehee
One of the biggest frustrations for a DBA is performance tuning third-party applications. In most cases you can't modify the code directly, so you have to live with the code the application provides you. In most cases, your only opportunity for tuning third-party applications is to add or modify indexes. Sometimes, this can really help out performance.

Cleaning up imported data in SQL Server
Arthur Fuller
Arthur Fuller describes how his server was able to analyze the content of hundreds of columns in 62 million rows in about an hour. Get all the details in this SQL Server tip.

Use Service Broker Internal Activation in SQL Server 2005
Tim Chapman
DBA Tim Chapman walks you through the process of building a small Service Broker application that uses Internal Activation to process messages when they are passed.

[В начало]

ФОРУМ SQL.RU

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

Вышел русский SQL Server 2005!!!
Суррогатные или естественные
Импорт данных из MS Excel
Хранимая процедура
с появлением SQL2005 T-SQL уже не нужен?
временные таблицы и те кто ими пользуются...
данные из Paradox в SQL Server
контроль роста tempDB
слова из нужных букв
Выходные/Рабочие
"Странности" 2005
способы написания SQL запросов
Как безболезненно удалить лишние SP
Проверка на существование
SQL Server Кушает память......
Уменьшение даты на месяц
Не могу подключиться к базе ЕГАИС
OpenDataSource i The OLE DB provider "Microsoft.Jet.OLEDB.4.0" has not been registered
Настройки SQL 2000 Server для оптим.работы 1С 8.0
Как выдать доступ пользователю на sp_recompile?

[В начало]

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

Не получается установить MSSQL Server (клиент не поддерживает шифрование)
Подсчет рабочих дней с учетом праздников и выходных
Transform Data Task & Copy & Paste
Server Project ?
Хранение суффикснового дерева в БД
Установка SQLя X64
MS SQL Linked Server - State 42000 (Error 11) Ошибка сети
Перелинковка базы
Счастливые обладатели MSSQLRecovery
Помогите! Не могу перестроить индекс на sql2005
MSSQL -> Sybase ?
Полнотекстовый поиск в pdf файлах
DTS и sql_variant
uninstall mssql
удаление sql 2005
Простой вопрос по XML в SQL Server 2005

[В начало]

КНИГИ

Microsoft SQL Server 2005 Analysis Services. OLAP и многомерный анализ данных

Александр Бергер, Ирина Горбач, Эдуард Меломед, Владислав Щербинин, Виталий Степаненко

ISBN 978-5-94157-158-1, Издательство «БХВ-Петербург», Книга в типографии, Печать офсетная, Формат 70/100, 928 страниц, 2007г.

Книга, написанная разработчиками Microsoft SQL Server 2005 Analysis Services, дает читателю полное представление об его функционировании и устройстве. В ней рассмотрены основы многомерного анализа данных и дано глубокое представление о многомерных моделях данных и устройстве OLAP-сервера. Описаны основные концепции языка доступа к многомерным данным MDX и его расширенные возмож-ности, а также архитектура сервера, методы обработки данных и алгоритмы доступа к данным. Приведены внутренние и внешние протоколы обмена данными, включая протокол XML/A. Рассмотрены алгоритмы управления ресурсами Analysis Services, в том числе алгоритмы управления памятью. Описан процесс создания эффективных клиентских приложений с использованием Analysis Services, механизмы интеграции многомерных и реляционных баз данных. Уделено внимание безопасности, а также администрированию Microsoft SQL Server 2005 Analysis Services.

Благодарности

Эта книга является плодом трехлетнего труда авторов, и на протяжении всего этого времени многие оказывали помощь и поддержку в ее написании. Мы благодарим всех тех, кто способствовал выпуску книги, с начала ее написания и до того мгновения, когда ее возьмет в свои руки читатель.
В первую очередь мы хотим сказать большое спасибо нашему коллеге и другу Моше Пасуманскому. Его постоянная поддержка и глубокие знания внутреннего устройства Analysis Services оказали нам неоценимую помощь. Без Мошиных советов и его сайта www.mosha.com/msolap наша книга не была бы такой полной.
Мы хотим выразить особую благодарность редакторскому коллективу издательства "БХВ-Петербург", в частности, Игорю Шишигину - за его терпение и поддержку в течение всего проекта, и Елене Кашлаковой - за приведение нашего текста к канонам русского языка.
Эта книга не была бы возможна без всесторонней помощи наших коллег - разработчиков Analysis Services, особенно Олега Львовича, Михаила Энтина, Михаила Вовчика, Мариуса Думитру (Marius Dumitru), Акшая Мирчандари (Akshai Mirchandani), Адриана Думитраску (Adrian Dumitrascu), Балы Атур (Bala Atur) и Джеффри Ванг (Jeffrey Wang).
Массу полезных технических замечаний о содержании книги и большую помощь в проверке правильности и доступности текста для русскоязычного читателя оказал Владимир Штепа.
Мы также хотим выразить признательность Александру Гладченко и нашим коллегам из российского отделения Microsoft: Владимиру Павлову, Александру Ложечкину и Андрею Синкину, за значительную помощь в работе над технической терминологией многомерных баз данных.
Немалую роль в том, что эта книга увидела свет, сыграл форум sql.ru, мы благодарны его создателям и участникам, общение с которыми вдохновило нас на написание этой книги.

[В начало]

#344<<  #345  >>#346
Rambler's Top100 Рейтинг@Mail.ru  Administrator: Обратная связь 
Copyright: SQL.Ru 2000-2013