Импорт отфильтрованных данных из MongoDB

В этом примере показано, как импортировать данные о рейсе из MongoDB® набор в MATLAB® рабочая область с использованием интерфейса Database Toolbox™ для MongoDB. Затем в примере показано, как использовать запрос MongoDB с критериями фильтра и списком полей, и как выполнить простой анализ данных на основе отфильтрованных рейсов данных.

Чтобы запустить этот пример, необходимо сначала установить интерфейс Database Toolbox для MongoDB. Для получения дополнительной информации смотрите Интерфейс Database Toolbox для установки 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: 23485919

conn является 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)

См. также

| | | |

Похожие темы

Внешние веб-сайты