В этом примере показано, как к таблице экспорта и данным о структуре из 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)
mongo
| isopen
| close
| createCollection
| dropCollection
| count
| insert
| remove