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

MS SQL Server

  Все выпуски  

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


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


#196<<  #197

СОДЕРЖАНИЕ

1.СОВЕТЫ
1.1.Повышение доступности SQL Server 2000: Failover кластеры. (Продолжение)
1.2.MSSQL Server 2000 Reporting Services: новый взгляд на системы отчетности предприятий
2.ССЫЛКИ НА СТАТЬИ
2.1.Статьи на русском языке
2.2.Англоязычные статьи
3.ФОРУМ SQL.RU
3.1.Самые популярные темы недели
3.2.Вопросы остались без ответа

СОВЕТЫ

Повышение доступности SQL Server 2000: Failover кластеры. (Продолжение)

По материалам статьи Microsoft: SQL Server 2000 High Availability Series: Implementing Failover Clustering

Конфигурация сети

Прежде чем устанавливать MSCS, нужно выделить IP адреса для каждой сетевой платы (NIC), подключаемой к локальной сети, а также определить Default Gateway и первичный DNS сервер. Также, Вы должны назначить статические IP адреса для сетевых плат на каждом сервере, которые будут использоваться для обмена сигналами жизни и для других внутренних коммуникаций между серверами failover кластера.
Сетевые платы для обмена сигналами жизни лучше объединить в отдельную, выделенную сеть. Это облегчит администрирование кластера и снизит конфликты пользовательского трафика. К тому же, для этих сетевых плат Вы можете использовать любые IP адреса, потому что в выделенной сети не будет других NIC.

[В начало]

Настройка NIC локальной сети

1. Щёлкните правой кнопкой мыши по иконке My Network Places, расположенной на рабочем столе, и выберете из выпадающего меню пункт Properties.
2. В открывшемся окне Network and Dial-up Connections, щёлкните правой кнопкой мыши по сетевому подключению для NIC, которая подключена к локальной сети, а затем выберете пункт Properties.
3. В окне Connection Properties для этой сетевой платы, щёлкните правой кнопкой мыши по Internet Protocol (TCP/IP), и выберете пункт Properties.
4. В окне Internet Protocol (TCP/IP) Properties, введите IP адрес, выбранный для этой NIC локальной сети.
Измените маску подсети, воспользовавшись рекомендациями сетевого администратора, если ваша сеть использует подсети.
5. Введите IP адрес для Default Gateway - заданного по умолчанию шлюза.
6. Перейдите на закладку Use the Following DNS Server Addresses, и введите адрес DNS сервера.
7. Нажмите кнопку OK, чтобы сохранить новые параметры TCP/IP.
8. Снова нажмите кнопку OK, чтобы сохранить новые настройки подключения для выбранной NIC.
9. В окне Network and Dial-up Connections, переименуйте это подключение, например, как Corporate, чтобы более понятно идентифицировать его назначение.

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

[В начало]

Настройка NIC выделенной сети

1. Щёлкните правой кнопкой мыши по иконке My Network Places, расположенной на рабочем столе, и выберете из выпадающего меню пункт Properties.
2. В открывшемся окне Network and Dial-up Connections, щёлкните правой кнопкой мыши по сетевому подключению для NIC, которая используется для обмена сигналами жизни, а затем выберете пункт Properties.
3. В окне Connection Properties для этой сетевой платы, щёлкните правой кнопкой мыши по Internet Protocol (TCP/IP), и выберете пункт Properties.
4. В окне Internet Protocol (TCP/IP) Properties, введите IP адрес для этой NIC выделенной сети.
Вы должны выделить IP адрес для каждой NIC выделенной сети так, что бы все они находились в одной подсети. Используйте предлагаемую по умолчанию маску подсети. Обычно для выделенной сети принято использовать IP адреса следующего формата: 10.1.0.x.
5. Нажмите кнопку OK, чтобы сохранить новые параметры TCP/IP.
6. Снова нажмите кнопку OK, чтобы сохранить новые настройки подключения для выбранной NIC.
7. В окне Network and Dial-up Connections, переименуйте это подключение, например, как Heartbeat, чтобы более понятно идентифицировать его назначение.
Обратите внимание, что нужно повторить описанную выше процедуру и для других сетевых плат сервера, если у Вас используется дублирование NIC для обмена сигналами жизни. Второе подключение можно назвать Heartbeat 2.

[В начало]

Настройка дисковой подсистемы

У каждого производителя имеются свои правила настройки дисковой подсистемы. Изучите инструкции предоставляемые производителем и выполните следующие настройки SAN:

  • Настройте SAN таким образом, что бы он использовался SQL Server, но не использовался Windows 2000.
  • Создайте зеркальный том для кворум-диска.
  • Создайте три зеркальных тома для каждого экземпляра SQL Server – по одному для файла данных, transaction log и tempdb.

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

[В начало]

Подготовка дисков

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

[В начало]

Инициализация диска для использования в кластере

