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

MS SQL Server

  Все выпуски  

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


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

#253<<  #254

СОДЕРЖАНИЕ

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

SQL Server 2000 SP4 и Windows 2003 Server SP1 (RUS)

Стали доступны для скачивания с сайта Microsoft два последних сервисных пакета для SQL Server и русской редакции Windows 2003.
Вот прямые ссылки для скачивания и ознакомления с инструкциями по их установке:

  1. WindowsServer2003-KB889101-SP1-x86-RUS.exe

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

  2. Microsoft SQL Server 2000 Service Pack 4:

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

СТАТЬИ

Основы I/O в SQL Server 2000 (продолжение)

По материалам статьи Bob Dorr: SQL Server 2000 I/O Basics
Перевод Александра Гладченко

Сброс на диск записей журнала транзакций

Записи журнала сбрасываются на диск аналогично страницам данных. За запись в журнале базы данных отвечает менеджер журнала транзакций. Вы можете сделать запрос к таблице sysprocesses, чтобы увидеть относящиеся к журналу транзакций SPID.
Когда запрашивается сброс на диск всех записей журнала до какого-нибудь номера LSN по требованию одного из системных потоков, такой запрос будет поставлен в очередь менеджера журнала. Процесс будет ждать ответа менеджера о том, что I/O завершился успешно. Менеджер журнала просматривает очередь и форматирует запросы. После этого он организует I/O кратными размеру сектора диска блоками.
I/O передаётся функции WriteFile, использующей OVERLAPPED (асинхронные) механизмы. После этого, менеджер журнала возвращается к обслуживанию других, поставленных в очередь запросов. Когда I/O будет закончен, отрабатывает завершающая его подпрограмма, которая проверяет успешность записи. Если запись прошла успешно, ожидающий процесс получит об этом сообщение, и может продолжить свои операции.
На этой стадии, порядок записи является критичным. Поскольку одному журналу может быть направлен запрос на несколько операций записи, должен соблюдаться порядок обслуживания LSN.
Например, если страницы 50, 100 и 200 изменяются в разных транзакциях, и сначала изменяется страница 50, потом 100, а затем 200. Тогда, при получении запросов на сброс LSN для страниц 50, 100 и 200, он будет выполнен в том же самом порядке. Если записи в журнале для страниц 50 и 200 будут сброшены на диск долговременного носителя, считается выполненным только сброс LSN для страницы 50, и SQL Server сбросит на диск только страницу 50. LSN для страницы 100 должен быть сброшен на диск долговременного носителям прежде, чем LSN 100, и только потом LSN 200 может считаться сброшенным на диск (журнал фиксируется).
Порядок записи - ключевой элемент поддержки целостности данных в SQL Server.

Упреждающее чтение (Read-Ahead)

Для упреждающего чтения SQL Server 2000 использует функцию ReadFileScatter. Для поиска страниц данных, которые могут скоро понадобиться, SQL Server использует довольно сложные алгоритмы.
Например, если выполняется запрос, который может использовать индекс, может быть принято решение о необходимости упреждающего чтения соответствующих ему строк из страниц фактических данных, которые необходимы для получения требуемой выборки. Поскольку элементы индекса идентифицированы, SQL Server может генерировать OVERLAPPED (async) операции I/O для страниц данных, которые планируются в следующих шагах плана исполнения запроса. Это демонстрирует то, как запрос использует упреждающее чтение для поискового оператора - bookmark lookup.
В этом примере продемонстрирована только одна из возможностей применения упреждающего чтения, которые задействованы в SQL Server. Извлечение во время поиска по индексу I/O страниц данных, повышает полезность утилизации в системе CPU и I/O. Зачастую этот I/O завершается к тому времени, когда это необходимо, и следующие шаги плана исполнения уже имеют прямой доступ к необходимым данным, располагающимся уже в памяти, и не нужно прерываться на ожидании извлекающего их I/O.
Когда вызывается упреждающее чтение, оно может охватить от 1 до 1024 страниц. Для большинства редакций SQL Server глубина запроса одного упреждающего чтения ограничивается 128 страницами. Однако, Microsoft SQL Server Enterprise Edition поднимает это ограничение до 1024 страниц.
SQL Server использует следующие шаги для организации упреждающего чтения:

  1. Получение необходимого количества буферов из свободной области.

  2. Для каждой страницы:

    1. Определение статуса нахождения страницы в оперативной памяти (in-memory), путём хеш-поиска.

    2. Если обнаружено, что страница уже находиться в памяти, организуется запрос на упреждающее чтение с немедленным возвратом буфера в свободную область после завершения I/O.

    3. Определяются параметры запроса на I/O для вызова функции ReadFileScatter.

    4. Организуется краткая I/O блокировка, для защиты буфера от доступа на время операции.

    5. Если хеш-поиск не обнаружил страницу, она вставляется в хеш-таблицу.

  3. Исполнение операций функции ReadFileScatter по чтению данных.

