Исследование нереляционной системы управления базой данных MongoDB
Описание процесса установки консоли MongoDB на персональный компьютер, получение базовых практических навыков для работы с ней. Особенности создания и заполнения коллекции документов, их изменение и удаление с помощью методов update, insert и remove.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | лабораторная работа |
Язык | русский |
Дата добавления | 13.06.2015 |
Размер файла | 919,9 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики
Кафедра технологии приборостроения
Пояснительная записка к лабораторной работе
По дисциплине: «Системы баз данных»
На тему: «Исследование нереляционной СУБД MongoDB»
Выполнила: студентка группы 3652
Путинцева А.А.
Преподаватель: Филиппов А.Н.
Санкт-Петербург, 2015
1. Основные сведения о работе
Цель работы: исследование нереляционной системы управления базами данных MongoDB.
Индивидуальное задание согласно варианту: изменение и удаление документов; методы update, insert.
Для достижения поставленной цели и выполнения индивидуального задания выделим следующие задачи в порядке их логического следования:
1. Изучить методическую литературу, посвященную работе с MongoDB;
2. Осуществить процесс установки MongoDB на ПК;
3. Получить базовые практические навыки работы в данной консоли:
a. Создать и заполнить коллекцию документов;
b. Произвести изменение и удаление документов с помощью методов update, insert и remove.
2. Ход работы
2.1 Установка MongoDB на компьютер
Загрузим дистрибутив консоли MongoDB с официального сайта СУБД (https://www.mongodb.org/downloads). Следует отметить, что данный ресурс предлагает на выбор набор различных версий СУБД для всех популярных операционных систем. Выберем подходящую версию: вкладка «Previous Releases» («Предыдущие Релизы») Windows Windows 32-bit.
Рисунок 1. Выбор версии MongoDB на сайте
Скачаем бинарные файлы (кнопка «DOWNLOAD (ZIP)») в нижней части страницы (Рисунок 2).
Рисунок 2. Загрузка бинарных файлов
По окончанию загрузки распакуем архив в любой удобной директории (в нашем случае - C:\mongodb) и создадим в папке bin файл с именем mongodb.config.
В созданный файл добавим следующую строку:
dbpath=ПУТЬ_СОХРАНЕНИЯ_ФАЙЛОВ_БАЗЫ_ДАННЫХ
Например, в Windows можно написать dbpath=c:\mongodb\data а в Linux - dbpath=/etc/mongodb/data. При этом указанная директория должна существовать.
Теперь можно осуществить запуск сервера и начать работу с СУБД через клиентскую консоль. Оба исполняемых файла находятся в упомянутой выше директории bin:
· mongod - сервер;
· mongo - клиентская консоль.
Запустим сервер через командную строку. Для этого вызовем mongod с параметром --config /path/to/your/mongodb.config.
В нашем случае команда будет выглядеть следующим образом:
c:\mongodb\bin\mongod --config c:\mongodb\bin\mongodb.config
Рисунок 3. Запуск сервера через командную строку
Если все сделано правильно, сервер запустится и командная строка будет выглядеть примерно следующим образом:
Рисунок 4. Командная строка после успешного запуска сервера
Теперь можно подключаться к серверу. Для этого просто запустим файл mongo.exe из директории bin. При этом откроется клиентская консоль (Рисунок 5).
Рисунок 5. Клиентская консоль после начала работы
Дальнейшая работа с MongoDB будет сводиться к написанию различных команд в клиентской консоли.
консоль установка удаление документ
2.2 Создание и заполнение коллекции документов
Создадим нашу первую коллекцию документов. В терминологии MongoDB понятие «коллекция» близко традиционному понятию «таблица» реляционных БД. При этом следующий уровень хранения данных - документы - можно поставить в аналогию строкам реляционных БД. Ключевое отличие документов от строк заключается в том, что каждый документ может иметь любое индивидуальное количество полей, в то время как количество колонок для каждой строки одинаково для всей таблицы.
В MongoDB не обязательно явно создавать БД перед началом работы с ней. Просто выберем базу данных, с которой будет вестись работа, с помощью глобального метода use. При этом БД с заданным именем будет автоматически сгенерирована в момент добавления в нее первой коллекции.
use university
Теперь клиентская консоль использует БД с именем university, и все дальнейшие действия будут производиться именной над ней. Реакция клиентской консоли выглядит следующим образом:
switched to db university
Теперь можно начинать работу с используемой БД. Все команды, которые запускаются применительно к текущей базе данных исполняются у объекта db, например, db.help(). Выведем список коллекций, присутствующих в текущей БД:
db.getCollectionNames()
Консоль выведет пустой список: [ ]
Действительно, в БД university еще не была добавлена ни одна коллекция, и список коллекций пуст.
Добавим в БД group новую коллекцию. Поскольку коллекции бесструктурны, нет необходимости создавать их явно. Можно просто вставлять документ в новую коллекцию. Для этого используем команду insert («вставить»), передав ей вставляемый документ:
db.g3652.insert({name: 'Ivan', gender: 'm', age: 20})
Данная строка осуществляет вставку документа в коллекцию g3652.
Если теперь снова выполнить db.getCollectionNames(), мы увидим две коллекции: g3652 и system.indexes. system.indexes создаётся в каждой базе данных и содержит в себе информацию об индексах этой базы:
[ "g3652", " system.indexes " ]
Теперь у коллекции g3652 можно вызвать метод find(), который вернёт список документов:
db.g3652.find()
Рисунок 6. Результат выполнения метода find()
Добавим в коллекцию сведения о других студентах:
db.g3652.insert({name: 'Vladimir', gender: 'm', age: 21, hobbies: ['programming', 'sport']})
db.g3652.insert({name: 'Mary', gender: 'f'})
db.g3652.insert({name: 'Ann', gender: 'f', captain: true})
db.g3652.insert({name: 'Vasya', gender: 'm', dept: ['math']})
Тогда результат выполнения метода find() будет выглядеть следующим образом:
Рисунок 7. Результат выполнения метода find()
2.3 Изменение данных
Редактирование данных в MongoDB производится путем вызова метода update(). В простейшей форме update принимает 2 аргумента: то, что нужно заменить, и то, чем обновить соответствующее поле.
db.g3652.update({age: 20}, {age: 21})
Предложенный способ вызова метода update производит замену полей во всех документах, в которых эти поля присутствуют. В данном случае осуществится смена возраста (поле age) с 20 лет на 21 год.
Рисунок 8. Простейший пример вызова метода update()
Для того, чтобы инкрементировать некоторое поле, используем модификатор inc.
db.g3652.update( { name: "Vladimir" } , { $inc : { age: 2 } } )
Рисунок 9. Инкрементирование данных
Данный пример демонстрирует инкремент поля age на 2.
Для установки значения какого-либо поля используется модификатор $set:
db.g3652.update({name: "Ann"}, {$set: {age: 19}})
Данный код находит документ с именем Ann и устанавливает значение age в 19. Важно, что если в данном документе нет ключа age, то он будет создан.
Рисунок 10. Вызов метода update()
2.4 Удаление документов
Для удаления документов применяется метод remove().
db.g3652.remove({name: "Vasya"})
Рисунок 11. Демонстрация работы метода Remove()
Размещено на Allbest.ru
Подобные документы
Общее понятие, основные компоненты и функции операционной системы. Порядок установи операционной системы UbuntuLinux. Особенности инсталляции веб-сервера Nginx для передачи данных по протоколу HTTP. Установка системы управления базами данных MongoDB.
курсовая работа [2,3 M], добавлен 11.06.2014Классификация баз данных. Выбор системы управления базами данных для создания базы данных в сети. Быстрый доступ и получение конкретной информации по функциям. Распределение функций при работе с базой данных. Основные особенности иерархической модели.
отчет по практике [1,2 M], добавлен 08.10.2014Исследование интегрированной среды для создания и манипулирования с табличной базой данных. Характеристика процесса работы в режиме интерпретации, создания структуры файлов. Изучение состава элементов командного языка СУБД, организации системы меню.
контрольная работа [45,0 K], добавлен 22.02.2012Разработка автоматизированной системы управления оператора мобильной связи. Операторы модификации данных Insert, Update, Delete в среде MS SQL Server. Структура базы данных. Схема диалога пользователя с приложением, порядок использования представлений.
курсовая работа [2,0 M], добавлен 21.04.2015Apple I как ранний персональный компьютер, первый компьютер Apple Computer. Основные характеристики Rhapsody, Blue Box. История создания Mac OS X, принципы ее работы, значение и направления использования. Существующие типы и формы данной системы.
курсовая работа [2,6 M], добавлен 26.11.2014Проектирование структуры базы данных. Технология обработки данных. Порядок установки и запуска программы. Описание объектов приложения и структура данных. Ввод и изменение исходных данных. Получение выходных документов и тестирование программы.
отчет по практике [2,3 M], добавлен 22.07.2012Схема взаимодействия подразделений предприятия. Выбор и обоснование технологии проектирования базы данных. Описание объектов базы данных. Разработка запросов на выборку, изменение, обновление и удаление данных. Интерфейсы взаимодействия с базой данных.
курсовая работа [1,4 M], добавлен 25.05.2023Даталогическая и инфологическая модели системы управления базой данных футбольного клуба. Обоснование выбора даталогической модели данных. Разработка структуры и системы управления базой данных. Выбор системы программирования, создание форм ввода.
курсовая работа [406,0 K], добавлен 24.12.2014Типы ограничений, поддерживающие целостность в реляционной модели данных. Определение значения поля первичного ключа с помощью генератора. Добавление, изменение и удаление записей в таблицу базы данных "Библиотека" на языке программирования SQL.
лабораторная работа [30,5 K], добавлен 10.10.2012Появление системы управления базами данных. Этапы проектирования базы данных "Строительная фирма". Инфологическая и даталогическая модель данных. Требования к информационной и программной совместимости для работы с базой данных "Строительная фирма".
курсовая работа [93,0 K], добавлен 31.03.2010