1. Щёлкните правой кнопкой мыши по иконке рабочего стола My Computer, и выберите пункт Manage (Управление).
2. В открывшемся окне разверните объекты узла Storage (Запоминающее устройство) и перейдите к объекту - оснастке Disk Management.
3. Щёлкните правой кнопкой мыши по диску, который Вы хотите инициализировать, а затем выберите пункт Initialize.
4. В окне Initialize Disk, выберите подлежащие инициализации диски, и нажмите кнопку OK.

[В начало]

Создание разделов и форматирование дисков

1. В окне Computer Management, щёлкните правой кнопкой мыши по диску, у которого нужно создать разделы, и выберите пункт Create Partition.
2. В появившемся окне Welcome to the Create Partition Wizard, нажмите кнопку Next.
3. В окне Select Partition Type, выберите Primary Partition, и затем нажмите кнопку Next.
4. В окне Specify Partition Size сразу можно нажать кнопку Next, чтобы задействовать всё дисковое пространство диска под этот раздел.
5. В окне Assign Drive Letter or Path впишите имя диска и нажмите кнопку Next.
6. В окне Format Partition, выберите пункт Format Partition.
7. В окне Formatting установите опции форматирования следующим образом:

    1. Для File System to Use укажите NTFS.
    2. Для Allocation Unit Size укажите Default.
    3. Для Volume Label напишите краткое имя.
Переключатель Enable File and Folder Encryption включать не нужно.
8. Нажмите кнопку Next.
9. В окне Completing the Create Partition Wizard нажмите кнопку Finish.

[В начало]

Форматирование раздела / не отформатированного диска

1. Щёлкните правой кнопкой мыши по иконке My Computer и выберите пункт Manage.
2. В открывшемся окне разверните объекты узла Storage (Запоминающее устройство) и перейдите к объекту - оснастке Disk Management.
3. Щёлкните правой кнопкой мыши по диску, который Вы хотите форматировать, а затем выберите пункт Format.
4. В окне Format Disk нажмите OK.
Обратите внимание, что эту процедуру нужно повторить для каждого диска.

[В начало]

Фиксация букв дисков

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

[В начало]

Выбор буквы диска

1. Щёлкните правой кнопкой мыши по иконке рабочего стола My Computer и выберите пункт Manage.
2. В открывшемся окне разверните объекты узла Storage (Запоминающее устройство) и перейдите к объекту - оснастке Disk Management.
3. Щёлкните правой кнопкой мыши по диску, который будет использован в кластере, и выберите пункт Change Drive Letter and Paths.
4. В окне Change Drive Letter and Paths нажмите кнопку Edit.
5. В окне Edit Drive Letter or Path, выберите букву для диска из предлагаемого списка и потом нажмите кнопку OK.
6. Нажмите кнопку Yes, чтобы подтвердить сделанные изменения.
7. Повторите эту процедуру для каждого диска, который будет использован в кластере.
Когда Вы будете добавлять другие узлы в кластер, они унаследуют эти буквы дисков по информации о конфигурации кластера, сохраненной на кворум-диске.

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

[В начало]

MSSQL Server 2000 Reporting Services: новый взгляд на системы отчетности предприятий

По материалам статьи William Pearson: MSSQL Server 2000 Reporting Services: A New Paradigm for Enterprise Reporting
Перевод Виталия Степаненко

Содержание

О серии ...

Это первая из нескольких статей новой серии о MSSQL Server 2000 Reporting Services. Эта серия создана для ознакомления с MSSQL Server 2000 Reporting Services (в дальнейшем – Reporting Services) с целью дать предварительный обзор особенностей этой системы и показать ее роль как нового взгляда на системы отчетности предприятий. Сейчас я консультирую своих клиентов по поводу этой системы все чаще и чаще, за ней - большое будущее. Я надеюсь, что Вы сочтете мой вклад ценным, и что Вы тщательно исследуете те экономию и улучшенную функциональность, которые скоро будут доступны любому пользователю с лицензией MSSQL Server 2000 (и не только).
Скриншоты в этой серии были сняты в Windows Server 2003, в которой и была установлена система Reporting Services Beta 2. Заключительный выпуск системы может отличаться от Beta 2 по внешнему виду, в деталях работы и общей функциональностью. Все компоненты Microsoft Office, встречающиеся в этой серии, входят в комплект Office 2003.

[В начало]

Вступление

