кто самый популярный и безопасный?
Понятие базы данных настолько прочно вошло в нашу жизнь, что стало восприниматься как нечто само собой разумеющееся и не заслуживающее отдельного внимания. Об ИТ-стартапах, алгоритмах искусственного интеллекта, хакерских атаках, криптовалюте, big data (да что там говорить, и об облаках тоже) в профильных СМИ написано куда больше статей, чем о «рядовых», но таких важных и нужных базах данных и системах управления ими. Вот и мы, неоднократно проводя свои мини-исследования разных сфер мира ИТ, еще ни разу не обращались к этой теме. Что же, немедленно исправляемся и делимся с вами интересными новостями и свежей статистикой.
И среди СУБД есть свои фавориты
Система управления базами данных (СУБД) — это программный инструмент (как правило, интерфейс между конечным пользователем/приложением и самой базой данных), с помощью которого легче и удобнее работать с информацией. Например, создавать, обновлять, искать, удалять и восстанавливать данные в БД, а также определять взаимосвязи между ее компонентами (таблицами).
Обычно СУБД включает в себя три основных компонента: сами данные, «движок» базы данных и схему, определяющую логическую структуру данных. Именно эти три составляющие помогают обеспечить безопасное управление и защиту баз данных, целостность хранящейся в ней информации и унифицированные процедуры администрирования — управление изменениями, контроль конфигураций и производительности, резервное копирование, аварийное восстановление и т. д.
Безусловно, самих систем управления базами данных невероятно много, но тех, что у всех на слуху, едва ли наберется с десяток. Чтобы определить, какая из существующих СУБД по праву попадает в список самых популярных, в DB-Engines составили своеобразный рейтинг фаворитов. Для этого специалисты проанализировали ряд факторов: количество упоминаний систем на веб-сайтах (использовались поисковики Google, Yandex и Bing), общий интерес пользователей в Google Trends, упоминания в дискуссиях на специализированных сайтах Stack Overflow и DBA Stack Exchange, на сайтах-агрегаторах вакансий Indeed и Simply Hired, в профессиональных профилях специалистов в Linkedin и Upwork, и, наконец, количество релевантных твитов. Однако отметим, что общее число установок СУБД не считалось, поэтому этот топ получился хоть и интересным, но все-таки относительным. Согласно DB-Engines, первая тройка популярных систем управления выглядит так: Oracle, MySQL, Microsoft SQL Server.
Интересно, что в среде программистов самыми востребованными оказались навыки работы с такими СУБД как MySQL, MongoDB и PostgreSQL, причем Oracle разработчики вообще поставили на последнее место, так как эту систему отметило лишь 12% респондентов (источник: Stack Exchange (Stack Overflow Talent)).
Таким образом, по результатам двух исследований видим, что пока пользователи больше всего интересуются системой MySQL. Возможно, не последнюю роль здесь играет тот факт, что это продукт с открытым исходным кодом. К слову, именно по этой причине в 2016 году в MySQL было устранено самое большое количество уязвимостей — 133. И этот факт совсем не означает, что сама система плохо защищена, а наоборот свидетельствует о том, что ее работоспособность проверяло большее число специалистов, что увеличило шансы на определение ее «слабых мест» в информационной безопасности.
Распространенные угрозы безопасности
Примечательно, что именно количество патчей позволяет косвенно определить степень защиты информации в системах управления базами данных и выявить наиболее распространенные уязвимости. Так, исследование Trustwave показало, что в 2016 году пользователи СУБД чаще всего сталкивались с такими категориями киберугроз, как:
- Несанкционированное расширение привилегий. Эти уязвимости позволяли неуполномоченным лицам использовать права администратора, получая доступ к таблицам и конфигурациям БД.
- Переполнение буфера. Это приводило к поломке сервера, что подрывало аппаратную защиту базы данных, а также вызывало отказ в обслуживании и могло привести к запуску исполнения чужого вредоносного кода.
- Полномочия, настроенные по умолчанию. Учетные записи администратора, оставленные с паролем, заданным по умолчанию, могли дать дополнительный простор для мошеннических действий киберпреступников.
***
Таковыми оказались результаты недавних исследований. Очень надеемся, что в будущем системы управления базами данных станут более безопасными, а в топах популярности СУБД появятся новые названия. Обещаем следить за новостями и держать вас в курсе последних тенденций.
Помогите нам стать лучше!
Пожалуйста, оцените этот материал, нажав на звёздочки ниже.
Submit RatingСредний рейтинг:
Обзор систем управления базами данных (СУБД) для систем контроля и управления доступом (СКУД)
18.03.2014Источник: Журнал «Технологии Защиты» № 1, 2014
Автор: Пивоваров Семён, руководитель службы технической поддержки Parsec.
В данной статье мы коснёмся достаточно скрытой, но при этом, такой важной части любой современной сетевой СКУД, как система управления базами данных (СУБД). Любая современная сетевая СКУД нуждается в базе данных, так как является по своей сути информационной системой, предназначенной для хранения, обработки и анализа информации о происходящих на защищаемом объекте событиях. Также в СКУД должны храниться настройки оборудования, коды карт и личные данные пользователей, уровни доступа и другая нужная информация.
Терминология
Частая ошибка многих специалистов по безопасности — некорректное использование термина «база данных» (БД) вместо термина «система управления базами данных» (СУБД). Давайте разберёмся, что к чему.
База данных — представленная в объективной форме совокупность самостоятельных материалов, систематизированных таким образом, чтобы эти материалы могли быть найдены и обработаны с помощью электронной вычислительной машины.
Система управления базами данных (СУБД) — совокупность программных и лингвистических средств общего или специального назначения, обеспечивающих управление созданием и использованием баз данных.
То есть, упрощённо, «база данных» – это сами данные, представленные в виде совокупности файлов на дисках, с которыми как раз работает «система управления базами данных» (СУБД) – программный продукт, имеющий средства для создания, наполнения, модификации и поиска по базам данных.
Разработчики различных приложений, в том числе и разработчики СКУД, работают именно с СУБД и выбирают СУБД под свои нужды.
Требования к СУБД, применяемым в СКУД
Какие же особенные требования следует предъявить к СУБД, используемой в СКУД с точки зрения пользователя?
- Во-первых — надёжность: никакие данные не должны пропасть! Сбои должны быть минимизированы и не должны приводить к потерям данных, базы должны быть надёжно защищены от несанкционированного доступа, на режимных объектах могут потребоваться функции шифрования данных, необходимо также обеспечивать регулярное резервное копирование баз данных и возможность восстановления из архива при необходимости.
- Во-вторых — производительность: СУБД должна обеспечивать приемлемый уровень производительности для решения возложенных на неё задач.
- В-третьих, на мой взгляд, это уверенность в том, что СУБД будет поддерживаться производителем, и вы не останетесь один на один с проблемой в случае какого-то серьёзного сбоя или сложной ситуации.
Виды СУБД
СУБД на данный момент существует великое множество и классифицируются они по разным признакам. Но мы не будем останавливаться в данной статье на всём многообразии этих типов, опустим перспективные и экзотические технологии типа объектно-ориентированных и иерархических СУБД. Стандартом де-факто в современных информационных системах являются реляционные СУБД, в которых данные хранятся в табличном виде, о них мы и будем говорить. Так чем же различаются все эти системы? Перечислю ключевые параметры важные как для разработчиков, так и для пользователей системы.
Способ доступа к БД:
- Клиент-серверные СУБД
- Файл-серверные СУБД
- Встраиваемые СУБД
В клиент-серверных СУБД (Microsoft SQL Server, Oracle, Firebird, PostgreSQL, InterBase, MySQL и др.) вся обработка данных ведётся в одном месте, на сервере, в том же месте, где хранятся (обычно) данные, при этом к файлам данных имеет доступ только один сервер, одна система — это сама СУБД. Приложения-клиенты при этом посылают запросы на обработку и получение данных из СУБД и получают ответы; приложения-клиенты не имеют непосредственного доступа к файлам данных. Все промышленные СУБД на данный момент являются именно клиент-серверными.
В файл-серверных СУБД (Paradox, Microsoft Access, FoxPro, dBase и др.), наоборот, приложения имеют общий доступ ко всем файлам базы данных (хранящимся обычно в каком-то разделяемом файловом хранилище) и совместно обрабатывают эти данные. Каждое приложение самостоятельно обрабатывает данные. На данный момент файл-серверная технология считается устаревшей, а её использование в крупных информационных системах — недостатком. Проблема в том, что файл-серверные СУБД не имеют многих преимуществ клиент-серверных, таких как: кэширование данных, параллелизм запросов, высокая производительность и обладают рядом недостатков (сложности с поддержанием целостности базы, восстановлением, блокировками и т.д.), что приводит в свою очередь к пониженной надёжности и производительности. Состояние базы в файловых СУБД необходимо постоянно отслеживать и проводить операции по её «лечению» с помощью встроенных или сторонних утилит.
Встраиваемые СУБД (SQLite, Firebird Embedded, Microsoft SQL Server Compact и др.) поставляются в составе готового программного продукта, не требуя процедуры самостоятельной установки. Встраиваемые СУБД предназначены для локального хранения данных приложения и не рассчитаны на коллективное использование в сети. К примеру, встраиваемая бесплатная СУБД SQLite широко используется в известной мобильной ОС Android, разработанной в компании Google, и во многих мобильных приложениях.
Схема лицензирования:
- Бесплатные СУБД
- Коммерческие промышленные СУБД (большинство производителей предлагают также бесплатную ограниченную версию)
Файл-серверные и встраиваемые СУБД практически все являются бесплатными, из бесплатных клиент-серверных СУБД наиболее известные: Firebird, PostgreSQL и MySQL.
Чисто коммерческий продукт, разработанный компанией Borland: СУБД InterBase. Ранее у этой СУБД была бесплатная версия с открытым исходным кодом: InterBase 6.0, но проект InterBase 6.0 Open Source Edition перестал поддерживаться компанией Borland. В 2001 году группа энтузиастов создала отдельный Open source проект СУБД Firebird, упомянутой выше, который получил широкую известность и множество поклонников среди разработчиков.
Большинство производителей промышленных СУБД дают возможность пользоваться бесплатными редакциями своих продуктов, которые являются урезанными по функционалу и по производительности вариантами полнофункциональной версии СУБД.
Плюсы свободных СУБД: это бесплатно, они менее требовательны к ресурсам ПК, обладают богатым функционалом и хорошей производительностью при грамотной настройке, достаточно надёжны.
Минусы: никто не даст гарантии, что через определенное время проект не перестанет существовать, т.к. его поддерживает сообщество энтузиастов, также сложнее найти грамотного специалиста для обслуживания СУБД типа Firebird или PostgreSQL.
Плюсы коммерческих СУБД: хорошая задокументированность, высокая производительность, масштабируемость, надёжность, поддерживаемость, наличие встроенных инструментов для разработки и администрирования. Вероятность того, что компания Oracle, Microsoft или IBM перестанут поддерживать свои системы, стремится к нулю.
Минусы: они более требовательны к ресурсам, чем бесплатные аналоги, стоят денег и немалых.
В приведённой ниже таблице приведены ограничения наиболее часто используемых бесплатных редакций промышленных СУБД.
Компания-производитель | Бесплатные версии | Ограничения |
Microsoft | SQL Server 2005 Express Edition (2005, 2008, 2008 R2, 2012) | Размер базы данных — до 4 Гб, количество баз не ограничено, использует не более 1 Гб оперативной памяти и только 1 процессор (ядро) на многопроцессорных и многоядерных машинах. Поддерживаемые платформы: только Windows 2005 – только x86, 2008 – x86 и x64. |
SQL Server 2008 Express Edition | ||
SQL Server 2008 R2 Express Edition | Размер базы данных — до 10 Гб, количество баз не ограничено, использует не более 1 Гб оперативной памяти и только 1 процессор (ядро) на многопроцессорных и многоядерных машинах. Поддерживаемые платформы: только Windows x86 и x64. | |
SQL Server 2012 Express Edition | ||
Oracle | Oracle Database 11g Express Edition, (Oracle Database XE) | Суммарно до 11Гб пользовательских данных, использует не более 1Гб оперативной памяти и только 1 процессор (ядро) на многопроцессорных и многоядерных машинах. Поддерживаемые платформы: Windows x86, Linux x64. |
IBM | IBM DB2 Express-C | Размер базы не ограничен, используется до 4Гб оперативной памяти и до 2-х процессоров. Поддерживаемые платформы: Windows x86 и x64, Linux x86 и x64, Unix x86 и x64, Solaris x86 и x64, Mac OS X |
При превышении максимального размера базы запись в БД прекратится, но эту проблему легко предотвратить. В основном, объём требуется для хранения постоянно накапливающихся в системе событий, остальные данные (настройки контроллеров, данные субъектов доступа, уровни доступа и т.п.) относительно статичны и только на сверхкрупных системах могут превысить ограничения бесплатных Express-версий. Необходимо настроить средствами вашей СУБД процедуру периодического удаления старых событий из БД. Во многих СКУД эти процедуры предусмотрены разработчиками и их надо просто настроить.
Что касается ограничений по производительности: если система небольшая, не подразумевает больших нагрузок на СУБД, спокойно можно ограничиться бесплатной редакцией, её будет более чем достаточно. Если же задача накладывает повышенные требования на подсистему СУБД: большое количество пользователей в системе, большой трафик событий и поток обновлений данных в системе (объекты с большим количеством временных посетителей) и высокие требования к глубине архива событий, то всегда можно перейти с бесплатной редакции на коммерческий вариант, оплатив необходимую лицензию.
СУБД в СКУД
В таблице ниже приведены данные из открытых источников относительно типа применяемой СУБД в популярных в России системах контроля и управления доступом.
Производитель | СКУД | СУБД |
Parsec | ParsecNET 3 | Microsoft SQL Server (в поставке 2005 Express, поддерживаются также версии 2008, 2008 R2, 2012) – центральная БД; SQLite — локальные базы рабочих станций. |
Elsys | Бастион 2 | Oracle (в поставке 11g Express) |
Perco | S20 | Firebird |
НВП Болид | Орион ПРО | MS SQL Server (в поставке 2005 Express) |
РусГард | RusGuard | MS SQL Server (в поставке 2008 R2 Express) |
Равелин ЛТД | Gate | Microsoft Access |
ПромАвтоматика Сервис | Сфинкс | MySQL |
Кодос | ИКБ Кодос | Firebird |
TSS | Семь Печатей | Firebird |
Bosсh | Building Integration System BIS | Microsoft SQL Server (в поставке 2008 Express Edition) |
Honeywell | NexWatch (Honeywell Security) | Microsoft SQL Server |
Siemens | SiPass | Microsoft SQL Server |
ААМ Системз | Apacs | Microsoft SQL Server, Firebird |
Lyrix | Oracle, Microsoft SQL Server, Borland InterBase |
Как видно, большинство производителей СКУД поставляют бесплатную версию промышленной клиент-серверной СУБД Microsoft SQL Server Express Edition и свободную (бесплатную) кроссплатформенную СУБД Firefird (примерно 50 на 50).
Конкретный выбор той или иной СУБД – дело вкуса и предпочтений каждого производителя, благо – выбор есть. При выборе разработчики учитывают также вопросы удобства и простоты администрирования, наличие встроенных бесплатных инструментов для администрирования и разработки.
СУБД для СКУД помимо высокой надёжности и производительности должна быть удобной и недорогой в поддержке. Разработчики СКУД прекрасно понимают, что даже на крупных объектах зачастую нет выделенных специалистов для обслуживания СКУД, обладающих навыками администрирования СУБД, поэтому стараются включать в свои продукты функции, облегчающие и автоматизирующие процессы обслуживания базы данных.
Прежде всего – резервное копирование БД, основа основ, которая позволяет администратору системы спокойно спать. Все СУБД имеют собственные средства для создания резервных копий, но хорошим тоном считается, когда функция резервного копирования интегрирована в продукт и администратору необходимо лишь включить/настроить её и периодически проверять функционирование.
Вторая частая проблема – восстановление данных после сбоя. Здесь опять же на выручку приходит свежая резервная копия, но если её нет, или критично восстановление всех возможных данных, то потребуются дополнительные усилия. К счастью, в промышленных СУБД (чего не скажешь о старых файловых СУБД типа Paradox) такие явления происходят нечасто, их может вызвать разве что «умирающий» жёсткий диск или сбой электропитания. В этом случае потребуются услуги специалиста-администратора СУБД, который сможет с помощью встроенных в любую серьёзную СУБД инструментов восстановить максимум из возможного. Также следует учесть, что некоторые производители СКУД в рамках технической поддержки оказывают услуги по восстановлению баз.
Рекомендации
- При выборе СКУД обратите внимание на то, какая СУБД поставляется совместно с системой.
- Если вы эксплуатируете СКУД, то выясните, какая СУБД в ней используется.
- Оцените трафик данных и нагрузку в вашей системе, чтобы определиться с требуемыми аппаратными ресурсами сервера СУБД и нужной редакцией СУБД (проконсультируйтесь у производителя вашей СКУД при необходимости).
- Если в вашей СКУД используется Express-версия Microsoft SQL Server или Oracle, то необходимо задаться вопросом: «Насколько нам хватит бесплатного объёма базы?». Настройте периодическое удаление из базы старых событий средствами СКУД (если таковые имеются) либо же рассмотрите вопрос о миграции на платную неограниченную версию СУБД.
- Настройте резервное копирование баз данных средствами СКУД или же средствами СУБД и регулярно проверяйте его выполнение.
- Найдите специалиста по СУБД (администратора), к которому можно будет обратиться в случае повреждения базы данных, узнайте в технической поддержке производителя СКУД возможность предоставления такого рода услуг.
www.parsec.ru
Обзор наиболее популярных субд
1.1 Microsoft Access
Microsoft Access – это интерактивная реляционная СУБД (relational database management system – RDBMS) для WINDOWS. Это программа, которую вы можете использовать для хранения и извлечения данных в зависимости от отношений, которые вы установили. Работа с ней упрощена посредством манипулятора мыши. Графические возможности оболочки производят большое впечатление при изготовлении высококачественных отчетов и распечаток. Все это благодаря поддержки True-type шрифтов и встраивания OLE-объектов (Object Linking and Embeding) в рамках среды WINDOWS. OLE – объект представляет собой ссылку на определенную информацию, которая остается в своей первоначальной форме. OLE-объектом может быть EXCEL –таблица, Paintbrush – иллюстрация или Sound –файл.
Новинкой программы Access является Cue Cards – Система суфлирования. Это обучающая система, предоставляющая пользователю рекомендации по выходу из реальных ситуаций при решении прикладных задач. При знании английского языка пользователь всегда сможет получить подсказку о том, что следует делать далее.
Access также предоставляет в распоряжение пользователя механизмы работы с базами данных различных форматов. К примеру, можно прямо обращаться к базам данных dBASE, Paradox или Btrieve без конвертирования их в формат, используемый Access. В состав пакета Access также входит язык Access Basic (встроенный диалект языка Visual Basic), дающий возможность формирования специализированных систем управления базами данных.
Теперь перейдем к более подробному рассмотрению системы Access. Основными понятиями или объектами этой системы являются: таблицы, запросы, формуляры, отчеты, макросы и модули. И, конечно же, главным понятием будет база данных (database).
Для создания базы данных необходимо выполнить следующие шаги:
Активизируйте окно Microsoft Access и выберите в меню File директиву New Database (или щелкните кнопкой New Database в строке пиктограмм). Microsoft Access высвечивает диалоговое окно New Database и автоматически дает имя вашей базе данных, которое вы можете заменить.
В строке File Name, напечатайте ваш вариант имени базы данных. Оно может содержать до 8 символов без пробелов. Microsoft Access автоматически добавляет расширение. MDB к имени вашей базы данных, если Вы этого не сделали.
Если вы хотите хранить базу данных в определенном месте, выберите соответствующую директорию в списке директорий Directories list.
Нажмите на кнопку OK.
Microsoft Access создает пустой файл базы данных и открывает окно базы данных Database window.
Базу данных можно наполнить объектами различного рода и выполнять операции с ними. Но с базой данных можно выполнять операции как с неделимым образованием. Все операции такого рода – операции управления базой данных – сосредоточены в меню File прикладного окна Access или в окне базы данных.
При открытии базы данных можно ограничить возможные операции с базой данных только чтением и ограничить круг пользователей, имеющих доступ к базе данных только собственной персоной. Если необходимо только просмотреть базу данных и содержащиеся в ней объекты, но не изменять их, то при открытии базы данных необходимо активизировать контрольный индикатор Read Only. Если необходимо предотвратить изменения данных и объектов данной базы данных со стороны других пользователей, то при открытии базы данных необходимо установить опцию Exlusive.
Если пользователь закончил работу с базой данных, то ее следует закрыть при помощи директивы Close Database в меню File, с помощью двойного щелчка мышью на кнопке вызова управляющего меню окна базы данных или нажатием клавиш (Ctrl + F4).
Таблицы.
Следующим шагом в построении базы данных будет ее заполнение, т. е. создание объектов и присвоение последним необходимых свойств. Какого бы типа ни были ваши данные, вам придется хранить их в одной или нескольких таблицах.
Таблицы являются основной формой представления информации, содержащейся в базе данных. Без таблицы нельзя спроектировать формуляр, на базе таблиц составляются запросы и отчеты.
Каждому полю, включаемому в запись, приписывается тип данных, определяющий вид информации, которая будет храниться в данном поле. Тип данных вносится в колонку Data Type, причем его можно выбрать из списка доступных типов.
В готовую спецификацию можно вносить изменения. Но при этом следует постараться внести все исправления в спецификацию до начала заполнения базы данных, т. к. попытка изменить параметры полей, заполненной базы может повлечь за собой потерю или искажение данных.
В Access-таблицы можно встроить объекты из других поддерживающих интерфейс OLE прикладных программ и связать эти объекты с их родительскими программами.
При встраивании объекта Access сохраняет объект в таблице. Двойным щелчком мышью на объекте запускается прикладная программа, с помощью которой он был изготовлен – в ней можно произвести изменения в объекте. После завершения работы с родительской программой объект в измененной форме будет сохранен в таблице.
Таблицы, находящиеся в базе данных, созданной другой программой, можно импортировать в Access, также можно и экспортировать Access-таблицы, сохраняя их в форматах, понятных другим прикладным программам управления базами данных. Но прежде чем непосредственно приступить к импорту или экспорту, необходимо совершить соответствующие установки импорта или экспорта.
Запросы.
Запросы служат для селекции и фильтрации набора данных. Они позволяют выбрать из базы только необходимую информацию, т. е. ту, которая соответствует определенному критерию(условию) и нужна для решения конкретной задачи. Например, вам может понадобиться информация о поставщиках и поставляемых ими товарах. Вы можете создать запрос типа «Какие товары поставляют московские поставщики» или «Кто из петербургских поставщиков сигарет продал за последний квартал наибольшую партию». Результат обработки программой Access такого запроса представляет собой таблицу называемую Dynaset. В эту таблицу включены выбранные из основной таблицы(или нескольких таблиц) блоки данных, которые удовлетворяют критериям запроса. Dynaset – динамический, временный набор данных, поэтому при каждом выполнении запроса он строится вновь на основе «свежих» табличных данных.
Выделяют два типа запросов:
QBE-запросы (Query by Example –Запрос по образцу). Пользователь дает им определения, специфицируя отдельные параметры в окне проектирования с использованием подсказок(образцов).
SQL — запросы (Structured Query Language – Структурированный язык запросов). Пользователь формулирует их с использованием инструкций и функций, выстраивая описание. QBE-запрос Access легко транслирует в соответствующий SQL-запрос. Обратная операция тоже не составляет труда. Вообще для Access безразлично, с каким типом запроса работает пользователь.
Запросы можно создавать с помощью Конструктора запросов, а также без помощи Конструктора запросов. Однако первый способ ускоряет проектирование нескольких специальных типов запросов.
Критерии отбора – это инструкции, посредством которых пользователь сообщает Access, какие блоки данных должны отбираться по запросу и индицироваться в Dynaset. Критерии могут задаваться для одного или нескольких полей запроса.
Пользователь может воспользоваться запросом для проведения вычислений с блоками данных. Он может задать в каждом поле некоторую функцию, обрабатывающую содержимое этого поля. Результат обработки выдается в Dynaset. Функция обработки задается в строке Total, которая появляется после нажатия в пиктографическом меню кнопки с греческой литерой «сигма». Саму функцию можно выбрать в этой строке, развернув список возможных значений.
После того как запрос спроектирован, его можно выполнить, щелкнув мышью в строке пиктограмм на кнопке с восклицательным знаком или вызывая в меню Query директиву Run. Access индицирует отобранные по запросу в Dynaset блоки в виде таблицы.
С помощью структурированного языка запросов SQL в рамках Access пользователь может сформулировать сколь угодно сложные по структуре критериев и вычислений запросы. Этот же язык позволяет управлять обработкой запросов. SQL-запрос представляет собой последовательность инструкций, в которую могут включаться выражения и вызовы агрегатных функций.
Если пользователь хочет иметь разработанный проект запроса в своем распоряжении и во время следующих сеансов работы, то он должен его сохранить с помощью директивы Save в меню File. Если проект сохраняется впервые, то после обращения к этой директиве появится диалоговое окно Save As. В нем следует назначить запросу имя, под которым он будет сохранен и включен в список запросов в окне банка данных. Имя запроса не должно совпадать с именем таблицы.
Если данный запрос уже был однажды сохранен и пользователь выбрал директиву Save, то старая версия будет заменена новым, измененным проектом запроса. Если изменения не должны испортить предыдущую версию, а должны быть сохранены в другом запросе, то следует вызвать директиву Save As и назначить сохраняемому проекту новое имя. Для сохранения табличного представления запроса следует выбрать директиву Save Query в меню File. Эта директива сохраняет изменения в проекте имеющегося запроса и заменяет предыдущую версию запроса на активную версию. Для того чтобы сохранить запрос впервые или создать копию активного запроса, Dynaset которого виден на экране, следует выбрать директиву Save Query As.
Наряду с запросами выбора, с помощью Access можно реализовать также запросы действий, параметрические запросы и запросы кросс-таблиц.
Формуляры.
Просмотр базы данных в виде таблицы в режиме заполнения дает пользователю возможность оценить базу как единое целое, сравнить записи и т.п. Часто, однако, возникает необходимость работы с отдельными записями базы. В этом случае присутствие на экране других записей (как это имеет место в режиме заполнения) только мешает и отвлекает. Работа с отдельными записями посредством формуляров позволяет сосредоточиться только на относящейся к делу информации.
Формуляр представляет собой бланк, подлежащий заполнению, или маску, накладываемую на набор данных. Бланк-формуляр позволяет упростить процесс заполнения базы данных, благодаря чему появляется возможность поручить ввод информации персоналу невысокой квалификации. Маска-формуляр позволяет ограничить объем информации, доступной пользователю, обращающемуся к базе.
Внешний вид, структура и режимы работы отдельных управляющих элементов и формуляров определяются значениями характеристик этих объектов. Характеристики объектов доступны пользователю через окно характеристик. Для установки или изменения характеристик элемента его надлежит маркировать и из меню View вызвать директиву Properties.
Для индикации инструментального окна установите в меню View опцию Toolbox. Каждый инструмент, а точнее, создаваемый с его помощью элемент управления/оформления, располагает собственным окном характеристик, и в нем в виде списка представлены стандартные установки для соответствующего управляющего элемента.
Включаемые в формуляр поля можно выбрать из списка полей, который будет виден на экране после обращения к директиве Field List в менюView.
При проектировании формуляра в него можно вставить управляющие элементы. Каждый управляющий элемент может быть связан с некоторым объектом в таблице, на которой базируется форма.
Отчеты.
Отчет – это информация, которую вы оформили в соответствии с Вашими спецификациями. Отчет позволяет извлекать и представлять данные как значимую информацию, которую вы можете использовать и распространять. Примерами отчетов могут служить почтовые адреса, накладные, суммы продаж или списки телефонов. С помощью Microsoft Access вы можете спроектировать отчет который представит информацию в том виде, в котором Вы пожелаете. Вы можете использовать множество различных элементов проектирования, таких как текст, данные, рисунки, линии, поля и графики для создания вашего отчета. От вас зависит, как и какие элементы использовать для построения отчета.
Microsoft Access обеспечивает несколько способов получения информации из вашей базы данных — используя запрос, формуляр или отчет. Вы можете выбрать тот метод, который наиболее подходит к решению вашей задачи.
Отчеты также являются эффективным средством для распечатки информации регулярного использования. Вы можете создать проект отчета и сохранить его для дальнейшего использования. Проект отчета останется неизменным, но каждый раз вы будете получать распечатку текущих данных.
Перед тем как создать отчет, подумайте о том откуда ваш отчет будет извлекать данные. Если все данные из одной таблицы, то ваш отчет будет основываться на этой таблице. Если же вам необходимы данные более чем из одной таблицы, то ваш отчет должен основываться на запросе.
Вы можете создавать отчеты как при помощи, так и без помощи Конструктора Отчетов. Конструктор намного ускорит процесс создания отчета, так как он сделает за Вас основную работу.
В прототип отчета в процессе проектирования можно встроить управляющие элементы. Управляющие элементы, встроенные в прототип отчета, могут использоваться для оформления заголовков, надписей и иллюстраций.
Для встраивания управляющих элементов в отчет на экране должно присутствовать инструментальное меню Toolbox (опция View/Toolbox). В инструментальном меню выбирается кнопка создаваемого управляющего элемента. После этого следует выполнить мышью щелчок в той позиции прототипа отчета, где надлежит разместить данный управляющий элемент. Access размещает выбранный элемент, приписывая ему по умолчанию стандартные значения характеристик (размер, цвет и т.п.).
Для изменения стандартных значений характеристик управляющего элемента можно обратиться к окну характеристик, предварительно маркировав настраиваемый элемент.
Зависимый управляющий элемент в отчете связан с полем в соответствующей таблице. С помощью зависимого управляющего элемента можно ввести данные в поле или индицировать и актуализировать их в отчете.
Связывание управляющего элемента можно выполнить одним из двух способов:
Если пользователь хочет, чтобы Access автоматически создала управляющий элемент, связанный с базовой для данного отчета таблицей, то следует воспользоваться списком полей таблицы. Он виден на экране, если установлена опция View/Field List. Управляющий элемент, изготовленный с помощью списка полей, имеет те же значения характеристик, что и поле таблицы, с которым он связан. Для выполнения связывания следует отбуксировать выбранное поле или поля из списка в отчет. Там надлежит поместить курсор мыши в позицию, где должен находиться левый верхний угол управляющего элемента (но не поля названного данного управляющего элемента), и затем отпустить кнопку мыши. Access создает для каждого поля, выбранного в списке полей, связанный управляющий элемент (текстовое поле).
Если задним числом необходимо связать с полем уже имеющийся, несвязанный управляющий элемент, то это можно выполнить с помощью окна характеристик. В этом окне после маркирования управляющего элемента в прототипе отчета перечислены характеристики этого элемента. При занесении имени связываемого поля в это окно в качестве значения характеристики ControlSource выполняется связывание.
Вы можете сохранить отчет двумя способами:
Сохраняя только его проект, структуру отчета, без данных.
В меню File выберите директиву Save.
Если отчет не был назван, напечатайте имя в строке Report Name.
Нажмите OK.
Сохраняя результат, полный отчет — проект вместе с данными – в файле, который вы сможете использовать в других поддерживаемых Windows приложениях, например, Microsoft Excel.
В меню File выберите Output To.
Следуйте инструкциям в диалоговых полях Output To.
studfiles.net
Какие СУБД используют федеральные органы власти России. ОТЧЕТ
2015/08/17 12:51:17
В ходе исследования федеральных государственных информационных систем (ФГИС) аналитический центр TAdviser Report выяснил, какие СУБД выбирают госорганы для управления своими базами данных.
Как получить полную версию отчета
Продукты Microsoft и Oracle занимают лидирующие позиции в рейтинге СУБД, составленном TAdviser Report в ходе исследования базового программного обеспечения, на котором построены ФГИС.
MS SQL Server используется в 132 ФГИС из 321 исследуемой, Oracle Database — в 90 федеральных системах.
СУБД с открытым исходным кодом MySQL (развивается и поддерживается Oracle) и Postgres также весьма популярны — на них построено 50 и 31 ФГИС соответственно.
Наиболее активным пользователем СУБД с открытым кодом является Минэкономразвития — 17 из 31 ФГИС этого министерства построены на Postgres либо MySQL.
Среди приверженцев Oracle можно выделить Росреестр и Федеральное казначейство. На СУБД этого производителя работают 12 из 15 ФГИС Росреестра и 4 из 5 — Федерального казначейства.
В федеральных системах, оператором которых является Минкомсвязь, наибольшей популярностью пользуется СУБД Microsoft SQL Server — на ней построены 8 из 16 ФГИС. Oracle используется в 6 системах.
Отечественные продукты в качестве СУБД используют Росграница (1С:База данных), Аппарат Госдумы и Минобрнауки (ИРБИС64), Федеральное агентство по правовой защите результатов интеллектуальной деятельности военного, специального и двойного назначения (Линтер ВС), ФССП, Росавиация, Росгидромет и ФГУП Радиочастотный центр (Ред База Данных — форк свободной СУБД Firebird).
В системе автоматизированных банков данных дактилоскопической информации МВД используется СУБД собственной разработки.
Системы управления базами данных, на которых работают российские ФГИС (сумма долей превышает 100%, т.к. некоторые ФГИС используют больше чем одну СУБД)
СУБД | Число ФГИС | Доля ФГИС, % |
---|---|---|
MS SQL Server | 132 | 41,1 |
Oracle Database | 90 | 28,0 |
MySQL (Oracle) | 50 | 15,6 |
PostgreSQL | 31 | 9,7 |
IBM Lotus Notes/Domino | 10 | 3,1 |
Firebird | 9 | 2,8 |
Ред База Данных (форк Firebird) | 9 | 2,8 |
MS Access | 4 | 1,2 |
IBM DB2 | 2 | 0,6 |
ИРБИС64 | 2 | 0,6 |
MongoDB | 2 | 0,6 |
Линтер-ВС | 1 | 0,3 |
SAP Sybase SQL Anywhere | 1 | 0,3 |
Pick D3 | 1 | 0,3 |
MS FoxPro | 1 | 0,3 |
IBM AIX | 1 | 0,3 |
Собственная разработка | 1 | 0,3 |
Данные: аналитический центр TAdviser Report, август 2015
В крупных ФГИС (с числом пользователей более 1000 — всего их 114) расстановка сил похожа, но лидирующей СУБД является продукт Oracle.
Системы управления базами данных, на которых работают крупные российские ФГИС
СУБД | Число ФГИС | Доля ФГИС, % |
---|---|---|
Oracle Database | 42 | 36,8 |
MS SQL Server | 36 | 31,6 |
MySQL (Oracle) | 23 | 20,2 |
PostgreSQL | 14 | 12,3 |
Firebird | 5 | 4,4 |
Ред База Данных (форк Firebird) | 2 | 1,8 |
IBM Lotus Notes/Domino | 2 | 1,8 |
MS Access | 2 | 1,8 |
IBM AIX | 1 | 0,9 |
IBM DB2 | 1 | 0,9 |
MongoDB | 1 | 0,9 |
SAP Sybase SQL Anywhere | 1 | 0,9 |
Pick D3 | 1 | 0,9 |
Данные: аналитический центр TAdviser Report, август 2015
«При таких показателях говорить о технологической независимости не приходится, — считает Олег Бартунов, генеральный директор компании «Постгрес Профессиональный». — В 2011 году был пробный блин (неудачный) с НПП. Тогда я уже говорил, что нам нужно воспитывать свои кадры, что в России нет школы субд-строения, что нам нужно использовать международную экспертизу открытых проектов, в частности, Postgres, где российское участие значительно. Сейчас идет вторая волна. Насколько она будет успешная, зависит в первую очередь от государства, ибо основные деньги на рынке — это госденьги и государство тут вправе определять политику».
По мнению Бартунова, для создания в России конкурентной СУБД необходима поддержка государства — как финансовая, так и политическая:
«Многие госруководители и владельцы компаний вполне готовы уйти от Oracle, но все надеются пересидеть. Некоторые даже закупили лицензий наперед. Госкомпании также не знают, как легально отказаться от систем на Oracle, деньги ведь уже заплачены. Тут государству нужно помочь с чем-то вроде амнистии».
Здравомыслящие люди, добавляет Бартунов, понимают, что миграция работающей системы равна пожару, плюс никто не может посчитать возможные риски. Поэтому он рекомендует проектировать на открытом ПО новые системы, попутно набирая новую экспертизу (специалистов и опыт).
«Это даст возможность оценить все риски миграции рабочей системы (в том числе и политические). После учета всех рисков можно начинать строить сбоку новую систему, замену старой», — считает он.
Процесс импортозамещения и ухода от проприетарного ПО, по словам гендиректора «Постгрес Профессиональный», не является российским изобретением, аналогичная тенденция наблюдается и в Европе.
Как получить полную версию отчета
www.tadviser.ru
1.2 Общие сведения о субд
Системы управления базами данных – программные системы, обеспечивающие все функции управления данными со стороны администраторов БД и прикладных программ пользователей.
Основными функциями СУБД являются.
Описание данных. В процессе работы прикладных программ и пользователей БД изменяется. Но эти изменения не могут быть произвольными. Обычно в БД существуют довольно жесткие ограничения на возможности манипулирования данными, которые отражают закономерности предметной области. Так в БД пользователь может образовать новый экземпляр объекта или исключить уже существующий. Но изменить характеристики этого объекта, как правило, не может. Ограничение на доступные операции с данными позволяют заранее выполнить описание данных.
Манипулирование данными. Современные СУБД представляют разработчикам прикладных программ язык манипулирования данными. В его состав входят операторы поиска данных в БД, корректировки данных, обмена данными между БД.
Загрузка БД и генерация отчетов. На универсальном языке программирования можно написать любую программу обработки данных, в том числе программу заполнения и корректировки БД или программу распечатки выходных форм. Но эти действия выполняются так часто, что для их реализации большинство СУБД имеют специальные средства. Для ввода и корректировки данных – это подсистема загрузки данных, для получения выходных форм – генератор отчетов.
Формирование запросов. Часто возникает необходимость выполнять запросы, разработанные прикладными программами. Для реализации такой возможности СУБД оснащаются языком запросов, а также интерпретатором с языка запросов.
Обеспечение диалогового режима работы с БД. В целях удобства работы пользователей и повышения оперативности доступа к данным большинство функций СУБД может осуществляться в диалоговом режиме через дисплей.
Обеспечение сервиса. Под этим термином понимается целый ряд функций, обеспечивающих целостность БД и различного рода справочные функции.
Некоторые СУБД ориентированы в большей степени на работу с документальными БД. Другие же – на работу с фактографическими БД.
1.3 Характеристика субдBase
Open Office. org Base является некоммерческим аналогом СУБД Microsoft Access. Сама программа очень проста и приятна в использовании. Но за всей ее простотой есть много функций. Как уже сложилось у разработчиков OpenOffice.org, заголовки меню всех программ полностью повторяют их аналоги от Microsoft.
Мастер отчетов отображает нужный вам отчет в приложении Writer. Там же можно вручную отредактировать этот отчет, чего не может обеспечить Access. Следует учитывать, что при всей похожести OpenOffice.org Base не совместим с Microsoft Access.
Для домашнего использования или для использования программы на малых предприятиях OpenOffice.org Base — лучший бесплатный помощник. В программе небольшое количество функций, но самое основное и необходимое в ней есть. Поэтому с уверенностью можно сказать, что OpenOffice.org Base даже сегодня может составить здоровую конкуренцию Microsoft Access.
Если в базе нет никаких данных (пустая база), то это все равно полноценная база данных. Этот факт имеет методическое значение. Хотя данных в базе и нет, но информация в ней все–таки есть — это структура базы. Она определяет методы занесения данных и хранения их в базе. Простейший «не компьютерный» вариант базы данных — деловой ежедневник, в котором каждому календарному дню выделено по странице. Даже если в нем не записано ни строки, он не перестает быть ежедневником, поскольку имеет структуру, четко отличающую его от записных книжек, рабочих тетрадей и прочей писчебумажной продукции.
Базы данных могут содержать различные объекты. Основными объектами любой базы данных являются ее таблицы. Простейшая база данных имеет хотя бы одну таблицу. Соответственно структура простейшей базы данных тождественно равна структуре ее таблицы.
Структуру двумерной таблицы образуют столбцы и строки. Их аналогами в простейшей базе данных являются поля и записи. Если записей в таблице пока нет, значит, ее структура образована только набором полей. Изменив состав полей базовой таблицы (или их свойства), мы изменяем структуру базы данных и соответственно получаем новую базу данных.
Рассмотрим объекты базы данных (на примере СУБД OpenOffice.org Base).
Таблицы
Таблицы — это основные объекты любой базы данных. Во–первых, в таблицах хранятся все данные, имеющиеся в базе, а во–вторых, таблицы хранят и структуру базы (поля, их типы и свойства). Таблица предназначена для хранения данных в виде записей (строк) и полей (столбцов). Обычно каждая таблица используется для хранения сведений по одному конкретному вопросу.
Запросы
Эти объекты служат для извлечения данных из таблиц и предоставления их пользователю в удобном виде. С помощью запросов выполняют такие операции, как отбор данных, их сортировку и фильтрацию. С помощью запросов можно выполнять преобразования данных по заданному алгоритму, создавать новые таблицы, выполнять автоматическое наполнение таблиц данными, импортированными из других источников, выполнять простейшие вычисления в таблицах и многое другое.
Формы
Если запросы — это специальные средства для отбора и анализа данных, то формы — это средства для ввода данных. Смысл их тот же — предоставить пользователю средства для заполнения только тех полей, которые ему заполнять положено. Одновременно с этим в форме можно разместить специальные элементы управления (счетчики, раскрывающиеся списки, переключатели, флажки и прочее) для автоматизации ввода. Преимущества форм раскрываются особенно наглядно, когда происходит ввод данных с заполненных бланков. В этом случае форму делают графическими средствами так, чтобы она повторяла оформление бланка — это заметно упрощает работу наборщика, снижает его утомление и предотвращает появление печатных ошибок.
Отчеты
По своим свойствам и структуре отчеты во многом похожи на формы, но предназначены только для вывода данных, причем для вывода не на экран, а на принтер. В связи с этим отчеты отличаются тем, что в них приняты специальные меры для группирования выводимых данных и для вывода специальных элементов оформления, характерных для печатных документов.
Базы данных — это тоже файлы, но работа с ними отличается от работы с файлами других типов, создаваемых прочими приложениями. Для базы данных предъявляются особые требования с точки зрения безопасности, поэтому в них реализован другой подход к сохранению данных.
Базы данных — это особые структуры. Информация, которая в них содержится, очень часто имеет общественную ценность. Нередко с одной и той же базой работают тысячи людей по всей стране. Поэтому целостность содержимого базы не может и не должна зависеть ни от конкретных действий некоего пользователя, забывшего сохранить файлы перед выключением компьютера, ни от перебоев в электросети.
Проблема безопасности баз данных решается тем, что в СУБД для сохранения информации используется двойной подход. В части операций, как обычно, участвует операционная система компьютера, но некоторые операции сохранения происходят в обход операционной системы.
Могут применяться базы данных в педагогическом процессе. Во–первых, в системе управления этим процессом. Так, можно создать базы данных «Успеваемость», «Посещаемость», «Личные данные» и т.д. с информацией об учащихся (студентах). Во–вторых, в системе непосредственного обучения с помощью ЭВМ. В этом случае база данных может содержать как информацию или задания, с которыми оперирует обучающая/контролирующая программа, так и результаты обучения/контроля.
Процесс создания базы данных можно представить в виде следующих основных этапов.
1. Определение цели создания базы данных. На первом этапе проектирования базы данных необходимо определить назначение базы данных, как она будет использоваться, и какие сведения она должна содержать. Дается словесная и документальная характеристика данной предметной области. Зная это, можно определить, какие сведения будут храниться в таблицах и в полях таблиц. База данных должна отвечать требованиям конечного пользователя. Для этого необходимо определить темы, которые должна раскрывать база данных, отчеты, которые она должна выдавать.
2. Определение таблиц, которые должна содержать база данных. Определение необходимых в базе данных таблиц может оказаться самым непростым этапом процесса проектирования базы данных, поскольку результаты, которые должна выдавать база данных: отчеты, формы и т.п. — не всегда дают полное представление о структуре таблиц, по которым они создаются. Для проектирования таблиц вовсе не обязательно использовать СУБД. Разрабатываемая модель предметной области обычно представляется в виде графической схемы, начерченной на бумаге.
При разработке таблиц рекомендуется руководствоваться следующими основными принципами:
сведения не должны дублироваться в таблице или между таблицами;
данные, хранящиеся только в одной таблице, обновляются только в этой таблице. Это исключает возможность дублирования записей, содержащих разные сведения. Например, адрес и номер телефона каждого ученика достаточно сохранить один раз, в одной таблице;
каждая таблица должна содержать информацию только на одну тему. Когда таблица содержит сведения только по одной теме, со сведениями по каждой теме можно работать независимо от остальных тем. Например, адрес читателя библиотеки хранится отдельно от списка книг, взятых этим читателем, что позволяет удалить список книг, сохранив сведения о читателе.
3. Определение необходимых в таблице полей. Каждая таблица содержит сведения по конкретной теме, а каждое поле в таблице содержит конкретный факт по теме таблицы. Например, таблица сведений об ученике может содержать поля сведений об имени, отчестве, фамилии, дате рождения, адресе, номере телефона. При составлении схемы полей для каждой таблицы необходимо учитывать следующее:
каждое поле должно быть связано с темой таблицы;
не рекомендуется включать в таблицу данные, которые являются результатом выражения;
данные следует разбить на наименьшие логические единицы (например, поля Имя и Фамилия, а не общее поле Имя)
4. Определение полей с уникальными значениями в каждой записи. Для связывания сведений, хранящихся в разных таблицах, например для связывания данных о читателе со всеми книгами, которые он брал, каждая таблица базы данных должна содержать поля или набор полей, однозначно определяющих каждую запись. Такое поле или набор полей называют первичным ключом.
5. Определение связей между таблицами. После разбиения сведений на таблицы и определения ключевых полей необходимо выбрать способ, которым СУБД будет объединять связанные сведения. Для этого необходимо определить связи между таблицами базы данных.
6. Усовершенствование структуры базы данных. После создания нужных таблиц, полей и связей необходимо еще раз просмотреть структуру базы данных и выявить возможные недочеты. Желательно это сделать до заполнения таблиц данными.
7. Ввод данных и создание других объектов базы данных. Если структуры таблиц отвечают поставленным требованиям, то можно вводить все данные. Затем можно создать все необходимые запросы, формы, отчеты.
studfiles.net
Системы управления базами данных (СУБД)
<<Назад | Содержание | Далее>>
База данных — совместно используемый набор логически связанных данных. Это единое хранилище данных, которое однократно определяется, а затем используется одновременно многими пользователями.
Система управления базами данных (СУБД) — это программное обеспечение, с помощью которого пользователи могут определять, создавать и поддерживать базу данных, а также осуществлять к ней контролируемый доступ.
В реляционных базах данных (БД самого распространенного типа) данные хранятся в таблицах. На первый взгляд, эти таблицы подобны электронным таблицам Excel, поскольку они тоже состоят из строк и столбцов. Столбцы называются полями (fields) и содержат данные определенного типа. Строки именуются записями (records). В одной строке хранится один набор данных, описывающих определенный объект. Например, если в таблице хранятся данные о клиентах, она может содержать поля для имени, адреса, города, почтового индекса, номера телефона и т.д. Для каждого клиента будет создана отдельная запись.
Таблицы – не единственный тип объектов, из которых состоят базы данных. Помимо таблиц, существуют формы, отчеты и запросы.
Формы (forms) применяются для добавления новых данных и изменения уже существующих. Формы облегчают добавление и редактирование информации, а также позволяют контролировать тип водимых данных и избегать при вводе ряда ошибок.
Для отображения данных в удобном для чтения виде используются отчеты (reports). Ознакомиться со всей информацией, хранящейся в таблице, сложно по той причине, что текст не умещается в полях целиком. Существует возможность включать в отчет не все данные, а только некоторые, что значительно повышает удобство использования.
Для вывода в отчеты определенных данных применяются запросы (queries). Использование запросов похоже на процесс поиска, – задаются конкретные критерии отбора, на основе которых база данных формирует и возвращает отчет. Например, если база данных содержит информацию о телефонных номерах, то можно запросить вывести в отчете только те телефоны, которые относятся к конкретному адресу, или только те, которые относятся к конкретной фамилии, или начинающиеся с определенных цифр и т.п. Запросы записываются на языке SQL (Structured Query Language — язык структурированных запросов).
В основе реляционных баз данных лежит понятие связей (отношений, relationships). Они позволяют разработчикам связывать несколько таблиц в базе посредством общих данных. При помощи взаимосвязей разработчики баз данных моделируют таблицы, отражающие взаимодействие объектов в реальности.
Понять принцип работы связей проще всего на примере. Пусть для хранения информации о продажах компании применяется электронная таблица Excel. Со временем в таблице накапливаются сотни записей. Многие из них соответствуют покупкам, совершенным одними и теми же клиентами. Проблема состоит в том, что при совершении повторной покупки информация об адресе клиента снова сохраняется. Со временем некоторые клиенты переезжают. Их новые адреса вводятся в электронную таблицу, но во всех прошлых записях остается прежний адрес. Существует вероятность, что рано или поздно кто-то случайно использует для отправки товара неверный адрес. Обновление адресов становится довольно непростой задачей из-за их невероятного количества. В Excel нет средств, позволяющих устранить эту проблему.
При формировании базы данных логичнее отделить все записи о клиентах от записей, относящихся к совершенным ими покупкам. В этом случае в одной таблице будет храниться информация о покупках, а в другой – о клиентах. В таблице клиентов каждому будет соответствовать только одна запись. При переезде клиента потребуется обновить только одну соответствующую ему запись, а не все записи о его покупках. В таблице, содержащей записи о покупках, вместо перечисления всей информации о покупателе будет указан уникальный идентификатор (в нашем примере поле идентификатора названо cust_ID), соответствующий определенной записи в таблице клиентов. Такие связи между таблицами и позволяют создавать реляционные базы данных.
Обе таблицы содержат поле cust_ID. В таблице клиентов поле cust_ID включает уникальные идентификаторы, называемые также первичными ключами (primary key). У каждой записи в таблице всегда существует свой идентификатор, который не повторяется, благодаря чему, в таблице обеспечен порядок, предполагающий корректное обновление, удаление и добавление данных.
В таблице покупок одно и то же значение cust_ID, напротив, может повторяться больше одного раза — в зависимости от того, сколько покупок совершил тот или иной клиент. Когда первичный ключ одной таблицы применяется в качестве поля другой, он называется внешним ключом. При использовании внешних ключей между таблицами образуются связи (relationships). Они позволяют избавиться от избыточной (дублирующей информации) и сохранить целостность данных.
В приведенном примере таблицы являются достаточно простыми. Например, в порядке вещей будет использование третьей таблицы для хранения информации о товаре (инвентарная таблица) с полем product_ID, добавляемым в таблицу покупок в качестве внешнего ключа.
Рис. 45. Схема данных. |
На рисунке 45 показана взаимосвязь между двумя таблицами, описанными в этом примере. Линия между таблицами обозначает существование связи. Число 1, расположенное слева, означает, что в таблице Клиенты параметр cust_ID является уникальным, а знак бесконечности, находящийся справа, указывает, что в таблице Покупки одно и то же значение параметра cust_ID может повторяться сколько угодно. Такое отношение называется «один-ко-многим«.
Возможности связей между таблицами не ограничены уменьшением избыточности данных. Они также позволяют создать SQL-запрос, извлекающий данные из обеих таблиц на основе определенного критерия. Например, можно создать запрос, выводящий имена и фамилии всех клиентов, совершивших покупки на сумму, превышающую некоторое пороговое значение. Формы, предназначенные для записи сразу в несколько таблиц, тоже функционируют на основе связей.
Модель реляционной СУБД была разработана в 70-80 годы XX века. К реляционным СУБД относится целый ряд программных продуктов, среди них Microsoft Access из пакета Microsoft Office, MySQL или более мощные системы промышленного уровня, таких как Microsoft SQL Server или Oracle.
В последнее время активно развивается и другая модель представления баз данных – объектная. Реляционная модель акцентирует свое внимание на структуре и связях сущностей, объектная — на их свойствах и поведении.
<<Назад | Содержание | Далее>>
inf5.ru
Система управления базами данных
Материал из Seo Wiki — Поисковая Оптимизация и Программирование
Систе́ма управле́ния ба́зами да́нных (СУБД) — специализированная программа (чаще комплекс программ), предназначенная для организации и ведения базы данных. Для создания и управления информационной системой СУБД необходима в той же степени, как для разработки программы на алгоритмическом языке необходим транслятор[источник не указан 2166 дней].
Основные функции СУБД
Обычно современная СУБД содержит следующие компоненты:
- ядро, которое отвечает за управление данными во внешней и оперативной памяти, и журнализацию,
- процессор языка базы данных, обеспечивающий оптимизацию запросов на извлечение и изменение данных и создание, как правило, машинно-независимого исполняемого внутреннего кода,
- подсистему поддержки времени исполнения, которая интерпретирует программы манипуляции данными, создающие пользовательский интерфейс с СУБД
- а также сервисные программы (внешние утилиты), обеспечивающие ряд дополнительных возможностей по обслуживанию информационной системы.
Классификация СУБД
По модели данных
Примеры:
По степени распределённости
- локальные СУБД (все части локальной СУБД размещаются на одном компьютере)
- распределённые СУБД (части СУБД могут размещаться на двух и более компьютерах).
По способу доступа к БД
В файл-серверных СУБД файлы данных располагаются централизованно на файл-сервере. СУБД располагается на каждом клиентском компьютере (рабочей станции). Доступ СУБД к данным осуществляется через локальную сеть. Синхронизация чтений и обновлений осуществляется посредством файловых блокировок. Преимуществом этой архитектуры является низкая нагрузка на ЦП сервера. Недостатки: потенциально высокая загрузка локальной сети; затруднённость централизованного управления; затруднённость обеспечения таких важных характеристик как высокая надёжность, высокая доступность и высокая безопасность.
На данный момент файл-серверные СУБД считаются устаревшими.
Примеры: Microsoft Access, Paradox, dBase, FoxPro, Visual FoxPro.
Клиент-серверная СУБД располагается на сервере вместе с БД и осуществляет доступ к БД непосредственно, в монопольном режиме. Все клиентские запросы на обработку данных обрабатываются клиент-серверной СУБД централизованно. Недостаток клиент-серверных СУБД состоит в повышенных требованиях к серверу. Достоинства: потенциально более низкая загрузка локальной сети; удобство централизованного управления; удобство обеспечения таких важных характеристик как высокая надёжность, высокая доступность и высокая безопасность.
Примеры: Oracle, Firebird, Interbase, IBM DB2, MS SQL Server, Sybase, PostgreSQL, MySQL, ЛИНТЕР, MDBS.
Встраиваемая СУБД — библиотека, которая позволяет унифицированным образом хранить большие объёмы данных на локальной машине. Доступ к данным может происходить через SQL либо через особые функции СУБД. Встраиваемые СУБД быстрее обычных клиент-серверных и не требуют установки сервера, поэтому востребованы в локальном ПО, которое имеет дело с большими объёмами данных (например, геоинформационные системы).
Примеры: OpenEdge, SQLite, BerkeleyDB, один из вариантов Firebird, MySQL, Sav Zigzag, Microsoft SQL Server Compact, ЛИНТЕР.
См. также
Примечания
Литература
- К. Дж. Дейт Введение в системы баз данных = Introduction to Database Systems. — 8-е изд. — М.: «Вильямс», 2006. — С. 1328. — ISBN 0-321-19784-4
Ссылки
На русском языке
На английском языке
www.sbup.com