Реализация базы данных для лаборатории микроскопии | Статья в журнале «Молодой ученый»

Автор:

Рубрика: Информатика

Опубликовано в Молодой учёный №11 (197) март 2018 г.

Дата публикации: 17.03.2018

Статья просмотрена: 27 раз

Библиографическое описание:

Исаенков Е. Е. Реализация базы данных для лаборатории микроскопии // Молодой ученый. — 2018. — №11. — С. 44-49. — URL https://moluch.ru/archive/197/48787/ (дата обращения: 15.12.2018).



В статье приведён пример создания и проектирования базы данных для лаборатории микроскопии. Для дальнейшего облегчения анализа и обработки данных полученных входе исследований и опытов.

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

Вместе с тем росла сложность и информативность научного эксперимента. Экспериментальные установки становятся все сложнее, как в плане управления экспериментом, так и в области обработки и получения конечных данных. С применением компьютеров в этой области возрос и объем получаемых экспериментальных результатов. Теперь наряду с традиционными это могут быть большие объемы данных таких как: фото, аудио и видеоданные в цифровом виде. Но улучшение условий эксперимента и экспериментального оборудования выдвигает свои требования — теперь уже недостаточно интерпретировать какое-то явление, свойство, опираясь лишь на исследование одним методом, на одной установке. Если учесть, что экспериментальные лаборатории могу быть разнесены по разным зданиям, городам, и даже странам, то возникает необходимость аккумулировать все результаты научных исследований в одной базе для их дальнейшего, более плодотворного, анализа. Очевидно, что использовать для этого нужно простые, проверенные и наиболее используемые интерфейсы. К таковым, например, можно отнести Web-интерфейс [2].

Целью данной работы является создание базы данных реляционного типа с использованием СУБД, которая управлялась через Web-интерфейс и могла быть доступна различным пользователям как в плане удаленности, так и с учетом политики безопасности.

1. Анализ предметной области

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

В соответствии с предметной областью система строится с учетом следующих особенностей [3]:

1) Каждый исследуемый объект в лаборатории имеет уникальный номер и название;

2) Каждый сотрудник имеет свой уникальный номер;

3) Каждое свойство объекта имеет уникальный номер и свое название;

4) Наличие списка приборов для проведения опыта

Выделим следующие базовые сущности нашей области:

  1. Изучаемый объект (object)
  2. Модификации Объекта (group_object)
  3. Наименования свойств ихарактеристик объектов (characteristic)
  4. Свойства ихарактеристики объектов (sub_characteristic)
  5. Роли пользователей (name_of_role)
  6. Пользователи (users)
  7. Время изменения характеристик уобъекта (time_change_object)
  8. Значения характеристик (value)

2. Анализ информационных задач и круга пользовательской системы

Можно выделить 3 основные роли, у каждой из которой есть свои возможности работы с системой:

Администратор

Пользователь с наивысшим доступом, «Администратор», имеет возможность полного доступа ко всем функциям: добавления, чтения, изменения, удаления. А также отслеживания, кем была добавлена или изменена запись в базе данных.

Пользователь

Данный вид пользователя имеет доступ к функциям добавления данных, и их изменения.

Гость

Пользователь с наименьшими правами. «Гость» имеет возможность просмотра данных, а также её копирования.

C:\Users\Admin\AppData\Local\Microsoft\Windows\INetCache\Content.Word\Таблица ролей .jpg

Рис. 1. Диаграмма вариантов использования

Функциональные возможности:

1) Ведение БД (запись, чтение, удаление, модификация);

2) Обеспечение логической непротиворечивости БД;

3) Реализация наиболее часто встречающихся запросов и представлений для пользователей в готовом виде;

4) Реализация хранимых процедур и триггеров для поддержания сложных ограничений целостности в БД.

3. Выработка требований и ограничений

Основные ограничения целостности:

1) Значения всех числовых атрибутов не должны быть отрицательными и ограничены значениями из соображений логики функций, которые она выполняют [4].

– Коды, являющиеся первичными ключами для каждой сущности, имеют ограничения от 0001 до 9999 или от 200000 до 2000000000.

– Дата внесения данных выставляется автоматически.

2) Символьные атрибуты должны выполнять все требования для функции, которую они выполняют

– Названия имеют 1–50 символов кириллицы, латиницы, пробел, запятая, дефис.

