Автокликер
Блог
Библиотека
Еще...

Математика

Консервирование

Салаты

Физкультура и спорт

Теория программирования

AJAX

Напитки

Assembler

Выпечка

Национальная кухня

Интернет

Кулинария

Компьютерная графика и дизайн

Плавание

Баскетбол

Рыбы

Гимнастика, фитнес, йога

Шахматы

Компьютерная литература

Теория автоматов

Беременность и уход за ребенком

Дефектология, логопедия

Массаж

Дискретная математика

Позвоночник, суставы

Книги Малахова Г.П.

Детская психология

Общая психология

ВАЗ

Ремонтная мастерская

Детская литература

Психология

Воспитателям

MatLab

Дайвинг

Книги для родителей

Кошки

Хомячки

Собаки

Фотография

Практическая и прикладная психология

Рукоделие

Попугаи

Боевые искусства, самооборона

Linux, Unix, FreeBSD, MacOS

Мир животных

Вождение

Ремонт и строительство

Здоровый образ жизни

Книги для девочек

Цветоводство

Автотранспорт

Энциклопедии, познавательная литература

Зрение

Здоровое питание и диеты

SQL и MySQL

Гастроэнтерология

Фастфуд

JavaScript

Mathcad

Мода, стиль и красота

Flash

Железо

Тяжелая атлетика

PHP

Эзотерика. Парапсихология. Тайны

Книги Болотова Б.В.

Бизнес-книги

Системное программирование

Диетическая кухня

Психология общения

Художественная литература

Сказки

Дизайн, интерьер

ЗАЗ

История бизнеса

Менеджмент

Медицина и здоровье

Зарубежная литература

Развитие и воспитание детей

Компьютерные сети

Ландшафтный дизайн

Педагогика

Возрастная психология

Авто-право

HTML

XML

Python

Perl

Windows

Excel

Правила дорожного движения

Visual Basic

Хобби, увлечения, досуг

Сад, огород

Рисование

Художественная кулинария

Лечебная физкультура

Барбекю. Гриль. Мангал

Книги для мальчиков

Экономика

Нетрадиционная медицина

Маркетинг, реклама и PR

Очищение организма

Банковское дело

Коллекционирование

Бухгалтерский учет, аудит

Финансы, инвестиции

Физика

Генетика

Психодиагностика и тестирование

Механика

Термодинамика

Электромагнетизм, электроника

Оптика

Авторское право

Квантовая физика

MicroSoft Office, OpenOffice

Колебания и волны

C, C , C#

Право

Статистика

CSS

jQuery

Тайм-менеджмент

Трехмерная графика

Социальная психология

Сердце и сосуды

BIOS

DELPHI и Pascal

История психологии

Java, J2ME

Гинекология

Праздники, игры, развлечения

Мотоциклы

Психология личности

Футбол

История педагогики

Десерты

Молекулярная физика

Социальная педагогика

Теория обучения и воспитания

Уголовное право

Фармакология

Малый бизнес

Недвижимость

Теория бизнеса

iPhone и iPad

Ruby

Криптография

CMS

Android

Раскрутка и продвижение сайта

Литература

Личности в истории

ASP.NET

Системное администрирование

САПР

Дом, семья, дети

Здоровое и раздельное питание

Биографии

Путешествия

Современная проза

Саморазвитие

Анатомия и физиология

Семейное и жилищное право

Торговля, продажи, логистика

Словари

Химия

Психотерапия

Oracle

Музыка и танцы

Видеомонтаж

Международное право

Математический анализ

Английский язык

Философия

История России

Изучение языков

Французский язык

Музыка и звук на компьютере

Поэзия

Немецкий язык

Биографии, мемуары

Хирургия

Школьный психолог

Испанский язык

Публицистика

История

Коррекционная педагогика

Культура и искусство

Социология

Политология

Религия

Финансовое право

Всемирная история

1C

Литературоведение

Естествознание

Линейная алгебра

Прокуратура, адвокатура

Русский язык

Итальянский язык

Краткое изложение произведений

Школьный курс

Биология, экология

Промышленная экология

Архитектура

Рефакторинг SQL-приложений

Рефакторинг SQL-приложений

Стефан Фаро, Паскаль Лерми

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

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

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

Издательство: Символ-Плюс, 2009 г.

ISBN 978-5-93286-145-5, 978-0-596-51497-6

Количество страниц: 336.

