Информационный сайт

 

Реклама
bulletinsite.net -> Книги на сайте -> Программисту -> Тоу Д. -> "Настройка SQL. Для профессионалов" -> 9

Настройка SQL. Для профессионалов - Тоу Д.

Тоу Д. Настройка SQL. Для профессионалов — СПб.: Питер, 2004. — 333 c.
ISBN 5-94723-959-0
Скачать (прямая ссылка): nastroykasqldlyaprof2004.djvu
Предыдущая << 1 .. 3 4 5 6 7 8 < 9 > 10 11 12 13 14 15 .. 161 >> Следующая

Введение

Хорошее начало — половина дела.

Аристотель Политика, кн. V, гл. 4

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

Наименее интересной и наиболее простой деталью задачи настройки SQL являются специфичные для конкретного производителя методы просмотра и управления планами выполнения. Эти детали SQL-настройки для Oracle, Microsoft SQL Server и IBM DB2 также обсуждаются в данной книге. Без обсуждения этих деталей книга была бы неполной. Однако основной материал данной книги, посвященный не зависящим от производителя методам настройки SQL, подходит и для других серверов баз данных (и для их новых версий). Сама по себе книга довольно универсальна и не должна устаревать, как это обычно бывает с книгами по компьютерной тематике. Заложенный в основу этой книги метод я использовал на протяжении 10 лет, с четырьмя серверами баз данных от различных производителей, и я рассчитываю, что он будет применим, по крайней мере в течение еще 10 лет. В предоставляемой производителем документации (которая, как правило, располагается в Сети) вы всегда можете найти описание относительно простых методов просмотра и управления планами выполнения, которые подходят для конкретной версии сервера баз данных этого поставщика.

Зачем настраивать SQL?

Начнем с основного вопроса: следует ли настраивать SQL-код в приложении и следует ли заниматься этим вам лично? Если уж вы читаете эту книгу, можно предположить, что вы ответили на эти вопросы положительно или, по крайней мере, склоняетесь в эту сторону. Однако чтобы понять, насколько положительным
22

1. Введение

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

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

ПРИМЕЧАНИЕ----------------------------------------------------------------------

Приложения, работающие в оперативном режиме, и приложения, производящие просматриваемые людьми отчеты, должны формировать їй выходе объемы данных, которые человек способен переварить. Эти объемы ничтожны по сравнению с объемами, которые способен обработать компьютер. Промежуточное программное обеспечение (middleware), перемещая данные из одной системы в другую без человеческого вмешательства, способно обработать и большие объемы данных, но даже промежуточное программное обеспечение, как правило, выполняет некую агрегационную функцию, уменьшая объемы данных до сравнительно умеренных.

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

С другой стороны, системе управления базой данных, работающей с коммерческим приложением, часто приходится обработать миллионы строк таблиц из базы данных только для того, чтобы вернуть несколько строк, удовлетворяющих запросу приложения. Подобная неэффективность может иметь решающее значение в определении суммарной нагрузки на систему и производительности системы. Более того: хотя вы легко можете увеличить количество прикладных серверов, заставить несколько серверов баз данных работать с одним и тем же непротиворечивым набором данных для одного и того же приложения, как правило, значительно труднее. По этой причине ограничения пропускной способности серверов баз данных имеют гораздо большее значение. Абсолютно необходимо сделать так, чтобы ваша система удовлетворяла объемам ваших данных, а не наоборот.
Предыдущая << 1 .. 3 4 5 6 7 8 < 9 > 10 11 12 13 14 15 .. 161 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100