суббота, 14 февраля 2015 г.

Как добавить в блог подсветку SQL кода

Как добавить в блог подсветку SQL кода
http://shkolablogger.ru/podsvetka-sintaksisa-koda-dlya-blogger-syntaxhighlighter.html

вторник, 31 июля 2012 г.

SSIS Рекомендации по оптимизации производительности Data Flow


DataFlow работает в рамках SSIS, оторый представляет собой отдельный процесс как от SQL Server так и от других источников данных.

Рекомендуется так организовать работу, что бы свести к минимуму затраты на передачу данных между этими системами.

Источники данных DataFlow поддерживают получение данных из хранимых процедур и представлений, по этому, часть работы котрую возможно выполнить в едином контексте (например join, group by, order by) бывает целесообразно не выносить на уровень SSIS, а делать на стороне  СУБД используя при этом возможности индексации и т.п.

Кроме того, когда некоторые компоненты преобразования данных DataFlow работают с СУБД нужно следить что бы в таблицах имелись индексы способные сделать эти взаимодействия наиболее обтимальными.

Для контроля обтимальности взаимодействия с СУБД рекомендуется использовать профайлер или сессии Extended Events.

Если производится выбока данных из таблицы или представления, рекомендуется писать запросы (SELECT) в явном виде, не позволяя системе формировать запросы самостоятельно.

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

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









среда, 4 июля 2012 г.

SSIS с точки зрения разработчика


С точки зрения разработчика SSIS имеет следующие разделы:

Control Flow

В этом разделе разработчик может формировать последовательность операций с данными которую будет реализовывать Пакет. Эта последовательность состоит из набора Задач (Task) которые связываются друг с другом. 
Каждый Task позволяет выполнить конкретную задачу (Execute SQL task, File System task, FTP task, Send mail task). 
Например  Execute SQL Task предназначен для вызова хранимых процедур и выполнения DML запросов. Control Flow может содержать несколько таких Tasks, связи между ними задают последовательность из выполнения.

Data Flow

Этот раздел предназначен для организации процесса извлечения данных из различных источников, преобразования данных и загрузки в указанное место. Для этого используются компоненты трех видов: Sources, Transformation и Destinations.

Event Handler

в этом разделе можно задасть обработку событий происходящих при выполнении пакета. Например при возникновении определенных событий может потребоваться отправлять сообщения по электронной почте или например очистить таблицу с промежуточными данными.

Package Explorer

Этот  раздел содержит список компонентов котрые испольтзованы в пакете (переменные, обработчики событий и т.п.)

воскресенье, 12 февраля 2012 г.

techdays

Введение в ETL на базе SQL Server 2008: загрузка данных
Как использовать SQL Server 2008 change tracking и ADO.NET Sync Services
Рецепт успеха BPM: люди, процессы и аналитика
C# 5.0 - асинхронное программирование, описание и сценарии использования
Оптимизация инфраструктуры SQL Server
Data Mining. Повышение точности классификации при помощи ансамблей моделей на платформе SQL Server 2008 R2
Средства быстрой разработки приложений баз данных
Платформа SharePoint: решение типовых бизнес-задач
Введение в Master Data Services
SQL Server 2008: асинхронное программирование

Links

The 10 Commandments of Good Source Control Management
Subqueries in SQL Server
Window Functions in SQL Server
Introduction to ASP.NET MVC 3
Learn MVC (Model view controller) Step by Step in 7 days – Day 1

SQL at SQL Book

File Transfer using WCF and Socket
Passing Large Files in Windows Communication Foundation (WCF) using Streaming and TCP
Receiving Large Files over TCP/IP in C#
T-SQL Programming Part 1 - Defining Variables, and IF...ELSE logic
MDX at First Glance: Introduction to SQL Server MDX Essentials
SQL Server: Calculating Running Totals, Subtotals and Grand Total Without a Cursor

C# & SqlDependency - Monitoring your database for data changes
SQL Server Service Broker demystified
Introducing Distributed Messaging using Service Broker in SQL Server 2005
http://geekswithblogs.net/shahed/archive/2006/08/28/89500.aspx
Building Applications with Service Broker
SQL Server DENALI: Service Broker Troubleshooting made easy
An Introduction to SQL Server Service Broker
SQL Script for Service Broker to get Service Queue Details
SQL Server 2008 Service Broker
An Introduction to the Service Broker

вторник, 7 февраля 2012 г.

Вопросы для собеседования

Сопровождение БД

1. С какими конкретно типами блокировок связано перестроение и реорганизация индексов и обновление статистики?
2. Какие существуют варианты обновления статистики?
3. На какие параметры следует ориентироваться при установке периодичности обновления статистики?


Разработка

1. Какие способы хранения деревьев в БД вам известны?
2. Какие наиболее частые операции с деревьями?

http://habrahabr.ru/blogs/hr/137315/

Links

http://mscerts.programming4.us/programming.aspx
Locations of visitors to this page