Содержание книги «Рефакторинг SQL-приложений»:

  • 9 Об авторах
  • 10 Предисловие
  • 20 1. Оценка
    • 21 Простой пример
    • 25 Настройка SQL, традиционный способ
    • 28 Припудривание кода
    • 30 Настройка SQL заново
    • 30 Рефакторинг, первая точка зрения
    • 35 Рефакторинг, вторая точка зрения
    • 37 Сравнение и комментарии
    • 40 Выбор среди различных подходов
    • 42 Оценка возможных выигрышей
    • 49 Выяснение, что делает база данных
    • 49 Запрос динамических представлений
    • 54 Добавление операторов в файл трассировки
    • 56 Использование файлов трассировки
    • 58 Анализ собранного материала
  • 61 2. Проверка работоспособности
    • 62 Статистика и проблемы с данными
    • 62 Доступная статистика
    • 67 Ловушки для оптимизатора
    • 67 Экстремальные значения
    • 69 Временные таблицы
    • 69 Обзор индексирования
    • 71 Краткий обзор типа индексации
    • 73 Детальное исследование
    • 79 Индексы, которые нарушают правила
    • 79 Индексы на основе битовых карт
    • 80 Кластерные индексы
    • 81 Индексы по выражениям
    • 81 Синтаксический разбор и связующие переменные
    • 82 Как определить проблемы синтаксического разбора
    • 84 Оценка потерь производительности из-за синтаксического разбора
    • 88 Разрешение проблем синтаксического анализа
    • 90 Что если одно значение должно быть привязано несколько раз?
    • 91 Разрешение проблем синтаксического анализа для ленивых
    • 92 Правильный подход к разрешению проблем синтаксического анализа
    • 94 Обработка списков в подготовленных операторах
    • 95 Передача списка как одной переменной
    • 98 Пакетная обработка списков
    • 99 Использование временной таблицы
    • 100 Групповые операции
    • 102 Управление транзакциями
  • 105 3. Пользовательские функции и представления
    • 106 Пользовательские функции
    • 107 Усовершенствование чисто вычислительных функций
    • 110 Дальнейшее усовершенствование функций
    • 118 Усовершенствование функций поиска
    • 119 Пример 1: календарная функция
    • 127 Пример 2: функция конвертирования валют
    • 135 Усовершенствование функций против переписывания операторов
    • 136 Представления
    • 136 Для чего нужны представления
    • 137 Сравнение производительности со сложными представлениями и без них
    • 144 Рефакторинг представлений
  • 148 4. Концепция тестирования
    • 149 Генерирование тестовых данных
    • 150 Размножение строк
    • 151 Использование функций генерирования случайных значений
    • 152 SQL Server и функции генерирования случайных значений
    • 156 Подгонка под существующие распределения
    • 160 Генерирование большого числа строк
    • 164 Целостность на уровне ссылок
    • 165 Генерирование случайного текста
    • 167 Сравнение альтернативных версий
    • 167 Блочное тестирование
    • 168 Приближенное сравнение
    • 169 Сравнение таблиц и результатов
    • 169 Что сравнивать
    • 170 Примитивные способы сравнения
    • 172 Сравнение SQL, версия из учебника
    • 174 Сравнение SQL, версия получше
    • 175 Сравнение контрольных сумм в SQL
    • 182 Ограничения сравнения
  • 183 5. Рефакторинг операторов
    • 184 Планы исполнения и директивы оптимизатора
    • 190 Анализ медленного запроса
    • 190 Идентификация базового запроса
    • 192 Приведение в порядок фразы from
    • 195 Рефакторинг базового запроса
    • 196 Анализ составных частей
    • 196 Устранение повторяющихся шаблонов
    • 203 Игры с подзапросами
    • 203 Подзапросы в списке select
    • 206 Подзапросы во фразе from
    • 206 Подзапросы во фразе where
    • 209 Ранняя активизация фильтров
    • 211 Упрощение условий
    • 214 Другие направления оптимизации
    • 214 Упрощение агрегатов
    • 214 Использование фразы with
    • 215 Комбинирование операторов объединения
    • 216 Перестроение исходного запроса
    • 216 Вложенные циклы
    • 217 Соединение слиянием и хеш-соединение
  • 219 6. Рефакторинг задач
    • 220 SQL-мышление
    • 221 Использование SQL там, где SQL работает лучше
    • 222 Рассчитывайте на успех
    • 225 Реструктуризация кода
    • 226 Объединение операторов
    • 226 Введение управляющих структур в SQL
    • 227 Использование агрегатов
    • 228 Использование функции coalesce() вместо if is null
    • 229 Использование исключений
    • 234 Извлечение всех нужных данных за один прием
    • 235 Изменение логики
    • 236 Избавление от функции count()
    • 244 Избегайте излишеств
    • 245 Избавляйтесь от циклов
    • 248 Причины использования циклов
    • 250 Анализ циклов
    • 251 Сомнительные циклы
  • 255 7. Рефакторинг потоков и баз данных
    • 256 Реорганизация обработки
    • 257 Борьба за ресурсы
    • 258 Время обслуживания и интенсивность входного потока
    • 259 Усиление параллелизма
    • 261 Размножение поставщиков услуг на уровне приложения
    • 269 Укорачивание критических разделов
    • 270 Изолирование опасных зон
    • 271 Работа с несколькими очередями
    • 278 Параллелизм вашей программы и СУБД
    • 281 Потрясая основы
    • 283 Сортировка строк
    • 286 Разбиение таблиц
    • 288 Изменение столбцов
    • 288 Изменение содержимого
    • 289 Разбиение столбцов
    • 290 Добавление столбцов
    • 291 Материализация представлений
  • 294 8. Как это работает: практика рефакторинга
    • 294 Можете ли вы взглянуть на базу данных?
    • 296 «Мертвые» запросы
    • 298 Все эти быстрые запросы
    • 300 Не бывает явно «плохих» запросов
    • 301 Пора заканчивать
  • 302 A. Сценарии и примеры программ
  • 312 B. Инструменты
    • 312 Программы mklipsum и lipsum
    • 312 Как собрать программы mklipsum и lipsum
    • 312 Как использовать программы mklipsum и lipsum
    • 315 Roughbench
    • 315 Как собрать программу Roughbench
    • 315 Как использовать программу Roughbench
    • 315 Файл roughbench .properties
    • 316 Указание параметров
    • 317 Генерирование переменных
    • 317 Генерирование целых чисел или чисел с плавающей запятой
    • 317 Генерирование дат
    • 318 Вывод
  • 320 Алфавитный указатель

Скачать книгу Рефакторинг SQL-приложений / Стефан Фаро, Паскаль Лерми в форматах DjVu, PDF, DOC или fb2 совершенно бесплатно.