Экспортируйте данные MATLAB в MongoDB

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

Чтобы запустить этот пример, необходимо сначала установить интерфейс Database Toolbox для MongoDB. Для получения дополнительной информации смотрите Интерфейс Database Toolbox для Установки MongoDB.

Пример использует два набора данных: patients.xls, который содержит данные о пациентах и tsunamis.xlsx, который содержит данные о цунами. Можно найти файлы для этих наборов данных в toolbox/matlab/demos папка.

Соединитесь с 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. В противном случае соединение с базой данных закрывается.

Создайте наборы и экспортируйте данные в MongoDB

Загрузите наборы данных с помощью 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)

Закройте связь MongoDB

close(conn)

Смотрите также

| | | | | | |

Похожие темы

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