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 | cell | string

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

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

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

Альтернативные пути к корню файловой системы, заданные как пара, разделенная запятой, состоящая из 'AlternateFileSystemRoots' и вектора строки или массива ячеек. Используйте 'AlternateFileSystemRoots', когда вы создадите datastore на локальной машине, но должны будете получить доступ и обработать данные на другой машине (возможно различной операционной системы). Кроме того, когда обработка данных с помощью Parallel Computing Toolbox™ и MATLAB® Parallel 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"]

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

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

hasdataОпределите, доступны ли данные для чтения
numpartitionsКоличество разделов datastore
partitionРазделите datastore
previewПодмножество данных в datastore
readСчитайте данные в datastore
readallСчитывайте все данные в datastore
resetСброс Datastore к начальному состоянию
transformПреобразуйте datastore
combineОбъедините данные от нескольких datastores

Примеры

свернуть все

Используйте объекты 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