В этом примере показано, как экспортировать объекты из рабочей области MATLAB® в MongoDB® с помощью интерфейса Database Toolbox™ для MongoDB. Экспорт сериализирует объекты в MongoDB. Затем пример показывает, как импортировать объекты назад в рабочее пространство MATLAB. Импорт десериализовывает объекты и воссоздает их в MATLAB для осуществления метода. После экспорта и импорта, пример показывает, как пропустить набор.
Чтобы запустить этот пример, необходимо сначала установить интерфейс Database Toolbox для MongoDB. Для получения дополнительной информации смотрите Интерфейс Database Toolbox для Установки MongoDB.
В этом примере объекты принадлежат TensileData
класс. Этот класс является демонстрационным классом в MATLAB. Данные, используемые, чтобы создать объекты, являются выборочными данными. Для получения дополнительной информации смотрите Структурированные данные Представления с Классами. Чтобы запустить код в этом примере, задайте класс в текущей папке.
Данные представляют растяжимое напряжение или измерения деформации. Чтобы вычислить эластичный модуль различных материалов, используйте эти данные. Проще говоря, напряжение является силой, применился к материалу, и деформация является получившейся деформацией. Отношение напряжения, чтобы напрячься задает характеристику материала.
Создайте TensileData
объекты tdcs
для материалов углеродистой стали и tdss
для материалов из нержавеющей стали.
tdcs = TensileData('carbon steel',1, ... [2e4 4e4 6e4 8e4],[.12 .20 .31 .40]); tdss = TensileData('stainless steel',1, ... [2e4 4e4 6e4 8e4],[.06 .10 .16 .20]);
Создайте связь 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
. В противном случае соединение с базой данных закрывается.
Создайте TensileData
набор с помощью связи MongoDB.
collection = "TensileData";
createCollection(conn,collection)
Экспортируйте TensileData
объекты в набор. insert
функция сериализирует TensileData
объекты в структуру JSON-стиля. ntdcs
и ntdss
содержите количество объектов, экспортируемых в набор.
ntdcs = insert(conn,collection,tdcs); ntdss = insert(conn,collection,tdss);
Импортируйте TensileData
объекты в рабочее пространство MATLAB. find
функция десериализовывает TensileData
объекты в documents
массив структур.
documents = find(conn,collection);
Воссоздайте объекты в рабочем пространстве MATLAB.
tdcs = TensileData(documents(1).Material,documents(1).SampleNumber, ... documents(1).Stress,documents(1).Strain); tdss = TensileData(documents(2).Material,documents(2).SampleNumber, ... documents(2).Stress,documents(2).Strain);
Можно выполнить методы объектов после того, как они появятся в рабочем пространстве MATLAB.
Удалите все документы из набора. n
содержит количество документов, удаленных из набора.
n = remove(conn,collection,'{}')
n = 2
Пропустите набор.
dropCollection(conn,collection)
close(conn)
close
| createCollection
| dropCollection
| find
| insert
| isopen
| mongo
| remove