Я стал тестером бета-версии Reporting Services в начале ее разработки, и быстро понял, что этот новый адд-он к MSSQL Server 2000 буквально изменит сегодняшнее лицо систем отчетности предприятий. Помимо того, что Reporting Services обеспечивает интегрированный, полный набор инструментов для создания, управления, и просмотра / передачи отчетов, он выполняет это с помощью масштабируемого движка, который поддерживает серверные хостинг и обработку отчетов.
Это лучшая система отчетности предприятия, с несколькими впечатляющими преимуществами перед сегодняшними предложениями на рынке систем отчетности предприятий. Кроме того, потенциальная экономия на предприятиях, внедряющих эту систему, может сравниться с экономией, которая была обещана недавним увлечением - аутсорсингом, одной из стратегий, столь распространенных в бизнесе сегодня.
Как дипломированный бухгалтер, имеющий также сертификаты дипломированного бухгалтера управленческого учета и дипломированного внутреннего аудитора, я потратил несколько лет, работая с системами отчетности как пользователь информации. У меня имеется опыт почти десяти лет работы архитектором данных и внедренцем систем отчетности предприятий для многих организаций из списка Fortune 500; в течение большей части этого времени я ежедневно имел дело с большими приложениями отчетности предприятий, такими, как Cognos, Business Objects, Crystal Enterprise и Crystal Analysis, MicroStrategy, и периодически работал с другими приложениями / комбинациями приложений.
По моему мнению, модель Reporting Services обещает хорошее будущее для всех ролей в жизненном цикле отчетности, не только потому, что организация получает полномасштабное решение в едином пакете, но также потому, что это решение является открытым и расширяемым, что позволяет создателям отчетов, менеджерам и пользователям на любом уровне получать выгоду от знакомых инструментов и систем, которые уже установлены и работают. Это решение является частью структуры Microsoft BI (Business Intelligence) и является самым новым членом мощного семейства инструментов, которое включает реляционную базу данных (SQL Server), мощный инструмент ETL (Data Transformation Services), движок OLAP для создания кубов (Microsoft Analysis Services), большой набор компонент извлечения данных (data-mining) и другие существенные функциональные возможности. Само собой разумеется, что у системы есть интеграция с компонентами Microsoft Office.
В этой серии статей я поделюсь с Вами некоторыми своими открытиями, сделанными в процессе работы с Reporting Services, в надежде пролить больше света на обнаруженные мной практические факты. Я делаю это с точки зрения практика, который регулярно и плотно работал со многими продуктами BI, сравнивая их функциональные возможности и новые возможности Reporting Services. Для начала мы обсудим фазы жизненного цикла отчетности, как они представлены в модели Reporting Services, и затем продолжим в следующих статьях обзор Reporting Services с точки зрения каждой из этих фаз.

[В начало]

Наконец: подлинный интегрированный подход

Основные производители приложений отчетности предприятий (которых я часто называю “Большие сестры”) относительно недавно начали организовывать и позиционировать их продукты на рынке с точки зрения жизненного цикла отчетности (тогда как в их более ранней документации они сосредотачивали усилия на том, что я называю “компонентная точка зрения”). Система Reporting Services изначально разрабатывалась как интегрированная система с точки зрения жизненного цикла. Это является воплощением представления “единого инструмента для отчетности” вместо большого количества различных продуктов, каждый из которых станет частью интегрированной системы только после выполнения множества сложных действий по связыванию этих продуктов.
Очевидной причиной “компонентного” подхода “Больших сестер” было то, что они хотели стать всем для всех и поставлять различные комбинации продуктов для удовлетворения потребностей их клиентов, одновременно представляя каждый отдельный компонент на рынке как всеобъемлющую модель.
Рассмотрим пример: если Вы нуждаетесь в реляционном построителе отчетов главной книги для бухгалтерии и другой отчетности, Вы можете приобрести такой превосходный инструмент, как Cognos Impromptu для решения этой задачи. Если же Вы хотите получить OLAP от того же разработчика, то Вы можете приобрести лицензию на другой продукт, PowerPlay (который содержит компонент построения кубов, который называется Transformer). Чтобы иметь быстрый и легкий доступ из OLAP к лежащим в его основе транзакционным данным, Вам приходится приобретать оба компонента; хотя я и получил доступ к транзакционным данным из PowerPlay и без механизма подачи данных Impromptu при помощи обходных путей, Impromptu как раз разработан для оптимальной поставки данных для PowerPlay Transformer, т.е. эти два компонента эффективно работают вместе, обеспечивая интегрированную безопасность и оптимизацию. Когда Вам нужно представить ваши отчеты клиентам-предприятиям через Всемирную Сеть, цена и сложность системы отчетности начинают увеличиваться, так как для выполнения различных функций должны добавляться новые компоненты.
Этот небольшой пример иллюстрирует проблемы, которых можно избежать, выбрав единую интегрированную модель. Не так уж трудно представить себе ту потенциально громадную экономию времени и денег, которая ожидает пользователей Reporting Services.

[В начало]

Фазы жизненного цикла отчетности

Документация по Reporting Services разбивает фазы жизненного цикла отчетности на 3 основных этапа, показанных в Таблице 1.

Фаза

Описание

Разработка