В ходе проектирования, сформировалась следующее представление об БД, которое наглядно представлено на рисунке 2.

Рис. 2. Схема БД

К атрибутам каждой сущности относятся:

  1. object: id, name_object, id_user, time_add_object, time_change_object, name_of_device, id_characteristic_N
  2. device: id, name_of_device, description_of_device
  3. characteristic: id, name_characteristic, description
  4. sub-characteristic: id, id_characteristic, name_sub-property, description_sub-property.
  5. name_of_role: id, name_of_role
  6. users: id, login, password, first_name, last_name, patronymic, e-mail, phone, foto, id_role_of_user
  7. time_change_object: id, id_object, time_change_object, id_user_change_object.
  8. value: id, id_object, id_sub_characteristic, value

Сущность “object” служит для идентификации исходного изучаемого объекта в лаборатории и содержит идентификационный номер пользователя, который создал запись об объекте, время создания записи и название прибора на котором был проведён опыт. Во время исследования объекта, присваиваются наличие тех или иных свойств. При отсутствии наличия определённого свойства у объекта, в таблицу записывается параметр Null. Подробные параметры приведены в таблице 1.

Таблица 1

Сущность «object»

Атрибут

Тип

Null

Unique

Назначение

id

int

Not Null

да

Первичный ключ: код объекта

name_object

varchar

Not Null

да

Наименование объекта

id_user

int

Not Null

нет

Внешний ключ: код пользователя

time_add_object

date

Not Null

нет

Время внесения новых данных

id_time_change_object

int

Null

нет

Внешний ключ: Время последнего изменения

id_device

varchar

Null

нет

Внешний ключ: код прибора

id_characteristic_1

int

Null

нет

Внешний ключ: код свойства объекта. В ходе эксплуатации системы, столбцы будут пополнятся новыми свойствами

………….

id_characteristic_N

При исследовании объекта необходимо знать на каком приборе проходили опты. Для этого создана сущность “device”. В ней хранятся такие данные как: идентификационный номер, название прибора и подробное описание данного прибора. Подробные параметры приведены в таблице 2.

Таблица 2

Сущность characteristic

Атрибут

Тип

Null

Unique

Назначение

id

int

Not Null

да

Первичный ключ: код прибора

name_of_device

varchar

Not Null

да

Наименование прибора

description_of_charecteristic

varchar

Null

нет

Описание прибора

Каждое свойство имеет своё уникальное наименование, а также подробное описание этого свойства. Описанные данные хранятся в сущности под названием “characteristic”. Подробные параметры приведены в таблице 2.

Таблица 3

Сущность characteristic

Атрибут

Тип

Null

Unique

Назначение

id

int

Not Null

да

Первичный ключ: код характеристики

name_of_characteristic

varchar

Not Null

да

Наименование свойства

description_of_charecteristic

varchar

Null

нет

Описание свойства

Каждое свойство может иметь подсвойства, каждое из которых имеет своё название, подробное описание и итоговое значение после проведённого опыта. Подробные параметры приведены в таблице 2.

Таблица 4

Сущность “ sub_characteristic”

Атрибут

Тип

Null

Unique

Назначение

id

int

Not Null

да

Первичный ключ: код подсвойства

id_characteristic

varchar

Not Null

нет

Внешний ключ: код свойства

name_sub_characteristic

varchar

Not Null

нет

Наименование подсвойства

description_sub_characteristic

varchar

Not Null

нет

Описание подсвойства

Для разграничения прав пользователей в системе имеется сущность с наименованиями привилегий пользователей: администратор, сотрудник. Подробные параметры приведены в таблице 4 ниже.

Таблица 5

Сущность “name_of_role

Атрибут

Тип

Null

Unique

Назначение

id

int

Not null

да

Первичный ключ: код типа пользователя (роли)

name_of_role_user

varchar

Not null

нет

Наименование привилегий

Cущность “users” хранит данные об авторизированных пользователях в системе. Подробные параметры приведены в таблице 5 ниже.

Таблица 6

Сущность “users”

Атрибут

Тип

Null

Unique

Назначение

id

int

Not Null

да

Первичный ключ: код пользователя

login

varchar

Not Null

да

Логин пользователя

password

varchar

Not Null

нет

Пароль пользователя, хранимый в виде хэш-значения MD5

first_name

varchar

Not Null

нет

Имя пользователя

last_name

