ДРУГ ПОЗНАЕТСЯ В БД - теория баз данных

GLAZъ (glazy@mail.ru) & Дронич

Спецвыпуск Xakep, номер #028, стр. 028-042-1

Работа таких сайтов, как Yandex, Yahoo!, Ebay, построена на БД и целиком зависит от их надежности. Так что правильно организованная база - залог твоего успеха. Если хорошо спланировать структуру базы, можно получить быстрые и гибкие возможности поиска данных, чего мы и добиваемся. Но это вода, перейдем к делу!

Классификация

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

В архитектуре файл-сервер есть сервак, который выполняет только роль хранилища самих данных, а есть компы, так называемые рабочие станции, на которых происходит собственно обработка данных. Т.е. сам сервер не участвует в обработке!

Случай, когда архитектура - клиент-сервер, нам ближе. Тут на сервак уже ложится обязанность обработки самих запросов, посылаемых ему на языке SQL, о котором я расскажу в следующей статье. А юзеру приходит уже готовый результат. Это гораздо удобнее, так как не приходится передавать файлы офигительного размера по сетке.

Еще один вид БДей - распределенные, когда БДя хранятся на разных компах, причем данные могут повторяться (сие зовется избыточным хранением, полезно в случае падения систем).

Вскрытие показало

Базы, грубо говоря, - это совокупность описаний какого-либо объекта (мощно задвинул!). Вот эти описания кличут атрибутами, а объекты - сущностями. Кроме них есть еще такие понятия, как поле, запись и таблица. Поле - это одна какая-то характеристика объекта. Описать объект более детально, чем полями, нельзя.

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

Данные бывают разные: реляционные, зеленые, красные

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

Итак, основной моделью является реляционная модель. Фишка ее в том, что все данные представляются в виде таблиц. И именно эта модель используется в таких продуктах, как MS SQL, MySQL, мелкософтный Access.

Интимные связи

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

Содержание  Вперед на стр. 028-042-2
Выпуски журнала "СПЕЦ Xakep"
Cпец Хакер #01Cпец Хакер #02Cпец Хакер #03Cпец Хакер #04Cпец Хакер #05Cпец Хакер #06Cпец Хакер #07Cпец Хакер #08Cпец Хакер #09Cпец Хакер #10Cпец Хакер #11Cпец Хакер #12Cпец Хакер #13Cпец Хакер #14Cпец Хакер #15Cпец Хакер #16Cпец Хакер #17Cпец Хакер #18Cпец Хакер #19Cпец Хакер #20Cпец Хакер #21Cпец Хакер #22Cпец Хакер #23Cпец Хакер #24Cпец Хакер #25Cпец Хакер #26Cпец Хакер #27Cпец Хакер #28Cпец Хакер #29Cпец Хакер #30Cпец Хакер #31Cпец Хакер #32Cпец Хакер #33Cпец Хакер #34Cпец Хакер #35Cпец Хакер #36Cпец Хакер #37Cпец Хакер #38Cпец Хакер #39Cпец Хакер #40Cпец Хакер #41Cпец Хакер #42Cпец Хакер #43Cпец Хакер #44Cпец Хакер #45Cпец Хакер #46Cпец Хакер #47Cпец Хакер #48Cпец Хакер #49Cпец Хакер #50Cпец Хакер #51Cпец Хакер #52Cпец Хакер #53Cпец Хакер #54Cпец Хакер #55Cпец Хакер #56Cпец Хакер #57Cпец Хакер #58Cпец Хакер #59Cпец Хакер #60Cпец Хакер #61Cпец Хакер #62Cпец Хакер #63Cпец Хакер #64Cпец Хакер #65Cпец Хакер #66Cпец Хакер #67Cпец Хакер #68Cпец Хакер #69Cпец Хакер #70Cпец Хакер #71Cпец Хакер #72Cпец Хакер #73Cпец Хакер #74Cпец Хакер #75