FetchGCSObject

Description:

Fetches a file from a Google Cloud Bucket. Designed to be used in tandem with ListGCSBucket.

Tags:

google cloud, google, storage, gcs, fetch

Properties:

In the list below, the names of required properties appear in bold. Any other properties (not in bold) are considered optional. The table also indicates any default values, and whether a property supports the NiFi Expression Language.

Display NameAPI NameDefault ValueAllowable ValuesDescription
Bucketgcs-bucket${gcs.bucket}Bucket of the object.
Supports Expression Language: true (will be evaluated using flow file attributes and variable registry)
Namegcs-key${filename}Name of the object.
Supports Expression Language: true (will be evaluated using flow file attributes and variable registry)
Project IDgcp-project-idGoogle Cloud Project ID
Supports Expression Language: true (will be evaluated using variable registry only)
GCP Credentials Provider ServiceGCP Credentials Provider ServiceController Service API:
GCPCredentialsService
Implementation: GCPCredentialsControllerService
The Controller Service used to obtain Google Cloud Platform credentials.
Number of retriesgcp-retry-count6How many retry attempts should be made before routing to the failure relationship.
Proxy hostgcp-proxy-hostIP or hostname of the proxy to be used. You might need to set the following properties in bootstrap for https proxy usage: -Djdk.http.auth.tunneling.disabledSchemes= -Djdk.http.auth.proxying.disabledSchemes=
Supports Expression Language: true (will be evaluated using variable registry only)
Proxy portgcp-proxy-portProxy port number
Supports Expression Language: true (will be evaluated using variable registry only)
HTTP Proxy Usernamegcp-proxy-user-nameHTTP Proxy Username
Supports Expression Language: true (will be evaluated using variable registry only)
HTTP Proxy Passwordgcp-proxy-user-passwordHTTP Proxy Password
Sensitive Property: true
Supports Expression Language: true (will be evaluated using variable registry only)
Proxy Configuration Serviceproxy-configuration-serviceController Service API:
ProxyConfigurationService
Implementation: StandardProxyConfigurationService
Specifies the Proxy Configuration Controller Service to proxy network requests. If set, it supersedes proxy settings configured per component. Supported proxies: HTTP + AuthN
Object Generationgcs-generationThe generation of the Object to download. If not set, the latest generation will be downloaded.
Supports Expression Language: true (will be evaluated using flow file attributes and variable registry)
Server Side Encryption Keygcs-server-side-encryption-keyAn AES256 Key (encoded in base64) which the object has been encrypted in.
Sensitive Property: true
Supports Expression Language: true (will be evaluated using flow file attributes and variable registry)
Range Startgcs-object-range-startThe byte position at which to start reading from the object. An empty value or a value of zero will start reading at the beginning of the object.
Supports Expression Language: true (will be evaluated using flow file attributes and variable registry)
Range Lengthgcs-object-range-lengthThe number of bytes to download from the object, starting from the Range Start. An empty value or a value that extends beyond the end of the object will read to the end of the object.
Supports Expression Language: true (will be evaluated using flow file attributes and variable registry)

Relationships:

NameDescription
successFlowFiles are routed to this relationship after a successful Google Cloud Storage operation.
failureFlowFiles are routed to this relationship if the Google Cloud Storage operation fails.

Reads Attributes:

None specified.

Writes Attributes:

NameDescription
filenameThe name of the file, parsed if possible from the Content-Disposition response header
gcs.bucketBucket of the object.
gcs.keyName of the object.
gcs.sizeSize of the object.
gcs.cache.controlData cache control of the object.
gcs.component.countThe number of components which make up the object.
gcs.content.dispositionThe data content disposition of the object.
gcs.content.encodingThe content encoding of the object.
gcs.content.languageThe content language of the object.
mime.typeThe MIME/Content-Type of the object
gcs.crc32cThe CRC32C checksum of object's data, encoded in base64 in big-endian order.
gcs.create.timeThe creation time of the object (milliseconds)
gcs.update.timeThe last modification time of the object (milliseconds)
gcs.encryption.algorithmThe algorithm used to encrypt the object.
gcs.encryption.sha256The SHA256 hash of the key used to encrypt the object
gcs.etagThe HTTP 1.1 Entity tag for the object.
gcs.generated.idThe service-generated for the object
gcs.generationThe data generation of the object.
gcs.md5The MD5 hash of the object's data encoded in base64.
gcs.media.linkThe media download link to the object.
gcs.metagenerationThe metageneration of the object.
gcs.ownerThe owner (uploader) of the object.
gcs.owner.typeThe ACL entity type of the uploader of the object.
gcs.uriThe URI of the object as a string.

State management:

This component does not store state.

Restricted:

This component is not restricted.

Input requirement:

This component requires an incoming relationship.

System Resource Considerations:

None specified.

See Also:

ListGCSBucket, PutGCSObject, DeleteGCSObject