TallDatastore

Datastore для выгрузки массивов tall

Описание

Объекты TallDatastore для воссоздания массивов tall от двоичных файлов, записанных в диск функцией write. Можно использовать объект воссоздать исходный массив tall, или можно получить доступ и управлять данными путем определения свойств TallDataStore и использования объектных функций.

Создание

Создайте объекты TallDatastore с помощью функции datastore. Например, tds = datastore(location,'Type','tall') создает datastore из набора файлов, заданных location.

Свойства

развернуть все

Файлы, включенные в datastore, разрешенный как вектор символа, массив ячеек из символьных векторов, представляют в виде строки скаляр или массив строк, где каждый вектор символа или строка являются полным путем к файлу.

Аргумент location функции datastore задает свойство Files, когда datastore создается. Аргумент location содержит полные пути к файлам в локальной файловой системе, сетевой файловой системе или поддерживаемом удаленном местоположении, таким как Amazon S3™, Устройство хранения данных Windows Azure® Blob и HDFS™. Для получения дополнительной информации смотрите работу с Удаленными данными.

Файлами должны быть или MAT-файлы или файлы Последовательности, сгенерированные функцией write.

Пример: C: \dir\data\file1.ext'; 'C:\dir\data\file2.ext'}

Пример: {'s3://bucketname/path_to_files/your_file01.ext'; 's3://bucketname/path_to_files/your_file02.ext'}

Типы данных: char | ячейка | строка

Тип файла, заданный или как 'mat' для MAT-файлов или как 'seq' для файлов последовательности. По умолчанию тип файла в обеспеченном месте определяет FileType.

Типы данных: char | string

Максимальное количество строк данных, чтобы читать в вызове read или функций preview, заданных как положительное целое число. Когда функция datastore создает TallDatastore, она определяет и присваивает самое лучшее значение для ReadSize.

Альтернативные пути к корню файловой системы, заданные как пара, разделенная запятой, состоящая из 'AlternateFileSystemRoots' и вектора строки или массива ячеек. Используйте 'AlternateFileSystemRoots', когда вы создадите datastore на локальной машине, но должны будете получить доступ и обработать данные на другой машине (возможно различной операционной системы). Кроме того, при обрабатывании данных с помощью Параллельных вычислений Toolbox™ и MATLAB® Distributed Computing Server™ и данные сохранены на локальных машинах с копией доступных данных на облаке другой платформы или кластерных машинах, необходимо использовать 'AlternateFileSystemRoots', чтобы сопоставить корневые пути.

  • Чтобы сопоставить набор корневых путей, которые эквивалентны друг другу, задайте 'AlternateFileSystemRoots' как вектор строки. Например,

    ["Z:\datasets","/mynetwork/datasets"]

  • Чтобы сопоставить несколько наборов корневых путей, которые эквивалентны для datastore, задайте 'AlternateFileSystemRoots' как массив ячеек, содержащий несколько строк, где каждая строка представляет набор эквивалентных корневых путей. Задайте каждую строку в массиве ячеек или как вектор строки или как массив ячеек из символьных векторов. Например:

    • Задайте 'AlternateFileSystemRoots' как массив ячеек векторов строки.

      {["Z:\datasets", "/mynetwork/datasets"];...
       ["Y:\datasets", "/mynetwork2/datasets","S:\datasets"]}

    • Также задайте 'AlternateFileSystemRoots' как массив ячеек массива ячеек из символьных векторов.

      {{'Z:\datasets','/mynetwork/datasets'};...
       {'Y:\datasets', '/mynetwork2/datasets','S:\datasets'}}

Значение 'AlternateFileSystemRoots' должно удовлетворить эти условия:

  • Содержит одну или несколько строк, где каждая строка задает набор эквивалентных корневых путей.

  • Каждая строка задает несколько корневых путей, и каждый корневой путь должен содержать по крайней мере два символа.

  • Корневые пути уникальны и не являются подпапками друг друга.

  • Содержит по крайней мере одну корневую запись пути, которая указывает на местоположение файлов.

Для получения дополнительной информации смотрите Настроенный Datastore для Обработки на Различных Машинах или Кластерах.

Пример: Z: \datasets"",/mynetwork/datasets"]

Типы данных: представьте в виде строки | ячейка

Функции объекта

hasdataОпределите, доступны ли Данные в Чтение
numpartitionsКоличество разделов datastore
разделРазделите datastore
предварительный просмотрПодмножество данных в datastore
чтениеСчитайте данные в datastore
readallСчитывайте все данные в datastore
сбросСброс Datastore к начальному состоянию

Примеры

свернуть все

Используйте объекты TallDatastore восстановить длинные массивы непосредственно из файлов на диске вместо того, чтобы повторно выполнить все команды, которые произвели длинный массив. Создайте длинный массив и сохраните его в диск с помощью функции write. Получите массив tall с помощью datastore и затем преобразуйте его назад в tall.

Создайте простое высокое дважды.

t = tall(rand(500,1))
t =

  500×1 tall double column vector

    0.8147
    0.9058
    0.1270
    0.9134
    0.6324
    0.0975
    0.2785
    0.5469
    :
    :

Сохраните результаты в новую папку под названием ExampleData на диске C:\. (Вы можете хотеть задать различное местоположение записи, особенно если вы не используете компьютер Windows®.)

location = 'C:\ExampleData';
write(location, t);
Writing tall data to folder C:\ExampleData
Evaluating tall expression using the Parallel Pool 'local':
Evaluation completed in 0 sec

Чтобы восстановиться массив tall, который был записан в диск, сначала создайте новый datastore, который ссылается на ту же директорию. Затем преобразуйте datastore в массив tall.

tds = datastore(location);
t1 = tall(tds)
t1 =

  M×1 tall double column vector

    0.8147
    0.9058
    0.1270
    0.9134
    0.6324
    0.0975
    0.2785
    0.5469
    :
    :

Введенный в R2017b

Была ли эта тема полезной?