Когда закончится операция I/O, каждая страница проверяется на соответствие её номера и возможность обрыва страниц. Кроме того, выполняются и другие проверки целостности и безопасности данных. Краткая I/O блокировка снимается, и страница становится доступна для использования, если она расположена в цепи хеширования. Если выясниться, что страница уже находиться в памяти, страница немедленно будет возвращена в свободную область.
Этот процесс демонстрирует ключевые факторы I/O экземпляра SQL Server. Упреждающее чтение возможно для страниц, которые уже могут находиться в памяти или не распределены. Поскольку в SQL Server поддерживается буферизация в оперативной памяти (in-memory buffers) и цепочки хеширования, SQL Server должен отслеживать состояние страниц. Важно, что процесс упреждающего чтения даёт возможность перекрытия запросов на чтение и запись на аппаратном уровне.
Если страница уже находится в памяти, когда отправлен запрос на упреждающее чтение, непрерывное чтение все еще остаётся необходимым и более быстрым, чем разбивка запросов на чтение на множество физических запросов. SQL Server практически не использует такое чтение для запрашиваемой страницы, но многие из окружающих её страниц могут его использовать. Однако, если в момент запроса на чтение будет выполняться операция записи, соответствующая подсистема должна определить, какой из этих типов чтения будет возвращён. Некоторое реализации возвращают текущую версию страницы до того, как будет закончена запись. В других реализациях, чтение ожидает, пока запись не будет завершена, а многие другие реализации возвращают комбинацию, показывающую частично новые и старые данные. Ключом к пониманию того, как это реализовано в SQL Server, является то, что чтение не используется, но подсистема сервера должна поддерживать достоверный образ для следующих операций чтения. Осуществляемая запись, в момент её завершения, должна формировать следующий образ операциям чтения, предоставляемый для дальнейшего использования в SQL Server. Не путайте упреждающее чтение с параллельными планами исполнения запросов. Упреждающее чтение происходит независимо от выбора вариантов параллельного плана запроса. Параллельный план может управлять нагрузкой I/O, потому что разделяет её между несколькими потоками, а упреждающее чтение выполняется и для последовательных и для параллельных планов. Для гарантии того, что параллельные потоки не работают с одним и тем же набором данных, SQL Server использует подпрограмму - поставщика параллельных страниц, который помогает сегментировать запросы данных.
В SQL Server реализована расширенная диагностика, которая заранее уведомляет об отказах при чтении. На сайте Microsoft есть статья, которая рассказывает, как включить такую диагностику и какие для этого нужно использовать команды.
Additional diagnostics added to SQL Server to detect unreported read failures

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

[В начало]

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

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

Содержание

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

ВВЕДЕНИЕ

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

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

Это руководство является частью структуры методологии Microsoft Operations Framework (MOF). MOF - это представление циклического процесса, через который проходит любая операция, и который разделен на четыре части: изменения, использования, поддержки и оптимизации. Этот документ описывает изменение, использование и поддержку в следующих главах:

- "Управление конфигурацией" рассматривает лучшие методы конфигурации Analysis Services и операционной системы Windows на компьютере, где установлен Analysis Services.

- "Управление выпуском" рассматривает инструменты, которые вы можете использовать для перемещения базы данных Analysis Services из среды разработки в среду проверки качества и рабочую среду.

- "Управление изменениями" рассматривает важность управления и контроля за изменениями, и показывает, как использовать триггеры для обнаружения неконтролируемых изменений.

- "Администрирование безопасности" рассматривает обеспечение безопасного доступа к Analysis Services с минимизацией накладных расходов и конфигурирование учетных записей для соответствующего доступа к данным Analysis Services, репозиторию Analysis Services, и реляционным данным.

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

- "Управление свободным пространством и производительностью" рассматривает вопросы управления памятью, дисковым пространством и производительностью процессора.

- "Управление разрешением проблем и ошибок" рассматривает методы, которые вы можете использовать для обнаружения, устранения и документирования проблем и ошибок Analysis Services.

