По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
В одном из прошлых статей мы рассмотрели способы фильтрации маршрутов для динамического протокола маршрутизации EIGRP. Следует отметить, что EIGRP проприетарная разработка Cisco, но уже открыта другим производителям. OSPF же протокол открытого стандарта и поддерживается всем вендорами сетевого оборудования. Предполагается, что читатель знаком с данным протоколом маршрутизации и имеет знания на уровне CCNA. OSPF тоже поддерживает фильтрацию маршрутов, но в отличии от EIGRP, где фильтрацию можно делать на любом маршрутизаторе, здесь она возможна только на пограничных роутерах, которые называются ABR (Area Border Router) и ASBR (Autonomous System Boundary Router). Причиной этому является логика анонсирования маршрутов в протоколе OSPF. Не вдаваясь в подробности скажу, что здесь маршруты объявляются с помощью LSA (Link State Advertisement). Существует 11 типов LSA, но рассматривать их мы не будем. По ходу статьи рассмотрим только Type 3 LSA и Type 5 LSA. LSA третьего типа создаются пограничными роутерами, которые подключены к магистральной области (backbone area) и минимум одной немагистральной. Type 3 LSA также называются Summary LSA. С помощью данного типа LSA ABR анонсирует сети из одной области в другую. В таблице базы данных OSPF они отображается как Summary Net Link States: Фильтрация LSA третьего типа говорит маршрутизатору не анонсировать сети из одной области в другую, тем самым закрывая доступ к сетям, которые не должны отображаться в других областях. Видео: протокол OSPF (Open Shortest Path First) за 8 минут Для настройки фильтрации применяется команда area area-num filter-list prefix prefix-list-name {in | out} в интерфейсе конфигурации OSPF. Как видно, здесь применяются списки префиксов или prefix-list, о которых мы говорили в предыдущей статье. Маршрут не анонсируется если попадает под действие deny в списке префиксов. Камнем преткновения в данной команде являются ключевые слова in и out. Эти параметры определяют направление фильтрации в зависимости от номера области, указанного в команде area are-num filter. А работают они следующим образом: Если прописано слово in, то маршрутизатор предотвращает попадание указанных сетей в область, номер которого указан в команде. Если прописано слово out, то маршрутизатор фильтрует номера сетей, исходящих из области, номер которого указан в команде. Схематически это выглядит так: Команда area 0 filter-list in отфильтрует все LSA третьего типа (из областей 1 и 2), и они не попадут в area 0. Но в area 2 маршруты в area 1 попадут, так как нет команд вроде area 2 filter-list in или area 1 filter-list out. Вторая же команда: area 2 filter-list out отфильтрует все маршруты из области 2. В данном примере маршрутная информация из второй области не попадёт ни в одну из областей. В нашей топологии, показанной на рисунке, имеются две точки фильтрации, то есть два пограничных маршрутизатора: При чем каждый из этих маршрутизаторов будет фильтровать разные сети. Также мы здесь используем обе ключевых слова in и out. На ABR1 напишем следующие prefix-list-ы: ip prefix-list FILTER-INTO-AREA-34 seq 5 deny 10.16.3.0/24 ip prefix-list FILTER-INTO-AREA-34 seq 10 permit 0.0.0.0/0 le 32 А на ABR2 ip prefix-list FILTER-OUT-OF-AREA-0 seq 5 deny 10.16.2.0/23 ge 24 le 24 ip prefix-list FILTER-OUT-OF-AREA-0 seq 10 permit 0.0.0.0/0 le 32 Теперь проверив таблицу маршрутизации на R3, увидим, что маршрут до сети 10.16.3.0 отсутствует: Теперь поясним, что мы сказали маршрутизатору. В конфигурации ABR1 первый prefix-list с действием deny совпадет только с маршрутом, который начинается на 10.16.3.0, а длина префикса равна 24. Второй же префикс соответствует всем остальным маршрутам. А командой area 34 filter-list prefix FILTER-INTO-AREA-34 in сказали отфильтровать все сети, которые поступают в 34 область. Поэтому в базе OSPF маршрута в сеть 10.16.3 через R1 не будет. На втором же маршрутизаторе пошли другим путём. Первый команда ip prefix-list FILTER-OUT-OF-AREA-0 seq 5 deny 10.16.2.0/23 ge 24 le 24 совпадет с маршрутами, который начинается на 10.16.2.0 и 10.16.3.0, так как указан /23. На языке списка префиксов означает взять адреса, которые могут соответствовать маске 255.255.254.0, а длина префикса адреса равна 24. А командой area 0 out сказали отфильтровать все LSA 3 типа, которые исходят из области 0. На первый взгляд кажется сложным, но если присмотреться, то все станет ясно. Фильтрация маршрутов в OSPF через distribute-list Фильтрация LSA третьего типа не всегда помогает. Представим ситуацию, когда в какой-то области 50 маршрутизаторов, а нам нужно чтобы маршрутная информация не попала в таблицу только 10 роутеров. В таком случае фильтрация по LSA не поможет, так как он фильтрует маршрут исходящий или входящий в область, в нашем случае маршрут не попадёт ни на один маршрутизатор, что противоречит поставленной задаче. Для таких случаев предусмотрена функция distribute-list. Она просто не добавляет указанный маршрут в таблицу маршрутизации, но в базе OSPF маршрут до сети будет. В отличии от настройки distribute-list в EIGRP, в OSPF нужно учесть следующие аспекты: Команда distribute-list требует указания параметров in | out, но только при применении in фильтрация будет работать. Для фильтрации команда может использовать ACL, prefix-list или route-map. Можно также добавить параметр interface interface-type-number, чтобы применить фильтрацию для конкретного интерфейса. Внесем некоторые изменения в конфигурацию маршрутизатора R3, чтобы отфильтровать маршрут до сети 10.16.1.0: Как видно на выводе, до применения prefix-list-а, в таблице маршрутизации есть маршрут до сети 10.16.1.0. Но после внесения изменений маршрут исчезает из таблицы, но вывод команды show ip ospf database | i 10.16.1.0 показывает, что в базе OSPF данный маршрут существует. Фильтрация маршрутов на ASBR Как уже было сказано в начале материала, ASBR это маршрутизатор, который стоит между двумя разными автономными системами. Именно он генерирует LSA пятого типа, которые включают в себя маршруты в сети, находящиеся вне домена OSPF. Топология сети показана ниже: Конфигурацию всех устройств из этой статьи можно скачать в архиве по ссылке ниже. Скачать конфиги тестовой лаборатории Как видно из рисунка, у нас есть два разных домена динамической маршрутизации. На роутере ASBR настроена редистрибюция маршрутов, то есть маршруты из одно домена маршрутизации попадают во второй. Нам нужно отфильтровать маршруты таким образом, чтобы сети 172.16.101.0/24 и 172.16.102.0/25 не попали в домен EIGRP. Все остальные, включая сети точка-точка, должны быть видны для пользователей в сети EIGRP. Для фильтрации Cisco IOS нам дает всего один инструмент route-map. О них мы подробно рассказывали в статье и фильтрации маршрутов в EIGRP. Можно пойти двумя путями. Либо запрещаем указанные маршруты, в конце добавляем route-map с действием permit, который разрешит все остальные, либо разрешаем указанным в списке префиксов маршруты, а все остальное запрещаем (имейте ввиду, что в конце любого route-map имеется явный запрет deny). Покажем второй вариант, а первый можете протестировать сами и поделиться результатом. Для начала создаем списки префиксов с разрешёнными сетями: ip prefix-list match-area0-permit seq 5 permit 172.16.14.0/30 ip prefix-list match-area0-permit seq 10 permit 172.16.18.0/30 ip prefix-list match-area0-permit seq 15 permit 172.16.8.1/32 ip prefix-list match-area0-permit seq 20 permit 172.16.4.1/32 ip prefix-list match-area0-permit seq 25 permit 172.16.48.0/25 ip prefix-list match-area0-permit seq 30 permit 172.16.49.0/25 ip prefix-list match-area3-permit seq 5 permit 172.16.103.0/24 ge 26 le 26 Еще раз отметим, что фильтрация LSA Type 5 делается только на ASBR маршрутизаторе. До внесения изменений на маршрутизаторе R1 видны сети до 101.0 и 102.0: Применим изменения на ASBR: Проверим таблицу маршрутизации R1 еще раз: Как видим, маршруты в сеть 101.0 и 102.0 исчезли из таблицы. На этом, пожалуй, завершим это материал. Он и так оказался достаточно большим и сложным. Удачи в экспериментах!
img
Облачное хранилище позволяет хранить ваши данные на чужом жестком диске в дата-центрах по всему миру. Вам не нужно беспокоиться о потере ваших данных, и вы можете получить к ним доступ из любого места. И, хотите верьте, хотите нет, но многие из этих сервисов имеют довольно щедрые бесплатные предложения. Так что стоит учитывать, что базовое бесплатное хранилище можно бесплатно ненамного увеличить, путем выполнения различных условий от хранилища – например, можно получить дополнительное место за реферальные ссылки, пост соцсетях или что-то в этом роде. В этой статье мы расскажем о главных поставщиках облачных хранилищ, чтобы вы могли решить, какие из них вы хотите использовать. Для чего нужно облачное хранилище? Вот наиболее распространенные варианты использования: Расширение вашего локального хранилища У вас может быть ноутбук или телефон с ограниченным объемом памяти. Конечно можно установить дополнительный жесткий диск SSD или SD-карту, но это может быть дорого. Кроме того, некоторые устройства не имеют дополнительного слота для жесткого диска. Резервное копирование ваших данных Большинство поставщиков облачных хранилищ устойчивы к потере данных. Когда вы загружаете данные в облако, поставщик хранит копии ваших данных до шести раз на шести разных жестких дисках в отдельных изолированных центрах обработки данных. С вашей точки зрения, будет казаться, что существует только один файл, но эти копии существуют. Эта облачная стратегия избыточных копий называется высокой доступностью и гарантирует возможность восстановления данных в случае виртуальных или физических катастроф. Так что, если у вас есть ценные фотографии, которые вы не хотите потерять, облако - лучшее место для них. Совместное использование и сотрудничество Облачное хранилище позволяет вам обмениваться файлами по вашему выбору с друзьями и коллегами. При обмене файлами по электронной почте, вы ограничены около 20 МБ на электронную почту. Облачное хранилище позволяет вам делиться терабайтами по размеру. Защита ваших данных Когда вы загружаете ваши данные в облачное хранилище, они шифруют ваши данные при сбросе. Некоторые провайдеры позволяют вам защитить паролем, требуют ключ шифрования или применяют многофакторную аутентификацию, требующую дополнительного шага проверки для получения доступа. Бесплатные облачные хранилища Существует множество провайдеров облачных хранилищ, и большинство из них имеют бесплатный уровень в несколько гигабайт. Используя различные облачные провайдеры, вы можете получить терабайты бесплатного хранилища. Мы разделили бесплатные облачные хранилища на две категории: одни для обычного потребителя и дополнительные опции для разработчиков. Бесплатное удобное облачное хранилище для обычных пользователей Dropbox - 2 ГБ Dropbox - один из старейших и самых популярных поставщиков облачных хранилищ для широкого потребителя. Dropbox имеет простой интерфейс, и синхронизация файлов с вашим локальным компьютером - это без проблем. Базовый бесплатный аккаунт предоставляет вам 2 гигабайта облачного хранилища. Также, возможно, вам будет интересно узнать, что в Dropbox используется AWS S3(Amazon Simple Storage Service). Amazon Drive - 5 ГБ с основной подпиской Amazon более известна своим хранилищем для разработчиков AWS S3, чем Amazon Drive, однако у нее предложение для обычных пользователей. Если вы хотите получить бесплатные 5 ГБ, вам необходимо приобрести подписку Amazon Prime. OneDrive - 5 ГБ Если вы работаете в Windows 10, то у вас уже есть предустановленный OneDrive, что имеет смысл, поскольку OneDrive является службой облачного хранения Microsoft. Базовый аккаунт дает вам 5 гигабайт облачного хранилища. Google Drive - 15 ГБ Если у вас есть Gmail или телефон или планшет на Android, то вы в одном клике от доступа к Google Диску. По умолчанию вы получаете 15 гигабайт облачного хранилища. У него отличные тарифы, а интерфейс очень прост в использовании. iCloud - 5 ГБ Если вы используете Mac или iPhone или iPad, то при настройке учетной записи Apple вас спросили, хотите ли вы использовать iCloud. Кстати, вам не нужно владеть продуктами Apple, чтобы воспользоваться преимуществами хранилища iCloud. Базовый аккаунт дает 5 бесплатных гигабайт. Box - 10 ГБ Однажды Box был так же популярен, как Dropbox, особенно когда предлагал новым пользователям 100 гигабайт бесплатно. Но в какой-то момент Box изменил свою направленность, добавив несколько функций, подходящих для профессиональных отраслей. Но них по-прежнему есть индивидуальный аккаунт, который дает 10 гигабайт хранилища. Яндекс.Диск – 10 ГБ Яндекс.Диск - это облачный сервис, принадлежащий компании Яндекс, позволяющий пользователям хранить пользователям бесплатно 10 гигабайт. Облако Mail.ru – 8 ГБ Облако Mail.ru - облачное хранилище данных компании Mail.ru Group, предоставляющее 8 гигабайт бесплатного места всем пользователям при регистрации. Бесплатное облачное хранилище для разработчиков Эти облачные решения для хранения предназначены для разработчиков, создающих веб-приложения и мобильные приложения. Чтобы получить доступ к этим облачным хранилищам, вам необходимо предоставить кредитную карту, которая может взимать плату за проверку. Эти тарифы не предусматривают жестких ограничений, то есть, если вы внезапно выйдете за пределы бесплатного уровня, с вас будет спишется плата. Поэтому требуется тщательный мониторинг, чтобы избежать больших счетов. Amazon S3 - 5 ГБ Amazon создала дочернюю компанию под названием AWS (Amazon Web Services), и они предлагают более 175 услуг, среди которых S3. В настоящее время AWS является самым популярным провайдером среди технических стартапов. S3, если вам интересно, расшифровывается как Simple Storage Service. Amazon S3 дает бесплатно 5 гигабайт. AWS предлагает более 200 облачных сервисов. Когда вы запускаете облачную службу, вы получаете полную инфраструктуру, специально настроенную для конкретной цели - базу данных, диспетчер очереди сообщений, службу контейнеризации. Из числа облачных провайдеров, представленных на рынке, AWS предлагает самый большой выбор услуг. AWS имеет 66 зон доступности, которые обеспечивают глобальное присутствие и обеспечивают 99,99% доступности в любое время и в любом месте. Зоны доступности гарантируют достаточную избыточность и устойчивость, чтобы противостоять возможным сбоям и поддерживать бесперебойное обслуживание. Google Cloud Storage – 5 ГБ У Google есть Google Drive для обычно потребителя и Google Cloud Storage для разработчиков. В отличие от Google Drive, где вы получаете 15 ГБ бесплатно с Google Cloud Storage, вы получаете только 5 ГБ. Разработка GCP опирается на высокие технологии, такие как ИИ и машинное обучение, анализ данных и другие передовые технологии. GCP предоставляет полную среду для создания AI, ML и других подобных продуктов. Живая миграция выделяет GCP, поскольку другие облачные провайдеры не предлагают такой функции. В GCP вы можете перенести виртуальную машину на другой хост без остановки и перезагрузки. Таким образом, ваша служба будет работать непрерывно, даже если требуются какие-либо обновления. Azure Blob Storage – 5 ГБ Azure - компания облачных сервисов Microsoft. Вы можете быть удивлены, почему он называется Blob Storage. Blob означает большой двоичный объект и представляет собой набор двоичных данных, хранящихся в базе данных как один объект. В Azure вы можете запустить рабочий стол Windows с остальными вашими любимыми продуктами Microsoft - Windows Server, Office и другими. Microsoft Azure очень хорошо подходит для создания масштабируемых и безопасных гибридных облаков. Гибридное облако сочетает в себе функции общедоступного облака и частного облака, легко интегрируя внутреннюю инфраструктуру с общедоступными ресурсами. Object Storage Service (Alibaba Cloud) - 5 ГБ Alibaba – азиатский Amazon, и у Alibaba также есть собственная компания облачных сервисов под названием Alibaba Cloud. Их предложение находится на одном уровне со всеми облачными хранилищами. Но, возможно, в ближайшие годы они станут более известными, поскольку будут продолжать добавлять больше дата-центров по всему миру. Поставщик уделяет большое внимание обслуживанию предприятий и малого и среднего бизнеса в Китае, что делает его предпочтительным выбором для компаний или филиалов, расположенных в Китае и азиатском регионе. Несмотря на то, что список облачных сервисов Alibaba далеко не похож на список сервисов AWS, он быстро пополняется десятками доступных продуктов и не только. Кроме того, Alibaba активно инвестирует в разработку передовых облачных инструментов и платформ, таких как AI, машинное обучение и большие данные.
img
Нормализация базы данных (БД) - это метод проектирования реляционных БД, который помогает правильно структурировать таблицы данных. Процесс направлен на создание системы с четким представлением информации и взаимосвязей, без избыточности и потери данных. В данной статье рассказывается, что такое нормализация базы данных, и объясняются принципы ее работы на практическом примере. Что такое нормализация базы данных? Нормализация базы данных - это метод создания таблиц БД со столбцами и ключами путем разделения (или декомпозиции) таблицы большего размера на небольшие логические единицы. В данном методе учитываются требования, предъявляемые к среде БД. Нормализация - это итеративный процесс. Как правило, нормализация БД выполняется через серию тестов. Каждый последующий шаг разбивает таблицу на более легкую в управлении информацию, чем повышается общая логичность системы и простота работы с ней. Зачем нужна нормализация базы данных? Нормализация позволяет разработчику БД оптимально распределять атрибуты по таблицам. Данная методика избавляет от: атрибутов с несколькими значениями; задвоения или повторяющихся атрибутов; атрибутов, не поддающихся классификации; атрибутов с избыточной информацией; атрибутов, созданных из других признаков. Необязательно выполнять полную нормализацию БД. Однако она гарантирует полноценно функционирующую информационную среду. Этот метод: позволяет создать структуру базы данных, подходящую для общих запросов; сводит к минимуму избыточность данных, что повышает эффективность использования памяти на сервере БД; гарантирует максимальную целостность данных, устраняя аномалий вставки, обновления и удаления. Нормализация базы данных преобразует общую целостность данных в удобную для пользователя среду. Избыточность баз данных и аномалии Когда вы вносите изменения в таблицу избыточностью, вам придется корректировать все повторяющиеся экземпляры данных и связанные с ними объекты. Если этого не сделать, то таблица станет несогласованной, и при внесении изменений возникнут аномалии. Так выглядит таблица без нормализации: Для таблицы характерна избыточность данных, а при изменении этих данных возникают 3 аномалии: Аномалия вставки. При добавлении нового «Сотрудника» (employee) в «Отдел» (sector) Finance, обязательно указывается его «Руководитель» (manager). Иначе вы не сможете вставить данные в таблицу. Аномалия обновления. Когда сотрудник переходит в другой отдел, поле «Руководитель» содержит ошибочные данные. К примеру, Джейкоб (Jacob) перешел в отдел Finance, но его руководителем по-прежнему показывается Адам (Adam). Аномалия удаления. Если Джошуа (Joshua) решит уволиться из компании, то при удалении строки с его записью потеряется информация о том, что отдел Finance вообще существует. Для устранения подобных аномалий используется нормализация базы данных. Основные понятия в нормализации базы данных Простейшие понятия, используемые в нормализации базы данных: ключи - атрибуты столбцов, которые однозначно (уникально) определяют запись в БД; функциональные зависимости - ограничения между двумя взаимосвязанными атрибутами; нормальные формы - этапы для достижения определенного качества БД. Нормальные формы базы данных Нормализация базы данных выполняется с помощью набора правил. Такие правила называются нормальными формами. Основная цель данных правил - помочь разработчику БД в достижении нужного качества реляционной базы. Все уровни нормализации считаются кумулятивными, или накопительными. Прежде чем перейти к следующему этапу, выполняются все требования к текущей форме. Стадии нормализации: Стадия Аномалии избыточности Ненормализованная (нулевая) форма (UNF) Это состояние перед любой нормализацией. В таблице присутствуют избыточные и сложные значения Первая нормальная форма (1NF) Разбиваются повторяющиеся и сложные значения; все экземпляры становятся атомарными Вторая нормальная форма (2NF) Частичные зависимости разделяются на новые таблицы. Все строки функционально зависимы от первичного ключа Третья нормальная форма (3NF) Транзитивные зависимости разбиваются на новые таблицы. Не ключевые атрибуты зависят от первичного ключа Нормальная форма Бойса-Кода (BCNF) Транзитивные и частичные функциональные зависимости для всех потенциальных ключей разбиваются на новые таблицы Четвертая нормальная форма (4NF) Удаляются многозначные зависимости Пятая нормальная форма (5NF) Удаляются JOIN-зависимости (зависимости соединения) База данных считается нормализованной после достижения третьей нормальной формы. Дальнейшие этапы нормализации усложняю структуру БД и могут нарушить функционал системы. Что такое Ключ? Ключ БД (key) - это атрибут или группа признаков, которые однозначно описывают сущность в таблице. В нормализации используются следующие типы ключей: суперключ (Super Key) - набор признаков, которые уникально определяют каждую запись в таблице; потенциальный ключ (Candidate Key) - выбирается из набора суперключей с минимальным количеством полей; первичный ключ (Primary Key) - самый подходящий кандидат из набора потенциальных ключей; служит первичным ключом таблицы; внешний ключ (Foreign Key) - первичный ключ другой таблицы; составной ключ (Composite Key) - уникальный ключ, образованный двумя и более атрибутами, каждый из которых по отдельности не является ключом. Поскольку таблицы разделяются на несколько более простых единиц, именно ключи определяют точку ссылки для объекта БД. Например, в следующей структуре базы данных: Примерами суперключей являются: employeeID; (employeeID, name); email Все суперключи служат уникальным идентификатором каждой строки. К примеру, имя сотрудника и его возраст не считаются уникальными идентификаторами, поскольку несколько людей могут быть тезками и одногодками. Потенциальные ключи выбираются из набора суперключей с минимальным количеством полей. В нашем примере это: employeeID; email Оба параметра содержат минимальное количество полей, поэтому они хорошо подходят на роль потенциальных ключей. Самый логичный выбор для первичного ключа - поле employeeID, поскольку почта сотрудника может измениться. На такой первичный ключ легко ссылаться в другой таблице, для которой он будет считаться внешним ключом. Функциональные зависимости базы данных Функциональная зависимость БД отражает взаимосвязь между двумя атрибутами таблицы. Функциональные зависимости бывают следующих типов: тривиальная функциональная зависимость - зависимость между атрибутом и группой признаков; исходный элемент является частью группы; нетривиальная функциональная зависимость - зависимость между атрибутом и группой признаков; признак не является частью группы; транзитивная зависимость - функциональная зависимость между тремя атрибутами: второй атрибут зависит от первого, а третий - от второго. Благодаря транзитивности, третий атрибут зависит от первого; многозначная зависимость - зависимость, в которой несколько значений зависят от одного атрибута. Функциональные зависимости - это важный этап в нормализации БД. В долгосрочной перспективе такие зависимости помогают оценить общее качество базы данных. Примеры нормализации базы данных. Как нормализовать базу данных? Общие этапы в нормализации базы данных подходят для всех таблиц. Конкретные методы разделения таблицы, а также вариант прохождения или не прохождения через третью нормальную форму (3NF) зависят от примеров использования. Пример ненормализованной базы данных В одном столбце ненормализованной таблицы содержится несколько значений. В худшем случае в ней присутствует избыточная информация. Например: Добавление, обновление и удаление данных - все это сложные задачи. Выполнение любых изменений текущих данных сопряжено с высоким риском потери информации. Шаг 1: Первая нормальная форма (1NF) Для преобразования таблицы в первую нормальную форму значения полей должны быть атомарными. Все сложные сущности таблицы разделяются на новые строки или столбцы. Чтобы не потерять информацию, для каждого сотрудника дублируются значения столбцов managerID, managerName и area. Доработанная таблица соответствует первой нормальной форме. Шаг 2: Вторая нормальная форма (2NF) Во второй нормальной форме каждая строка таблицы должна зависеть от первичного ключа. Чтобы таблица соответствовала критериям этой формы, ее необходимо разделить на 2 части: Manager (managerID, managerName, area) Employee (employeeID, employeeName, managerID, sectorID, sectorName) Итоговая таблица во второй нормальной форме представляет собой 2 таблицы без частичных зависимостей. Шаг 3: третья нормальная форма (3NF) Третья нормальная форма разделяет любые транзитивные функциональные зависимости. В нашем примере транзитивная зависимость есть у таблицы Employee; она разбивается на 2 новых таблицы: Employee (employeeID, employeeName, managerID, sectorID) Sector (sectorID, sectorName) Теперь таблица соответствует третьей нормальной форме с тремя взаимосвязями. Конечная структура выглядит так: Теперь база данных считается нормализованной. Дальнейшая нормализация зависит от ваших конкретных целей. Заключение В статье рассказывалось, как с помощью нормализации БД можно сократить избыточность информации. В долгосрочной перспективе нормализация БД позволяет свести к минимуму потерю данных и улучшить их общую структуру. Если же вы хотите повысить производительность доступа к данным, то воспользуйтесь денормализацией БД. А если вы испытываете трудности с нормализацией базы данных, то рассмотрите возможность перехода на другой тип БД.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59