Создание определения отчета с помощью системы разработки, содержащего:
   * Соединение
   * Запрос
   * Макет

Управление

Опубликованное определение отчета сохраняется на сервере отчетов и управляется при помощи Report Manager администратором сервера отчетов.

Доступ и доставка

Сгенерированный отчет просматривается в приложении или отсылается получателю, где становится доступен клиентам.


Таблица 1: Основные фазы жизненного цикла отчетности

Мы рассмотрим каждую фазу по очереди, начав в следующей статье с фазы разработки и продолжив фазами управления и доступа и доставки в последующих статьях.
В каждом из обзоров будут рассмотрены главные шаги с точки зрения приложения Reporting Services в качестве введения к следующим, более детальным статьям, и для подачи основной информации.
Я надеюсь, что эта информация будет полезна в ближайшие месяцы тем, кто несет ответственность за внедрение новой платформы отчетности, чтобы они могли оценить ожидающие их возможности. Увиденные мной сильные стороны Reporting Services обещают миграцию на эту систему, которая будет вдохновляться ее возможностями и значимостью так же, как OLAP движется в направлении потребительского рынка от узкоспециализированной и затратной ниши, которая раньше управлялась несколькими наиболее влиятельными игроками на рынке.

[В начало]

Фаза разработки

В фазе разработки жизненного цикла отчетности создается определение отчета. Определение отчета создается на клиенте и после завершения публикуется для общего пользования на сервере отчетов. Запрос, лежащий в основе отчета, и описание его источника данных хранятся в определении отчета, где мы также создаем макет отчета, который определяет его внешний вид. Фактически все содержимое и внешнее представление отчета определяются в этой фазе, что мы и обнаружим в следующей статье.
Reporting Services использует Report Designer, который добавляется в Microsoft Visual Studio.NET (см. рис. 1), что означает, что мы получаем дополнительное преимущество единого интерфейса разработки отчетов, независимо от природы источника (источников) данных. Это приводит к созданию отчетов в рамках одного инструмента, цельного во всех отношениях (попробуйте найти единую среду разработки для отчетов OLAP и реляционных отчетов в продуктах “Больших сестер” ... Ваш поиск не увенчается успехом).


Рис. 1: Все начинается здесь – создание проекта отчета в Visual Studio.NET

Одной из самых захватывающих сторон создания отчетов в Reporting Services является та легкость, с которой мы можем объединять различные источники данных в одном отчете. Одним из моих первых испытаний для Reporting Services было создание отчета с источником данных OLE-DB на основе MDX (см. простой пример на рис. 2 на основе куба FoodMart Warehouse, поставляемого вместе с MSSQL Server Analysis Services) и источником данных ODBC на основе стандартного SQL (я использовал реляционную базу данных NorthWind, поставляемую вместе с MSSQL Server). Reporting Services выдержала это испытание, в отличие от других приложений отчетов, с которыми я работал за последние 10 лет.

Например, давайте рассмотрим комбинацию Cognos Impromptu / PowerPlay, о которой шла речь ранее: в Impromptu кубы не могут использоваться как источники данных, так же, как и реляционные отчеты, созданные в Impromptu, не могут быть добавлены в отчет PowerPlay, где можно использовать данные куба. Кроме того, каталог Impromptu может работать только с одним источником данных (я знаю, есть обходные пути, но мы здесь говорим об идеальном случае с оптимальной функциональностью). Опять преимущества единого инструмента разработки очевидны для большинства практиков, работающих с отчетами.


Рис. 2: OLAP и реляционные источники данных в одном отчете: в наборе данных 1 показаны запрос MDX с кубом FoodMart Warehouse

В Report Designer для создания отчетов используется основанный на XML язык определения отчетов (Report Definition Language, RDL). Помимо того, что мы можем украсить наши отчеты, используя дополнительную функциональность программируемой среды Visual Studio.NET, также мы можем создавать сложные отчеты, не уходя слишком далеко от технологии drag-and-drop, к которой многие привыкли, работая с приложениями отчетности предприятий. Среда разработки также содержит локальные обработку и выполнение отчетов, что позволяет нам просматривать отчет на различных стадиях его разработки.
Мы рассмотрим множество деталей фазы разработки в следующей статье этой серии, Фаза разработки

[В начало]

Фаза управления

