IZONE - http://www.izcity.com/ - бесплатный софт, вэб-сервисы, ресурсы для раскрутки, свежие номера журнала "Internet Zone".

 IZONE 


Базы данных

Дмитрий Турецкий

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

На самом деле, базы данных - штука довольно простая. В принципе, это всего-лишь программа, обеспечивающая работу с какими-то вашими данными. Все, что база умеет - это читать данные из файла (и писать в него), сортировать их, выбирать по какому-то критерию... Для вывода отобранной информации пишется какой-нибудь пользовательский интерфейс, который занимается форматированием данных (например, вместо хранящегося в базе числа 1234567, выводит телефон в более привычном виде: 123-4567) и, возможно, каким-то другими действиями.

При написании базы программист оперирует несколькими базовыми (каламбур, однако) понятиями: набор данных (recordset), запись (record) и поле (field). Поле - это единица информации, скажем, номер телефона, фамилия, дата или что-нибудь еще. Запись - это набор полей, относящихся к одному объекту, например, записью может быть совокупность имени и номера телефона. Набор данных - это некоторый набор записей, выбранных из базы по какому-то признаку.

Данные в базе хранятся в таблицах, где каждая строчка таблицы представляет из себя какую-то запись. Большинство современных баз данных являются реляционными, т.е. такими, где данные, распределены по нескольким таблицам. Для чего это нужно? Рассмотрим классический пример: вам нужна база, в которой бы хранилась информация о заказах, сделанных вашими клиентами. В принципе, все данные можно сохранить в одной таблице: имя клиента, его адрес, дата заказа, его номер и что именно заказано. Но, т.к. клиент может делать несколько заказов, то в базе будут повторяться одни и те же данные: имя и адрес клиента. Для того, чтобы этого избежать, логично создать две таблицы: в одной записать имя, адрес и порядковый номер клиента, а в другой - данные о заказах, причем вместо нескольких полей, описывающих клиента, ввести одно поле, содержащее его порядковый номер из первой таблицы. Разумеется, этот пример очень прост - реальные базы данных зачастую состоят из нескольких десятков таблиц, связанных между собой в виде довольно сложных цепочек. Разработка структуры базы данных является одной из наиболее сложных задач, стоящих перед программистом - именно от удачного выбора структуры зависит удобство и скорость работы с базой.

Наборы данных, о которых я писал выше, отнюдь не ограничены одной таблицей, наоборот, удобство их использования проявляется именно в том, что recordset-ы создаются "на лету" (как результат обработки запроса) и могут включать данные из разных таблиц и даже разных баз данных, в том числе, расположенных на разных компьютерах! Важно понимать, что данные не возникают сами по себе - их надо как-то заносить, база предоставляет лишь удобный интерфейс для выборки и модификации этих данных.

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

Базы данных используются везде - бухгалтерия, склады, информация о домашней видеотеке, записная книжка и т.п. Особо хочется выделить использование баз данных в Интернете. Без них не обходится практически ни один более или менее крупный сайт. База на таких сайтах может быть интерактивной или же использоваться для генерации статичных страниц. Примером интерактивной базы может служить База данных по купле-продаже недвижимости в Москве - здесь вы можете задать параметры интересующей вас квартиры и получить список предложений, удовлетворяющих вашему запросу. У себя на сайте я использую базу для ввода и модификации данных о программах, после чего из этой базы генерируются статичные HTML страницы. Преимущество первого подхода заключается в бОльшей интерактивности сайта и бОльшей скорости обновления - новые данные становятся доступны пользователям практически сразу же после того, как они добавлены в базу. Преимущество второго способа - дешевизна (возможно использование значительно менее мощного компьютера, чем тот, который требуется для работы базы данных), более высокая скорость работы сервера (за счет меньшей загрузки процессора и возможности кэширования страниц). Но, как мне кажется, с ростом производительности компьютеров и мощности каналов связи использование он-лайновых баз данных будет только увеличиваться - уж больно это удобно...

Источник: http://www.diskovod.ru

 


Copyright © "Internet Zone"info@izcity.com
Копирование и использование данных материалов разрешается только в случае указания на журнал "Internet Zone", как на источник получения информации. При этом во всех ссылках обязательно явное указание адреса вэб-сайта http://www.izcity.com/. При наличии у копируемого материала авторов и источника информации - их также нужно указывать, наряду со ссылкой на нас.