Class: Aws::S3::Types::SelectObjectContentRequest
- Inherits:
-
Struct
- Object
- Struct
- Aws::S3::Types::SelectObjectContentRequest
- Includes:
- Aws::Structure
- Defined in:
- lib/aws-sdk-s3/types.rb
Overview
When making an API call, you may pass SelectObjectContentRequest data as a hash:
{
bucket: "BucketName", # required
key: "ObjectKey", # required
sse_customer_algorithm: "SSECustomerAlgorithm",
sse_customer_key: "SSECustomerKey",
sse_customer_key_md5: "SSECustomerKeyMD5",
expression: "Expression", # required
expression_type: "SQL", # required, accepts SQL
request_progress: {
enabled: false,
},
input_serialization: { # required
csv: {
file_header_info: "USE", # accepts USE, IGNORE, NONE
comments: "Comments",
quote_escape_character: "QuoteEscapeCharacter",
record_delimiter: "RecordDelimiter",
field_delimiter: "FieldDelimiter",
quote_character: "QuoteCharacter",
allow_quoted_record_delimiter: false,
},
compression_type: "NONE", # accepts NONE, GZIP, BZIP2
json: {
type: "DOCUMENT", # accepts DOCUMENT, LINES
},
parquet: {
},
},
output_serialization: { # required
csv: {
quote_fields: "ALWAYS", # accepts ALWAYS, ASNEEDED
quote_escape_character: "QuoteEscapeCharacter",
record_delimiter: "RecordDelimiter",
field_delimiter: "FieldDelimiter",
quote_character: "QuoteCharacter",
},
json: {
record_delimiter: "RecordDelimiter",
},
},
scan_range: {
start: 1,
end: 1,
},
expected_bucket_owner: "AccountId",
}
Request to filter the contents of an Amazon S3 object based on a simple Structured Query Language (SQL) statement. In the request, along with the SQL expression, you must specify a data serialization format (JSON or CSV) of the object. Amazon S3 uses this to parse object data into records. It returns only records that match the specified SQL expression. You must also specify the data serialization format for the response. For more information, see [S3Select API Documentation].
[1]: docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectSELECTContent.html
Constant Summary collapse
- SENSITIVE =
[:sse_customer_key]
Instance Attribute Summary collapse
-
#bucket ⇒ String
The S3 bucket.
-
#expected_bucket_owner ⇒ String
The account ID of the expected bucket owner.
-
#expression ⇒ String
The expression that is used to query the object.
-
#expression_type ⇒ String
The type of the provided expression (for example, SQL).
-
#input_serialization ⇒ Types::InputSerialization
Describes the format of the data in the object that is being queried.
-
#key ⇒ String
The object key.
-
#output_serialization ⇒ Types::OutputSerialization
Describes the format of the data that you want Amazon S3 to return in response.
-
#request_progress ⇒ Types::RequestProgress
Specifies if periodic request progress information should be enabled.
-
#scan_range ⇒ Types::ScanRange
Specifies the byte range of the object to get the records from.
-
#sse_customer_algorithm ⇒ String
The server-side encryption (SSE) algorithm used to encrypt the object.
-
#sse_customer_key ⇒ String
The server-side encryption (SSE) customer managed key.
-
#sse_customer_key_md5 ⇒ String
The MD5 server-side encryption (SSE) customer managed key.
Instance Attribute Details
#bucket ⇒ String
The S3 bucket.
15826 15827 15828 15829 15830 15831 15832 15833 15834 15835 15836 15837 15838 15839 15840 15841 |
# File 'lib/aws-sdk-s3/types.rb', line 15826 class SelectObjectContentRequest < Struct.new( :bucket, :key, :sse_customer_algorithm, :sse_customer_key, :sse_customer_key_md5, :expression, :expression_type, :request_progress, :input_serialization, :output_serialization, :scan_range, :expected_bucket_owner) SENSITIVE = [:sse_customer_key] include Aws::Structure end |
#expected_bucket_owner ⇒ String
The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code ‘403 Forbidden` (access denied).
15826 15827 15828 15829 15830 15831 15832 15833 15834 15835 15836 15837 15838 15839 15840 15841 |
# File 'lib/aws-sdk-s3/types.rb', line 15826 class SelectObjectContentRequest < Struct.new( :bucket, :key, :sse_customer_algorithm, :sse_customer_key, :sse_customer_key_md5, :expression, :expression_type, :request_progress, :input_serialization, :output_serialization, :scan_range, :expected_bucket_owner) SENSITIVE = [:sse_customer_key] include Aws::Structure end |
#expression ⇒ String
The expression that is used to query the object.
15826 15827 15828 15829 15830 15831 15832 15833 15834 15835 15836 15837 15838 15839 15840 15841 |
# File 'lib/aws-sdk-s3/types.rb', line 15826 class SelectObjectContentRequest < Struct.new( :bucket, :key, :sse_customer_algorithm, :sse_customer_key, :sse_customer_key_md5, :expression, :expression_type, :request_progress, :input_serialization, :output_serialization, :scan_range, :expected_bucket_owner) SENSITIVE = [:sse_customer_key] include Aws::Structure end |
#expression_type ⇒ String
The type of the provided expression (for example, SQL).
15826 15827 15828 15829 15830 15831 15832 15833 15834 15835 15836 15837 15838 15839 15840 15841 |
# File 'lib/aws-sdk-s3/types.rb', line 15826 class SelectObjectContentRequest < Struct.new( :bucket, :key, :sse_customer_algorithm, :sse_customer_key, :sse_customer_key_md5, :expression, :expression_type, :request_progress, :input_serialization, :output_serialization, :scan_range, :expected_bucket_owner) SENSITIVE = [:sse_customer_key] include Aws::Structure end |
#input_serialization ⇒ Types::InputSerialization
Describes the format of the data in the object that is being queried.
15826 15827 15828 15829 15830 15831 15832 15833 15834 15835 15836 15837 15838 15839 15840 15841 |
# File 'lib/aws-sdk-s3/types.rb', line 15826 class SelectObjectContentRequest < Struct.new( :bucket, :key, :sse_customer_algorithm, :sse_customer_key, :sse_customer_key_md5, :expression, :expression_type, :request_progress, :input_serialization, :output_serialization, :scan_range, :expected_bucket_owner) SENSITIVE = [:sse_customer_key] include Aws::Structure end |
#key ⇒ String
The object key.
15826 15827 15828 15829 15830 15831 15832 15833 15834 15835 15836 15837 15838 15839 15840 15841 |
# File 'lib/aws-sdk-s3/types.rb', line 15826 class SelectObjectContentRequest < Struct.new( :bucket, :key, :sse_customer_algorithm, :sse_customer_key, :sse_customer_key_md5, :expression, :expression_type, :request_progress, :input_serialization, :output_serialization, :scan_range, :expected_bucket_owner) SENSITIVE = [:sse_customer_key] include Aws::Structure end |
#output_serialization ⇒ Types::OutputSerialization
Describes the format of the data that you want Amazon S3 to return in response.
15826 15827 15828 15829 15830 15831 15832 15833 15834 15835 15836 15837 15838 15839 15840 15841 |
# File 'lib/aws-sdk-s3/types.rb', line 15826 class SelectObjectContentRequest < Struct.new( :bucket, :key, :sse_customer_algorithm, :sse_customer_key, :sse_customer_key_md5, :expression, :expression_type, :request_progress, :input_serialization, :output_serialization, :scan_range, :expected_bucket_owner) SENSITIVE = [:sse_customer_key] include Aws::Structure end |
#request_progress ⇒ Types::RequestProgress
Specifies if periodic request progress information should be enabled.
15826 15827 15828 15829 15830 15831 15832 15833 15834 15835 15836 15837 15838 15839 15840 15841 |
# File 'lib/aws-sdk-s3/types.rb', line 15826 class SelectObjectContentRequest < Struct.new( :bucket, :key, :sse_customer_algorithm, :sse_customer_key, :sse_customer_key_md5, :expression, :expression_type, :request_progress, :input_serialization, :output_serialization, :scan_range, :expected_bucket_owner) SENSITIVE = [:sse_customer_key] include Aws::Structure end |
#scan_range ⇒ Types::ScanRange
Specifies the byte range of the object to get the records from. A record is processed when its first byte is contained by the range. This parameter is optional, but when specified, it must not be empty. See RFC 2616, Section 14.35.1 about how to specify the start and end of the range.
‘ScanRange`may be used in the following ways:
-
‘<scanrange><start>50</start><end>100</end></scanrange>` - process only the records starting between the bytes 50 and 100 (inclusive, counting from zero)
-
‘<scanrange><start>50</start></scanrange>` - process only the records starting after the byte 50
-
‘<scanrange><end>50</end></scanrange>` - process only the records within the last 50 bytes of the file.
15826 15827 15828 15829 15830 15831 15832 15833 15834 15835 15836 15837 15838 15839 15840 15841 |
# File 'lib/aws-sdk-s3/types.rb', line 15826 class SelectObjectContentRequest < Struct.new( :bucket, :key, :sse_customer_algorithm, :sse_customer_key, :sse_customer_key_md5, :expression, :expression_type, :request_progress, :input_serialization, :output_serialization, :scan_range, :expected_bucket_owner) SENSITIVE = [:sse_customer_key] include Aws::Structure end |
#sse_customer_algorithm ⇒ String
The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is needed only when the object was created using a checksum algorithm. For more information, see [Protecting data using SSE-C keys] in the *Amazon S3 User Guide*.
[1]: docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
15826 15827 15828 15829 15830 15831 15832 15833 15834 15835 15836 15837 15838 15839 15840 15841 |
# File 'lib/aws-sdk-s3/types.rb', line 15826 class SelectObjectContentRequest < Struct.new( :bucket, :key, :sse_customer_algorithm, :sse_customer_key, :sse_customer_key_md5, :expression, :expression_type, :request_progress, :input_serialization, :output_serialization, :scan_range, :expected_bucket_owner) SENSITIVE = [:sse_customer_key] include Aws::Structure end |
#sse_customer_key ⇒ String
The server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see [Protecting data using SSE-C keys] in the *Amazon S3 User Guide*.
[1]: docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
15826 15827 15828 15829 15830 15831 15832 15833 15834 15835 15836 15837 15838 15839 15840 15841 |
# File 'lib/aws-sdk-s3/types.rb', line 15826 class SelectObjectContentRequest < Struct.new( :bucket, :key, :sse_customer_algorithm, :sse_customer_key, :sse_customer_key_md5, :expression, :expression_type, :request_progress, :input_serialization, :output_serialization, :scan_range, :expected_bucket_owner) SENSITIVE = [:sse_customer_key] include Aws::Structure end |
#sse_customer_key_md5 ⇒ String
The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see [Protecting data using SSE-C keys] in the *Amazon S3 User Guide*.
[1]: docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
15826 15827 15828 15829 15830 15831 15832 15833 15834 15835 15836 15837 15838 15839 15840 15841 |
# File 'lib/aws-sdk-s3/types.rb', line 15826 class SelectObjectContentRequest < Struct.new( :bucket, :key, :sse_customer_algorithm, :sse_customer_key, :sse_customer_key_md5, :expression, :expression_type, :request_progress, :input_serialization, :output_serialization, :scan_range, :expected_bucket_owner) SENSITIVE = [:sse_customer_key] include Aws::Structure end |