Централизованное управление отчетностью предприятия является общим и естественным требованием в большинстве организаций. У Reporting Services существует сильная интеграция с MSSQL Server и другими приложениями Microsoft, распространенными на предприятиях. Функции управления отчетами, как многие знают, включают в себя широкий диапазон действий. Среди них – решение вопросов безопасности, планирования, управления источниками данных, сохранности и обслуживания большого количества данных и ресурсов.
Одно из основных преимуществ, которое предлагает Reporting Services – это способность управлять отчетами и связанными с ними объектами централизованно. Объекты, которыми мы можем управлять, включают в себя отчеты, папки, соединения с источниками данных и ресурсы. Для этих объектов мы определяем уровень безопасности, их свойства, и, в некоторых случаях, запланированные действия. Мы можем также создать общие расписания, общие источники данных и предоставить их для общего использования.
Report Manager централизует эти и другие функции Reporting Services. Отчеты могут быть легко загружены на сервер отчетов из Report Designer или Report Manager и могут просматриваться после этого через Web-браузер. Различные типы безопасности могут быть назначены в процессе загрузки, как видно на рис. 3, где я выбрал папку отчетов и Windows NT Integrated Security в поле выбора расположения отчета (называемом “источник данных” на этом шаге).


Рис. 3: Укажите Report Manager, какие отчеты загрузить, используя окно создания нового источника данных

Примечание: Мы рассмотрим множество опций, доступных в Report Manager, в следующей статье этой серии, Фаза управления.

После этого мы можем просто выбрать отчеты, которые мы хотим загрузить, введя их названия или указав их расположение и нажав Upload, после чего в окне Report Manager выводятся отчеты в различных представлениях, как это показано на рис. 4.


Рис. 4: Report Manager выводит загруженные отчеты для их выбора пользователями информации

Возможности управления системой конечными пользователями контролируются администратором, который раздает права доступа, поэтому в дополнение к безопасности доступа, которая обеспечивается Reporting Services, у нас также есть опции функциональной безопасности, для улучшенного контроля над действиями пользователей. Мы рассмотрим степени управления и различные возможности далее в статье Фаза управления, но достаточно сказать, что накладные расходы можно широко варьировать под потребности организации. Я также представлю следующую статью об администрировании сервера отчетов для рассмотрения опций и процессов, которые могут использоваться для этих целей.

[В начало]

Доступ и доставка отчетов

Являясь системой отчетности масштаба предприятия и ориентированный на Web, Reporting Services разрешает доступ с “самообслуживанием”, при котором пользователи информации могут просматривать отчеты по требованию. Пользователи могут также получать доступ к отчетам через процесс подписки, когда отчеты генерируются и отправляются клиенту на определенный адрес на постоянной основе. Клиенты, имеющие права доступа, могут выбирать отчет из иерархических папок на Web сервере так же легко, как щелкнуть мышью на одном из отчетов, изображенных на рис. 4 в предыдущем разделе. Результатом является отчет, сгенерированный по требованию, пример которого изображен на рис. 5.


Рис. 5: Пример отчета, выбранного и сгенерированного в окне клиента с соответствующими правами доступа

Варианты подписки включают уведомление о формировании отчета, после чего подписанные пользователи могут просмотреть его. Также настраивается и отправка копии отчета подписанной аудитории при помощи электронной почты. Уведомление и другие процессы могут основываться на критериях, управляемых данными: список получателей может формироваться на основе данных, существующих в момент срабатывания подписки, таких, например, как данные, найденные в базе данных клиента.

Существует множество форматов просмотра / экспорта отчетов, как это показано на рис. 6. Варианты форматов в браузере включают файл XML с данными, CSV, TIFF, PDF (Adobe Acrobat), Web Archive, Excel и HTML с компонентами Office Web. Как мы уже отмечали, интеграция с Microsoft Office – это еще одно очевидное преимущество, предлагаемое Reporting Services.


Рис. 6: Множество различных вариантов просмотра, существующих в Reporting Services

[В начало]

Краткий обзор и заключение ...

Т.к. Microsoft решили не ждать появления Yukon, следующей версии MSSQL Server с которой должен был выйти на рынок Reporting Services, это дало возможность организациям раньше избавиться от дорогостоящего багажа систем отчетности предприятий, доминировавших много лет. Reporting Services предлагает реальную интеграцию разработки, управления, доступа и отправки отчетов в одном пакете, предлагая организациям новый взгляд на систему отчетности предприятия. Продолжая нашу новую серию статей, мы подробно рассмотрим множество возможностей Reporting Services, сравнивая и противопоставляя их подходам прошлого, и ожидая прихода еще более эффективного и интегрированного завтрашнего дня.

[В начало]

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

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

