В этом примере показано, как импортировать данные полета из коллекции MongoDB ® в рабочее пространство MATLAB ® с помощью интерфейса Database Toolbox™ для MongoDB. В примере показано, как использовать запрос MongoDB с критериями фильтрации и списком полей, а также как выполнять простой анализ данных на основе отфильтрованных данных полета.
Для запуска этого примера необходимо сначала установить интерфейс Database Toolbox для MongoDB. Дополнительные сведения см. в разделе Интерфейс панели инструментов базы данных для установки MongoDB.
Создание подключения 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: 23485919conn является mongo объект, содержащий соединение MongoDB. Свойства объекта содержат сведения о соединении и базе данных.
Имя базы данных: mongotest.
Имя пользователя пустое.
Сервер базы данных: dbtb01.
Номер порта: 27017.
Эта база данных содержит шесть коллекций документов. Первые три имени коллекции: airlinesmall, employee, и largedata.
Эта база данных содержит 23 485 919 документов.
Проверьте подключение MongoDB.
isopen(conn)
ans = logical 1
Подключение к базе данных успешно выполнено, поскольку isopen функция возвращает 1. В противном случае соединение с базой данных будет закрыто.
Укажите airlinesmall сбор. Определите запрос MongoDB для фильтрации полетных данных за 1998-1999 годы. Укажите поля для извлечения из коллекции.
collection = "airlinesmall"; mongoquery = '{"Year":{$gte:1998,$lt:2000}}'; fields = ['{"Year":1.0,"Month":1.0,"DayofMonth":1.0,"DayOfWeek":1.0,' ... '"DepTime":1.0,"ArrTime":1.0}'];
Извлеките полетные данные с помощью соединения MongoDB. documents - массив структуры с полями, соответствующими указанным полям.
documents = find(conn,collection,'Query',mongoquery,'Projection',fields)
documents =
10911×1 struct array with fields:
x_id
Year
Month
DayofMonth
DayOfWeek
DepTime
ArrTime
Определите уникальные годы в данных.
years = [documents(:).Year]; unique(years)
ans =
1998 1999Закройте подключение MongoDB.
close(conn)
close | find | isopen | mongo | unique