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® Устройство хранения данных блоба и 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
isPartitionableОпределите, partitionable ли datastore
isShuffleableОпределите, shuffleable ли 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
      :
      :

Сохраните результаты в новую папку под названием Example_Folder.

location = fullfile(matlabroot,"toolbox","matlab","demos","Folder1");
write(location, t);
Writing tall data to folder H:\21\nhossain.Bdoc21b.Apr13\matlab\toolbox\matlab\demos\Folder1
Evaluating tall expression using the Local MATLAB Session:
- Pass 1 of 1: Completed in 0.063 sec
Evaluation completed in 0.16 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