SQL Server и .NET: динамичный дуэт
Рик Добсон
Сегодня большинство разработчиков уже рассматривают SQL Server и Microsoft .NET как своеобразный дуэт. Microsoft .NET Framework становится интегральной составляющей нескольких важных серверных продуктов Microsoft, в том числе SQL Server
Нормализация реляционных баз данных
Alf
После несколько затянувшегося перерыва (который, правда, был употреблен на благое дело – создания инструмента для более легкой и быстрой публикации статей, в том числе и этой), мы продолжаем знакомиться с теорией реляционных баз данных
Работа с данными в ADO.NET - III
Александр Игнатьев
В этой статье рассмотрены классы пространства имен System.Data - DataColumn, DataRow, DataTable, DataSet - предназначенные для работы с отсоедененными данными. Во второй части мы рассмотрим работу со строками DataRow. Создание, изменение и удаление строк. Выборка строк по из таблицы DataTable по каким-либо параметрам
SQL Server "Yukon" и CLR: использование данных сервера
Mike Gunderloy
При инсталляции SQL Server’a "Yukon" происходит установка сборки с пространством имён System.Data.SqlServer. Это и есть внутрипроцессный управляемый провайдер: новый ADO.NET провайдер, чьей задачей является взаимодействие CLR с SQL Server. Но он не взаимодействует с любым SQL Server’ом (для этого существует System.Data.SqlClient). Вместо этого, во время загрузки вашего CLR-кода в Yukon (путём объявления его сборкой), внутрипроцессный управляемый провайдер позволяет вам подсоединиться к серверу, на котором находится ваш код. Вы можете использовать эту возможность для получения данных с сервера или отсылки данных на сервер
Пример использования многопоточности в приложениях ADO.NET
Альберт Садыков
Рассмотрим довольно часто встречающуюся ситуацию: однопользовательское приложение, работающее с базой данных. В программе объявлены и используются объекты DataSet и DataTable. В результате действий пользователя состояние этих объектов изменяется: записи добавляются, удаляются, изменяется содержимое полей. Предлагаемый пример позволяет без лишних усилий реализовать внесение сделанных изменений в базу данных
Использование индексов для быстрого поиска объектов в двух-, трехмерном пространстве
Dmitry Ognyannikov
В програмном обеспечении периодически возникает необходимость находить объекты в массиве по их двухмерным или трехмерным координатам. И здесь возникают сложности. Можно индексировать объекты только по одной координате, а по остальным двум искать прямым перебором. Поиск будет быстрей прямого перебора массива, но все равно медленный. В этой статья я постараюсь объяснить способ построения трехмерного индекса расположения объектов на базе octree-дерева и быстрого поиска объектов по их координатам. На масивах из сотни тысяч элементов трехмерный индекс показвает убыстрение поиска по сравнению с прямым перебором массива в сотни раз
BORLAND DELPHI: Базы данных "на DELPHI" – BDE
Чужа Виталий
Среди наборов компонент, предоставляющих доступ к серверам баз данных, таких как Informix, MS SQL Server, DB2, InterBase, MySQL, Oracle и Sybase, ваше внимание может привлечь компоненты ZeosDBO. Прежде всего это связано с тем, что он распространяется бесплатно. Но это не единственное его достоинство. В состав ZeosDBO входит несколько библиотек

[В начало]

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

