Main Content

TallDatastore

tall 배열의 검사 지점 생성을 위한 데이터저장소

설명

TallDatastore 객체는 write 함수가 디스크에 쓴 이진 파일에서 tall 배열을 다시 생성하는 데 사용됩니다. 이 객체를 사용하여 원래 tall형 배열을 다시 생성하거나, TallDataStore 속성을 지정하고 객체 함수를 사용하여 데이터를 액세스하고 관리할 수 있습니다.

생성

datastore 함수를 사용하여 TallDatastore 객체를 만듭니다. 예를 들어, tds = datastore(location,"Type","tall")location으로 지정된 파일 모음에서 데이터저장소를 만듭니다.

속성

모두 확장

데이터저장소에 포함된 파일로, 문자형 벡터, 문자형 벡터로 구성된 셀형 배열, string형 스칼라 또는 string형 배열로 확인됩니다. 여기서 각 문자형 벡터 또는 string형은 파일에 대한 전체 경로입니다.

데이터저장소가 생성될 때 datastore 함수의 location 인수가 Files 속성을 정의합니다. location 인수는 로컬 파일 시스템, 네트워크 파일 시스템 또는 지원되는 원격 위치(예: Amazon S3™, Windows Azure® Blob Storage, HDFS™ 등)에 있는 파일에 대한 전체 경로를 포함합니다. 자세한 내용은 원격 데이터로 작업하기 항목을 참조하십시오.

이 파일은 write 함수에 의해 생성된 MAT 파일 또는 시퀀스 파일이어야 합니다.

예: ["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"와 함께 string형 벡터 또는 셀형 배열로 구성된 이름-값 인수로 지정됩니다. 로컬 컴퓨터에 데이터저장소를 만들지만 다른 컴퓨터(다른 운영 체제의 컴퓨터일 수 있음)의 데이터에 액세스하고 이를 처리해야 하는 경우 "AlternateFileSystemRoots"를 사용합니다. 또한 Parallel Computing Toolbox™와 MATLAB® Parallel Server™를 사용하여 데이터를 처리하고, 처리한 데이터를 다른 플랫폼 클라우드 또는 다른 클러스터 컴퓨터에 있는 데이터의 복사본과 함께 로컬 컴퓨터에 저장할 경우 "AlternateFileSystemRoots"를 사용하여 루트 경로를 연결해야 합니다.

  • 실질적으로 서로 동일한 루트 경로들의 집합을 연결하려면 "AlternateFileSystemRoots"를 string형 벡터로 지정하십시오. 예를 들면 다음과 같습니다.

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

  • 데이터저장소에 대한 실질적으로 동일한 여러 루트 경로의 집합을 여러 개 연결하려면 "AlternateFileSystemRoots"를 여러 행이 포함된 셀형 배열로 지정하십시오. 여기서 각 행은 실질적으로 동일한 루트 경로들의 집합 하나를 나타냅니다. 셀형 배열의 각 행을 string형 벡터 또는 문자형 벡터로 구성된 셀형 배열로 지정합니다. 예를 들면 다음과 같습니다.

    • "AlternateFileSystemRoots"를 string형 벡터로 구성된 셀형 배열로 지정합니다.

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

    • 또는 "AlternateFileSystemRoots"를 문자형 벡터로 구성된 셀형 배열로 지정합니다.

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

"AlternateFileSystemRoots"의 값은 다음 조건을 충족해야 합니다.

  • 하나 이상의 행을 포함합니다. 여기서 각 행은 실질적으로 동일한 여러 루트 경로를 지정합니다.

  • 각 행은 여러 개의 루트 경로를 지정하고, 각 루트 경로는 적어도 두 개의 문자를 포함해야 합니다.

  • 루트 경로는 고유하며 서로의 하위 폴더가 아닙니다.

  • 파일의 위치를 가리키는 적어도 하나의 루트 경로 항목을 포함합니다.

자세한 내용은 Set Up Datastore for Processing on Different Machines or Clusters 항목을 참조하십시오.

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

데이터형: string | cell

객체 함수

hasdata데이터를 읽을 수 있는지 확인
numpartitions데이터저장소 파티션 개수
partition데이터저장소 파티셔닝
preview데이터저장소에 있는 데이터의 서브셋 미리보기
read데이터저장소의 데이터 읽어 들이기
readall데이터저장소의 모든 데이터 읽기
reset데이터저장소를 초기 상태로 재설정
transform데이터저장소 변환
combine여러 데이터저장소의 데이터 결합
isPartitionableDetermine whether datastore is partitionable
isSubsettableDetermine whether datastore is subsettable
isShuffleableDetermine whether datastore is shuffleable

예제

모두 축소

tall형 배열을 생성한 모든 명령을 다시 실행하는 대신, TallDatastore 객체를 사용하여 디스크에 있는 파일에서 직접 tall형 배열을 다시 구성합니다. tall형 배열을 만든 다음 write 함수를 사용하여 이를 디스크에 저장합니다. datastore를 사용하여 tall형 배열을 가져온 다음 다시 tall형으로 변환합니다.

간단한 tall double형을 만듭니다.

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:\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형 배열을 복구하려면 먼저 동일한 디렉터리를 참조하는 새 데이터저장소를 만드십시오. 그런 다음 데이터저장소를 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
      :
      :

버전 내역

R2016b에 개발됨