varchar

Not Null

нет

Фамилия пользователя

patronymic

varchar

Null

нет

Отчество пользователя

e-mail

varchar

Not Null

да

Электронная почта, необходимая для верификации аккаунта пользователя и восстановления пароля

mobile_

phone

varchar

Null

нет

Контактный телефон

foto

varchar

Null

нет

Фотография пользователя

id_role_of_user

int

Not Null

нет

Категория пользователя

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

Таблица 7

Сущность “time_change_object”

Атрибут

Тип

Null

Unique

Назначение

id

int

Not Null

да

Первичный ключ

id_object

int

Not Null

нет

Внешний ключ: код объекта

time_change_object

date

Not Null

нет

время внесения изменения

id_user_change_object

int

Not Null

нет

Внешний ключ: код пользователя производивший изменение

В ходе прохождения исследования и опыта над объектом, свойства и подсвойства приобретают некие значения. Значения могут выражаться как: числовыми параметрами, так и обычным текстом, например: да, нет. Подробные параметры приведены в таблице 8 ниже.

Таблица 8

Сущность “value”

Атрибут

Тип

Null

Unique

Назначение

id

int

Not Null

да

Первичный ключ

id_object

int

Null

нет

Внешний ключ: код объекта

id_characteristic

int

Null

нет

Внешний ключ: код свойства

id_sub_characteristic

int

Null

нет

Внешний ключ: под характеристики к которому относится значение

value

varchar

Null

нет

Значение свойств и подсвойств

Программная реализация проекта базы данных выполнена с помощью операторов языка SQL: USE, CRETE, READ, UPDATE, DROP, INSERT [4].

4. Заключение

В ходе проведённой работы достигнута основная цель: создана база данных реляционного типа. Для дальнейшей реализации web-интерфейса не исключено использование следующих инструментов: HTML, CSS, Bootstrap, JavaScript, JQuery, Yii2, PHP, MySQL [3].

Для установки последующей системы вполне подойдут следующие компоненты:

  1. MySQL Server
  2. Операционная система Windows
  3. Права администратора на компьютере

В качестве сервера для отладки интерфейса и скриптов подойдёт программа OpenServer. Данный выбор обусловлен тем, что в программу уже встроены программные обеспечения такие как: MySQL, PHP, Apache, phpMyAdmin и другие. Так же существенным плюсом Open Server, является его свободное распространение.

Литература:

  1. Глухов Е. В., Должиков С. В., Ковисарова Е. В., Смелик В. В., Соппа И. В., Фролов А. М., Хузиятов Т. Д. Конспект лекций для подготовки к междисциплинарному экзамену «прикладная информатика (в экономике)". Учебное пособие/; под ред. Б. Л. Резника; Дальневосточный федеральный ун-т, Шк. естественных наук, Шк. экономики и менеджмента. Владивосток, 2012, 312 с.
  2. Купер А., Рейман Р., Кронин Д. Алан Купер об интерфейсе. Основы проектирования взаимодействия. — Пер. с англ. — СПб.: Символ'Плюс, 2009. — 688 с
  3. Виктор Гольцман. MySQL 5.0. Библиотека программиста: -Санкт-Петербург, 2010, 370 с.
  4. П. В. Бураков, В. Ю. Петров Введение в системы баз данных. /Учебное пособие., Санкт-Петербург 2010, 129 с.
  5. Дейт Дж. Кристофер Введение в системы баз данных. — М.: дом «Вильяме», 2005. — 8-е издание. 1315 с.
  6. Шакин В. Н. Методические указания по дисциплине «Теоретические основы построения БД» / Шакин В. Н., Сосновиков Г. К., Юскова И. Б. — М.: МТУСИ, Кафедра вычислительной математики и программирования, 2005, 37 с.
Основные термины (генерируются автоматически): внешний ключ, нет, первичный ключ, таблица, свойство, PHP, атрибут, код свойства, код пользователя, уникальный номер.


Похожие статьи

Разработка базы данных для отдела кадров в программе...

Ключевые слова: база данных, сущность, атрибут,отдел кадров, первичный ключ, внешний ключ.

Сущности, содержат различные атрибуты. Атрибут (рис.2)– свойство сущности (заголовок столбца таблицы).

Использование функциональных зависимостей и нормализации...

К этим свойствам относятся следующие: правило рефлексивности, правило дополнения, правило транзитивности, правило

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

