Этот пример определяет минимальную задержку прибытия большого набора полетных данных, который хранится в базе данных. Можно получить доступ к большим наборам данных и создать длинный массив с помощью DatabaseDatastore
объект с Database Toolbox™. Если длинный массив существует, можно визуализировать данные в длинном массиве. В качестве альтернативы можно написать алгоритм MapReduce, который определяет фрагментацию и сокращение данных.
DatabaseDatastore
объект не поддерживает использование параллельного пула с установленным Parallel Computing Toolbox™. Чтобы анализировать данные с помощью длинных массивов или алгоритмов MapReduce запуска, установите глобальную среду выполнения быть локальным сеансом MATLAB®.
Этот пример использует предварительно сконфигурированный источник данных JDBC, чтобы создать соединение с базой данных. Для получения дополнительной информации смотрите
функция.configureJDBCDataSource
DatabaseDatastore
ОбъектУстановите глобальную среду выполнения быть локальным сеансом MATLAB®.
mapreducer(0);
Файл airlinesmall.csv
содержит большой набор полетных данных. Загрузите этот файл в таблицу базы данных Microsoft® SQL Server® airlinesmall
. Эта таблица содержит 123 523 записи.
Создайте соединение с базой данных к источнику данных JDBC MSSQLServerJDBCAuth
. Этот источник данных конфигурирует драйвер JDBC к базе данных Microsoft® SQL Server® с аутентификацией Windows®. Задайте пустое имя пользователя и пароль.
datasource = "MSSQLServerJDBCAuth"; username = ""; password = ""; conn = database(datasource,username,password);
Создайте DatabaseDatastore
объект с помощью соединения с базой данных и SQL-запроса. Этот SQL-запрос получает данные задержки прибытия от airlinesmall
таблица. databaseDatastore
выполняет SQL-запрос.
sqlquery = 'select ArrDelay from airlinesmall'; dbds = databaseDatastore(conn,sqlquery,'ReadSize',50000);
Поскольку DatabaseDatastore
объект возвращает таблицу, составьте длинную таблицу.
tt = tall(dbds);
Найдите минимальную задержку прибытия.
minArrDelay = min(tt.ArrDelay);
minArrDelay
содержит неоцененную минимальную задержку прибытия. Чтобы возвратить выходное значение, используйте gather
. Для получения дополнительной информации смотрите Отсроченную оценку Длинных массивов (MATLAB).
minArrDelayValue = gather(minArrDelay)
Evaluating tall expression using the Local MATLAB Session: - Pass 1 of 1: Completed in 1.6 sec Evaluation completed in 1.9 sec minArrDelayValue = -64
В дополнение к определению минимума длинные массивы поддерживают много других функций. Для получения дополнительной информации смотрите Поддерживающие Функции (MATLAB).
DatabaseDatastore
Объект и соединение с базой данныхclose(dbds)
database
| databaseDatastore
| gather
| histogram
| mapreducer
| min
| tall