SQL Server 2000 Reporting Services - First look
Vinod Kumar
SQL Server 2000 Reporting Services were officially released from Microsoft on Jan 27th '04. And this is the first step from Microsoft to enter into the reporting services sector of BI. The tool is amazing to see the capabilities of the tool if fantastic. The first release itself is full of promise and in this article I will look at some of the key features and salient points of this tool
Understanding Error Handling
Vinod Kumar
This is an interesting to talk. I've not been a big supporter of what happens in our error handling in SQL. And there are quite a lot of void spaces that needs to be addressed in the SQL documentation for the same. Here are some of the tips you can use in your application code. I know this is not an exhaustive analyssis of Error Handling in SQL. But here I do have something learn't the hard way
Retrieve Table Metadata
Roman Rehak
Take advantage of undocumented stored procedures to output SQL Server table metadata your code can use. You need to examine table metadata frequently whenever you write, debug, or troubleshoot database applications. Knowing how metadata is stored in the database and how to examine it quickly can give you useful problem-solving information. For example, an insert command can fail because of table foreign-key or primary-key constraint violations. To fix the error, you need to know what constraints have been defined on the table and which one your insert command violated. I'll show you how table metadata is stored in SQL Server, how to examine it with SQL Server client tools, and how to access it programmatically so you can use it in your own applications. I'll also demonstrate how to use these techniques to write an application for viewing table metadata. The application—TableInfo—gives you a faster and more comprehensive way to examine table metadata than the tools supplied with SQL Server (download the source code here). Finally, I'll show you how to add this (or any) application to SQL Server Enterprise Manager as a complementary external tool
Reuse SQL Code Easily With UDFs
Roman Rehak
Use one of SQL Server 2000's newer features to write efficient and reusable SQL code. One of the more useful newer features SQL Server 2000 offers is the ability to create user-defined functions (UDFs). A SQL Server UDF encapsulates a piece of SQL code and makes it easy to reuse in other database objects. I'll provide you with guidelines and recommendations for using each type of UDF and discuss scenarios where UDFs provide a better alternative to views and stored procedures. I'll also show you how to implement and manage your own system user-defined functions
Prevent ADO.NET Transaction Errors
Roman Rehak
Many database applications require the use of database transactions initiated from the client application. ADO.NET supports transactions just like its predecessor ADO, although the implementation is slightly different. Whether you're using ADO or ADO.NET, your code likely uses the traditional flow for transactions: Start a transaction, execute one or more commands, and either commit the transaction if no errors occur, or roll back the transaction inside of an error handler. There is a slight difference in the way ADO.NET handles transaction rollback compared to ADO. In some cases, your application might throw an unhandled error and crash even though your code implements an error handler. When Transact SQL executes on SQL Server and an error occurs, the error is considered either fatal or non-fatal. SQL Server rolls back fatal errors automatically before the execution returns to the client application. When your code on the client catches the error and tries to roll back the transaction again, ADO.NET raises the error, "The ROLLBACK TRANSACTION request has no corresponding BEGIN TRANSACTION." The same code executed in ADO works without problems because the error is ignored by ADO
Use SQL Server Images in ASP.NET Pages
Dino Esposito
Displaying images in ASP.NET pages is straightforward—just use the <img> tag. However, you must provide a filename such as JPEG, GIF, or BMP in order to use the <img> tag. What if your images are stored in a SQL Server table's blob field?
Add Images to SQL Server
Jason Beres
Drag-and-drop is one of the most productive computer features since the Apple Lisa. You're sure to keep your users happy if you implement drag-and-drop features in your applications. In this article, I'll show you several cool and useful tricks. First, I'll demonstrate how to drag images from the file system over a Windows Forms PictureBox control and trap the file information for the images when you drop them. From there, I'll discuss how to add the images from the file system to a SQL Server database. I've coined the end product the "Cool and Fancy Image Manager" (or just "Image Manager" for short), and I've included a figure that shows you what it looks like (see Figure 1). I won't go into the internals about drag-and-drop or image manipulation, but will teach you practical ways to apply some effective user interface (UI) techniques, as well as some other good stuff along the way
Understanding Microsoft's Platform Strategies
Peter O'Kelly
Making sense of Whidbey/Yukon and Longhorn in a .NET Framework world. The product and strategy floodgates at Microsoft are currently wide open, with a deluge of releases late last year and the unveiling of detailed strategies for the next two waves of platforms and tools at its October Professional Developers Conference (PDC). It's important for enterprise IT planners to assess these product waves not only in the broader context of overall application platform evolution but also relative to Microsoft's .NET strategy, as these waves are much more significant than traditional product updates
Enlist ADO.NET Connections in Pooled Objects Manually
Enrico Sabbadin
Using COM+ pooled objects to cache and reuse valuable resources is one of the most effective ways to boost performance in server-side .NET and COM-based applications. Database connections are among the most precious server-side resources, so they've always been the number-one candidate for pooling. The OLE DB infrastructure offers database connection pooling features, but many performance tests have shown that caching database connections wrapped inside COM+ pooled objects manually outperforms OLE DB-based connection pooling
Online database taps into birders' observations
STEVE KUCHERA
For decades, dedicated birders have made lists to keep track of the birds they saw. Now such lists have gone high tech. The Cornell Lab of Ornithology and the Audubon Society have launched eBird, an online birding database that allows birders to record their sightings and contribute to the understanding of bird populations and movements across North America
Moving Logins - A Gotcha!
Andy Warren
I recently had to move several databases from one server to another and ran into a problem with transferring the SQL logins. If you take a look at SQL 7 Books Online for sp_addlogin, it explains how you can use it for transferring logins by setting the optional flag @encryptopt to one of two values; skip_encryption if the password has already been encrypted, or skip_encryption_old if it was encrypted with an older version (with a note to be used for upgrades only)
Date defends relational model
Sara Cushman
LOS ANGELES -- Chris J. Date has said it before, and he said it again at the DAMA International Symposium's opening keynote
SQL Server Security: Dealing with Anti-Virus Programs
Brian Kelley
With the recent slate of "virus" attacks plaguing us, a question that has come up fairly often is how to handle anti-virus programs running on the same system as SQL Server. If you tried to do an Internet search on SQL Server and anti-virus best practices you've probably been left with a bunch of links to descriptions of the SQL Slammer worm but not a whole lot else. I won't say this is unexpected because in an ideal world we'd want SQL Server to have the system all to itself without any other agents or programs running at the same time. Also, SQL Slammer's effects were felt far and wide and it dominates any searches that don't specifically exclude "slammer" in the search criteria
SQL Server 'Yukon' to get XML data type
Paul Krill
LOS ANGELES -- Microsoft at its Professional Developers Conference 2003 here on Tuesday will discuss intentions to add an XML data type to its SQL Server database, with the Yukon release of the product planned for late 2004
Andy, where are you?
Andy Warren
A number of readers have noticed that I've been a lot less visible lately, both in writing articles and in answering posts. The reasons are a little off topic, so if you're just looking for SQL stuff, stop here! If not, you might find the rest of this mildly interesting
SQL Server 2000 Security - Part 2 (Authentication)
Marcin Policht
Access to SQL Server resources is controlled by two separate mechanisms. The first one is authentication, which determines the identity of a user attempting to connect, based on a verifiable identifier. The second one is authorization, which establishes the level of privileges granted to a login associated with the logged on user. In this article, we will focus on the authentication (authorization will be covered later in the series).
Benchmarking Performance of a Query - Part 1 Elapsed Time
Gregory A. Larsen
How many times have you had more than one way to do something and wanted to determine which method was faster and/or which one used more resources? I am going to guess that most developers have run across this dilemma more than once. So how do you decide with method is faster--or which method requires more resources? In this two part series, I will discuss some of the methods I use in Query Analyzer (QA) to help me decide which coding method might be faster and use less resources
Use Globally Unique Identifiers in Access and SQL Server
Susan Sales Harkins, Arthur Fuller
When your business outgrows your database systems, using globally unique identifier (GUID) values in Access and SQL Server can offer a timely solution. Globally unique identifiers (GUIDs) distinguish hardware, software, and users. Originally, Microsoft designed the GUID value for use with ActiveX controls; Windows uses a 128-bit GUID to identify ActiveX controls. A 48-bit version generates an Ethernet adapter address. Because no two systems should have the same Ethernet adapter address, a GUID based on your computer shouldn't be duplicated on any other computer. To assure this precaution, a GUID datatype produces unique values using the time and address of your network card to ensure that no other computer can generate the same values
Tips for Using SQL Server Performance Monitor Counters
One cause of excess I/O on a SQL Server is page splitting. Page splitting occurs when an index or data page becomes full, and then is split between the current page and a newly allocated page. While occasional page splitting is normal, excess page splitting can cause excessive disk I/O and contribute to slow performance
SQL Server profiling, monitoring and tuning: SQL Server Performance Objects (Part 3)
Alexzander Nepomnjashiy
Friends, can I ask you one unusual question? Do you know what is your wife doing right now? Not sure J? But I know what mine’s wife doing!!! She is trying to prepare next chapter in SQL Server profiling, monitoring and tuning series. You can check she’s previously written chapters: “SQL Server profiling, monitoring and tuning: Before we begin … (Part 1)” and “SQL Server profiling, monitoring and tuning: Choosing the right monitoring tool … (Part 2)”
System-Supplied Trace UDFs
Baya Pavliashvili and Kevin Kline
Most of you have probably created your own SQL Server user-defined functions (UDFs), but did you know that Microsoft ships a fair number of its own UDFs, especially in the most recent SP3? In this article, Baya Pavliashvili and Kevin Kline explore a subset of them that are related to traces. Some of you may want to (re)read previous SQL Server Professional articles about traditional UDFs such as Andrew Zanevsky's September 2000 column ("Granting Wishes with UDF"), Andrew Zanevsky and Anton Jiline's October 2001 article ("UDF Performance… or Lack of It"), or Jimmy Nilsson's July 2003 article ("Another UDF: Global Constants").
Performance Tuning SQL Server
Kevin Cox, William Jones
This chapter discusses how to tune SQL Server, the Windows NT Server, and your network options so your server can achieve optimal performance. The chapter covers configuring SQL Server, tuning the operating system, and designing databases. For in-depth coverage of indexing and optimizing queries, you may want to read "Indexing SQL Server Databases" and "Optimizing SQL Server Queries."