Прозрачное шифрование данных (TDE) | Статья в журнале...

Ключ шифрования — уникальный для каждой таблицы.

Первичный ключ шифрования сохраняется вне базы данных в «тубусе для ключей» Oracle Wallet (файл формата PKCS#12), который зашифрован с помощью

Данные зашифрованы только на диске, а в памяти — нет.

Метод «сущность-связь» для проектирования системы...

Каждый атрибут имеет уникальное для одной сущности имя.

Определение связи от прежней сущности к новой (первичный ключ прежней сущности становится внешним ключом для новой).

MapReduce и метод доступа к хранилищу MRIJ on RCFile

Читается столбец первого внешнего ключа таблицы фактов, участвующего в запросе, и

где «позиция» — это номер строки таблицы фактов (нумерация сквозная по всем строкам

расстояние редактирования, атрибут, первичный ключ сопоставления, реляционная база...

Разработка базы данных для автоматизированной...

Первичный ключ: код типа пользователя (роли).

Значение первичного ключа в таблице БД должно быть уникальным, т. е. в таблице не допускается наличие двух и более записей с одинаковыми значениями первичного ключа.

Модели данных для реализации поиска и прав доступа к документам

Различают первичные ключи и внешние: первичный ключ (primary key) — это атрибут или группа атрибутов, однозначно идентифицирующие экземпляр сущности, атрибуты...

Ключ шифрования — уникальный для каждой таблицы.

QR-коды, их свойства и применение | Статья в журнале...

QR-коды, их свойства и применение. Автор: Ковалёв Александр Игоревич.

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

Применение трёхзначной логики и отсутствующая информации в БД

То есть, если, к примеру, первичный ключ имеет три значения («1», «2» и «3»), то значение внешнего ключа не может, например, равняться...

Рис. 1. Таблица истинности для четырех логических операций трехзначной логики. Стоит оговориться, что Null-значение и результат.

Обсуждение

Социальные комментарии Cackle

Похожие статьи

Разработка базы данных для отдела кадров в программе...

Ключевые слова: база данных, сущность, атрибут,отдел кадров, первичный ключ, внешний ключ.

Сущности, содержат различные атрибуты. Атрибут (рис.2)– свойство сущности (заголовок столбца таблицы).

Использование функциональных зависимостей и нормализации...

К этим свойствам относятся следующие: правило рефлексивности, правило дополнения, правило транзитивности, правило

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

Прозрачное шифрование данных (TDE) | Статья в журнале...

Ключ шифрования — уникальный для каждой таблицы.

Первичный ключ шифрования сохраняется вне базы данных в «тубусе для ключей» Oracle Wallet (файл формата PKCS#12), который зашифрован с помощью

Данные зашифрованы только на диске, а в памяти — нет.

Метод «сущность-связь» для проектирования системы...

Каждый атрибут имеет уникальное для одной сущности имя.

Определение связи от прежней сущности к новой (первичный ключ прежней сущности становится внешним ключом для новой).

MapReduce и метод доступа к хранилищу MRIJ on RCFile

Читается столбец первого внешнего ключа таблицы фактов, участвующего в запросе, и

где «позиция» — это номер строки таблицы фактов (нумерация сквозная по всем строкам

расстояние редактирования, атрибут, первичный ключ сопоставления, реляционная база...

Разработка базы данных для автоматизированной...

Первичный ключ: код типа пользователя (роли).

Значение первичного ключа в таблице БД должно быть уникальным, т. е. в таблице не допускается наличие двух и более записей с одинаковыми значениями первичного ключа.

Модели данных для реализации поиска и прав доступа к документам

Различают первичные ключи и внешние: первичный ключ (primary key) — это атрибут или группа атрибутов, однозначно идентифицирующие экземпляр сущности, атрибуты...

Ключ шифрования — уникальный для каждой таблицы.

QR-коды, их свойства и применение | Статья в журнале...

QR-коды, их свойства и применение. Автор: Ковалёв Александр Игоревич.

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

Применение трёхзначной логики и отсутствующая информации в БД

То есть, если, к примеру, первичный ключ имеет три значения («1», «2» и «3»), то значение внешнего ключа не может, например, равняться...

Рис. 1. Таблица истинности для четырех логических операций трехзначной логики. Стоит оговориться, что Null-значение и результат.

Задать вопрос