Similar presentations:
Тестировщик программного обеспечения. Занятие 14. Базы данных и их разновидности, SQL
1.
ТЕСТИРОВЩИК ПРОГРАММНОГООБЕСПЕЧЕНИЯ
КУРС «РУЧНОЕ ТЕСТИРОВАНИЕ»
2.
14. БАЗЫ ДАННЫХ И ИХ РАЗНОВИДНОСТИ,SQL
БД, классификации БД.,
SQL для чего он нужен, основные
операторы, БД в SQL
СУБД и его задачи
3.
БАЗЫ ДАННЫХ И ИХ КЛАССИФИКАЦИИБаза данных (БД) –это совокупность массивов и файлов данных, организованная по определённым
правилам, предусматривающим стандартные принципы описания, хранения и обработки данных
независимо от их вида.
Основные классификации баз данных
Существует огромное количество разновидностей баз данных, отличающихся по различным критериям.
Основные из них:
1.
Классификация по модели данных
Модель данных - это некоторая абстракция, которая, будучи приложима к конкретным данным,
позволяет пользователям и разработчикам трактовать их уже как информацию, то есть сведения,
содержащие не только данные, но и взаимосвязь между ними.
4.
БАЗЫ ДАННЫХ И ИХ КЛАССИФИКАЦИИВиды:
Иерархическая (каждый объект, при таком хранение информации, представляется в виде
определенной сущности, то есть у этой сущности могут быть дочерние элементы, родительские
элементы, а у тех дочерних могут быть еще дочерние элементы, но есть один объект, с которого все
начинается. Получается своеобразное дерево. Примером иерархической базы данных может быть
документ в формате XML или файловая система компьютера).
5.
БАЗЫ ДАННЫХ И ИХ КЛАССИФИКАЦИИОбъектная и объектно-ориентированная (база данных, в которой данные моделируются в виде
объектов, их атрибутов, методов и классов. Объектно-ориентированные базы данных обычно
рекомендованы для тех случаев, когда требуется высокопроизводительная обработка данных,
имеющих сложную структуру.)
Объектно-реляционная (объединяют в себе черты реляционной и объектной моделей. Их
возникновение объясняется тем, что реляционные базы данных хорошо работают со встроенными
типами данных и гораздо хуже - с пользовательскими, нестандартными. Когда появляется новый
важный тип данных, приходится либо включать его поддержку в СУБД, либо заставлять программиста
самостоятельно управлять данными в приложении.)
6.
БАЗЫ ДАННЫХ И ИХ КЛАССИФИКАЦИИРеляционная (или табличная БД содержит перечень объектов одного типа, т.е. объектов с
одинаковым набором свойств. Такую базу удобно представлять в виде двумерной таблицы (или, чаще
всего, нескольких связанных между собой таблиц. Примером такой таблицы может служить БД
"Учащиеся", представляющая собой перечень объектов-учеников, каждый из которых имеет
фамилию, имя, отчество, дату рождения, класс, номер личного дела и др)
Функциональная (используется для решения аналитических задач: финансовое моделирование
и управление производительностью )
7.
БАЗЫ ДАННЫХ И ИХ КЛАССИФИКАЦИИСетевая
(являются
своеобразной
модификацией
иерархических
баз
данных.
Если
Вы
внимательно смотрели на изображение выше, то наверняка обратили внимание, что к каждому
нижнему элементу идет только одна стрелочка от верхнего элемента. То есть у иерархических баз
данных у каждого дочернего элемента может быть только один потомок. Сетевые базы данных
отличаются от иерархических тем, что у дочернего элемента может быть несколько предков, то есть
элементов стоящих выше него. Для большей наглядности и понимания структуры сетевых баз данных
обратите внимание на изображение:
8.
БАЗЫ ДАННЫХ И ИХ КЛАССИФИКАЦИИ2. Классификация по содержимому
Примеры:
Географическая.
Историческая.
Научная.
Мультимедийная.
Клиентская.
9.
БАЗЫ ДАННЫХ И ИХ КЛАССИФИКАЦИИ3. Классификация по степени распределённости:
Централизованная или сосредоточенная (англ. centralized database): БД, которая полностью
поддерживается на одном компьютере.
Распределённая (англ. distributed database): БД, составные части которой размещаются в
различных узлах компьютерной сети в соответствии с каким-либо критерием.
Неоднородная (англ. heterogeneous distributed database): фрагменты распределённой БД в разных
узлах сети поддерживаются средствами более одной СУБД.
Однородная (англ. homogeneous distributed database): фрагменты распределённой БД в разных
узлах сети поддерживаются средствами одной и той же СУБД.
10.
БАЗЫ ДАННЫХ И ИХ КЛАССИФИКАЦИИ3. Классификация по степени распределённости:
Фрагментированная или секционированная (англ. partitioned database): методом распределения
данных является фрагментирование (партиционирование, секционирование), вертикальное или
горизонтальное.
Тиражированная
тиражирование.
(англ.
replicated
database):
методом
распределения
данных
является
11.
БАЗЫ ДАННЫХ И ИХ КЛАССИФИКАЦИИ4. Классификация БД по среде физического хранения:
БД во вторичной памяти (традиционные): средой постоянного хранения является периферийная
энергонезависимая память (вторичная память) - это, как правило, жёсткий диск. В оперативную
память СУБД помещает лишь кэш и данные для текущей обработки.
БД в оперативной памяти (in-memory databases): все данные находятся в оперативной памяти.
БД в третичной памяти (tertiary databases): средой постоянного хранения является отсоединяемое
от сервера устройство массового хранения (третичная память), как правило, на основе магнитных
лент или оптических дисков. Во вторичной памяти сервера хранится лишь каталог данных
третичной памяти, файловый кэш и данные для текущей обработки; загрузка же самих данных
требует специальной процедуры.
12.
SQLSQL — это структурированный язык запросов, созданный для того, чтобы получать из базы
данных необходимую информацию. Если описать схему работы SQL простыми словами, то
специалист формирует запрос и направляет его в базу. Та в свою очередь обрабатывает эту
информацию, «понимает», что именно нужно специалисту, и отправляет ответ.
13.
ФУНКЦИИ SQLФункции языка SQL:
Организация данных – создание и изменение структуры баз данных.
Чтение данных.
Обработка данных – удаление, добавление и корректировка данных.
Управление доступа к данным – предоставление привилегий (ограничение возможностей)
пользователю для чтения и изменения данных.
Совместное использование данных - координация общего пользования данных многими
пользователями.
Целостность данных – защита данных от разрушения при сбое системы или других
обстоятельствах.
Данные хранятся в виде таблиц, они структурированы и разложены по строкам и столбцам, чтобы ими
легче было оперировать. Такой способ хранения информации называют реляционными БД.
14.
ДЛЯ ЧЕГО НУЖЕН SQLSQL — это не язык программирования, поэтому написать приложение или сайт с его помощью не
получится, но при этом внутренняя работа сайта (backend) невозможна без запросов. Поиск
информации в Google — это тоже модель использования SQL. Пользователь задает параметры,
которые его интересуют, и отправляет запрос на сервер; затем происходит магия и в поисковой выдаче
появляются результаты, соответствующие именно этому запросу.
SQL используют разные виды специалистов:
Аналитики и продуктовые маркетологи. Знание SQL помогает этим специалистам не зависеть от
программистов, а самостоятельно получать и обрабатывать данные.
Разработчики и тестировщики. С помощью SQL они могут самостоятельно проектировать базы
для быстрой и надежной работы с данными, улучшать с их помощью сайты и приложения.
Руководители и менеджеры. SQL позволит специалистам на руководящих постах контролировать
работу компании и в реальном времени получать данные о положении дел.
15.
SQLКак работают запросы
Чтобы разобраться, как именно работает магия запроса, давайте представим его путь от пользователя до
нужных ему данных:
Пользователь → Клиент → Запрос → Система управления → База данных → Таблица с базами
данных
Клиент — способ введения запроса. В случае с Google, например, клиентом будет поисковая строка
браузера, в которую пользователь вводит сформулированный запрос.
Система управления базами данных (СУБД). Эта система помогает таблицам понять, чего хочет
пользователь, а пользователю — что ему отвечают таблицы.
База данных — система хранения таблиц, в которой они связаны между собой. База данных сама по себе
не умеет манипулировать информацией — это просто хранилище, где у каждого объекта есть свое место.
16.
ЧТО ТАКОЕ БАЗА ДАННЫХ В SQLSQL-запросы обращаются к данным в виде таблиц, то есть к реляционным базам данных. Упрощенный
вариант такой базы — это таблицы Excel, в которых информация также упорядочена в столбцы и
строки.
Продемонстрируем типичную таблицу из базы данных. Пускай эта таблица будет называться
"Пользователи":
17.
ЧТО ТАКОЕ БАЗА ДАННЫХ В SQLОсновные понятия реляционной модели:
1. Отношение — это сама таблица, она двумерная и состоит из столбцов и строк.
2. Атрибут — столбец в таблице, который содержит один конкретный параметр: название, тип, дату,
стоимость или другую характеристику.
18.
ЧТО ТАКОЕ БАЗА ДАННЫХ В SQL3. Домен — это допустимые значения для каждого атрибута. Например, в столбце «Имя» или
«Название» значения должны представлять собой набор буквенных символов, но они не могут
начинаться с «ь» или «ъ» и не могут быть записаны числами.
4. Кортеж (строка или запись) — это табличная строка с порядковым номером, в которой содержится
информация об одном конкретном объекте.
19.
ЧТО ТАКОЕ БАЗА ДАННЫХ В SQL5. Значение — элемент таблицы, который находится на пересечении столбцов и строк.
6. Ключ — это самый важный столбец в таблице, за счет этих значений и происходит взаимодействие в
реляционной базе данных, он связывает таблицы между собой.
Ключи бывают нескольких видов:
Первичный ключ — идентификатор, такой как индекс или артикул.
Потенциальный ключ — другое уникальное значение, которое может служить идентификатором.
Внешний ключ — столбец-ссылка, используется для объединения двух таблиц, каждое значение
внешнего ключа обязательно соответствует первичному ключу в другой таблице.
20.
ЧТО ТАКОЕ БАЗА ДАННЫХ В SQL21.
SQL-ОПЕРАТОРЫРаботать с данными помогают операторы — определенные слова или символы, которые
используются для выполнения конкретной операции — например, для выбора из множества по
конкретному параметру.
Операторы в SQL делятся на несколько групп в
соответствии с задачами, которые они решают.
22.
SQL-ОПЕРАТОРЫ23.
СУБД И ЕГО ЗАДАЧИСУБД - система управления базами данных, совокупность программных и лингвистических средств
общего или специального назначения, обеспечивающих управление созданием и использованием баз
данных
Сами по себе таблицы или база данных не способны выполнять операции, а в СУБД можно создавать
новые таблицы, удалять ненужные данные, настраивать ключи и обрабатывать запросы. Основные
задачи СУБД:
поддержка языков баз данных;
непосредственное управление данными;
управление буферами оперативной памяти;
управление транзакциями;
резервное копирование и восстановление после сбоев.
24.
СУБДСУБД могут быть коммерческими или иметь открытый код. Системы управления с открытым кодом
можно бесплатно использовать в проектах, а также дополнять их документацию и совершенствовать
процесс работы с системой. Коммерческие СУБД имеют платный доступ к полным версиям — как
правило, такие используют крупные корпорации.
25.
СПАСИБО ЗА ВНИМАНИЕ26.
ТЕСТИРОВЩИК ПРОГРАММНОГООБЕСПЕЧЕНИЯ
КУРС «РУЧНОЕ ТЕСТИРОВАНИЕ»
27.
13. ПРАКТИЧЕСКОЕ ЗАНЯТИЕБазовые запросы в SQL,
создание базы данных и
таблиц
28.
КАК НАЧАТЬ РАБОТУ С SQLДля начала работы с SQL достаточно разбираться в основах Excel, чтобы понимать принцип работы
запросов, а также иметь базовый уровень английского на уровне A1-A2. Эти навыки необходимы, чтобы
понимать синтаксис SQL:
SELECT — выбери данные
FROM — вот отсюда
JOIN — добавь еще эти таблицы
WHERE — при таком условии
GROUP BY — сгруппируй данные по этому признаку
ORDER BY — отсортируй данные по этому признаку
LIMIT — нужно такое количество результатов
; — конец предложения