В этом примере показано, как экспортировать данные таблицы и структуры из MATLAB® рабочая область в новую MongoDB® наборов с использованием интерфейса Database Toolbox™ для MongoDB. Затем в примере показано, как подсчитать количество документов в наборах, удалить документы из наборов и удалить наборы.
Чтобы запустить этот пример, необходимо сначала установить интерфейс Database Toolbox для MongoDB. Для получения дополнительной информации смотрите Интерфейс Database Toolbox для установки MongoDB.
В примере используются два набора данных: patients.xls
, который содержит данные о пациентах, и tsunamis.xlsx
, который содержит данные о цунами. Файлы для этих наборов данных можно найти в toolbox/matlab/demos
папка.
Создайте соединение MongoDB с базой данных mongotest
. Здесь сервер базы данных dbtb01
размещает эту базу данных с использованием номера порта 27017
.
server = "dbtb01"; port = 27017; dbname = "mongotest"; conn = mongo(server,port,dbname)
conn = mongo with properties: Database: 'mongotest' UserName: '' Server: {'dbtb01'} Port: 27017 CollectionNames: {'airlinesmall', 'employee', 'largedata' ... and 3 more} TotalDocuments: 23485919
conn
является mongo
объект, содержащий соединение MongoDB. Свойства объекта содержат информацию о подключении и базе данных.
Имя базы данных mongotest
.
Имя пользователя пусто.
Сервер базы данных dbtb01
.
Номер порта 27017
.
Эта база данных содержит шесть наборов документов. Первые три имени набора airlinesmall
, employee
, и largedata
.
Эта база данных содержит 23 485 919 документов.
Проверьте подключение MongoDB.
isopen(conn)
ans = logical 1
Подключение к базе данных успешно, поскольку isopen
функция возвращает 1
. В противном случае соединение с базой данных закроется.
Загрузите наборы данных, используя readtable
функция. Преобразуйте данные о цунами в структуру с помощью table2struct
функция. Рабочее рабочее пространство MATLAB содержит patientdata
таблица и tsunamidata
структура.
patientdata = readtable('patients.xls'); data = readtable('tsunamis.xlsx'); tsunamidata = table2struct(data);
Создайте наборы для хранения данных о пациенте и цунами с помощью соединения MongoDB.
patientcoll = "patients"; tsunamicoll = "tsunamis"; createCollection(conn,patientcoll) createCollection(conn,tsunamicoll)
Экспорт данных таблицы в patients
набор. n
содержит количество вставленных документов.
n = insert(conn,patientcoll,patientdata)
n = 100
Экспорт данных структуры в tsunamis
набор. n
содержит количество вставленных документов.
n = insert(conn,tsunamicoll,tsunamidata)
n = 162
Отображение имен всех наборов в mongotest
база данных. Новые наборы patients
и tsunamis
появляются в массиве ячеек векторов символов.
conn.CollectionNames'
ans = 9×1 cell array {'airlinesmall' } {'employee' } {'largedata' } {'nyctaxi' } {'patients' } {'product' } {'restaurants' } {'tsunamis' } {'updateCollection'}
Подсчитайте количество документов в двух новых наборах.
npatients = count(conn,patientcoll) ntsunamis = count(conn,tsunamicoll)
npatients = 100 ntsunamis = 162
Удалите все документы из обоих наборов. npatients
и ntsunamis
содержать количество документов, удаленных из каждого набора.
npatients = remove(conn,patientcoll,'{}') ntsunamis = remove(conn,tsunamicoll,'{}')
npatients = 100 ntsunamis = 162
Удалите оба наборов из mongotest
база данных.
dropCollection(conn,patientcoll) dropCollection(conn,tsunamicoll)
close(conn)
close
| count
| createCollection
| dropCollection
| insert
| isopen
| mongo
| remove