Выбираем базу данных
Выбираем базу данных
Опытный ли вы инженер-программист или студент, пишущий университетский проект, в какой-то момент вам нужно будет выбрать базу данных для ваших целей.
Если вы ранее уже использовали какую-то БД, вы можете просто сказать: “Я выберу эту базу, потому что знаком с ней”. Это вполне подходящее решение, когда производительность не критична для вашего проекта. В противном случае выбор неподходящей базы станет препятствием при расширении проекта. Исправить ошибку может быть довольно сложно. Даже если вы работаете в зрелом проекте, который использует конкретную БД, важно знать ее ограничения и понимать, когда стоит добавить базу другого типа к вашему стеку. Комбинирование нескольких баз данных довольно распространено.
Еще одна причина разобраться с базами данных и их свойствами: вопросы о БД очень распространены на собеседованиях. Когда вам будет нужна короткая шпаргалка, прокрутите в конец поста.
Реляционные базы данных
Эти базы состоят из связанных между собой таблиц. Каждая строка таблицы представляет собой запись. Почему такие базы называются реляционными? Потому, что они строятся на отношениях между объектами, описанными в БД.
Допустим, у вас есть таблица с информацией о студентах и таблица оценок курса (курс, оценка, идентификатор студента). Каждая строка с оценкой соотносится с записью о студенте. На диаграмме ниже значение в столбце Student ID указывает на строки в таблице Students по их значению в столбце ID .
Все данные из реляционных баз данных запрашиваются с помощью SQL-подобных языков, имеющих встроенную поддержку операции объединения. Реляционные базы позволяют индексировать столбцы для быстрых запросов. Из-за своей структурированной природы, схема реляционных баз данных определяется до ввода данных. Примеры таких баз:
- MySQL.
- PostgreSQL.
- Oracle.
- MS SQL Server.
NoSQL базы данных
В реляционных базах данных все структурировано по колонкам и столбцам. В свою очередь, в нереляционных базах нет общей структурированной схемы для записей. Большая часть NoSQL баз содержит JSON записи. Разные записи могут содержать разные поля.
Это семейство БД называется NoSQL (Not only SQL — не только SQL), так как многие NoSQL базы данных поддерживают SQL, но это не самый лучший вариант их использования. Cуществует 4 типа баз данных NoSQL.
Документные
Атомарной (неделимой) единицей таких БД является документ. Каждый документ — JSON, схема может различаться в разных документах и содержать разные поля. Документные БД позволяют индексировать некоторые поля документа для ускорения запросов на основе этих полей. Следовательно, во всех документах есть поля.
Использование
Поскольку различные записи независимы друг от друга (логически и структурно), эти базы данных поддерживают параллельные вычисления, что позволяет легко анализировать большой объём данных. Примеры:
- MongoDB
- CouchDB
- DocumentDB
Колоночные
Атомарная единица таких БД — колонка таблицы. Данные сохраняются столбец за столбцом, что делает колоночные запросы очень эффективными, и, поскольку данные в каждой колонке однородны, это позволяет лучше сжимать данные.
Использование
В тех случаях, когда удобно делать запросы к подмножеству столбцов (оно не обязательно должно быть одинаковым каждый раз!). Колоночные БД обрабатывают такие запросы очень быстро, так как читают только конкретные колонки (в то время как строчные БД должны читать строки полностью).
В науке о данных часто бывает, что каждая колонка представляет определенную характеристику. Как специалист по данным я часто тренирую свои модели на подмножествах характеристик и проверяю отношения между ними и оценками (корреляция, дисперсия, значимость). То же подходит и для логов— в них зачастую множество полей, но при каждом запросе используются только некоторые. Например:
- Cassandra.
Ключ-значение
В этих БД запросы только на основе ключа — вы запрашиваете ключ и получаете его значение.
Такие БД не поддерживают запросы между различными значениями записей, вроде такого: выбрать все записи, где город — Нью-Йорк.
Полезное свойство этих БД — поле времени жизни (Time-to-Live, TTL), в котором можно задать отдельно для каждой записи и состояния, когда их нужно удалить из БД.
Достоинства
Это очень быстрые БД. Во-первых, потому что используют уникальные ключи, во-вторых, потому что большинство БД типа ключ-значение хранят данные в оперативной памяти, что обеспечивает быстрый доступ к данным.
Недостатки
Необходимо определять уникальные ключи, хорошие идентификаторы, основанные на заранее известных вам данных. Зачастую они дороже, чем другие типы баз данных, так как используют оперативную память.
Использование
В основном используются для кэширования, потому что быстрые и не требуют сложных запросов. Поле времени жизни для кэширования также очень полезно. Такие БД могут использоваться для любых данных, которые требуют быстрых запросов и соответствуют формату ключ-значение. Примеры таких баз:
- Redis
- Memcached
Графовые
Содержат узлы, отображающие объекты, а также ребра, отображающие отношения между ними.
Использование
Созданы для работы с графовыми данными, такими как сети знаний или социальные сети. Примеры баз:
- Neo4j
- InfiniteGraph
Реляционные или документные?
Как вы уже догадались, универсального решения нет. Самые распространенные БД для регулярного использования — реляционные и документные. Давайте сравним их.
Разработка базы данных Магазин компьютерной техники и оборудования средствами Microsoft Acces
Целью данной курсовой работы является разработка базы данных «Магазин компьютерной техники и оборудования» средствами Microsoft Access.
Задачи курсовой работы:
Исследовать предметную область;
Спроектировать базу данных;
Создать формы для работы с базой;
Организовать пользовательское меню;
Данная программа должна иметь простой и удобный пользовательский интерфейс;
Данная программа должна иметь малую ресурсоемкость.
В разрабатываемом курсовом проекте должна иметься возможность добавления нового товара, сотрудника, клиента в базу данных, редактирование данных. Также должны быть предусмотрены функции поиска данных по товарам. Необходимо сформулировать требования к разрабатываемой информационной системе, которые позволят автоматизировать работу компьютерного магазина.
Информационная система должна выполнять следующие функции:
Формирование отчета по наличию товаров;
Формирование отчета по поставщикам.
В данной работе в качестве предметной области рассматривается компьютерный магазин. Наша база данных решает следующие задачи: учёт товара, выдача данных о поставщиках и поставляемых ими товарах (фирма — поставщик, его реквизиты, наименование товаров, характеристики, цены), вычисляет суммы оплаты.
В режиме формы вычисляет стоимость товара с наценкой магазина в 50%. Реализует запросы упорядочения по полям: товары, поставщики, цена. Осуществляет поиск сведений о фирме — поставщике какого — то товара. Производит подсчет стоимости и количества оставшегося в магазине товара, а также выдает отчет об отсутствующих товарах.
Исходные данные о магазине: магазин располагается в нескольких помещениях (склад, торговый зал). У фирмы есть поставщики, осуществляющие поставку компьютеров и комплектующих на склад магазина.
Так же в магазине есть свой штат сотрудников: менеджеры и консультанты, осуществляющие продажу товара, бухгалтер, кладовщики, грузчики — водители.
Клиент, приходя в магазин, взаимодействует с менеджером, который, в свою очередь, осуществляет продажу компьютеров или комплектующих. Операции с денежными средствами и отбивку чека осуществляет так же менеджер. При покупке товара, клиент получает чек с указанием товара и его стоимости, на основании которого со склада ему отгружают необходимый товар.
При отсутствии товара на складе работник магазина выбирает отсутствующие товары и на основании этих данных составляет заявку на имя фирмы — поставщика.
Выбор технологии реализации проекта
В настоящее время среди разработчиков баз данных большой популярностью пользуется реляционная СУБД ACCESS, входящая в состав пакета Microsoft Office 2003. Дружественный интерфейс и простота настройки, эффективные средства создания таблиц, форм, запросов, интеграция с другими приложениями пакета, средства организации работы с базами данных и защита информации — вот далеко не полный перечень достоинств этого приложения.
Основные функции СУБД – это описание структуры базы данных, обработка данных и управление данными.
База данных – это совокупность сведений о реальных объектах, процессах, событиях или явлениях, относящихся к определённой теме или задаче, организованная таким образом, чтобы обеспечить удобное представление этой совокупности, как в целом, так и любой её части. Реляционная база данных представляет собой множество взаимосвязанных таблиц, каждая из которых содержит информацию об объектах определённого типа. Каждая строка таблицы содержит данные об одном объекте (например, клиенте, товаре, документе), а столбцы таблицы содержат различные характеристики этих объектов – атрибуты (например, наименования и адреса клиентов, марки и цены товара). Строки таблицы называются записями, все записи имеют одинаковую структуру – они состоят из полей, в которых хранятся атрибуты объекта. Каждое поле в записи содержит одну характеристику объекта и имеет строго определённый тип данных (например, текстовая строка, число, дата). Все записи имеют одни и те же поля, только в них содержатся разные значения атрибутов.
Любая СУБД позволяет выполнять четыре простейшие операции с данными:
— добавить в таблицу одну или несколько записей;
удалить из таблицы одну или несколько записей;
обновить значения некоторых полей в одной или нескольких записях;
найти одну или несколько записей, удовлетворяющих заданному условию.
Для выполнения этих операций используется механизм запросов. Результатом выполнения запросов является либо отобранное по определённым критериям множество записей, либо изменение в таблицах.
Для написания программы была выбрана также выбрана реляционная СУБД ACCESS, являющаяся одной из самых распространенных средств создания приложений баз данных для корпоративных применений. Программы такого типа в настоящее время признаны в качестве стандарта, поскольку наиболее широко распространены, удобны для пользователей и не требуют долгого их обучения. Предпочтение было отдано системе СУБД ACCESS благодаря тому, что она позволяет программисту очень быстро, достаточно легко и удобно разрабатывать пользовательский интерфейс.
При проектировке БД использовалось одно из современных CASE-средств — ERwin.
Опишем необходимые блоки разрабатываемой системы:
Блок управления справочными данными . В данном блоке необходима возможность добавлять, редактировать и удалять справочные данные информационной системы.
Блок ввода исходной информации для анализа. Позволяет, используя справочные данные управлять системой ввода начальных данных. Кроме того, контролирует правильность их введения и начальную группировку данных.
Блок анализа. Основной блок программы. Непосредственно осуществляет анализ данных и формирование промежуточных рекомендаций и данных для отчетов.
Блок отчетности. Осуществляет группировку и сортировку данных для отчета и непосредственно формирование аналитических отчетов и вывод их на печать.
Так как программа выполнена на СУБД Access, то и технические требования будут соответствующие:
Частота процессора 2,00 GHz
Оперативной памяти 2,00 Gb RAM
Видео память 256 MB
Операционная система Windows Vista тм Home Premium.
Таким образом, мы сформировали все необходимые требования и условия для оптимальной работы нашей программы.
Проектирование базы данных
Удачная разработка базы данных обеспечивает простоту ее поддержания. Данные следует сохранять в таблицах, причем каждая таблица должна содержать информацию одного типа, например, сведения о поставщиках. Тогда достаточно будет обновить конкретные данные, такие как адрес, только в одном месте, чтобы обновленная информация отображалась во всей базе данных.
Одним из наиболее сложных этапов в процессе проектирования базы данных является разработка таблиц, так как результаты, которые должна выдавать база данных (отчеты, выходные формы и др.) не всегда дают полное представление о структуре таблицы.
При проектировании таблиц лучше разработать структуру на бумаге и только затем начинать работу с СУБД Access. При проектировке таблиц, рекомендуется руководствоваться следующими основными принципами:
— Не должно быть повторений и между таблицами.
Когда определенная информация храниться только в одной таблице, то и изменять ее придется только в одном месте. Это делает работу более эффективной, а также исключает возможность несовпадения информации в разных таблицах. Например, в одной таблице должны содержаться адреса и фамилии клиентов.
— Каждая таблица должна содержать информацию только на одну тему. Сведения на каждую тему обрабатываются намного легче, если содержаться они в независимых друг от друга таблицах. Например, адреса и заказы клиентов хранятся в разных таблицах, с тем, чтобы при удалении заказа информация о клиенте осталась в базе данных.
Каждая таблица содержит информацию на отдельную тему, а каждое поле в таблице содержит отдельные сведения по теме таблицы. Например, в таблице с данными о поставщиках могут содержаться поля с названием компании, адресом и номером телефона. При разработке полей для каждой таблицы необходимо помнить:
— Каждое поле должно быть связано с темой таблицы.
— Не рекомендуется включать в таблицу данные, которые являются результатом выражения.
— В таблице должна присутствовать вся необходимая информация.
— Информацию следует разбивать на наименьшие логические единицы (Например, поля «Имя» и «Фамилия», а не общее поле «Имя»).
Первым этапом и самым главным этапом в процессе проектирования и создания базы данных, является разработка инфологической модели.
Цель инфологического моделирования – обеспечение наиболее естественных для человека способов сбора и представления той информации, которую предполагается хранить в создаваемой базе данных. Основными конструктивными элементами инфологических моделей являются сущности, связи между ними и их свойства (атрибуты).
Сущность – любой различимый объект (объект, который мы можем отличить от другого), информацию о котором необходимо хранить в базе данных. Сущностями могут быть люди, места, самолеты, рейсы, вкус, цвет и т.д. Необходимо различать такие понятия, как тип сущности и экземпляр сущности . Понятие тип сущности относится к набору однородных личностей, предметов, событий или идей, выступающих как целое. Экземпляр сущности относится к конкретной вещи в наборе.
Атрибут – поименованная характеристика сущности. Его наименование должно быть уникальным для конкретного типа сущности, но может быть одинаковым для различного типа сущностей.
Ключ – минимальный набор атрибутов, по значениям которых можно однозначно найти требуемый экземпляр сущности. Минимальность означает, что исключение из набора любого атрибута не позволяет идентифицировать сущность по оставшимся.
Связь – ассоциирование двух или более сущностей. Если бы назначением базы данных было только хранение отдельных, не связанных между собой данных, то ее структура могла бы быть очень простой. Однако одно из основных требований к организации базы данных – это обеспечение возможности отыскания одних сущностей по значениям других, для чего необходимо установить между ними определенные связи.
Изобразим графически каждый объект и его свойства (см. рис. 1 — 6).
Рис. 1 Изображение связи «Объект — Свойство» для объекта «Поставка»
Рис. 2 Изображение связи «Объект — Свойство» для объекта «Поставщик»
Рис. 3 Изображение связи «Объект — Свойство» для объекта «Товар»
Рис. 4 Изображение связи «Объект — Свойство» для объекта «Сотрудник»
Рис. 5 Изображение связи «Объект — Свойство» для объекта «Заказ»
Рис. 6 Изображение связи «Объект — Свойство» для объекта «Клиент»
Однако инфологическая модель предполагает наличие в себе отображения не только отдельных объектов и их свойств, но также связей между различными объектами.
47147 (Информационная система компьютерного клуба), страница 2
Документ из архива «Информационная система компьютерного клуба», который расположен в категории «курсовые работы». Всё это находится в предмете «информатика, программирование» из раздела «Студенческие работы», которые можно найти в файловом архиве Студент. Не смотря на прямую связь этого архива с Студент, его также можно найти и в других разделах. Архив можно найти в разделе «курсовые/домашние работы», в предмете «информатика, программирование» в общих файлах.
Онлайн просмотр документа «47147»
Текст 2 страницы из документа «47147»
В языке SQL оператором создания таблиц является оператор CREATE TABLE.
Ниже приводится построение таблиц БД «Компьютерный клуб» с помощью оператора CREATE TABLE.
CREATE TABLE Админ
( Админ VARCHAR (50) NOT NULL,
ФИО VARCHAR (50) NOT NULL,
Адрес VARCHAR (50) NOT NULL,
Ставка NUMBER NOT NULL,
PRIMARY KEY (Админ),
FOREIGN KEY (Админ),
REFERENCES Центр данных,
ON DELETE CASCADE,
ON UPDATE CASCADE)
CREATE TABLE Инфо игрока
( Игрок VARCHAR (50) NOT NULL,
ФИО VARCHAR (50) NOT NULL,
Адрес VARCHAR (50) NOT NULL,
Комманда VARCHAR (50) NOT NULL,
PRIMARY KEY (Игрок),
ON DELETE CASCADE,
ON UPDATE CASCADE)
CREATE TABLE Девайс
( Устройство VARCHAR (50) NOT NULL,
Магазин VARCHAR (50) NOT NULL,
Фирма VARCHAR (50) NOT NULL,
Цена VARCHAR (50) NOT NULL,
PRIMARY KEY (Устройство),
FOREIGN KEY (Устройство),
ON DELETE CASCADE,
ON UPDATE CASCADE)
CREATE TABLE Услуги
(Номер_услуги VARCHAR (10) NOT NULL,
Название VARCHAR (50) NOT NULL,
Тариф MONEY NOT NULL,
PRIMARY KEY (Номер_услуги),
ON DELETE CASCADE,
ON UPDATE CASCADE)
CREATE TABLE Комп
(Номер_компа VARCHAR (50) NOT NULL,
Платформа VARCHAR (50) NOT NULL,
MHz VARCHAR (50) NOT NULL,Monitor
Video VARCHAR (50) NOT NULL,
Hdd VARCHAR (50) NOT NULL,
Mouse VARCHAR (50) NOT NULL,
Keyboard VARCHAR (50) NOT NULL,
Headphones VARCHAR (50) NOT NULL,
PRIMARY KEY (Номер_компа),
ON DELETE CASCADE,
ON UPDATE CASCADE)
CREATE TABLE Центр данных
(Номер_компа VARCHAR (50) NOT NULL,
Дата_аренды DATE NOT NULL,
Время_аренды DATE NOT NULL,
Продолжительность NUMBER NOT NULL,
Код_услуги VARCHAR (50) NOT NULL,
Игрок VARCHAR (50) NOT NULL,
Цена MONEY NOT NULL,
Админ VARCHAR (50) NOT NULL,
PRIMARY KEY (Номер_компа, Дата_аренды, Время_аренды, Продолжительность, Админ),
FOREIGN KEY (Код_услуги),
ON DELETE CASCADE,
ON UPDATE CASCADE,
FOREIGN KEY ( Игрок)
REFERENCES Инфо игрока,
ON DELETE CASCADE,
ON UPDATE CASCADE,
FOREIGN KEY (Номер_компа),
ON DELETE CASCADE,
ON UPDATE CASCADE,
4.3 Заполнение базы данных
Данные заносятся с использованием форм) приведенных в приложении. При занесении данных следует обратить внимание на поддержание ограничений целостности по первичным и внешним ключам отношений согласно схеме базы данных,приведенной на рис.4.2.
Рекомендуется вначале установить связи в схеме базы данных, а затем заносить данные, что предотвратит ошибки, возникающие при попытке внести данные, нарушающие ограничения целостности в базу данных и связанные с их идентификацией.
Особое внимание следует уделить занесению NULL-значений. В теоретическом плане NULL-значения запрещены (значения атрибута атомарны), однако требования практики обусловили их использование в коммерческих пакетах. Следует учитывать разницу в описании NULL-значений в каждом из них. В разрабатываемом проекте NULL-значения задавались средствами пакета ACCESS.
4.4 Создание запросов к базе данных компьютерный клуб
В основном запросы используются для анализа данных. В данной курсовой работе были созданы такие запросы:
1. Данные о дежурстве админа:
SELECT Данные.Дата_аренды, Данные.админ
FROM Комп INNER JOIN (Услуги INNER JOIN ([Инфо игрока] INNER JOIN Данные ON [Инфо игрока].Игрок=Данные.Игрок) ON Услуги.Номер_услуги=Данные.Код_услуги) ON Комп.Номер_компа=Данные.Номер_компа
WHERE (((Данные.Дата_аренды)=[ Введите дату аренды ]));
2.Доход в заданную дату.
SELECT Sum([Центр данных].Цена) AS Сумма
FROM [Центр данных]
WHERE ((([Центр данных].Дата_аренды)=[ Введите дату аренды ]));
3.Вывести игроков, которые не состоят в командах
SELECT [Инфо игрока].игрок, [Инфо игрока].фио, [Инфо игрока].адрес
FROM [инфо игрока]
WHERE [Инфо игрока].комманда Is Null;
4.Вывести информацию, если заработано более 5 грн.
SELECT [Центр данных].игрок, [Центр данных].Цена, [Центр данных].Номер_компа, [Центр данных].Дата_аренды, [Центр данных].Код_услуги, [Центр данных].Админ
FROM [Центр данных]
GROUP BY [Центр данных].игрок, [Центр данных].Цена, [Центр данных].Номер_компа, [Центр данных].Дата_аренды, [Центр данных].Код_услуги, [Центр данных].Админ
HAVING ((([Центр данных].Цена)>5));
5.Вывести данные о том, когда и на каком компьютере пользовались определённой услугй.
SELECT Услуги.Название, [Центр данных].Номер_компа, [Центр данных].Дата_аренды, [Центр данных].Время_аренды, [Центр данных].Продолжительность
FROM Комп INNER JOIN (Услуги INNER JOIN ([Инфо игрока] INNER JOIN [Центр данных] ON [Инфо игрока].Игрок=[Центр данных].Игрок) ON Услуги.Номер_услуги=[Центр данных].Код_услуги) ON Комп.Номер_компа=[Центр данных].Номер_компа
WHERE (((Услуги.Номер_услуги)=[ Код услуги ]))
ORDER BY [Центр данных].Дата_аренды;
6.Вывести сумму, заработанную определённым администратором
SELECT Sum([Центр данных].Цена) AS Сумма
FROM [Центр данных]
WHERE ((([Центр данных].админ)=[ Администратор ]));
7.Вывести данные о работе клуба, отсортировать по дате и игроку
SELECT [Центр данных].Номер_компа, [Центр данных].Дата_аренды, [Центр данных].Время_аренды, [Центр данных].Продолжительность, [Центр данных].Код_услуги, [Центр данных].Игрок, [Центр данных].Цена, [Центр данных].Админ
FROM [Центр данных]
ORDER BY [Центр данных].Дата_аренды, [Центр данных].Игрок;
8.Вывести информацию о самой поздней аренде компьютера
SELECT MAX([центр данных].время_аренды) AS Время
FROM [центр данных];
9.Вывести информацию о самой ранней аренде компьютера
SELECT MIN([центр данных].время_аренды) AS Время
FROM [центр данных];
10.Вывести данные об аренде компьютера в заданное время
SELECT [Центр данных].Время_аренды, [Центр данных].Код_услуги, [Центр данных].Игрок, [Центр данных].Номер_компа
FROM Комп INNER JOIN (Услуги INNER JOIN ([Инфо игрока] INNER JOIN [Центр данных] ON [Инфо игрока].Игрок=[Центр данных].Игрок) ON Услуги.Номер_услуги=[Центр данных].Код_услуги) ON Комп.Номер_компа=[Центр данных].Номер_компа
WHERE ((([Центр данных].Время_аренды)=[ Введите время аренды ]));
11.Вывести данные об аренде компьютера в заданную дату.
SELECT [Центр данных].Дата_аренды, [Центр данных].Код_услуги, [Центр данных].Игрок, [Центр данных].Номер_компа
FROM Комп INNER JOIN (Услуги INNER JOIN ([Инфо игрока] INNER JOIN [Центр данных] ON [Инфо игрока].Игрок=[Центр данных].Игрок) ON Услуги.Номер_услуги=[Центр данных].Код_услуги) ON Комп.Номер_компа=[Центр данных].Номер_компа
WHERE ((([Центр данных].дата_аренды)=[ Введите дату аренды ]));
12.Вывести данные об услугах
SELECT Услуги.Номер_услуги, Услуги.Название, Услуги.Тариф
FROM Комп INNER JOIN (Услуги INNER JOIN ([Инфо игрока] INNER JOIN [Центр данных] ON [Инфо игрока].Игрок=[Центр данных].Игрок) ON Услуги.Номер_услуги=[Центр данных].Код_услуги) ON Комп.Номер_компа=[Центр данных].Номер_компа
GROUP BY Услуги.Номер_услуги, [Центр данных].Код_услуги, Услуги.Название, Услуги.Тариф
4.5 Создание отчетов по базам данных с помощью приложений Office
Созданное приложение должно позволять создать отчеты по базе данных club.mdb, входящую в комплект стандартной поставки пакета Microsoft Office.
4.5.1 Создание отчета с помощью Microsoft Word. Откройте новое приложение в Delphi
Поместить на форму компонент TADOConection, два компонента TADODataSet и три компонента TButton ( рис.4.3). Свойствам Caption и Name присвоить значения из таблицы 1.
База данных
Ба́за да́нных — совокупность данных, хранимых в соответствии со схемой данных, манипулирование которыми выполняют в соответствии с правилами средств моделирования данных [1] [2] [3] .
Многие специалисты указывают на распространённую ошибку, состоящую в некорректном использовании термина «база данных» вместо термина «система управления базами данных», и указывают на необходимость различения этих понятий [4] .
Содержание
Проблемы определения [ править | править код ]
В литературе предлагается множество определений понятия «база данных», отражающих скорее субъективное мнение тех или иных авторов, однако общепризнанная единая формулировка отсутствует.
Определения из нормативных документов, в том числе стандартов:
- База данных — представленная в объективной форме совокупность самостоятельных материалов (статей, расчётов, нормативных актов, судебных решений и иных подобных материалов), систематизированных таким образом, чтобы эти материалы могли быть найдены и обработаны с помощью электронной вычислительной машины (ЭВМ)[5]
- База данных — совокупность данных, организованных в соответствии с концептуальной структурой, описывающей характеристики этих данных и взаимоотношения между ними, которая поддерживает одну или более областей применения [6] .
Определения из авторитетных монографий:
- База данных — организованная в соответствии с определёнными правилами и поддерживаемая в памяти компьютера совокупность данных, характеризующая актуальное состояние некоторой предметной области и используемая для удовлетворения информационных потребностей пользователей [7] .
- База данных — некоторый набор перманентных (постоянно хранимых) данных, используемых прикладными программными системами какого-либо предприятия [8] .
- База данных — совместно используемый набор логически связанных данных (и описание этих данных), предназначенный для удовлетворения информационных потребностей организации [9] .
В определениях наиболее часто (явно или неявно) присутствуют следующие отличительные признаки [10] :
- БД хранится и обрабатывается в вычислительной системе.
Таким образом, любые внекомпьютерные хранилища информации (архивы, библиотеки, картотеки и т. п.) базами данных не являются. - Данные в БД логически структурированы (систематизированы) с целью обеспечения возможности их эффективного поиска и обработки в вычислительной системе.
Структурированность подразумевает явное выделение составных частей (элементов), связей между ними, а также типизацию элементов и связей, при которой с типом элемента (связи) соотносится определённая семантика и допустимые операции [11] . - БД включает схему, или метаданные, описывающие логическую структуру БД в формальном виде (в соответствии с некоторой метамоделью).
В соответствии с ГОСТ Р ИСО МЭК ТО 10032-2007, «постоянные данные в среде базы данных включают в себя схему и базу данных. Схема включает в себя описания содержания, структуры и ограничений целостности, используемые для создания и поддержки базы данных. База данных включает в себя набор постоянных данных, определённых с помощью схемы. Система управления данными использует определения данных в схеме для обеспечения доступа и управления доступом к данным в базе данных» [1] .
Из перечисленных признаков только первый является строгим, а другие допускают различные трактовки и различные степени оценки. Можно лишь установить некоторую степень соответствия требованиям к БД.
В такой ситуации не последнюю роль играет общепринятая практика. В соответствии с ней, например, не называют базами данных файловые архивы, Интернет-порталы или электронные таблицы, несмотря на то, что они в некоторой степени обладают признаками БД. Принято считать, что эта степень в большинстве случаев недостаточна (хотя могут быть исключения).
История [ править | править код ]
История возникновения и развития технологий баз данных может рассматриваться как в широком, так и в узком аспекте.
В широком смысле понятие истории баз данных обобщается до истории любых средств, с помощью которых человечество хранило и обрабатывало данные. В таком контексте упоминаются, например, средства учёта царской казны и налогов в древнем Шумере (4000 г. до н. э.) [12] , узелковая письменность инков — кипу, клинописи, содержащие документы Ассирийского царства и т. п. Следует помнить, что недостатком этого подхода является размывание понятия «база данных» и фактическое его слияние с понятиями «архив» и даже «письменность».
История баз данных в узком смысле рассматривает базы данных в традиционном (современном) понимании. Эта история начинается с 1955 года, когда появилось программируемое оборудование обработки записей. Программное обеспечение этого времени поддерживало модель обработки записей на основе файлов. Для хранения данных использовались перфокарты [12] .
Оперативные сетевые базы данных появились в середине 1960-х. Операции над оперативными базами данных обрабатывались в интерактивном режиме с помощью терминалов. Простые индексно-последовательные организации записей быстро развились к более мощной модели записей, ориентированной на наборы. За руководство работой Data Base Task Group (DBTG), разработавшей стандартный язык описания данных и манипулирования данными, Чарльз Бахман получил Тьюринговскую премию.
В это же время в сообществе баз данных Кобол была проработана концепция схем баз данных и концепция независимости данных.
Следующий важный этап связан с появлением в начале 1970-х реляционной модели данных, благодаря работам Эдгара Кодда. Работы Кодда открыли путь к тесной связи прикладной технологии баз данных с математикой и логикой. За свой вклад в теорию и практику Эдгар Ф. Кодд также получил премию Тьюринга.
Сам термин база данных (англ. database ) появился в начале 1960-х годов, и был введён в употребление на симпозиумах, организованных компанией SDC в 1964 и 1965 годах, хотя понимался сначала в довольно узком смысле, в контексте систем искусственного интеллекта. В широкое употребление в современном понимании термин вошёл лишь в 1970-е годы [13] .
Виды баз данных [ править | править код ]
Существует огромное количество разновидностей баз данных, различающихся по различным критериям. Например, в «Энциклопедии технологий баз данных» [7] , по материалам которой написан данный раздел, определяются свыше 50 видов БД.
Основные классификации приведены ниже.
Классификация по модели данных [ править | править код ]
Классификация по среде постоянного хранения [ править | править код ]
- Во вторичной памяти, или традиционная (англ. conventional database ): средой постоянного хранения является периферийная энергонезависимая память (вторичная память) — как правило жёсткий диск.
В оперативную память СУБД помещает лишь кэш и данные для текущей обработки. - В оперативной памяти (англ. in-memory database, memory-resident database, main memory database ): все данные на стадии исполнения находятся в оперативной памяти.
- В третичной памяти (англ. tertiary database ): средой постоянного хранения является отсоединяемое от сервера устройство массового хранения (третичная память), как правило на основе магнитных лент или оптических дисков.
Во вторичной памяти сервера хранится лишь каталог данных третичной памяти, файловый кэш и данные для текущей обработки; загрузка же самих данных требует специальной процедуры.
Классификация по содержимому [ править | править код ]
- Географическая
- Историческая
- Научная .
Классификация по степени распределённости [ править | править код ]
- Централизованная, или сосредоточенная (англ. centralized database ): БД, полностью поддерживаемая на одном компьютере. (англ. distributed database ) — составные части которой размещаются в различных узлах компьютерной сети в соответствии с каким-либо критерием.
- Неоднородная (англ. heterogeneous distributed database ): фрагменты распределённой БД в разных узлах сети поддерживаются средствами более одной СУБД.
- Однородная (англ. homogeneous distributed database ): фрагменты распределённой БД в разных узлах сети поддерживаются средствами одной и той же СУБД.
- Фрагментированная, или секционированная (англ. partitioned database ): методом распределения данных является фрагментирование (партиционирование, секционирование), вертикальное или горизонтальное.
- Тиражированная (англ. replicated database ): методом распределения данных является тиражирование (репликация).
Другие виды БД [ править | править код ]
- (англ. spatial database ): БД, в которой поддерживаются пространственные свойства сущностей предметной области. Такие БД широко используются в геоинформационных системах. , или темпоральная (англ. temporal database ): БД, в которой поддерживается какой-либо аспект времени, не считая времени, определяемого пользователем.
- Пространственно-временна́я (англ. spatial-temporal database ) БД: БД, в которой одновременно поддерживается одно или более измерений в аспектах как пространства, так и времени. (англ. round-robin database ): БД, объём хранимых данных которой не меняется со временем, поскольку в процессе сохранения новых данных они заменяют более старые данные. Одни и те же ячейки для данных используются циклически.
Сверхбольшие базы данных [ править | править код ]
Сверхбольшая база данных (англ. Very Large Database, VLDB ) — это база данных, которая занимает чрезвычайно большой объём на устройстве физического хранения. Термин подразумевает максимально возможные объёмы БД, которые определяются последними достижениями в технологиях физического хранения данных и в технологиях программного оперирования данными.
Количественное определение понятия «чрезвычайно большой объём» меняется во времени. Так, в 1997 году самой большой в мире была текстовая база данных Knight Ridder’s DIALOG объёмом 7 терабайт [14] . В 2001 году самой большой считалась база данных объёмом 10,5 терабайт, в 2003 году — объёмом 25 терабайт [15] . В 2005 году самыми крупными в мире считались базы данных с объёмом хранилища порядка сотни терабайт [16] . В 2006 году поисковая машина Google использовала базу данных объёмом 850 терабайт [17] .
К 2010 году считалось, что объём сверхбольшой базы данных должен измеряться по меньшей мере петабайтами [16] .
В 2011 году компания Facebook хранила данные в кластере из 2 тысяч узлов суммарной ёмкостью 21 петабайт [18] ; к концу 2012 года объём данных Facebook достиг 100 петабайт [19] , а в 2014 году — 300 петабайт [20] .
К 2014 году по косвенным оценкам компания Google хранила на своих серверах до 10—15 эксабайт данных в совокупности [21] .
По некоторым оценкам, к 2025 году генетики будут располагать данными о геномах от 100 миллионов до 2 миллиардов человек, и для хранения подобного объёма данных потребуется от 2 до 40 эксабайт [22] .
В целом, по оценкам компании IDC, суммарный объём данных «цифровой вселенной» удваивается каждые два года и изменится от 4,4 зеттабайта в 2013 году до 44 зеттабайт в 2020 году [23] .
Исследования в области хранения и обработки сверхбольших баз данных VLDB всегда находятся на острие теории и практики баз данных. В частности, с 1975 года проходит ежегодная конференция International Conference on Very Large Data Bases («Международная конференция по сверхбольшим базам данных»). Большинство исследований проводится под эгидой некоммерческой организации VLDB Endowment (Фонд целевого капитала «VLDB»), которая обеспечивает продвижение научных работ и обмен информацией в области сверхбольших БД и смежных областях.
ООО «ПЕРВАЯ КОМПЬЮТЕРНАЯ КОМПАНИЯ»
Вы можете скопировать QR-код и использовать:
• при составлении любого договора в разделе “Реквизиты”, для быстрого получения актуальной информации о компании (Вашей или Вашего Контрагента);
• на визитках, презентациях или рекламных буклетах (для быстрого получения информации о Вашей компании);
• в любых других случаях, где нужно предоставить актуальную официальную информацию о Вашей компании.
ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ «ПЕРВАЯ КОМПЬЮТЕРНАЯ КОМПАНИЯ»7726740287
Ликвидировано
Ликвидация юридического лица
Дата регистрации
Дата ликвидации
Юридический адрес
115191, г Москва, переулок Духовской, дом 17 СТРОЕНИЕ 15, ЭТАЖ 2 КОМ 11
получен 10.02.2014
Зарегистрировано 74 организации по этому адресу
Блокировка счетов
Проверить (рекомендуем проверять перед платежом на расчетный счет организации)
Наличие обеспечительных мер
Проверить (рекомендуем проверять перед заключением договора с организацией)
Банкротство
Проверить (проверка наличия сведений в реестре о банкротстве (ЕФРСБ)
Основной вид деятельности
63.11.1 Деятельность по созданию и использованию баз данных и информационных ресурсов
Дополнительные ОКВЭД
Специальный налоговый режим
Реестр недобросовестных поставщиков
Реестр террористов и экстремистов (new)
Не числится (по данным РОСФИНМОНИТОРИНГ)
Цель обработки персональных данных:
Отзывы об организации
Aффилированность
(связанные компании)
Нажмите, чтобы посмотреть.
Связи по руководителю
Руков. | Учредитель | ИП |
1 | 2 |
Предложения от партнёров
Товарные знаки
Данные не найдены.
Конкуренты (6 033)
В регионе Москва
с ОКВЭД 63.11.1.
Об организации
ООО «ПЕРВАЯ КОМПЬЮТЕРНАЯ КОМПАНИЯ» ИНН 7726740287, ОГРН 1147746108487 зарегистрировано 10.02.2014 в регионе Москва по адресу: 115191, г Москва, переулок Духовской, дом 17 СТРОЕНИЕ 15, ЭТАЖ 2 КОМ 11. Статус: Ликвидировано. Размер Уставного Капитала 10 000,00 руб.
Руководителем организации является: Ликвидатор — Жеребин Артем Михайлович, ИНН 773001061573. У организации 1 Учредитель. Основным направлением деятельности является «деятельность по созданию и использованию баз данных и информационных ресурсов».
В Реестре недобросовестных поставщиков: не числится. У ООО «ПЕРВАЯ КОМПЬЮТЕРНАЯ КОМПАНИЯ» зарегистрировано судебных процессов: 0 (в качестве «Ответчика»), 0 (в качестве «Истца»). Официальный сайт ООО «ПЕРВАЯ КОМПЬЮТЕРНАЯ КОМПАНИЯ» – добавить данные. E-mail ООО «ПЕРВАЯ КОМПЬЮТЕРНАЯ КОМПАНИЯ» — добавить данные. Контакты (телефон) ООО «ПЕРВАЯ КОМПЬЮТЕРНАЯ КОМПАНИЯ» — +▒ ▒▒▒ ▒▒▒-▒▒-▒▒ .