Чтобы получить информацию о четвертой части MOF, оптимизации, зайдите на сайт Microsoft Technet Web (http://www.microsoft.com/technet) и посмотрите статью "Microsoft Analysis Services Performance Guide."

Данное руководство основано на коллективном опыте команды Microsoft Business Intelligence (BI) Practices и команды разработчиков Analysis Services. В добавление к методам, описываемым в этом документе, вам также необходимо установить SQL Server 2000 Service Pack 3 (SP3) на компьютер с Analysis Services (сервер Analysis), и обновить Microsoft PivotTable® Service (PTS) на каждом клиентском компьютере с Analysis Services (запустите Ptslite.exe в папке ..\Msolap\install\pts для SP3). Обновление PTS на каждом клиентском компьютере особенно важно, потому что клиент-серверная архитектура PTS является значительной частью всего кода PTS на каждом клиентском компьютере, а SP3 содержит значительные улучшения в области производительности и безопасности клиентских компонентов PTS. Для определения уровня service pack у Analysis Services или на клиентском компьютере, смотрите "Проверка наличия необходимого уровня Service Pack" далее в этой статье. Для информации об автоматизации установки SP3 на каждый клиентский компьютер, зайдите в Microsoft Knowledge Base (support.microsoft.com) и посмотрите статью "Ptssetup.exe Sample Automatically Downloads and Installs OLAP Client."

УПРАВЛЕНИЕ КОНФИГУРАЦИЕЙ

Перед выпуском и размещением вашего BI приложения, вы должны установить и настроить подходящие версии операционной системы Windows и Analysis Services на компьютер, на котором будет находиться приложение. Вам следует записывать значения текущих настроек этого компьютера, операционной системы и установленных служб и приложений в дневник. Записи, содержащие информацию о настройках, помогут вам переустановить сервер в случае его падения. Вы также можете обращаться к этим записям, когда нужно получить информацию о настройках для разрешения проблем. Этот дневник также должен содержать информацию о системах, из которых были получены данные, и контактную информацию о людях, с которыми нужно связаться в случае непредвиденных ситуаций. Чтобы подробно узнать, какую информацию нужно хранить в дневнике, зайдите на сайт Microsoft Technet Web (http://www.microsoft.com/technet) и посмотрите "Appendix: Contents of a Run Book" ("Приложение: Содержание дневника") в Microsoft SQL Server 2000 High Availability Series, Volume 1: Planning Guide (Том 1: Руководство по планированию). Хотя темы в Руководстве по планированию в основном направлены на работу с реляционными компонентами Microsoft SQL Server 2000, оно также включает темы по SQL Server Analysis Services. В нем также есть и множество общих тем, таких, как ресурсная и контактная информация, подробная информация по настройкам аппаратного обеспечения, рабочим задачам и непредвиденным ситуациям.

После выпуска и развертывания вашего BI приложения появляется некоторое число настроек, которые вы должны отслеживать на предмет их изменения в случае изменения условий. Если вы изменяете любую настройку, вы должны обновить информацию в дневнике, чтобы гарантировать, что все члены вашей команды администраторов могут быстро определить текущие настройки Analysis Services и операционной системы Microsoft Windows®. Для дополнительной информации об управлении изменениями смотрите главу "Управление изменениями" далее в этой статье.

Вы также должны документировать все объекты в Analysis Services. Например, вы можете использовать OLAP Scribe, который является шаблоном Microsoft Word и позволяет вам создавать готовую документацию по Analysis Services, используя Decision Support Objects (DSO, объекты поддержки принятия решений). Вы можете скачать этот шаблон из http://go.microsoft.com/fwlink/?LinkId=22012.

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

[В начало]

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

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

Системы хранения данных на магнитных лентах
Д. Залужный
Построение любой системы хранения данных начинается с постановки перечня задач, которые необходимо решать, т.е. какой объем информации будет сохраняться, какой тип информации будет преобладать (массивы данных, видео, изображения и т.п.), как часто будет происходить резервирование данных и т.д. Именно на этом этапе и необходимо решить, какой тип накопителя выбрать, какое решение окажется оптимальным. Предлагаемая статья призвана помочь разобраться в этом многообразии и определить, какое решение наилучшим сохранит столь бесценную для вас информацию...

Десять основных тенденций 2005 года в области Business Intelligence и Хранилищ данных
КЛУБ ЗНАТОКОВ DATAWAREHOUSE, OLAP, XML
OLAP: Компания Knightsbridge Solutions - крупнейшая американская профессиональная фирма, занимающаяся исключительно решениями в области Business Intelligence (сокр. BI) и Хранилищ данных. Компания предлагает услуги в сфере информационных стратегий, интеграции данных, Business Intelligence и Хранилищ данных. Компания обслуживает организации, входящие в рейтинг 500 крупнейших фирм журнала Fortune и работающие в самых разнообразных областях: финансовые услуги, страхование, потребительские товары, медицина и естественные науки, высокие технологии, развлечения, федеральное правительство и другие отрасли. Сегодня мы предлагаем вам взгляд аналитиков этой компании на то, как будет развиваться рынок Business Intelligence и Хранилищ данных в 2005 г....

Шаблоны функционального моделирования
Валерий Чеботарев
CASE: Функциональное моделирование является важнейшим элементом концептуального анализа, который выполняется на начальном этапе проектирования любой автоматизированной информационной системы, в том числе и системы управления предприятием. Разработка и анализ функциональной модели деятельности предприятия позволяет достаточно глубоко погрузиться в предметную область, выявить бизнес-процессы, используемые на предприятии, определить информационные потоки, выявить узкие места в деятельности предприятия и т.д....

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

SQL Server 2005's Incredibly Cool CLR Integration
Shawn Wildermuth
SQL Server 2005 will integrate with the CLR, so you can deploy C# or VB.NET code within the SQL Server process. In this first of a two-part series, Shawn Wildermuth explains what's involved, and why it's so incredibly cool.

File Access and table-valued functions
SQL Server 2005: CLR Integration
In this article, we will discuss a sample CLR function that illustrates accessing an external resource such as a file from inside a SQL Server stored procedure or function, . The sample highlights a number of different features and concepts, such as file-access, table-valued functions and impersonation

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

Save to SQL or File
Kirk Haselden
We get this question a lot actually. “Is it better to save to SQL Server or to files”. The seemingly obligatory answer is “It depends”. This is not a new question either. The options to save packages to SQL Server and to files were available in DTS as well as the option to save to Metadata Services, which is no longer available in SQL Server 2005. It's a good question. It means people are trying to understand the tradeoffs. So here are some of them

Parallel Execution Properties
Ashvini Sharma
Runying, our data flow performance guru, just dropped a note with some information she thought would be generally interesting. I'm hoping she can start her own blog so you can directly appreciate her dedication and diligence, but in the meantime I continue to get the limelight

De-entitizing Special XML Characters
XQuery Inside SQL Server 2005
There are several tricky issues around the serialization of special XML characters inside SQL Server 2005. This was highlighted to me earlier today when I had a question about how to output a URL value that caontains an ampersand ('&') character from the XML data type. Consider the following query

SQL Server and VS Big Boss Pow Wow
Euan Garden's BLOG
Lots of teams in SQL Server and VS meet frequently(sometimes daily) on a variety of topics, the dev and test teams are obvious candidates as we address technologies such as ADO.Net, XML, Shell Plug Ins, SQLCLR, SQL Server Express etc. Also our release teams meet to make sure we are in sync with builds. Our loc teams meet to make sure we can deliver localised User Assistance and UIs in synch

How to: Configure Express to accept remote connections
sqlexpress's WebLog
Some people have been having issues when trying to make remote connections to SQL Express. This document will hopefully clarify most of the issues around remote connections

OLTP Drag Races: SQL Server 2000 vs. SQL Server 2005
Rob Garrison
You're out cruising Main Street on a Saturday night in your slightly dated but still very nice 2000 model. At the light, up rumbles a shiny new 2005 model. It's got all the cool new features: CLR-integration, T-SQL enhancements, table partitioning. You call to the driver, "Nice car. What'll she do?"

A Call to Arms
JIM GRAY, MARK COMPTON
Long anticipated, the arrival of radically restructured database architectures is now finally at hand

Stupid SQL Tricks - Trinomial Generator
The SQL Doctor is In (Real In)
It is funny what your love for your family will make you do. Go on vacation to see the world's largest ball of twine, get up an hour early to take a book your child has forgotten, or even write ugly SQL code. Well, we haven't went to se the twine yet, I hope to do that next year, but I did take her a book today, and in fact I have written some ugly SQL code. Why you ask, why indeed

T-SQL Enhancement - APPLY Join Operator
The SQL Doctor is In (Real In)
SQL Server 7.0 gave us derived tables. SQL Server 2000 gave us table values user defined functions. SQL Server 2005 makes them both an order of magnitude more useful. We get the ability to apply parameters and filters to user defined functions when using them in a query with other tables, and also to derived tables. For example, consider the case where we want to have a "view" of the data that gives us the customerId and the total sales for the customer (there are better ways to write this, but this makes a decent example of how we might use a derived table that is not confusing in and of itself.). In the adventureWorks database, we formulate a query to get the total sales

How can SQL statements help a query's performance?
Brian Peasland
I created indexes on our database tables to increase performance of a query retrieval. How can I increase performance of the inserted SQL statements?

Nesting Repeaters with Heirarchical Data and Server-Binding
Thomas Kurek
You can find fragments about nesting repeaters online, but these methods demystify this elusive .NET control

ADOMD.NET Data Provider for SQL Server Analysis Services Release
Paul Ballard
Microsoft has released ADOMD.NET, a managed data provider for accessing SQL Server 2000 Analysis Services. It contains an object model for querying multidimensional data sources using XML includes support for Tuples, Sets, and Cubes

What's New for Automation in Visual Studio 2005
Jim Glass and the VSXUE Team
Visual Studio 2005 features a number of targeted, programmable object models. By using these models, you can access the underlying components and events inside the Visual Studio integrated development environment (IDE) and its projects. Each model contains types and members that represent solutions, projects, tool windows, code editors, debuggers, code objects, documents, events, and more. Consequently, you can extend the functionality of the IDE, automate repetitive tasks, and integrate other applications into the IDE. The object models can be accessed through any of four methods: macros, add-ins, wizards, and the Visual Studio Industry Partner (VSIP) program

Data Designer Extensibility (DDEX): An Introduction
Jim Glass and the VSXUE Team
Visual Studio 2005 introduces a rich new environment for developing database applications against third-party data sources. While Visual Studio has always offered design-time support for SQL Server development, other data sources have posed more of a challenge

Seven Simple Rules for Successful Real-Time Business Intelligence Implementation
Jaymin Patel
Real-time data marts and business intelligence solutions are no longer a novelty or a luxury. These solutions are no longer in their infancy stage. They are becoming instrumental in delivering information crucial for organizations to remain competitive in their core businesses. Given the mushrooming number of tools, touting anything from ready-to-go solutions on day one to analytical ability on the fly and on demand, real-time business intelligence solutions appear to be a piece of cake. However, the reality often reveals a different picture than one might imagine!

Data Integration: A Tutorial
Daniel Sapir
"Enterprise information management (EIM) continues to emerge as a critical focus for large enterprises. An EIM strategy takes a holistic view of the processes and technology for bringing information into agreement enterprise-wide. ... Although various classes of technology have a place delivering an architecture for EIM, data integration technologies play a prominent role." Ted Friedman, Gartner analyst in his February 2005 research note titled, "Data Integration forms the technology foundation for EIM."

SQL Server I/O: Using HTTP with SQL Server XML
Buck Woody
As part of the XML-from-the-database experience, we need to talk about using SQL Server from the Web, natively. The process isn't that involved, and is quite powerful once you implement it.

A conversation with Michael Rys about SQL Server 'Yukon'
Jon Udell's Weblog
The other day I had a demo/discussion with Michael Rys on the XML features in SQL Server 2005, aka Yukon. I meant to capture the demo and use the highlights in a screencast, but I was late to the call and didn't manage to set up the capture. As an aside, the conferencing service we used provides audio retrieval (playback only, no download), but no video. Offering video playback of screen activity, ideally with a download option, should probably be a checklist feature for conferencing services.

Subcubes in the FROM clause
Chris Webb's BI Blog
Don't know how I've not managed to talk about this one, as it's one of the biggest new additions to MDX. Basically what this functionality means is that instead of putting a cube or a perspective name in the FROM clause you can put a SELECT statement which defines a subcube instead, similar to a SQL subselect. So what is a subcube? It's a subset of the cube you're eventually going to query, sliced by members on one or more dimensions. Think of the effect as being the same as if you had dimension security on your cube, only allowing you to see certain members on some dimensions

Query Analyzer Tricks
Steve Jones
Query Analyzer is a great tool for developing SQL code. There are a number of little tricks that can greatly increase the amount of work you can do with very little effort. This article starts looking at some of the features of this tool.

Common Table Expressions (CTE) on SQL 2005
Don Schlichting
This article will introduce Common Table Expressions (CTE) on SQL 2005, and compare them with related SQL 2000 methods such as Derived and Temporary Tables.

SQL Injections
Douglas Brunner
Since learning how to manipulate a database is usually the first thing programmers learn it makes sense that learning about SQL injections should also be one of the first things they learn.

A Practical Path Towards the Ultimate Microsoft SQL Server Scalability and Availability
Justin Y. Shi
It has become a moot point for database vendors to compete for the highest transaction processing capability in the world. Modern database systems have become so well programmed; even the cheapest system can claim very high performance, given the hardware.

Comparing the SQL Server 2000 Index Tuning Wizard and the SQL Server 2005 Database Tuning Adviser
Luis Martin
Among the regular tasks of any DBA, there’s one thing that we all must find time for: research. In my case, I concentrate my investigation into new tools that streamline the tasks that I already do.

Is this TEMPDB optimization built into SQL Server 2005? (And other I/O topics)
Blog Entries
Not too long ago, while I was teaching a Yukon Ascend database infrastructure class, a client asked about the optimization mentioned in the KB article titled "FIX: Concurrency enhancements for the tembdb database". It requires a post SP3a hot fix for SQL Server 2000, build 765 or higher, a trace flag (-T1118), and multiple tempdb data files (matching the number of CPUs) with equal fixed sizes and preferably auto-grow turned off. The question is; are these optimizations already built into Yukon, SQL Server 2005?

SQL Server: SMO Scripting Basics
Michiel Wories' WebLog
Let's first clarify what I mean by "scripting". It often happens during talks or when I explain SMO fundamentals that eyes gloss over, shortly after which the "what * do you mean by scripting" question pops up (replace the * with your favorite combination of adjective and noun to indicate bewilderment). For people who, unlike me, do not live their lives in SQL land, "scripting" means typically some kind of language script, like perl, VBScript, or others, that allows you, without the use of a development environment to author and execute code". Not so in this case. If I were to be precise, it means "serialize a SMO or DMO object into Transact-SQL". So now we have this out of the way, let's take a look at SMO Scripting.

More Encryption Syntax Changes in SQL Server 2005
Don Kiely
Microsoft's Tom Rizzo recently blogged about a change to the syntax in OPEN SYMMETRIC KEY for the April CTP of SQL Server 2005 that didn't make it into BOL in time. Rather than using just the PASSWORD clause, you need to use DECRYPTION BY PASSWORD. So rather that this, which worked in the last CTP

Another Encryption Syntax Change: CREATE CERTIFICATE
Don Kiely's Technical Blatherings
Still banging my head against changes to the T-SQL encryption syntax in the April CTP SQL Server 2005. This one took some work to figure out

Be careful with xproc memory allocation
Ken Henderson's WebLog
With the advent of CLR stored procedures in SQL Server 2005, the custom extended procedure era will hopefully be soon behind us. Xprocs were a good idea and certainly added great functionality to earlier releases of the product, but they can also cause severe resource problems within the database engine or even be downright dangerous when not coded properly. It’s simply too easy for an ill-behaved xproc to cause problems for other components in the SQL Server ecosystem

Why bother with backup?
Douglas Reilly
Backing up SQL Server data is like many of the things we do because we figure we need to. It is good for you, like eating a good diet and getting exercise. Unfortunately, folks are often about as successful with SQL Server backups as they are with diet and exercise

Controlling Unusually Long Running Jobs
Leo Peysakhovich
The SQLAgent scheduler in SQL Server 2000 is an amazing tool that allows you to schedule many different kinds of jobs with a great deal of flexibility. However, it doesn't have great facilities for handling jobs that may take longer than expected. And about which you'd like to be notified. Leo Peysakhovich brings us his code and technique for detecting when a job step runs long

Simon Says
Steve Jones
Most of us have probably worked with some third party tool at some point in our SQL Server career. But how many tools have been written by a rocket scientist? Steve Jones had a chance to interview Red Gate Software's Simon Galbraith about a variety of topics. An interesting look at the software world through Simon's eyes

If slow and steady win the race...
The SQL Doctor is In
Then my MSDN download of Visual Studio 2005 Beta 2 must be the winner. Sure, it is nearly 4 GB, but it has been downloading over a day now! Whenever I look in on it, it seems to be averaging around 25-30 KB/sec, but this is a bit ridiculous :) It is not my download speed, since I have been surfing on and off on the same connection, with little difference in speed. Either way, I will have it by the morning to put on my USB2 drive to install tomorrow

Introduction to MSSQL Server Analysis Services: Process Analysis Services Cubes with DTS
William Pearson
In this article, we will examine the processing of an Analysis Services cube via another of the integrated MSSQL Server components, Data Transformation Services ("DTS"). Virtually anyone that works with MSSQL Server in an RDBMS context, and often within a data warehouse or mart design perspective and related functions, has probably interacted in some way with DTS - if only as an Import / Export utility. Best known as the set of ETL (Extraction, Transformation and Load) utilities that accompany the integrated Microsoft BI Solution as a part of MSSQL Server, DTS does, indeed, perform well within the context of all of the stages of data transformation (examples include type conversions, scrubbing and validation, among others, to varying degrees. DTS also maintains a particularly high-profile role within the creation and maintenance of a data warehouse, mart, or other such source for business intelligence and organizational reporting

What happened to New Sql Project in Visual Studio 2005 Beta 2?
Raymond Lewallen
Ok, this is pretty annoyning. I have Visual Studio 2005 Beta 2 installed along with Sql Server 2005 April CTP. So I want to create a new stored procedure in C# to use in sql server. Click New/Project and look around. Hey! No new sql server project! What happened here?

A few changes from Beta 1 to Beta 2 when writing code for SQLCLR
Raymond Lewallen
First of all, if you only downloaded the standard Visual Studio 2005 Beta 2, you will have have available the “New Sql Project”. You must download the VSTS in order to get the professional version where you will find sql projects in visual studio

DTS migration to SSIS
Raymond Lewallen
From Tom Rizzo’s blog, here is some news I knew I would have to go looking for sooner or later but I just haven’t had time to go research SSIS regarding what’s going to be involved in converting DTS packages

Changes for an SQLCLR stored procedure written in Visual Studio 2005 Beta 2 - source code
Raymond Lewallen
There are some notable changes from beta1 to beta2 when creating code for SQLCLR. I talked about a few of them here. Let's look at some code that reflects those changes. For some reason my cut and paste isn’t carrying over the syntax coloring from Beta2 IDE, so I had to do color this one by hand

Generate an Excel XLS spreadsheet from T-Sql in Sql Server
Raymond Lewallen
Sometimes you find these really old files floating around on your harddrive and you forget that you ever downloaded them. Here is one such example. I have no idea where I got this or who to credit for its creation, but I've had it for awhile and came across it and thought it would be something nice to share with you, as I’m sure it is something of great help to many of you, especially if you are limited in your experience on creating DTS packages, which is another way, and preferred way under most circumstances, to get data from Sql to Excel. This is a T-SQL script that uses the system stored procedures sp_OA* for creating and handling OLE objects, ADO, Jet and a linked server to create and populate an XLS file from a select statement. By default, if the XLS file already exists, the result of the query will get appended to the worksheet. You'll have to add some code to check for and delete the file before creating if that is your desired behavior. Oh, and I used this a long time ago with some minor code changes and it worked fine, but this is the original script using the pubs database, so there are changes you’ll have to make, and they should be fairly obvious to you

Performance Monitoring - JIT compilations
Raymond Lewallen
Alrighty, another topic about performance monitoring, this time about viewing JIT information. The previous performance monitoring topic was on garbage collection. When you compile your application with Visual Studio or the command line, you are compiling your C# or VB.Net code into Microsoft Intermediate Language, aka MSIL. The reason for this is so that the IL code can be compiled to native code by the Just In Time (JIT) compiler on the fly, based on the machine the code is executing on. This allows the JIT to create native code that is optimal for the machine the code is running on. Take Omea Reader for example. The MSIL code is identical on my machine and your machine, but when the application is executed, the JIT may produce different native code for your machine than it does for my machine. The JIT is a very in-depth topic, and I’m not going to get into it very much here, but there are plenty of resources out there if you want to know more, such as

The difference in TRUNCATE and DELETE in Sql Server
Raymond Lewallen
I’ve answered this question many times, and answered it again this weekend. What is the difference when doing a DELETE TableA instead of TRUNCATE TableA? A common misconception is that they do the same thing. Not so. In fact, there are many differences between the two

Sql Server 2005: xp_cmdshell is turned off? what?
Raymond Lewallen
So if you have played around much with Sql Server 2005, you may have noticed something peculiar. Ok, several things that are peculiar, but I’m only going to mention one. Have you tried to execute xp_cmdshell? When you do, you’ll get the following message from the server

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

Mailing the graphic showplan to a friend
Bob Beauchemin's Blog
I've always liked the graphic showplan in SQL Server query analyzer. The biggest hassle with it came when you wanted to send the plan to a friend. Or maybe MS support, but support is your friend too... right? You could send screenshots (which had the annoying habit of never displaying those hover-over stats) or go back to textual showplan

How to make a DBA smile
Bob Beauchemin's Blog
Speaking of SQL Profiler brought this to mind. The number one feature that brings a smile to every DBA's face

Security changes in .NET 2.0's XSLT
Oleg Tkachenko's Blog
More security changes made in XSLT in .NET 2.0 Beta2. When working with XslCompiledTransform class

foreach and XPathNodeIterator - finally together
Oleg Tkachenko's Blog
This one little improvement in System.Xml 2.0 Beta2 is sooo cool anyway: XPathNodeIterator class at last implements IEnumerable! Such unification with .NET iteration model means we can finally iterate over nodes in an XPath selection using standard foreach statement

De-entitizing Special XML Characters
XQuery Inside SQL Server 2005
There are several tricky issues around the serialization of special XML characters inside SQL Server 2005. This was highlighted to me earlier today when I had a question about how to output a URL value that caontains an ampersand ('&') character from the XML data type. Consider the following query

Adding a Style-sheet Declaration to your XML Output
XQuery Inside SQL Server 2005
A common requirement for formatting XML output from XQuery expressions, is to be able to add a style-sheet declaration. Style-sheet declarations consist of a standard processing-instruction node that appears at the top-level of the XML. In the following example, we are attempting to construct a PI node, then select a peice of XML that will make up the body of the result

.NET Programmers Ally to Save XQuery
Stephen Swoyer
After almost seven years in the making, it appears that XQuery’s tardiness is starting to wear on some long-time supporters—including Microsoft Corp., which earlier this year announced plans to drop support for XQuery in the version 2.0 release (code-named “Whidbey”) of its .NET application framework

Microsoft’s Ambitions Soar with SQL Server 2005 Reporting Services
Stephen Swoyer
When Microsoft Corp. announced its free SQL Server 2000 Reporting Services add-on last January, the software giant was careful to position it as a non-disruptive product entry into an already crowded reporting tools marketplace

SSIS: The mind-shift from DTS
Jamie Thomson's Blog
Over the past few months my blog postings have centered on some of the new functionality within SSIS. Demonstrating it and using it has been this blog's raison d'etre. I hope it has been useful to a few people!

SSIS: What do we want in the next version?
Jamie Thomson's Blog
SQL Server Integration Services is now, apparently, feature complete. Given that that is the case I started to ponder what would be nice to have in the next version and came up with a list of 30 or so things. I prioritised them and below are what I consider to be my 15 must-haves for the next version. They are all requests for new or modified functionality rather than simply aesthetic changes (apart from maybe #12 & #13).

Custom component UI
Kirk Haselden
We've been seeing a heightened interest among SSIS customers in writing custom components as they move from understanding the basic IS concepts to more advanced ones. The question has come up more than once, “Why is the UI code separated from the component code?” Not everyone notices this because you have to really dig deep into your system to notice it. To see what I'm talking about, take a look at a machine where SSIS is installed. Look in the %WINDIR%\Assembly folder. Under Microsoft.SQLServer..., there are a number of assemblies with identical names, one that has “UI” appended.

Next CTP...
Kirk Haselden
The next CTP is close and I wanted to give you all a preview of some improvements that will be available there

Generate Ad-hoc Reports with Microsoft Reporting Services 2005
Teo Lachev
Among the many new features in Microsoft Reporting Services 2005 is one that can truly help reduce the workload for developers—the ability to give end users the power to generate their own ad-hoc reports. This article explains the major components of Microsoft Reporting Services' ad-hoc architecture and semantic model, and walks you through an end-to-end example that demonstrates how to author, manage, and deliver ad-hoc reports

Log Events and Pipeline Events
Ashvini Sharma
I was about to write about data flow buffer size configuration properties but need to get this one out first so that we can refer to it

Data Flow: DefaultMaxBufferRows and DefaultBufferSize
Ashvini Sharma
There're two properties on the Data Flow task that have piqued enough interest to cause this post. Note that while I'm describing numbers below, the SSIS team reserves the right to change them in response to our performance testing. There're no secrets here, most of this information is exposed plainly and some other (like MaxBufferSize) can be retrieved easily as well. This post hopefully puts it together

What is Validation?
Kirk Haselden
Some questions keep popping up about validation and I thought I'd try to clarify it a bit

Custom Component UI
Kirk Haselden
We've been seeing a heightened interest among SSIS customers in writing custom components as they move from understanding the basic IS concepts to more advanced ones. The question has come up more than once, "Why is the UI code separated from the component code?" Not everyone notices this because you have to really dig deep into your system to notice it. To see what I'm talking about, take a look at a machine where SSIS is installed. Look in the %WINDIR%\Assembly folder. Under Microsoft.SQLServer..., there are a number of assemblies with identical names, one that has "UI" appended

Caching in the SSIS Service
Kirk Haselden
Integration Services is of all things a platform. While some platforms are pretty useless until you actually build something with them, SDKs and APIs like DirectX etc (Yes, definitions of "platform" differ) others are extremely functional out of the box, Windows, Office etc.

Testing databases that contain a million rows with SQL
Builder.com
Proper testing of a database must include looking at how it performs in real life. This means a lot of data: we show you how to test thoroughly

Overview of SQL Server 2000 Database Clustering using MSCS
Pankaj A. Chitriv
An article which gives an overview of SQL Server DB clustering using MSCS.

[В начало]

ФОРУМ SQL.RU

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

Кто на чем пишет клиентов под SQL Server?
БД: логическая связь таблиц. Какие плюсы?
Задай вопрос разработчику MsSQL!
Delete from ... with (index(0)) ???
Сортировка чисел в строке
генерация значения ключевого поля до insert
Прошу голосовать за SQL.RU в конкурсе Интернить 2005
Как выбрать следующую запись по времени запросом
как выбрать ближайшие значения
Перенос баз из MSDE 7 в SQL 2000
MS SQL - интернет
DTS -> как мне сделать экспорт в Excell с 15 строки и другие вопросы.
Временная таблица из Select...into...openrowset в хранимой процедуре дохнет при рождении
в поисках эргономичного редактора для MS SQL
Использовать архиватор в MSSQL
Пустые NT_userlogin
Приехали с криптованием.....
Ошибка при добавлении записей
Как обновить счетчик в таблице?
Pochemu ne ispoljzuetsja indekss v selecte?

[В начало]

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

Восстановить базу из файла данных (mssql 6.5)
Экспорт данных
Параметризация преобразований DTS
Инсталяция MSDE 2000 с помощью Merge Modules
Влияние network packet size на скорость исполнения ХП.

[В начало]

АНОНСЫ

Журнал "Алгоритм", второй номер

Этот журнал возник как логическое продолжение рассылки ".Net Собеседник", которая насчитывает на сегодняшний день более 40 выпусков и более 2800 подписчиков. Основное направление статей, которые будут печататься в журнале, будет касаться платформы .Net и сопутствующих ей технологий, языков программирования в среде Windows, администрирования и программирования серверов баз данных. Среди авторов будут многие известные вам по форумам www.sql.ru имена.

    Интервью с Алекандром Сибилевым, автором проекта http://www.sql.ru/

    (Полный текст статьи опубликован в журнале)

    Что нам стоит мост построить?

    Автор: К.Коцарь

    По закону жанра требуется начинать с какой-нибудь банальной фразы, например: мы живем в стремительно изменяющемся мире. Бесспорно, технологии сменяют друг друга с бешеной скоростью, предлагая немыслимые возможности и быстро устаревая, становясь "немодными" и "неперспективными". Одни ярко вспыхивают, подобно болидам в ночном небе, другие долго держатся на плаву, трансформируясь и развиваясь согласно текущим тенденциям. У разработчиков программного обеспечения голова идет кругом - то, что вчера казалось невозможным, сегодня уже обыденная реальность, а завтрашний день обещает быть еще более светлым и радостным. Мы бросаемся в объятия новейших языков и средств разработки, отбрасывая балласт прошлого, и зачастую не замечаем, что проходим мимо чего-то, пусть не всегда самого важного, но заслуживающего внимания. Почему Microsoft продолжает выпуск Visual FoxPro? Почему у "фокса" так много ярых сторонников и не менее ярых противников? Почему нужно продолжать создавать программы на VFP, если платформа .NET предоставляет более широкие возможности? Почему руководитель команды по разработке Visual FoxPro имеет должность Visual Studio Data Product Manager и пропагандирует новые возможности .NET? Почему нет ответа на вопрос "быть или не быть VFP.NET" И почему, черт возьми, участь писать эту статью досталась мне? Если вы хотите получить ответы на эти или подобные вопросы, то вам, по всей видимости, стоит подыскать другой источник информации или перейти к следующей статье. В этой же статье я попытаюсь рассказать о взаимодействии между .NET и Visual FoxPro и изложить свою, сугубо субъективную точку зрения на совместное сосуществование двух технологий...
    (Полный текст статьи опубликован в журнале)

    Использование пользовательских функций Microsoft SQL Server 2000 в работе с DataGrid ASP.Net

    Автор: В.Чужа

    Бывают такие случаи, когда необходимо добавить в существующее приложение, использующее для вывода данных DataGrid, дополнительный столбец. И всё бы ничего, если в ходе разговора не оказывается, что этот столбец является суммой неких значений из таблицы, подчинённой данной. Как можно поступить в таком, на первый взгляд непростом, случае? На помощь приходят пользовательские функции Microsoft SQL Server-a.
    (Полный текст статьи опубликован в журнале)

    Настройка полнотекстового поиска для MS SQL Server 2000

    Автор: А.Маркелов

    Полнотекстовый поиск предоставляет более мощные возможности для поиска, чем стандартные средства SQL наподобие оператора LIKE. В данной статье рассказывается, как настроить полнотекстовый поиск для MS SQL Server 2000. MS SQL Server 2000 должен быть установлен с опцией "full-text search". В версии MSDE 2000 опция "full-text search" недоступна. Необходимые операции в примере будут осуществляться с помощью команд T-SQL. Так же возможно выполнить их с помощью wizard'a или через соответствующие пункты меню.
    (Полный текст статьи опубликован в журнале)

    Mono переживает бурный коммерческий успех

    Автор: Д.Хейс

    (Полный текст статьи опубликован в журнале)

    Первый взгляд на Си-омега

    Автор: В.Чужа

    Впервые о Си-омега я прочитал в статье, которая называется "Mono переживает бурный коммерческий успех". А до этого на одном из семинаров, проводимых в учебном центре "Квазар-Микро", этот язык упоминался представителем Microsoft как перспективная разработка. И вот - более подробная информация и ссылки, ссылки, ссылки.

    (Полный текст статьи опубликован в журнале)

+ Информация о компонентах, вышедших за последние 2 месяца и других событиях, касающихся платформы .Net.

В качестве единоразавой рекламной акции, с целью привлечения большего количества читателей, электронная версия второго номера журнала "Алгоритм" выложена для скачивания: algorithm2.pdf. Общий размер архива около 1МБ.
Также снижена цена на подписку журнала в электронном виде (с третьего номера) - теперь он стоит $1/27 руб./5 грн. Как подписаться - подробнее смотрите на сайте.

[В начало]


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

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

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



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


http://subscribe.ru/
http://subscribe.ru/feedback/
Подписан адрес:
Код этой рассылки: comp.soft.winsoft.sqlhelpyouself
Отписаться

В избранное