[В начало]

ФОРУМ SQL.RU

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

Ваше мнение об упражнениях SELECT на http://sql.ipps.ru
Tool Вы знаете что твориться на ваших 10-30+ серверах ?
Новые упражнения на http://sql.ipps.ru
select not contains(column) from table.
Горит диплом!Не могу написать процедуру!
Умирает мой сервер....
Как ростит вширь
Репликация как средство обеспечения доступности приложения
Помогите оптимизировать запрос
Как асинхронно выполнить xp_cmdshell ?
Счетчик
Накопление записей - это проблема?
Transaction log
Вываливаюсь при IGNORE_DUP_KEY (mssql 2000)
Помогите оптимизировать простой селект
После переезда на лучший сервер, тормоза...
SQL Server 2000 растет в памяти вплоть до вылета.
Ошибка построения параллельного плана запроса
Reporting Services
Разницамежду датами

[В начало]

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

Job System Diagram
Cursor not open... в EM
DTS и Access Workgroup file
Отработать UPDATE в теле функции
Как мониторят активность дисков на кластерах?
perfomance counters for SQL server
About Linked server
Лицензии SQL Server

[В начало]


Вопросы, предложения, коментарии, замечания, критику и т.п. присылайте Александру Гладченко на адрес: mssqlhelp@km.ru

sql.ru Описание рассылки

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

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



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


http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу


В избранное