객체 읽기 및 다운로드

이 페이지에서는 Cloud Storage에서 객체 읽기 및 다운로드와 관련된 개념을 설명합니다.

객체 읽기

객체 읽기는 열린 네트워크 연결을 통해 메모리에서 직접 객체 데이터 또는 특정 바이트 범위를 스트리밍, 사용 또는 검사하는 것을 의미합니다. 로컬에 저장되는 대신 검색된 페이로드는 일시적이며 애플리케이션 메모리 스트림, 버퍼, 파이프라인 또는 CPU/GPU 메모리에 직접 저장됩니다. 객체 읽기는 Pytorch 또는 Jax와 같은 인공지능 (AI) 및 머신러닝 (ML) 프레임워크로 학습 데이터세트 및 텐서 배치를 스트리밍하는 것과 같이 고성능의 처리량 집약적인 워크로드에 적합합니다.

다음 목록에서는 Cloud Storage에서 사용할 수 있는 객체 읽기 유형을 설명합니다.

  • 메모리 또는 대화형 객체 읽기로 객체 읽기: 데이터가 대화형으로 또는 메모리에 사용되는 메서드입니다. 클라이언트는 전체 객체를 검색하고 모든 바이트를 연속 변수, 바이트 배열 또는 메모리 내 문자열에 로드합니다.

  • 스트리밍 읽기: 전체 전송이 완료될 때까지 기다리는 대신 네트워크에서 수신되는 대로 데이터가 바이트 스트림으로 직접 사용되는 메서드입니다.

객체 다운로드

객체 다운로드는 Cloud Storage에서 로컬 파일 시스템, 디스크 또는 대상 저장 장치의 영구 파일로 객체 데이터를 전송하는 엔드 투 엔드 작업입니다. 메모리 내 스트리밍 읽기와 달리 다운로드에는 원격 바이트 가져오기와 로컬 스토리지에 커밋이 모두 포함됩니다. 객체 다운로드는 주로 범용 파일 관리, 로컬 보관, 데이터 백업, 오프라인 유틸리티 사용에 적합합니다.

REST API를 사용하는 경우 다운로드는 영구 또는 로컬 스토리지에 다운로드할 객체의 특정 부분을 정의하는 선택적 Range 헤더를 포함할 수 있는 HTTP 또는 HTTPS GET 요청을 사용하여 수행됩니다. Range 헤더를 사용하여 중단된 다운로드를 재개할 수도 있습니다. gRPC를 사용하는 경우 다운로드는 storage.v2.Storage/ReadObject 또는 BidiReadObject 스트림을 사용합니다.

다음 목록에서는 Cloud Storage에서 사용할 수 있는 객체 다운로드 유형을 설명합니다.

  • 간단한 다운로드: 가장 기본적인 형태의 객체 다운로드입니다. 클라이언트는 전체 객체 또는 지정된 바이트 범위를 하나의 연속 전송으로 검색하기 위해 단일 요청을 보냅니다.

  • 슬라이스 객체 다운로드: 단일 대형 객체가 여러 개의 작은 "슬라이스" (청크라고도 함)로 분할되는 고성능 전략입니다. 클라이언트는 여러 개의 독립적이고 동시 요청을 사용하여 이러한 슬라이스를 병렬로 다운로드한 다음 슬라이스를 로컬에서 단일 파일로 재구성합니다.

객체 읽기 및 다운로드 도구 지원

콘솔

Google Cloud 콘솔을 사용하는 경우 다음 객체 읽기 및 다운로드를 수행할 수 있습니다.

명령줄

Google Cloud CLI를 사용할 때 다음 객체 읽기 및 다운로드를 수행할 수 있습니다.

클라이언트 라이브러리

C++

C++ 클라이언트 라이브러리를 사용할 때 다음 유형의 읽기 및 다운로드를 수행할 수 있습니다.

C#

C# 클라이언트 라이브러리를 사용할 때 다음 유형의 읽기 및 다운로드를 수행할 수 있습니다.

Go

Go 클라이언트 라이브러리를 사용할 때 다음 유형의 읽기 및 다운로드를 수행할 수 있습니다.

자바

자바 클라이언트 라이브러리를 사용할 때 다음 유형의 읽기 및 다운로드를 수행할 수 있습니다.

Node.js

Node.js 클라이언트 라이브러리를 사용할 때 다음 유형의 읽기 및 다운로드를 수행할 수 있습니다.

PHP

PHP 클라이언트 라이브러리를 사용할 때 다음 유형의 읽기 및 다운로드를 수행할 수 있습니다.

Python

Python 클라이언트 라이브러리를 사용할 때 다음 유형의 읽기 및 다운로드를 수행할 수 있습니다.

Ruby

Ruby 클라이언트 라이브러리를 사용할 때 다음 유형의 읽기 및 다운로드를 수행할 수 있습니다.

REST API

REST API를 사용하여 객체를 다운로드하는 경우 요청 엔드포인트에서 사용 가능한 요청 엔드포인트에 대한 전체 논의를 참조하세요.

JSON API

JSON API를 사용할 때 다음 유형의 다운로드를 수행할 수 있습니다.

XML API

XML API를 사용할 때 다음 유형의 다운로드를 수행할 수 있습니다.

다음 단계