В этом примере показано, как импортировать полетные данные из набора MongoDB® в рабочую область MATLAB® с помощью интерфейса C++ MongoDB. Пример затем показывает, как использовать запрос MongoDB с критериями фильтра и cписком полей, и как выполнить простой анализ данных на основе отфильтрованных полетных данных.
Создайте связь MongoDB с базой данных mongotest использование интерфейса C++ MongoDB. Здесь, сервер базы данных dbtb01 хосты эта база данных с помощью номера порта 27017.
server = "dbtb01"; port = 27017; dbname = "mongotest"; conn = mongoc(server,port,dbname)
conn = connection with properties:
Database: "mongotest"
UserName: ""
Server: "dbtb01"
Port: 27017
CollectionNames: [14×1 string]
conn connection объект, который содержит связь MongoDB. Свойства объектов содержат информацию о связи и базе данных.
Именем базы данных является mongotest.
Имя пользователя является пробелом.
Сервером базы данных является dbtb01.
Номером порта является 27017.
Эта база данных содержит 14 наборов документа.
Проверьте связь MongoDB.
isopen(conn)
ans = logical
1
Соединение с базой данных успешно потому что isopen функция возвращается 1. В противном случае соединение с базой данных закрывается.
Задайте airlinesmall набор. Задайте запрос MongoDB, чтобы фильтровать полетные данные в течение лет 1998 - 1999. Задайте поля, чтобы получить из набора.
collection = "airlinesmall"; mongoquery = "{""Year"":{""$gte"":1998,""$lt"":2000}}"; fields = strcat("{""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:
_id
Year
Month
DayofMonth
DayOfWeek
DepTime
ArrTime
Определите уникальные годы в данных.
years = [documents(:).Year]; unique(years)
ans = 1×2 int32 row vector
1998 1999
Закройте связь MongoDB.
close(conn)
mongoc | isopen | find | close | strcat | unique