aws-sdk-lakeformation 1.19.0 → 1.20.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -56,6 +56,12 @@ module Aws::LakeFormation
56
56
  # catalog_id: "CatalogIdString",
57
57
  # resource_arn: "ResourceArnString", # required
58
58
  # },
59
+ # data_cells_filter: {
60
+ # table_catalog_id: "CatalogIdString",
61
+ # database_name: "NameString",
62
+ # table_name: "NameString",
63
+ # name: "NameString",
64
+ # },
59
65
  # lf_tag: {
60
66
  # catalog_id: "CatalogIdString",
61
67
  # tag_key: "NameString", # required
@@ -85,15 +91,16 @@ module Aws::LakeFormation
85
91
  # The identifier for the Data Catalog. By default, the account ID. The
86
92
  # Data Catalog is the persistent metadata store. It contains database
87
93
  # definitions, table definitions, and other control information to
88
- # manage your AWS Lake Formation environment.
94
+ # manage your Lake Formation environment.
89
95
  # @return [String]
90
96
  #
91
97
  # @!attribute [rw] resource
92
- # The resource to which to attach a tag.
98
+ # The database, table, or column resource to which to attach an
99
+ # LF-tag.
93
100
  # @return [Types::Resource]
94
101
  #
95
102
  # @!attribute [rw] lf_tags
96
- # The tags to attach to the resource.
103
+ # The LF-tags to attach to the resource.
97
104
  # @return [Array<Types::LFTagPair>]
98
105
  #
99
106
  # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/AddLFTagsToResourceRequest AWS API Documentation
@@ -118,6 +125,59 @@ module Aws::LakeFormation
118
125
  include Aws::Structure
119
126
  end
120
127
 
128
+ # A new object to add to the governed table.
129
+ #
130
+ # @note When making an API call, you may pass AddObjectInput
131
+ # data as a hash:
132
+ #
133
+ # {
134
+ # uri: "URI", # required
135
+ # etag: "ETagString", # required
136
+ # size: 1, # required
137
+ # partition_values: ["PartitionValueString"],
138
+ # }
139
+ #
140
+ # @!attribute [rw] uri
141
+ # The Amazon S3 location of the object.
142
+ # @return [String]
143
+ #
144
+ # @!attribute [rw] etag
145
+ # The Amazon S3 ETag of the object. Returned by `GetTableObjects` for
146
+ # validation and used to identify changes to the underlying data.
147
+ # @return [String]
148
+ #
149
+ # @!attribute [rw] size
150
+ # The size of the Amazon S3 object in bytes.
151
+ # @return [Integer]
152
+ #
153
+ # @!attribute [rw] partition_values
154
+ # A list of partition values for the object. A value must be specified
155
+ # for each partition key associated with the table.
156
+ #
157
+ # The supported data types are integer, long, date(yyyy-MM-dd),
158
+ # timestamp(yyyy-MM-dd HH:mm:ssXXX or yyyy-MM-dd HH:mm:ss"), string
159
+ # and decimal.
160
+ # @return [Array<String>]
161
+ #
162
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/AddObjectInput AWS API Documentation
163
+ #
164
+ class AddObjectInput < Struct.new(
165
+ :uri,
166
+ :etag,
167
+ :size,
168
+ :partition_values)
169
+ SENSITIVE = []
170
+ include Aws::Structure
171
+ end
172
+
173
+ # A structure that you pass to indicate you want all rows in a filter.
174
+ #
175
+ # @api private
176
+ #
177
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/AllRowsWildcard AWS API Documentation
178
+ #
179
+ class AllRowsWildcard < Aws::EmptyStructure; end
180
+
121
181
  # A resource to be created or added already exists.
122
182
  #
123
183
  # @!attribute [rw] message
@@ -170,6 +230,12 @@ module Aws::LakeFormation
170
230
  # catalog_id: "CatalogIdString",
171
231
  # resource_arn: "ResourceArnString", # required
172
232
  # },
233
+ # data_cells_filter: {
234
+ # table_catalog_id: "CatalogIdString",
235
+ # database_name: "NameString",
236
+ # table_name: "NameString",
237
+ # name: "NameString",
238
+ # },
173
239
  # lf_tag: {
174
240
  # catalog_id: "CatalogIdString",
175
241
  # tag_key: "NameString", # required
@@ -196,7 +262,7 @@ module Aws::LakeFormation
196
262
  # The identifier for the Data Catalog. By default, the account ID. The
197
263
  # Data Catalog is the persistent metadata store. It contains database
198
264
  # definitions, table definitions, and other control information to
199
- # manage your AWS Lake Formation environment.
265
+ # manage your Lake Formation environment.
200
266
  # @return [String]
201
267
  #
202
268
  # @!attribute [rw] entries
@@ -283,6 +349,12 @@ module Aws::LakeFormation
283
349
  # catalog_id: "CatalogIdString",
284
350
  # resource_arn: "ResourceArnString", # required
285
351
  # },
352
+ # data_cells_filter: {
353
+ # table_catalog_id: "CatalogIdString",
354
+ # database_name: "NameString",
355
+ # table_name: "NameString",
356
+ # name: "NameString",
357
+ # },
286
358
  # lf_tag: {
287
359
  # catalog_id: "CatalogIdString",
288
360
  # tag_key: "NameString", # required
@@ -373,6 +445,12 @@ module Aws::LakeFormation
373
445
  # catalog_id: "CatalogIdString",
374
446
  # resource_arn: "ResourceArnString", # required
375
447
  # },
448
+ # data_cells_filter: {
449
+ # table_catalog_id: "CatalogIdString",
450
+ # database_name: "NameString",
451
+ # table_name: "NameString",
452
+ # name: "NameString",
453
+ # },
376
454
  # lf_tag: {
377
455
  # catalog_id: "CatalogIdString",
378
456
  # tag_key: "NameString", # required
@@ -399,7 +477,7 @@ module Aws::LakeFormation
399
477
  # The identifier for the Data Catalog. By default, the account ID. The
400
478
  # Data Catalog is the persistent metadata store. It contains database
401
479
  # definitions, table definitions, and other control information to
402
- # manage your AWS Lake Formation environment.
480
+ # manage your Lake Formation environment.
403
481
  # @return [String]
404
482
  #
405
483
  # @!attribute [rw] entries
@@ -428,6 +506,29 @@ module Aws::LakeFormation
428
506
  include Aws::Structure
429
507
  end
430
508
 
509
+ # @note When making an API call, you may pass CancelTransactionRequest
510
+ # data as a hash:
511
+ #
512
+ # {
513
+ # transaction_id: "TransactionIdString", # required
514
+ # }
515
+ #
516
+ # @!attribute [rw] transaction_id
517
+ # The transaction to cancel.
518
+ # @return [String]
519
+ #
520
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/CancelTransactionRequest AWS API Documentation
521
+ #
522
+ class CancelTransactionRequest < Struct.new(
523
+ :transaction_id)
524
+ SENSITIVE = []
525
+ include Aws::Structure
526
+ end
527
+
528
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/CancelTransactionResponse AWS API Documentation
529
+ #
530
+ class CancelTransactionResponse < Aws::EmptyStructure; end
531
+
431
532
  # A structure for the catalog object.
432
533
  #
433
534
  # @api private
@@ -436,7 +537,7 @@ module Aws::LakeFormation
436
537
  #
437
538
  class CatalogResource < Aws::EmptyStructure; end
438
539
 
439
- # A structure containing the name of a column resource and the tags
540
+ # A structure containing the name of a column resource and the LF-tags
440
541
  # attached to it.
441
542
  #
442
543
  # @!attribute [rw] name
@@ -444,7 +545,7 @@ module Aws::LakeFormation
444
545
  # @return [String]
445
546
  #
446
547
  # @!attribute [rw] lf_tags
447
- # The tags attached to a column resource.
548
+ # The LF-tags attached to a column resource.
448
549
  # @return [Array<Types::LFTagPair>]
449
550
  #
450
551
  # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/ColumnLFTag AWS API Documentation
@@ -478,6 +579,37 @@ module Aws::LakeFormation
478
579
  include Aws::Structure
479
580
  end
480
581
 
582
+ # @note When making an API call, you may pass CommitTransactionRequest
583
+ # data as a hash:
584
+ #
585
+ # {
586
+ # transaction_id: "TransactionIdString", # required
587
+ # }
588
+ #
589
+ # @!attribute [rw] transaction_id
590
+ # The transaction to commit.
591
+ # @return [String]
592
+ #
593
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/CommitTransactionRequest AWS API Documentation
594
+ #
595
+ class CommitTransactionRequest < Struct.new(
596
+ :transaction_id)
597
+ SENSITIVE = []
598
+ include Aws::Structure
599
+ end
600
+
601
+ # @!attribute [rw] transaction_status
602
+ # The status of the transaction.
603
+ # @return [String]
604
+ #
605
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/CommitTransactionResponse AWS API Documentation
606
+ #
607
+ class CommitTransactionResponse < Struct.new(
608
+ :transaction_status)
609
+ SENSITIVE = []
610
+ include Aws::Structure
611
+ end
612
+
481
613
  # Two processes are trying to modify a resource simultaneously.
482
614
  #
483
615
  # @!attribute [rw] message
@@ -492,6 +624,44 @@ module Aws::LakeFormation
492
624
  include Aws::Structure
493
625
  end
494
626
 
627
+ # @note When making an API call, you may pass CreateDataCellsFilterRequest
628
+ # data as a hash:
629
+ #
630
+ # {
631
+ # table_data: { # required
632
+ # table_catalog_id: "CatalogIdString", # required
633
+ # database_name: "NameString", # required
634
+ # table_name: "NameString", # required
635
+ # name: "NameString", # required
636
+ # row_filter: {
637
+ # filter_expression: "PredicateString",
638
+ # all_rows_wildcard: {
639
+ # },
640
+ # },
641
+ # column_names: ["NameString"],
642
+ # column_wildcard: {
643
+ # excluded_column_names: ["NameString"],
644
+ # },
645
+ # },
646
+ # }
647
+ #
648
+ # @!attribute [rw] table_data
649
+ # A `DataCellsFilter` structure containing information about the data
650
+ # cells filter.
651
+ # @return [Types::DataCellsFilter]
652
+ #
653
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/CreateDataCellsFilterRequest AWS API Documentation
654
+ #
655
+ class CreateDataCellsFilterRequest < Struct.new(
656
+ :table_data)
657
+ SENSITIVE = []
658
+ include Aws::Structure
659
+ end
660
+
661
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/CreateDataCellsFilterResponse AWS API Documentation
662
+ #
663
+ class CreateDataCellsFilterResponse < Aws::EmptyStructure; end
664
+
495
665
  # @note When making an API call, you may pass CreateLFTagRequest
496
666
  # data as a hash:
497
667
  #
@@ -505,11 +675,11 @@ module Aws::LakeFormation
505
675
  # The identifier for the Data Catalog. By default, the account ID. The
506
676
  # Data Catalog is the persistent metadata store. It contains database
507
677
  # definitions, table definitions, and other control information to
508
- # manage your AWS Lake Formation environment.
678
+ # manage your Lake Formation environment.
509
679
  # @return [String]
510
680
  #
511
681
  # @!attribute [rw] tag_key
512
- # The key-name for the tag.
682
+ # The key-name for the LF-tag.
513
683
  # @return [String]
514
684
  #
515
685
  # @!attribute [rw] tag_values
@@ -530,6 +700,108 @@ module Aws::LakeFormation
530
700
  #
531
701
  class CreateLFTagResponse < Aws::EmptyStructure; end
532
702
 
703
+ # A structure that describes certain columns on certain rows.
704
+ #
705
+ # @note When making an API call, you may pass DataCellsFilter
706
+ # data as a hash:
707
+ #
708
+ # {
709
+ # table_catalog_id: "CatalogIdString", # required
710
+ # database_name: "NameString", # required
711
+ # table_name: "NameString", # required
712
+ # name: "NameString", # required
713
+ # row_filter: {
714
+ # filter_expression: "PredicateString",
715
+ # all_rows_wildcard: {
716
+ # },
717
+ # },
718
+ # column_names: ["NameString"],
719
+ # column_wildcard: {
720
+ # excluded_column_names: ["NameString"],
721
+ # },
722
+ # }
723
+ #
724
+ # @!attribute [rw] table_catalog_id
725
+ # The ID of the catalog to which the table belongs.
726
+ # @return [String]
727
+ #
728
+ # @!attribute [rw] database_name
729
+ # A database in the Glue Data Catalog.
730
+ # @return [String]
731
+ #
732
+ # @!attribute [rw] table_name
733
+ # A table in the database.
734
+ # @return [String]
735
+ #
736
+ # @!attribute [rw] name
737
+ # The name given by the user to the data filter cell.
738
+ # @return [String]
739
+ #
740
+ # @!attribute [rw] row_filter
741
+ # A PartiQL predicate.
742
+ # @return [Types::RowFilter]
743
+ #
744
+ # @!attribute [rw] column_names
745
+ # A list of column names.
746
+ # @return [Array<String>]
747
+ #
748
+ # @!attribute [rw] column_wildcard
749
+ # A wildcard with exclusions.
750
+ # @return [Types::ColumnWildcard]
751
+ #
752
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/DataCellsFilter AWS API Documentation
753
+ #
754
+ class DataCellsFilter < Struct.new(
755
+ :table_catalog_id,
756
+ :database_name,
757
+ :table_name,
758
+ :name,
759
+ :row_filter,
760
+ :column_names,
761
+ :column_wildcard)
762
+ SENSITIVE = []
763
+ include Aws::Structure
764
+ end
765
+
766
+ # A structure for a data cells filter resource.
767
+ #
768
+ # @note When making an API call, you may pass DataCellsFilterResource
769
+ # data as a hash:
770
+ #
771
+ # {
772
+ # table_catalog_id: "CatalogIdString",
773
+ # database_name: "NameString",
774
+ # table_name: "NameString",
775
+ # name: "NameString",
776
+ # }
777
+ #
778
+ # @!attribute [rw] table_catalog_id
779
+ # The ID of the catalog to which the table belongs.
780
+ # @return [String]
781
+ #
782
+ # @!attribute [rw] database_name
783
+ # A database in the Glue Data Catalog.
784
+ # @return [String]
785
+ #
786
+ # @!attribute [rw] table_name
787
+ # The name of the table.
788
+ # @return [String]
789
+ #
790
+ # @!attribute [rw] name
791
+ # The name of the data cells filter.
792
+ # @return [String]
793
+ #
794
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/DataCellsFilterResource AWS API Documentation
795
+ #
796
+ class DataCellsFilterResource < Struct.new(
797
+ :table_catalog_id,
798
+ :database_name,
799
+ :table_name,
800
+ :name)
801
+ SENSITIVE = []
802
+ include Aws::Structure
803
+ end
804
+
533
805
  # The AWS Lake Formation principal. Supported principals are IAM users
534
806
  # or IAM roles.
535
807
  #
@@ -541,7 +813,7 @@ module Aws::LakeFormation
541
813
  # }
542
814
  #
543
815
  # @!attribute [rw] data_lake_principal_identifier
544
- # An identifier for the AWS Lake Formation principal.
816
+ # An identifier for the Lake Formation principal.
545
817
  # @return [String]
546
818
  #
547
819
  # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/DataLakePrincipal AWS API Documentation
@@ -552,7 +824,7 @@ module Aws::LakeFormation
552
824
  include Aws::Structure
553
825
  end
554
826
 
555
- # A structure representing a list of AWS Lake Formation principals
827
+ # A structure representing a list of Lake Formation principals
556
828
  # designated as data lake administrators and lists of principal
557
829
  # permission entries for default create database and default create
558
830
  # table permissions.
@@ -586,24 +858,62 @@ module Aws::LakeFormation
586
858
  # }
587
859
  #
588
860
  # @!attribute [rw] data_lake_admins
589
- # A list of AWS Lake Formation principals. Supported principals are
590
- # IAM users or IAM roles.
861
+ # A list of Lake Formation principals. Supported principals are IAM
862
+ # users or IAM roles.
591
863
  # @return [Array<Types::DataLakePrincipal>]
592
864
  #
593
865
  # @!attribute [rw] create_database_default_permissions
594
- # A structure representing a list of up to three principal permissions
595
- # entries for default create database permissions.
866
+ # Specifies whether access control on newly created database is
867
+ # managed by Lake Formation permissions or exclusively by IAM
868
+ # permissions. You can override this default setting when you create a
869
+ # database.
870
+ #
871
+ # A null value indicates access control by Lake Formation permissions.
872
+ # A value that assigns ALL to IAM\_ALLOWED\_PRINCIPALS indicates
873
+ # access control by IAM permissions. This is referred to as the
874
+ # setting "Use only IAM access control," and is for backward
875
+ # compatibility with the Glue permission model implemented by IAM
876
+ # permissions.
877
+ #
878
+ # The only permitted values are an empty array or an array that
879
+ # contains a single JSON object that grants ALL to
880
+ # IAM\_ALLOWED\_PRINCIPALS.
881
+ #
882
+ # For more information, see [Changing the Default Security Settings
883
+ # for Your Data Lake][1].
884
+ #
885
+ #
886
+ #
887
+ # [1]: https://docs.aws.amazon.com/lake-formation/latest/dg/change-settings.html
596
888
  # @return [Array<Types::PrincipalPermissions>]
597
889
  #
598
890
  # @!attribute [rw] create_table_default_permissions
599
- # A structure representing a list of up to three principal permissions
600
- # entries for default create table permissions.
891
+ # Specifies whether access control on newly created table is managed
892
+ # by Lake Formation permissions or exclusively by IAM permissions.
893
+ #
894
+ # A null value indicates access control by Lake Formation permissions.
895
+ # A value that assigns ALL to IAM\_ALLOWED\_PRINCIPALS indicates
896
+ # access control by IAM permissions. This is referred to as the
897
+ # setting "Use only IAM access control," and is for backward
898
+ # compatibility with the Glue permission model implemented by IAM
899
+ # permissions.
900
+ #
901
+ # The only permitted values are an empty array or an array that
902
+ # contains a single JSON object that grants ALL to
903
+ # IAM\_ALLOWED\_PRINCIPALS.
904
+ #
905
+ # For more information, see [Changing the Default Security Settings
906
+ # for Your Data Lake][1].
907
+ #
908
+ #
909
+ #
910
+ # [1]: https://docs.aws.amazon.com/lake-formation/latest/dg/change-settings.html
601
911
  # @return [Array<Types::PrincipalPermissions>]
602
912
  #
603
913
  # @!attribute [rw] trusted_resource_owners
604
914
  # A list of the resource-owning account IDs that the caller's account
605
915
  # can use to share their user access details (user ARNs). The user
606
- # ARNs can be logged in the resource owner's AWS CloudTrail log.
916
+ # ARNs can be logged in the resource owner's CloudTrail log.
607
917
  #
608
918
  # You may want to specify this property when you are in a high-trust
609
919
  # boundary, such as the same team or company.
@@ -633,8 +943,7 @@ module Aws::LakeFormation
633
943
  #
634
944
  # @!attribute [rw] catalog_id
635
945
  # The identifier for the Data Catalog where the location is registered
636
- # with AWS Lake Formation. By default, it is the account ID of the
637
- # caller.
946
+ # with Lake Formation. By default, it is the account ID of the caller.
638
947
  # @return [String]
639
948
  #
640
949
  # @!attribute [rw] resource_arn
@@ -679,6 +988,47 @@ module Aws::LakeFormation
679
988
  include Aws::Structure
680
989
  end
681
990
 
991
+ # @note When making an API call, you may pass DeleteDataCellsFilterRequest
992
+ # data as a hash:
993
+ #
994
+ # {
995
+ # table_catalog_id: "CatalogIdString",
996
+ # database_name: "NameString",
997
+ # table_name: "NameString",
998
+ # name: "NameString",
999
+ # }
1000
+ #
1001
+ # @!attribute [rw] table_catalog_id
1002
+ # The ID of the catalog to which the table belongs.
1003
+ # @return [String]
1004
+ #
1005
+ # @!attribute [rw] database_name
1006
+ # A database in the Glue Data Catalog.
1007
+ # @return [String]
1008
+ #
1009
+ # @!attribute [rw] table_name
1010
+ # A table in the database.
1011
+ # @return [String]
1012
+ #
1013
+ # @!attribute [rw] name
1014
+ # The name given by the user to the data filter cell.
1015
+ # @return [String]
1016
+ #
1017
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/DeleteDataCellsFilterRequest AWS API Documentation
1018
+ #
1019
+ class DeleteDataCellsFilterRequest < Struct.new(
1020
+ :table_catalog_id,
1021
+ :database_name,
1022
+ :table_name,
1023
+ :name)
1024
+ SENSITIVE = []
1025
+ include Aws::Structure
1026
+ end
1027
+
1028
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/DeleteDataCellsFilterResponse AWS API Documentation
1029
+ #
1030
+ class DeleteDataCellsFilterResponse < Aws::EmptyStructure; end
1031
+
682
1032
  # @note When making an API call, you may pass DeleteLFTagRequest
683
1033
  # data as a hash:
684
1034
  #
@@ -691,11 +1041,11 @@ module Aws::LakeFormation
691
1041
  # The identifier for the Data Catalog. By default, the account ID. The
692
1042
  # Data Catalog is the persistent metadata store. It contains database
693
1043
  # definitions, table definitions, and other control information to
694
- # manage your AWS Lake Formation environment.
1044
+ # manage your Lake Formation environment.
695
1045
  # @return [String]
696
1046
  #
697
1047
  # @!attribute [rw] tag_key
698
- # The key-name for the tag to delete.
1048
+ # The key-name for the LF-tag to delete.
699
1049
  # @return [String]
700
1050
  #
701
1051
  # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/DeleteLFTagRequest AWS API Documentation
@@ -711,6 +1061,95 @@ module Aws::LakeFormation
711
1061
  #
712
1062
  class DeleteLFTagResponse < Aws::EmptyStructure; end
713
1063
 
1064
+ # An object to delete from the governed table.
1065
+ #
1066
+ # @note When making an API call, you may pass DeleteObjectInput
1067
+ # data as a hash:
1068
+ #
1069
+ # {
1070
+ # uri: "URI", # required
1071
+ # etag: "ETagString",
1072
+ # partition_values: ["PartitionValueString"],
1073
+ # }
1074
+ #
1075
+ # @!attribute [rw] uri
1076
+ # The Amazon S3 location of the object to delete.
1077
+ # @return [String]
1078
+ #
1079
+ # @!attribute [rw] etag
1080
+ # The Amazon S3 ETag of the object. Returned by `GetTableObjects` for
1081
+ # validation and used to identify changes to the underlying data.
1082
+ # @return [String]
1083
+ #
1084
+ # @!attribute [rw] partition_values
1085
+ # A list of partition values for the object. A value must be specified
1086
+ # for each partition key associated with the governed table.
1087
+ # @return [Array<String>]
1088
+ #
1089
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/DeleteObjectInput AWS API Documentation
1090
+ #
1091
+ class DeleteObjectInput < Struct.new(
1092
+ :uri,
1093
+ :etag,
1094
+ :partition_values)
1095
+ SENSITIVE = []
1096
+ include Aws::Structure
1097
+ end
1098
+
1099
+ # @note When making an API call, you may pass DeleteObjectsOnCancelRequest
1100
+ # data as a hash:
1101
+ #
1102
+ # {
1103
+ # catalog_id: "CatalogIdString",
1104
+ # database_name: "NameString", # required
1105
+ # table_name: "NameString", # required
1106
+ # transaction_id: "TransactionIdString", # required
1107
+ # objects: [ # required
1108
+ # {
1109
+ # uri: "URI", # required
1110
+ # etag: "ETagString",
1111
+ # },
1112
+ # ],
1113
+ # }
1114
+ #
1115
+ # @!attribute [rw] catalog_id
1116
+ # The Glue data catalog that contains the governed table. Defaults to
1117
+ # the current account ID.
1118
+ # @return [String]
1119
+ #
1120
+ # @!attribute [rw] database_name
1121
+ # The database that contains the governed table.
1122
+ # @return [String]
1123
+ #
1124
+ # @!attribute [rw] table_name
1125
+ # The name of the governed table.
1126
+ # @return [String]
1127
+ #
1128
+ # @!attribute [rw] transaction_id
1129
+ # ID of the transaction that the writes occur in.
1130
+ # @return [String]
1131
+ #
1132
+ # @!attribute [rw] objects
1133
+ # A list of VirtualObject structures, which indicates the Amazon S3
1134
+ # objects to be deleted if the transaction cancels.
1135
+ # @return [Array<Types::VirtualObject>]
1136
+ #
1137
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/DeleteObjectsOnCancelRequest AWS API Documentation
1138
+ #
1139
+ class DeleteObjectsOnCancelRequest < Struct.new(
1140
+ :catalog_id,
1141
+ :database_name,
1142
+ :table_name,
1143
+ :transaction_id,
1144
+ :objects)
1145
+ SENSITIVE = []
1146
+ include Aws::Structure
1147
+ end
1148
+
1149
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/DeleteObjectsOnCancelResponse AWS API Documentation
1150
+ #
1151
+ class DeleteObjectsOnCancelResponse < Aws::EmptyStructure; end
1152
+
714
1153
  # @note When making an API call, you may pass DeregisterResourceRequest
715
1154
  # data as a hash:
716
1155
  #
@@ -755,8 +1194,7 @@ module Aws::LakeFormation
755
1194
  end
756
1195
 
757
1196
  # @!attribute [rw] resource_info
758
- # A structure containing information about an AWS Lake Formation
759
- # resource.
1197
+ # A structure containing information about an Lake Formation resource.
760
1198
  # @return [Types::ResourceInfo]
761
1199
  #
762
1200
  # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/DescribeResourceResponse AWS API Documentation
@@ -767,16 +1205,46 @@ module Aws::LakeFormation
767
1205
  include Aws::Structure
768
1206
  end
769
1207
 
1208
+ # @note When making an API call, you may pass DescribeTransactionRequest
1209
+ # data as a hash:
1210
+ #
1211
+ # {
1212
+ # transaction_id: "TransactionIdString", # required
1213
+ # }
1214
+ #
1215
+ # @!attribute [rw] transaction_id
1216
+ # The transaction for which to return status.
1217
+ # @return [String]
1218
+ #
1219
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/DescribeTransactionRequest AWS API Documentation
1220
+ #
1221
+ class DescribeTransactionRequest < Struct.new(
1222
+ :transaction_id)
1223
+ SENSITIVE = []
1224
+ include Aws::Structure
1225
+ end
1226
+
1227
+ # @!attribute [rw] transaction_description
1228
+ # Returns a `TransactionDescription` object containing information
1229
+ # about the transaction.
1230
+ # @return [Types::TransactionDescription]
1231
+ #
1232
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/DescribeTransactionResponse AWS API Documentation
1233
+ #
1234
+ class DescribeTransactionResponse < Struct.new(
1235
+ :transaction_description)
1236
+ SENSITIVE = []
1237
+ include Aws::Structure
1238
+ end
1239
+
770
1240
  # A structure containing the additional details to be returned in the
771
1241
  # `AdditionalDetails` attribute of `PrincipalResourcePermissions`.
772
1242
  #
773
- # If a catalog resource is shared through AWS Resource Access Manager
774
- # (AWS RAM), then there will exist a corresponding RAM resource share
775
- # ARN.
1243
+ # If a catalog resource is shared through Resource Access Manager (RAM),
1244
+ # then there will exist a corresponding RAM resource share ARN.
776
1245
  #
777
1246
  # @!attribute [rw] resource_share
778
- # A resource share ARN for a catalog resource shared through AWS
779
- # Resource Access Manager (AWS RAM).
1247
+ # A resource share ARN for a catalog resource shared through RAM.
780
1248
  # @return [Array<String>]
781
1249
  #
782
1250
  # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/DetailsMap AWS API Documentation
@@ -820,7 +1288,68 @@ module Aws::LakeFormation
820
1288
  include Aws::Structure
821
1289
  end
822
1290
 
823
- # This structure describes the filtering of columns in a table based on
1291
+ # Statistics related to the processing of a query statement.
1292
+ #
1293
+ # @!attribute [rw] average_execution_time_millis
1294
+ # The average time the request took to be executed.
1295
+ # @return [Integer]
1296
+ #
1297
+ # @!attribute [rw] data_scanned_bytes
1298
+ # The amount of data that was scanned in bytes.
1299
+ # @return [Integer]
1300
+ #
1301
+ # @!attribute [rw] work_units_executed_count
1302
+ # The number of work units executed.
1303
+ # @return [Integer]
1304
+ #
1305
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/ExecutionStatistics AWS API Documentation
1306
+ #
1307
+ class ExecutionStatistics < Struct.new(
1308
+ :average_execution_time_millis,
1309
+ :data_scanned_bytes,
1310
+ :work_units_executed_count)
1311
+ SENSITIVE = []
1312
+ include Aws::Structure
1313
+ end
1314
+
1315
+ # Contains details about an error where the query request expired.
1316
+ #
1317
+ # @!attribute [rw] message
1318
+ # A message describing the error.
1319
+ # @return [String]
1320
+ #
1321
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/ExpiredException AWS API Documentation
1322
+ #
1323
+ class ExpiredException < Struct.new(
1324
+ :message)
1325
+ SENSITIVE = []
1326
+ include Aws::Structure
1327
+ end
1328
+
1329
+ # @note When making an API call, you may pass ExtendTransactionRequest
1330
+ # data as a hash:
1331
+ #
1332
+ # {
1333
+ # transaction_id: "TransactionIdString",
1334
+ # }
1335
+ #
1336
+ # @!attribute [rw] transaction_id
1337
+ # The transaction to extend.
1338
+ # @return [String]
1339
+ #
1340
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/ExtendTransactionRequest AWS API Documentation
1341
+ #
1342
+ class ExtendTransactionRequest < Struct.new(
1343
+ :transaction_id)
1344
+ SENSITIVE = []
1345
+ include Aws::Structure
1346
+ end
1347
+
1348
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/ExtendTransactionResponse AWS API Documentation
1349
+ #
1350
+ class ExtendTransactionResponse < Aws::EmptyStructure; end
1351
+
1352
+ # This structure describes the filtering of columns in a table based on
824
1353
  # a filter condition.
825
1354
  #
826
1355
  # @note When making an API call, you may pass FilterCondition
@@ -865,7 +1394,7 @@ module Aws::LakeFormation
865
1394
  # The identifier for the Data Catalog. By default, the account ID. The
866
1395
  # Data Catalog is the persistent metadata store. It contains database
867
1396
  # definitions, table definitions, and other control information to
868
- # manage your AWS Lake Formation environment.
1397
+ # manage your Lake Formation environment.
869
1398
  # @return [String]
870
1399
  #
871
1400
  # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/GetDataLakeSettingsRequest AWS API Documentation
@@ -877,7 +1406,7 @@ module Aws::LakeFormation
877
1406
  end
878
1407
 
879
1408
  # @!attribute [rw] data_lake_settings
880
- # A structure representing a list of AWS Lake Formation principals
1409
+ # A structure representing a list of Lake Formation principals
881
1410
  # designated as data lake administrators.
882
1411
  # @return [Types::DataLakeSettings]
883
1412
  #
@@ -903,7 +1432,7 @@ module Aws::LakeFormation
903
1432
  # The identifier for the Data Catalog. By default, the account ID. The
904
1433
  # Data Catalog is the persistent metadata store. It contains database
905
1434
  # definitions, table definitions, and other control information to
906
- # manage your AWS Lake Formation environment.
1435
+ # manage your Lake Formation environment.
907
1436
  # @return [String]
908
1437
  #
909
1438
  # @!attribute [rw] resource_arn
@@ -962,11 +1491,11 @@ module Aws::LakeFormation
962
1491
  # The identifier for the Data Catalog. By default, the account ID. The
963
1492
  # Data Catalog is the persistent metadata store. It contains database
964
1493
  # definitions, table definitions, and other control information to
965
- # manage your AWS Lake Formation environment.
1494
+ # manage your Lake Formation environment.
966
1495
  # @return [String]
967
1496
  #
968
1497
  # @!attribute [rw] tag_key
969
- # The key-name for the tag.
1498
+ # The key-name for the LF-tag.
970
1499
  # @return [String]
971
1500
  #
972
1501
  # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/GetLFTagRequest AWS API Documentation
@@ -982,11 +1511,11 @@ module Aws::LakeFormation
982
1511
  # The identifier for the Data Catalog. By default, the account ID. The
983
1512
  # Data Catalog is the persistent metadata store. It contains database
984
1513
  # definitions, table definitions, and other control information to
985
- # manage your AWS Lake Formation environment.
1514
+ # manage your Lake Formation environment.
986
1515
  # @return [String]
987
1516
  #
988
1517
  # @!attribute [rw] tag_key
989
- # The key-name for the tag.
1518
+ # The key-name for the LF-tag.
990
1519
  # @return [String]
991
1520
  #
992
1521
  # @!attribute [rw] tag_values
@@ -1003,6 +1532,97 @@ module Aws::LakeFormation
1003
1532
  include Aws::Structure
1004
1533
  end
1005
1534
 
1535
+ # @note When making an API call, you may pass GetQueryStateRequest
1536
+ # data as a hash:
1537
+ #
1538
+ # {
1539
+ # query_id: "GetQueryStateRequestQueryIdString", # required
1540
+ # }
1541
+ #
1542
+ # @!attribute [rw] query_id
1543
+ # The ID of the plan query operation.
1544
+ # @return [String]
1545
+ #
1546
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/GetQueryStateRequest AWS API Documentation
1547
+ #
1548
+ class GetQueryStateRequest < Struct.new(
1549
+ :query_id)
1550
+ SENSITIVE = []
1551
+ include Aws::Structure
1552
+ end
1553
+
1554
+ # A structure for the output.
1555
+ #
1556
+ # @!attribute [rw] error
1557
+ # An error message when the operation fails.
1558
+ # @return [String]
1559
+ #
1560
+ # @!attribute [rw] state
1561
+ # The state of a query previously submitted. The possible states are:
1562
+ #
1563
+ # * PENDING: the query is pending.
1564
+ #
1565
+ # * WORKUNITS\_AVAILABLE: some work units are ready for retrieval and
1566
+ # execution.
1567
+ #
1568
+ # * FINISHED: the query planning finished successfully, and all work
1569
+ # units are ready for retrieval and execution.
1570
+ #
1571
+ # * ERROR: an error occurred with the query, such as an invalid query
1572
+ # ID or a backend error.
1573
+ # @return [String]
1574
+ #
1575
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/GetQueryStateResponse AWS API Documentation
1576
+ #
1577
+ class GetQueryStateResponse < Struct.new(
1578
+ :error,
1579
+ :state)
1580
+ SENSITIVE = []
1581
+ include Aws::Structure
1582
+ end
1583
+
1584
+ # @note When making an API call, you may pass GetQueryStatisticsRequest
1585
+ # data as a hash:
1586
+ #
1587
+ # {
1588
+ # query_id: "GetQueryStatisticsRequestQueryIdString", # required
1589
+ # }
1590
+ #
1591
+ # @!attribute [rw] query_id
1592
+ # The ID of the plan query operation.
1593
+ # @return [String]
1594
+ #
1595
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/GetQueryStatisticsRequest AWS API Documentation
1596
+ #
1597
+ class GetQueryStatisticsRequest < Struct.new(
1598
+ :query_id)
1599
+ SENSITIVE = []
1600
+ include Aws::Structure
1601
+ end
1602
+
1603
+ # @!attribute [rw] execution_statistics
1604
+ # An `ExecutionStatistics` structure containing execution statistics.
1605
+ # @return [Types::ExecutionStatistics]
1606
+ #
1607
+ # @!attribute [rw] planning_statistics
1608
+ # A `PlanningStatistics` structure containing query planning
1609
+ # statistics.
1610
+ # @return [Types::PlanningStatistics]
1611
+ #
1612
+ # @!attribute [rw] query_submission_time
1613
+ # The time that the query was submitted.
1614
+ # @return [Time]
1615
+ #
1616
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/GetQueryStatisticsResponse AWS API Documentation
1617
+ #
1618
+ class GetQueryStatisticsResponse < Struct.new(
1619
+ :execution_statistics,
1620
+ :planning_statistics,
1621
+ :query_submission_time)
1622
+ SENSITIVE = []
1623
+ include Aws::Structure
1624
+ end
1625
+
1006
1626
  # @note When making an API call, you may pass GetResourceLFTagsRequest
1007
1627
  # data as a hash:
1008
1628
  #
@@ -1035,6 +1655,12 @@ module Aws::LakeFormation
1035
1655
  # catalog_id: "CatalogIdString",
1036
1656
  # resource_arn: "ResourceArnString", # required
1037
1657
  # },
1658
+ # data_cells_filter: {
1659
+ # table_catalog_id: "CatalogIdString",
1660
+ # database_name: "NameString",
1661
+ # table_name: "NameString",
1662
+ # name: "NameString",
1663
+ # },
1038
1664
  # lf_tag: {
1039
1665
  # catalog_id: "CatalogIdString",
1040
1666
  # tag_key: "NameString", # required
@@ -1058,15 +1684,16 @@ module Aws::LakeFormation
1058
1684
  # The identifier for the Data Catalog. By default, the account ID. The
1059
1685
  # Data Catalog is the persistent metadata store. It contains database
1060
1686
  # definitions, table definitions, and other control information to
1061
- # manage your AWS Lake Formation environment.
1687
+ # manage your Lake Formation environment.
1062
1688
  # @return [String]
1063
1689
  #
1064
1690
  # @!attribute [rw] resource
1065
- # The resource for which you want to return tags.
1691
+ # The database, table, or column resource for which you want to return
1692
+ # LF-tags.
1066
1693
  # @return [Types::Resource]
1067
1694
  #
1068
1695
  # @!attribute [rw] show_assigned_lf_tags
1069
- # Indicates whether to show the assigned tags.
1696
+ # Indicates whether to show the assigned LF-tags.
1070
1697
  # @return [Boolean]
1071
1698
  #
1072
1699
  # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/GetResourceLFTagsRequest AWS API Documentation
@@ -1080,15 +1707,15 @@ module Aws::LakeFormation
1080
1707
  end
1081
1708
 
1082
1709
  # @!attribute [rw] lf_tag_on_database
1083
- # A list of tags applied to a database resource.
1710
+ # A list of LF-tags applied to a database resource.
1084
1711
  # @return [Array<Types::LFTagPair>]
1085
1712
  #
1086
1713
  # @!attribute [rw] lf_tags_on_table
1087
- # A list of tags applied to a table resource.
1714
+ # A list of LF-tags applied to a table resource.
1088
1715
  # @return [Array<Types::LFTagPair>]
1089
1716
  #
1090
1717
  # @!attribute [rw] lf_tags_on_columns
1091
- # A list of tags applied to a column resource.
1718
+ # A list of LF-tags applied to a column resource.
1092
1719
  # @return [Array<Types::ColumnLFTag>]
1093
1720
  #
1094
1721
  # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/GetResourceLFTagsResponse AWS API Documentation
@@ -1101,6 +1728,213 @@ module Aws::LakeFormation
1101
1728
  include Aws::Structure
1102
1729
  end
1103
1730
 
1731
+ # @note When making an API call, you may pass GetTableObjectsRequest
1732
+ # data as a hash:
1733
+ #
1734
+ # {
1735
+ # catalog_id: "CatalogIdString",
1736
+ # database_name: "NameString", # required
1737
+ # table_name: "NameString", # required
1738
+ # transaction_id: "TransactionIdString",
1739
+ # query_as_of_time: Time.now,
1740
+ # partition_predicate: "PredicateString",
1741
+ # max_results: 1,
1742
+ # next_token: "TokenString",
1743
+ # }
1744
+ #
1745
+ # @!attribute [rw] catalog_id
1746
+ # The catalog containing the governed table. Defaults to the caller’s
1747
+ # account.
1748
+ # @return [String]
1749
+ #
1750
+ # @!attribute [rw] database_name
1751
+ # The database containing the governed table.
1752
+ # @return [String]
1753
+ #
1754
+ # @!attribute [rw] table_name
1755
+ # The governed table for which to retrieve objects.
1756
+ # @return [String]
1757
+ #
1758
+ # @!attribute [rw] transaction_id
1759
+ # The transaction ID at which to read the governed table contents. If
1760
+ # this transaction has aborted, an error is returned. If not set,
1761
+ # defaults to the most recent committed transaction. Cannot be
1762
+ # specified along with `QueryAsOfTime`.
1763
+ # @return [String]
1764
+ #
1765
+ # @!attribute [rw] query_as_of_time
1766
+ # The time as of when to read the governed table contents. If not set,
1767
+ # the most recent transaction commit time is used. Cannot be specified
1768
+ # along with `TransactionId`.
1769
+ # @return [Time]
1770
+ #
1771
+ # @!attribute [rw] partition_predicate
1772
+ # A predicate to filter the objects returned based on the partition
1773
+ # keys defined in the governed table.
1774
+ #
1775
+ # * The comparison operators supported are: =, &gt;, &lt;, &gt;=,
1776
+ # &lt;=
1777
+ #
1778
+ # * The logical operators supported are: AND
1779
+ #
1780
+ # * The data types supported are integer, long, date(yyyy-MM-dd),
1781
+ # timestamp(yyyy-MM-dd HH:mm:ssXXX or yyyy-MM-dd HH:mm:ss"), string
1782
+ # and decimal.
1783
+ # @return [String]
1784
+ #
1785
+ # @!attribute [rw] max_results
1786
+ # Specifies how many values to return in a page.
1787
+ # @return [Integer]
1788
+ #
1789
+ # @!attribute [rw] next_token
1790
+ # A continuation token if this is not the first call to retrieve these
1791
+ # objects.
1792
+ # @return [String]
1793
+ #
1794
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/GetTableObjectsRequest AWS API Documentation
1795
+ #
1796
+ class GetTableObjectsRequest < Struct.new(
1797
+ :catalog_id,
1798
+ :database_name,
1799
+ :table_name,
1800
+ :transaction_id,
1801
+ :query_as_of_time,
1802
+ :partition_predicate,
1803
+ :max_results,
1804
+ :next_token)
1805
+ SENSITIVE = []
1806
+ include Aws::Structure
1807
+ end
1808
+
1809
+ # @!attribute [rw] objects
1810
+ # A list of objects organized by partition keys.
1811
+ # @return [Array<Types::PartitionObjects>]
1812
+ #
1813
+ # @!attribute [rw] next_token
1814
+ # A continuation token indicating whether additional data is
1815
+ # available.
1816
+ # @return [String]
1817
+ #
1818
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/GetTableObjectsResponse AWS API Documentation
1819
+ #
1820
+ class GetTableObjectsResponse < Struct.new(
1821
+ :objects,
1822
+ :next_token)
1823
+ SENSITIVE = []
1824
+ include Aws::Structure
1825
+ end
1826
+
1827
+ # @note When making an API call, you may pass GetWorkUnitResultsRequest
1828
+ # data as a hash:
1829
+ #
1830
+ # {
1831
+ # query_id: "GetWorkUnitResultsRequestQueryIdString", # required
1832
+ # work_unit_id: 1, # required
1833
+ # work_unit_token: "SyntheticGetWorkUnitResultsRequestWorkUnitTokenString", # required
1834
+ # }
1835
+ #
1836
+ # @!attribute [rw] query_id
1837
+ # The ID of the plan query operation for which to get results.
1838
+ # @return [String]
1839
+ #
1840
+ # @!attribute [rw] work_unit_id
1841
+ # The work unit ID for which to get results. Value generated by
1842
+ # enumerating `WorkUnitIdMin` to `WorkUnitIdMax` (inclusive) from the
1843
+ # `WorkUnitRange` in the output of `GetWorkUnits`.
1844
+ # @return [Integer]
1845
+ #
1846
+ # @!attribute [rw] work_unit_token
1847
+ # A work token used to query the execution service. Token output from
1848
+ # `GetWorkUnits`.
1849
+ # @return [String]
1850
+ #
1851
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/GetWorkUnitResultsRequest AWS API Documentation
1852
+ #
1853
+ class GetWorkUnitResultsRequest < Struct.new(
1854
+ :query_id,
1855
+ :work_unit_id,
1856
+ :work_unit_token)
1857
+ SENSITIVE = [:work_unit_token]
1858
+ include Aws::Structure
1859
+ end
1860
+
1861
+ # A structure for the output.
1862
+ #
1863
+ # @!attribute [rw] result_stream
1864
+ # Rows returned from the `GetWorkUnitResults` operation as a stream of
1865
+ # Apache Arrow v1.0 messages.
1866
+ # @return [IO]
1867
+ #
1868
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/GetWorkUnitResultsResponse AWS API Documentation
1869
+ #
1870
+ class GetWorkUnitResultsResponse < Struct.new(
1871
+ :result_stream)
1872
+ SENSITIVE = []
1873
+ include Aws::Structure
1874
+ end
1875
+
1876
+ # @note When making an API call, you may pass GetWorkUnitsRequest
1877
+ # data as a hash:
1878
+ #
1879
+ # {
1880
+ # next_token: "Token",
1881
+ # page_size: 1,
1882
+ # query_id: "GetWorkUnitsRequestQueryIdString", # required
1883
+ # }
1884
+ #
1885
+ # @!attribute [rw] next_token
1886
+ # A continuation token, if this is a continuation call.
1887
+ # @return [String]
1888
+ #
1889
+ # @!attribute [rw] page_size
1890
+ # The size of each page to get in the Amazon Web Services service
1891
+ # call. This does not affect the number of items returned in the
1892
+ # command's output. Setting a smaller page size results in more calls
1893
+ # to the Amazon Web Services service, retrieving fewer items in each
1894
+ # call. This can help prevent the Amazon Web Services service calls
1895
+ # from timing out.
1896
+ # @return [Integer]
1897
+ #
1898
+ # @!attribute [rw] query_id
1899
+ # The ID of the plan query operation.
1900
+ # @return [String]
1901
+ #
1902
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/GetWorkUnitsRequest AWS API Documentation
1903
+ #
1904
+ class GetWorkUnitsRequest < Struct.new(
1905
+ :next_token,
1906
+ :page_size,
1907
+ :query_id)
1908
+ SENSITIVE = []
1909
+ include Aws::Structure
1910
+ end
1911
+
1912
+ # A structure for the output.
1913
+ #
1914
+ # @!attribute [rw] next_token
1915
+ # A continuation token for paginating the returned list of tokens,
1916
+ # returned if the current segment of the list is not the last.
1917
+ # @return [String]
1918
+ #
1919
+ # @!attribute [rw] query_id
1920
+ # The ID of the plan query operation.
1921
+ # @return [String]
1922
+ #
1923
+ # @!attribute [rw] work_unit_ranges
1924
+ # A `WorkUnitRangeList` object that specifies the valid range of work
1925
+ # unit IDs for querying the execution service.
1926
+ # @return [Array<Types::WorkUnitRange>]
1927
+ #
1928
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/GetWorkUnitsResponse AWS API Documentation
1929
+ #
1930
+ class GetWorkUnitsResponse < Struct.new(
1931
+ :next_token,
1932
+ :query_id,
1933
+ :work_unit_ranges)
1934
+ SENSITIVE = []
1935
+ include Aws::Structure
1936
+ end
1937
+
1104
1938
  # An encryption operation failed.
1105
1939
  #
1106
1940
  # @!attribute [rw] message
@@ -1150,6 +1984,12 @@ module Aws::LakeFormation
1150
1984
  # catalog_id: "CatalogIdString",
1151
1985
  # resource_arn: "ResourceArnString", # required
1152
1986
  # },
1987
+ # data_cells_filter: {
1988
+ # table_catalog_id: "CatalogIdString",
1989
+ # database_name: "NameString",
1990
+ # table_name: "NameString",
1991
+ # name: "NameString",
1992
+ # },
1153
1993
  # lf_tag: {
1154
1994
  # catalog_id: "CatalogIdString",
1155
1995
  # tag_key: "NameString", # required
@@ -1174,7 +2014,7 @@ module Aws::LakeFormation
1174
2014
  # The identifier for the Data Catalog. By default, the account ID. The
1175
2015
  # Data Catalog is the persistent metadata store. It contains database
1176
2016
  # definitions, table definitions, and other control information to
1177
- # manage your AWS Lake Formation environment.
2017
+ # manage your Lake Formation environment.
1178
2018
  # @return [String]
1179
2019
  #
1180
2020
  # @!attribute [rw] principal
@@ -1189,16 +2029,15 @@ module Aws::LakeFormation
1189
2029
  #
1190
2030
  # @!attribute [rw] resource
1191
2031
  # The resource to which permissions are to be granted. Resources in
1192
- # AWS Lake Formation are the Data Catalog, databases, and tables.
2032
+ # Lake Formation are the Data Catalog, databases, and tables.
1193
2033
  # @return [Types::Resource]
1194
2034
  #
1195
2035
  # @!attribute [rw] permissions
1196
- # The permissions granted to the principal on the resource. AWS Lake
2036
+ # The permissions granted to the principal on the resource. Lake
1197
2037
  # Formation defines privileges to grant and revoke access to metadata
1198
2038
  # in the Data Catalog and data organized in underlying data storage
1199
- # such as Amazon S3. AWS Lake Formation requires that each principal
1200
- # be authorized to perform a specific task on AWS Lake Formation
1201
- # resources.
2039
+ # such as Amazon S3. Lake Formation requires that each principal be
2040
+ # authorized to perform a specific task on Lake Formation resources.
1202
2041
  # @return [Array<String>]
1203
2042
  #
1204
2043
  # @!attribute [rw] permissions_with_grant_option
@@ -1252,8 +2091,8 @@ module Aws::LakeFormation
1252
2091
  end
1253
2092
 
1254
2093
  # A structure that allows an admin to grant user permissions on certain
1255
- # conditions. For example, granting a role access to all columns not
1256
- # tagged 'PII' of tables tagged 'Prod'.
2094
+ # conditions. For example, granting a role access to all columns that do
2095
+ # not have the LF-tag 'PII' in tables that have the LF-tag 'Prod'.
1257
2096
  #
1258
2097
  # @note When making an API call, you may pass LFTag
1259
2098
  # data as a hash:
@@ -1264,7 +2103,7 @@ module Aws::LakeFormation
1264
2103
  # }
1265
2104
  #
1266
2105
  # @!attribute [rw] tag_key
1267
- # The key-name for the tag.
2106
+ # The key-name for the LF-tag.
1268
2107
  # @return [String]
1269
2108
  #
1270
2109
  # @!attribute [rw] tag_values
@@ -1284,11 +2123,12 @@ module Aws::LakeFormation
1284
2123
  # `UnTagResource` operation.
1285
2124
  #
1286
2125
  # @!attribute [rw] lf_tag
1287
- # The key-name of the tag.
2126
+ # The key-name of the LF-tag.
1288
2127
  # @return [Types::LFTagPair]
1289
2128
  #
1290
2129
  # @!attribute [rw] error
1291
- # An error that occurred with the attachment or detachment of the tag.
2130
+ # An error that occurred with the attachment or detachment of the
2131
+ # LF-tag.
1292
2132
  # @return [Types::ErrorDetail]
1293
2133
  #
1294
2134
  # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/LFTagError AWS API Documentation
@@ -1300,7 +2140,7 @@ module Aws::LakeFormation
1300
2140
  include Aws::Structure
1301
2141
  end
1302
2142
 
1303
- # A structure containing a tag key and values for a resource.
2143
+ # A structure containing an LF-tag key and values for a resource.
1304
2144
  #
1305
2145
  # @note When making an API call, you may pass LFTagKeyResource
1306
2146
  # data as a hash:
@@ -1315,11 +2155,11 @@ module Aws::LakeFormation
1315
2155
  # The identifier for the Data Catalog. By default, the account ID. The
1316
2156
  # Data Catalog is the persistent metadata store. It contains database
1317
2157
  # definitions, table definitions, and other control information to
1318
- # manage your AWS Lake Formation environment.
2158
+ # manage your Lake Formation environment.
1319
2159
  # @return [String]
1320
2160
  #
1321
2161
  # @!attribute [rw] tag_key
1322
- # The key-name for the tag.
2162
+ # The key-name for the LF-tag.
1323
2163
  # @return [String]
1324
2164
  #
1325
2165
  # @!attribute [rw] tag_values
@@ -1336,7 +2176,7 @@ module Aws::LakeFormation
1336
2176
  include Aws::Structure
1337
2177
  end
1338
2178
 
1339
- # A structure containing a tag key-value pair.
2179
+ # A structure containing an LF-tag key-value pair.
1340
2180
  #
1341
2181
  # @note When making an API call, you may pass LFTagPair
1342
2182
  # data as a hash:
@@ -1351,11 +2191,11 @@ module Aws::LakeFormation
1351
2191
  # The identifier for the Data Catalog. By default, the account ID. The
1352
2192
  # Data Catalog is the persistent metadata store. It contains database
1353
2193
  # definitions, table definitions, and other control information to
1354
- # manage your AWS Lake Formation environment.
2194
+ # manage your Lake Formation environment.
1355
2195
  # @return [String]
1356
2196
  #
1357
2197
  # @!attribute [rw] tag_key
1358
- # The key-name for the tag.
2198
+ # The key-name for the LF-tag.
1359
2199
  # @return [String]
1360
2200
  #
1361
2201
  # @!attribute [rw] tag_values
@@ -1372,8 +2212,8 @@ module Aws::LakeFormation
1372
2212
  include Aws::Structure
1373
2213
  end
1374
2214
 
1375
- # A structure containing a list of tag conditions that apply to a
1376
- # resource's tag policy.
2215
+ # A structure containing a list of LF-tag conditions that apply to a
2216
+ # resource's LF-tag policy.
1377
2217
  #
1378
2218
  # @note When making an API call, you may pass LFTagPolicyResource
1379
2219
  # data as a hash:
@@ -1393,15 +2233,16 @@ module Aws::LakeFormation
1393
2233
  # The identifier for the Data Catalog. By default, the account ID. The
1394
2234
  # Data Catalog is the persistent metadata store. It contains database
1395
2235
  # definitions, table definitions, and other control information to
1396
- # manage your AWS Lake Formation environment.
2236
+ # manage your Lake Formation environment.
1397
2237
  # @return [String]
1398
2238
  #
1399
2239
  # @!attribute [rw] resource_type
1400
- # The resource type for which the tag policy applies.
2240
+ # The resource type for which the LF-tag policy applies.
1401
2241
  # @return [String]
1402
2242
  #
1403
2243
  # @!attribute [rw] expression
1404
- # A list of tag conditions that apply to the resource's tag policy.
2244
+ # A list of LF-tag conditions that apply to the resource's LF-tag
2245
+ # policy.
1405
2246
  # @return [Array<Types::LFTag>]
1406
2247
  #
1407
2248
  # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/LFTagPolicyResource AWS API Documentation
@@ -1414,6 +2255,61 @@ module Aws::LakeFormation
1414
2255
  include Aws::Structure
1415
2256
  end
1416
2257
 
2258
+ # @note When making an API call, you may pass ListDataCellsFilterRequest
2259
+ # data as a hash:
2260
+ #
2261
+ # {
2262
+ # table: {
2263
+ # catalog_id: "CatalogIdString",
2264
+ # database_name: "NameString", # required
2265
+ # name: "NameString",
2266
+ # table_wildcard: {
2267
+ # },
2268
+ # },
2269
+ # next_token: "Token",
2270
+ # max_results: 1,
2271
+ # }
2272
+ #
2273
+ # @!attribute [rw] table
2274
+ # A table in the Glue Data Catalog.
2275
+ # @return [Types::TableResource]
2276
+ #
2277
+ # @!attribute [rw] next_token
2278
+ # A continuation token, if this is a continuation call.
2279
+ # @return [String]
2280
+ #
2281
+ # @!attribute [rw] max_results
2282
+ # The maximum size of the response.
2283
+ # @return [Integer]
2284
+ #
2285
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/ListDataCellsFilterRequest AWS API Documentation
2286
+ #
2287
+ class ListDataCellsFilterRequest < Struct.new(
2288
+ :table,
2289
+ :next_token,
2290
+ :max_results)
2291
+ SENSITIVE = []
2292
+ include Aws::Structure
2293
+ end
2294
+
2295
+ # @!attribute [rw] data_cells_filters
2296
+ # A list of `DataCellFilter` structures.
2297
+ # @return [Array<Types::DataCellsFilter>]
2298
+ #
2299
+ # @!attribute [rw] next_token
2300
+ # A continuation token, if not all requested data cell filters have
2301
+ # been returned.
2302
+ # @return [String]
2303
+ #
2304
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/ListDataCellsFilterResponse AWS API Documentation
2305
+ #
2306
+ class ListDataCellsFilterResponse < Struct.new(
2307
+ :data_cells_filters,
2308
+ :next_token)
2309
+ SENSITIVE = []
2310
+ include Aws::Structure
2311
+ end
2312
+
1417
2313
  # @note When making an API call, you may pass ListLFTagsRequest
1418
2314
  # data as a hash:
1419
2315
  #
@@ -1428,15 +2324,16 @@ module Aws::LakeFormation
1428
2324
  # The identifier for the Data Catalog. By default, the account ID. The
1429
2325
  # Data Catalog is the persistent metadata store. It contains database
1430
2326
  # definitions, table definitions, and other control information to
1431
- # manage your AWS Lake Formation environment.
2327
+ # manage your Lake Formation environment.
1432
2328
  # @return [String]
1433
2329
  #
1434
2330
  # @!attribute [rw] resource_share_type
1435
- # If resource share type is `ALL`, returns both in-account tags and
1436
- # shared tags that the requester has permission to view. If resource
1437
- # share type is `FOREIGN`, returns all share tags that the requester
1438
- # can view. If no resource share type is passed, lists tags in the
1439
- # given catalog ID that the requester has permission to view.
2331
+ # If resource share type is `ALL`, returns both in-account LF-tags and
2332
+ # shared LF-tags that the requester has permission to view. If
2333
+ # resource share type is `FOREIGN`, returns all share LF-tags that the
2334
+ # requester can view. If no resource share type is passed, lists
2335
+ # LF-tags in the given catalog ID that the requester has permission to
2336
+ # view.
1440
2337
  # @return [String]
1441
2338
  #
1442
2339
  # @!attribute [rw] max_results
@@ -1460,7 +2357,7 @@ module Aws::LakeFormation
1460
2357
  end
1461
2358
 
1462
2359
  # @!attribute [rw] lf_tags
1463
- # A list of tags that the requested has permission to view.
2360
+ # A list of LF-tags that the requested has permission to view.
1464
2361
  # @return [Array<Types::LFTagPair>]
1465
2362
  #
1466
2363
  # @!attribute [rw] next_token
@@ -1513,6 +2410,12 @@ module Aws::LakeFormation
1513
2410
  # catalog_id: "CatalogIdString",
1514
2411
  # resource_arn: "ResourceArnString", # required
1515
2412
  # },
2413
+ # data_cells_filter: {
2414
+ # table_catalog_id: "CatalogIdString",
2415
+ # database_name: "NameString",
2416
+ # table_name: "NameString",
2417
+ # name: "NameString",
2418
+ # },
1516
2419
  # lf_tag: {
1517
2420
  # catalog_id: "CatalogIdString",
1518
2421
  # tag_key: "NameString", # required
@@ -1531,13 +2434,14 @@ module Aws::LakeFormation
1531
2434
  # },
1532
2435
  # next_token: "Token",
1533
2436
  # max_results: 1,
2437
+ # include_related: "TrueFalseString",
1534
2438
  # }
1535
2439
  #
1536
2440
  # @!attribute [rw] catalog_id
1537
2441
  # The identifier for the Data Catalog. By default, the account ID. The
1538
2442
  # Data Catalog is the persistent metadata store. It contains database
1539
2443
  # definitions, table definitions, and other control information to
1540
- # manage your AWS Lake Formation environment.
2444
+ # manage your Lake Formation environment.
1541
2445
  # @return [String]
1542
2446
  #
1543
2447
  # @!attribute [rw] principal
@@ -1565,6 +2469,11 @@ module Aws::LakeFormation
1565
2469
  # The maximum number of results to return.
1566
2470
  # @return [Integer]
1567
2471
  #
2472
+ # @!attribute [rw] include_related
2473
+ # Indicates that related permissions should be included in the
2474
+ # results.
2475
+ # @return [String]
2476
+ #
1568
2477
  # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/ListPermissionsRequest AWS API Documentation
1569
2478
  #
1570
2479
  class ListPermissionsRequest < Struct.new(
@@ -1573,7 +2482,8 @@ module Aws::LakeFormation
1573
2482
  :resource_type,
1574
2483
  :resource,
1575
2484
  :next_token,
1576
- :max_results)
2485
+ :max_results,
2486
+ :include_related)
1577
2487
  SENSITIVE = []
1578
2488
  include Aws::Structure
1579
2489
  end
@@ -1654,13 +2564,141 @@ module Aws::LakeFormation
1654
2564
  include Aws::Structure
1655
2565
  end
1656
2566
 
1657
- # The operation timed out.
2567
+ # @note When making an API call, you may pass ListTableStorageOptimizersRequest
2568
+ # data as a hash:
1658
2569
  #
1659
- # @!attribute [rw] message
1660
- # A message describing the problem.
1661
- # @return [String]
2570
+ # {
2571
+ # catalog_id: "CatalogIdString",
2572
+ # database_name: "NameString", # required
2573
+ # table_name: "NameString", # required
2574
+ # storage_optimizer_type: "COMPACTION", # accepts COMPACTION, GARBAGE_COLLECTION, ALL
2575
+ # max_results: 1,
2576
+ # next_token: "Token",
2577
+ # }
1662
2578
  #
1663
- # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/OperationTimeoutException AWS API Documentation
2579
+ # @!attribute [rw] catalog_id
2580
+ # The Catalog ID of the table.
2581
+ # @return [String]
2582
+ #
2583
+ # @!attribute [rw] database_name
2584
+ # Name of the database where the table is present.
2585
+ # @return [String]
2586
+ #
2587
+ # @!attribute [rw] table_name
2588
+ # Name of the table.
2589
+ # @return [String]
2590
+ #
2591
+ # @!attribute [rw] storage_optimizer_type
2592
+ # The specific type of storage optimizers to list. The supported value
2593
+ # is `compaction`.
2594
+ # @return [String]
2595
+ #
2596
+ # @!attribute [rw] max_results
2597
+ # The number of storage optimizers to return on each call.
2598
+ # @return [Integer]
2599
+ #
2600
+ # @!attribute [rw] next_token
2601
+ # A continuation token, if this is a continuation call.
2602
+ # @return [String]
2603
+ #
2604
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/ListTableStorageOptimizersRequest AWS API Documentation
2605
+ #
2606
+ class ListTableStorageOptimizersRequest < Struct.new(
2607
+ :catalog_id,
2608
+ :database_name,
2609
+ :table_name,
2610
+ :storage_optimizer_type,
2611
+ :max_results,
2612
+ :next_token)
2613
+ SENSITIVE = []
2614
+ include Aws::Structure
2615
+ end
2616
+
2617
+ # @!attribute [rw] storage_optimizer_list
2618
+ # A list of the storage optimizers associated with a table.
2619
+ # @return [Array<Types::StorageOptimizer>]
2620
+ #
2621
+ # @!attribute [rw] next_token
2622
+ # A continuation token for paginating the returned list of tokens,
2623
+ # returned if the current segment of the list is not the last.
2624
+ # @return [String]
2625
+ #
2626
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/ListTableStorageOptimizersResponse AWS API Documentation
2627
+ #
2628
+ class ListTableStorageOptimizersResponse < Struct.new(
2629
+ :storage_optimizer_list,
2630
+ :next_token)
2631
+ SENSITIVE = []
2632
+ include Aws::Structure
2633
+ end
2634
+
2635
+ # @note When making an API call, you may pass ListTransactionsRequest
2636
+ # data as a hash:
2637
+ #
2638
+ # {
2639
+ # catalog_id: "CatalogIdString",
2640
+ # status_filter: "ALL", # accepts ALL, COMPLETED, ACTIVE, COMMITTED, ABORTED
2641
+ # max_results: 1,
2642
+ # next_token: "TokenString",
2643
+ # }
2644
+ #
2645
+ # @!attribute [rw] catalog_id
2646
+ # The catalog for which to list transactions. Defaults to the account
2647
+ # ID of the caller.
2648
+ # @return [String]
2649
+ #
2650
+ # @!attribute [rw] status_filter
2651
+ # A filter indicating the status of transactions to return. Options
2652
+ # are ALL \| COMPLETED \| COMMITTED \| ABORTED \| ACTIVE. The default
2653
+ # is `ALL`.
2654
+ # @return [String]
2655
+ #
2656
+ # @!attribute [rw] max_results
2657
+ # The maximum number of transactions to return in a single call.
2658
+ # @return [Integer]
2659
+ #
2660
+ # @!attribute [rw] next_token
2661
+ # A continuation token if this is not the first call to retrieve
2662
+ # transactions.
2663
+ # @return [String]
2664
+ #
2665
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/ListTransactionsRequest AWS API Documentation
2666
+ #
2667
+ class ListTransactionsRequest < Struct.new(
2668
+ :catalog_id,
2669
+ :status_filter,
2670
+ :max_results,
2671
+ :next_token)
2672
+ SENSITIVE = []
2673
+ include Aws::Structure
2674
+ end
2675
+
2676
+ # @!attribute [rw] transactions
2677
+ # A list of transactions. The record for each transaction is a
2678
+ # `TransactionDescription` object.
2679
+ # @return [Array<Types::TransactionDescription>]
2680
+ #
2681
+ # @!attribute [rw] next_token
2682
+ # A continuation token indicating whether additional data is
2683
+ # available.
2684
+ # @return [String]
2685
+ #
2686
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/ListTransactionsResponse AWS API Documentation
2687
+ #
2688
+ class ListTransactionsResponse < Struct.new(
2689
+ :transactions,
2690
+ :next_token)
2691
+ SENSITIVE = []
2692
+ include Aws::Structure
2693
+ end
2694
+
2695
+ # The operation timed out.
2696
+ #
2697
+ # @!attribute [rw] message
2698
+ # A message describing the problem.
2699
+ # @return [String]
2700
+ #
2701
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/OperationTimeoutException AWS API Documentation
1664
2702
  #
1665
2703
  class OperationTimeoutException < Struct.new(
1666
2704
  :message)
@@ -1668,6 +2706,54 @@ module Aws::LakeFormation
1668
2706
  include Aws::Structure
1669
2707
  end
1670
2708
 
2709
+ # A structure containing a list of partition values and table objects.
2710
+ #
2711
+ # @!attribute [rw] partition_values
2712
+ # A list of partition values.
2713
+ # @return [Array<String>]
2714
+ #
2715
+ # @!attribute [rw] objects
2716
+ # A list of table objects
2717
+ # @return [Array<Types::TableObject>]
2718
+ #
2719
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/PartitionObjects AWS API Documentation
2720
+ #
2721
+ class PartitionObjects < Struct.new(
2722
+ :partition_values,
2723
+ :objects)
2724
+ SENSITIVE = []
2725
+ include Aws::Structure
2726
+ end
2727
+
2728
+ # Statistics related to the processing of a query statement.
2729
+ #
2730
+ # @!attribute [rw] estimated_data_to_scan_bytes
2731
+ # An estimate of the data that was scanned in bytes.
2732
+ # @return [Integer]
2733
+ #
2734
+ # @!attribute [rw] planning_time_millis
2735
+ # The time that it took to process the request.
2736
+ # @return [Integer]
2737
+ #
2738
+ # @!attribute [rw] queue_time_millis
2739
+ # The time the request was in queue to be processed.
2740
+ # @return [Integer]
2741
+ #
2742
+ # @!attribute [rw] work_units_generated_count
2743
+ # The number of work units generated.
2744
+ # @return [Integer]
2745
+ #
2746
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/PlanningStatistics AWS API Documentation
2747
+ #
2748
+ class PlanningStatistics < Struct.new(
2749
+ :estimated_data_to_scan_bytes,
2750
+ :planning_time_millis,
2751
+ :queue_time_millis,
2752
+ :work_units_generated_count)
2753
+ SENSITIVE = []
2754
+ include Aws::Structure
2755
+ end
2756
+
1671
2757
  # Permissions granted to a principal.
1672
2758
  #
1673
2759
  # @note When making an API call, you may pass PrincipalPermissions
@@ -1769,11 +2855,11 @@ module Aws::LakeFormation
1769
2855
  # The identifier for the Data Catalog. By default, the account ID. The
1770
2856
  # Data Catalog is the persistent metadata store. It contains database
1771
2857
  # definitions, table definitions, and other control information to
1772
- # manage your AWS Lake Formation environment.
2858
+ # manage your Lake Formation environment.
1773
2859
  # @return [String]
1774
2860
  #
1775
2861
  # @!attribute [rw] data_lake_settings
1776
- # A structure representing a list of AWS Lake Formation principals
2862
+ # A structure representing a list of Lake Formation principals
1777
2863
  # designated as data lake administrators.
1778
2864
  # @return [Types::DataLakeSettings]
1779
2865
  #
@@ -1790,6 +2876,62 @@ module Aws::LakeFormation
1790
2876
  #
1791
2877
  class PutDataLakeSettingsResponse < Aws::EmptyStructure; end
1792
2878
 
2879
+ # A structure containing information about the query plan.
2880
+ #
2881
+ # @note When making an API call, you may pass QueryPlanningContext
2882
+ # data as a hash:
2883
+ #
2884
+ # {
2885
+ # catalog_id: "CatalogIdString",
2886
+ # database_name: "QueryPlanningContextDatabaseNameString", # required
2887
+ # query_as_of_time: Time.now,
2888
+ # query_parameters: {
2889
+ # "String" => "String",
2890
+ # },
2891
+ # transaction_id: "TransactionIdString",
2892
+ # }
2893
+ #
2894
+ # @!attribute [rw] catalog_id
2895
+ # The ID of the Data Catalog where the partition in question resides.
2896
+ # If none is provided, the Amazon Web Services account ID is used by
2897
+ # default.
2898
+ # @return [String]
2899
+ #
2900
+ # @!attribute [rw] database_name
2901
+ # The database containing the table.
2902
+ # @return [String]
2903
+ #
2904
+ # @!attribute [rw] query_as_of_time
2905
+ # The time as of when to read the table contents. If not set, the most
2906
+ # recent transaction commit time will be used. Cannot be specified
2907
+ # along with `TransactionId`.
2908
+ # @return [Time]
2909
+ #
2910
+ # @!attribute [rw] query_parameters
2911
+ # A map consisting of key-value pairs.
2912
+ # @return [Hash<String,String>]
2913
+ #
2914
+ # @!attribute [rw] transaction_id
2915
+ # The transaction ID at which to read the table contents. If this
2916
+ # transaction is not committed, the read will be treated as part of
2917
+ # that transaction and will see its writes. If this transaction has
2918
+ # aborted, an error will be returned. If not set, defaults to the most
2919
+ # recent committed transaction. Cannot be specified along with
2920
+ # `QueryAsOfTime`.
2921
+ # @return [String]
2922
+ #
2923
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/QueryPlanningContext AWS API Documentation
2924
+ #
2925
+ class QueryPlanningContext < Struct.new(
2926
+ :catalog_id,
2927
+ :database_name,
2928
+ :query_as_of_time,
2929
+ :query_parameters,
2930
+ :transaction_id)
2931
+ SENSITIVE = []
2932
+ include Aws::Structure
2933
+ end
2934
+
1793
2935
  # @note When making an API call, you may pass RegisterResourceRequest
1794
2936
  # data as a hash:
1795
2937
  #
@@ -1805,9 +2947,9 @@ module Aws::LakeFormation
1805
2947
  # @return [String]
1806
2948
  #
1807
2949
  # @!attribute [rw] use_service_linked_role
1808
- # Designates an AWS Identity and Access Management (IAM)
1809
- # service-linked role by registering this role with the Data Catalog.
1810
- # A service-linked role is a unique type of IAM role that is linked
2950
+ # Designates an Identity and Access Management (IAM) service-linked
2951
+ # role by registering this role with the Data Catalog. A
2952
+ # service-linked role is a unique type of IAM role that is linked
1811
2953
  # directly to Lake Formation.
1812
2954
  #
1813
2955
  # For more information, see [Using Service-Linked Roles for Lake
@@ -1868,6 +3010,12 @@ module Aws::LakeFormation
1868
3010
  # catalog_id: "CatalogIdString",
1869
3011
  # resource_arn: "ResourceArnString", # required
1870
3012
  # },
3013
+ # data_cells_filter: {
3014
+ # table_catalog_id: "CatalogIdString",
3015
+ # database_name: "NameString",
3016
+ # table_name: "NameString",
3017
+ # name: "NameString",
3018
+ # },
1871
3019
  # lf_tag: {
1872
3020
  # catalog_id: "CatalogIdString",
1873
3021
  # tag_key: "NameString", # required
@@ -1897,15 +3045,16 @@ module Aws::LakeFormation
1897
3045
  # The identifier for the Data Catalog. By default, the account ID. The
1898
3046
  # Data Catalog is the persistent metadata store. It contains database
1899
3047
  # definitions, table definitions, and other control information to
1900
- # manage your AWS Lake Formation environment.
3048
+ # manage your Lake Formation environment.
1901
3049
  # @return [String]
1902
3050
  #
1903
3051
  # @!attribute [rw] resource
1904
- # The resource where you want to remove a tag.
3052
+ # The database, table, or column resource where you want to remove an
3053
+ # LF-tag.
1905
3054
  # @return [Types::Resource]
1906
3055
  #
1907
3056
  # @!attribute [rw] lf_tags
1908
- # The tags to be removed from the resource.
3057
+ # The LF-tags to be removed from the resource.
1909
3058
  # @return [Array<Types::LFTagPair>]
1910
3059
  #
1911
3060
  # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/RemoveLFTagsFromResourceRequest AWS API Documentation
@@ -1962,6 +3111,12 @@ module Aws::LakeFormation
1962
3111
  # catalog_id: "CatalogIdString",
1963
3112
  # resource_arn: "ResourceArnString", # required
1964
3113
  # },
3114
+ # data_cells_filter: {
3115
+ # table_catalog_id: "CatalogIdString",
3116
+ # database_name: "NameString",
3117
+ # table_name: "NameString",
3118
+ # name: "NameString",
3119
+ # },
1965
3120
  # lf_tag: {
1966
3121
  # catalog_id: "CatalogIdString",
1967
3122
  # tag_key: "NameString", # required
@@ -1983,7 +3138,7 @@ module Aws::LakeFormation
1983
3138
  # The identifier for the Data Catalog. By default, the account ID. The
1984
3139
  # Data Catalog is the persistent metadata store. It contains database
1985
3140
  # definitions, table definitions, and other control information to
1986
- # manage your AWS Lake Formation environment.
3141
+ # manage your Lake Formation environment.
1987
3142
  # @return [Types::CatalogResource]
1988
3143
  #
1989
3144
  # @!attribute [rw] database
@@ -2010,12 +3165,16 @@ module Aws::LakeFormation
2010
3165
  # revoked.
2011
3166
  # @return [Types::DataLocationResource]
2012
3167
  #
3168
+ # @!attribute [rw] data_cells_filter
3169
+ # A data cell filter.
3170
+ # @return [Types::DataCellsFilterResource]
3171
+ #
2013
3172
  # @!attribute [rw] lf_tag
2014
- # The tag key and values attached to a resource.
3173
+ # The LF-tag key and values attached to a resource.
2015
3174
  # @return [Types::LFTagKeyResource]
2016
3175
  #
2017
3176
  # @!attribute [rw] lf_tag_policy
2018
- # A list of tag conditions that define a resource's tag policy.
3177
+ # A list of LF-tag conditions that define a resource's LF-tag policy.
2019
3178
  # @return [Types::LFTagPolicyResource]
2020
3179
  #
2021
3180
  # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/Resource AWS API Documentation
@@ -2026,14 +3185,14 @@ module Aws::LakeFormation
2026
3185
  :table,
2027
3186
  :table_with_columns,
2028
3187
  :data_location,
3188
+ :data_cells_filter,
2029
3189
  :lf_tag,
2030
3190
  :lf_tag_policy)
2031
3191
  SENSITIVE = []
2032
3192
  include Aws::Structure
2033
3193
  end
2034
3194
 
2035
- # A structure containing information about an AWS Lake Formation
2036
- # resource.
3195
+ # A structure containing information about an Lake Formation resource.
2037
3196
  #
2038
3197
  # @!attribute [rw] resource_arn
2039
3198
  # The Amazon Resource Name (ARN) of the resource.
@@ -2057,6 +3216,21 @@ module Aws::LakeFormation
2057
3216
  include Aws::Structure
2058
3217
  end
2059
3218
 
3219
+ # Contains details about an error related to a resource which is not
3220
+ # ready for a transaction.
3221
+ #
3222
+ # @!attribute [rw] message
3223
+ # A message describing the error.
3224
+ # @return [String]
3225
+ #
3226
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/ResourceNotReadyException AWS API Documentation
3227
+ #
3228
+ class ResourceNotReadyException < Struct.new(
3229
+ :message)
3230
+ SENSITIVE = []
3231
+ include Aws::Structure
3232
+ end
3233
+
2060
3234
  # A resource numerical limit was exceeded.
2061
3235
  #
2062
3236
  # @!attribute [rw] message
@@ -2106,6 +3280,12 @@ module Aws::LakeFormation
2106
3280
  # catalog_id: "CatalogIdString",
2107
3281
  # resource_arn: "ResourceArnString", # required
2108
3282
  # },
3283
+ # data_cells_filter: {
3284
+ # table_catalog_id: "CatalogIdString",
3285
+ # database_name: "NameString",
3286
+ # table_name: "NameString",
3287
+ # name: "NameString",
3288
+ # },
2109
3289
  # lf_tag: {
2110
3290
  # catalog_id: "CatalogIdString",
2111
3291
  # tag_key: "NameString", # required
@@ -2130,7 +3310,7 @@ module Aws::LakeFormation
2130
3310
  # The identifier for the Data Catalog. By default, the account ID. The
2131
3311
  # Data Catalog is the persistent metadata store. It contains database
2132
3312
  # definitions, table definitions, and other control information to
2133
- # manage your AWS Lake Formation environment.
3313
+ # manage your Lake Formation environment.
2134
3314
  # @return [String]
2135
3315
  #
2136
3316
  # @!attribute [rw] principal
@@ -2172,6 +3352,34 @@ module Aws::LakeFormation
2172
3352
  #
2173
3353
  class RevokePermissionsResponse < Aws::EmptyStructure; end
2174
3354
 
3355
+ # A PartiQL predicate.
3356
+ #
3357
+ # @note When making an API call, you may pass RowFilter
3358
+ # data as a hash:
3359
+ #
3360
+ # {
3361
+ # filter_expression: "PredicateString",
3362
+ # all_rows_wildcard: {
3363
+ # },
3364
+ # }
3365
+ #
3366
+ # @!attribute [rw] filter_expression
3367
+ # A filter expression.
3368
+ # @return [String]
3369
+ #
3370
+ # @!attribute [rw] all_rows_wildcard
3371
+ # A wildcard for all rows.
3372
+ # @return [Types::AllRowsWildcard]
3373
+ #
3374
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/RowFilter AWS API Documentation
3375
+ #
3376
+ class RowFilter < Struct.new(
3377
+ :filter_expression,
3378
+ :all_rows_wildcard)
3379
+ SENSITIVE = []
3380
+ include Aws::Structure
3381
+ end
3382
+
2175
3383
  # @note When making an API call, you may pass SearchDatabasesByLFTagsRequest
2176
3384
  # data as a hash:
2177
3385
  #
@@ -2200,7 +3408,7 @@ module Aws::LakeFormation
2200
3408
  # The identifier for the Data Catalog. By default, the account ID. The
2201
3409
  # Data Catalog is the persistent metadata store. It contains database
2202
3410
  # definitions, table definitions, and other control information to
2203
- # manage your AWS Lake Formation environment.
3411
+ # manage your Lake Formation environment.
2204
3412
  # @return [String]
2205
3413
  #
2206
3414
  # @!attribute [rw] expression
@@ -2225,7 +3433,7 @@ module Aws::LakeFormation
2225
3433
  # @return [String]
2226
3434
  #
2227
3435
  # @!attribute [rw] database_list
2228
- # A list of databases that meet the tag conditions.
3436
+ # A list of databases that meet the LF-tag conditions.
2229
3437
  # @return [Array<Types::TaggedDatabase>]
2230
3438
  #
2231
3439
  # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/SearchDatabasesByLFTagsResponse AWS API Documentation
@@ -2265,7 +3473,7 @@ module Aws::LakeFormation
2265
3473
  # The identifier for the Data Catalog. By default, the account ID. The
2266
3474
  # Data Catalog is the persistent metadata store. It contains database
2267
3475
  # definitions, table definitions, and other control information to
2268
- # manage your AWS Lake Formation environment.
3476
+ # manage your Lake Formation environment.
2269
3477
  # @return [String]
2270
3478
  #
2271
3479
  # @!attribute [rw] expression
@@ -2290,7 +3498,7 @@ module Aws::LakeFormation
2290
3498
  # @return [String]
2291
3499
  #
2292
3500
  # @!attribute [rw] table_list
2293
- # A list of tables that meet the tag conditions.
3501
+ # A list of tables that meet the LF-tag conditions.
2294
3502
  # @return [Array<Types::TaggedTable>]
2295
3503
  #
2296
3504
  # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/SearchTablesByLFTagsResponse AWS API Documentation
@@ -2302,6 +3510,173 @@ module Aws::LakeFormation
2302
3510
  include Aws::Structure
2303
3511
  end
2304
3512
 
3513
+ # @note When making an API call, you may pass StartQueryPlanningRequest
3514
+ # data as a hash:
3515
+ #
3516
+ # {
3517
+ # query_planning_context: { # required
3518
+ # catalog_id: "CatalogIdString",
3519
+ # database_name: "QueryPlanningContextDatabaseNameString", # required
3520
+ # query_as_of_time: Time.now,
3521
+ # query_parameters: {
3522
+ # "String" => "String",
3523
+ # },
3524
+ # transaction_id: "TransactionIdString",
3525
+ # },
3526
+ # query_string: "SyntheticStartQueryPlanningRequestQueryString", # required
3527
+ # }
3528
+ #
3529
+ # @!attribute [rw] query_planning_context
3530
+ # A structure containing information about the query plan.
3531
+ # @return [Types::QueryPlanningContext]
3532
+ #
3533
+ # @!attribute [rw] query_string
3534
+ # A PartiQL query statement used as an input to the planner service.
3535
+ # @return [String]
3536
+ #
3537
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/StartQueryPlanningRequest AWS API Documentation
3538
+ #
3539
+ class StartQueryPlanningRequest < Struct.new(
3540
+ :query_planning_context,
3541
+ :query_string)
3542
+ SENSITIVE = [:query_string]
3543
+ include Aws::Structure
3544
+ end
3545
+
3546
+ # A structure for the output.
3547
+ #
3548
+ # @!attribute [rw] query_id
3549
+ # The ID of the plan query operation can be used to fetch the actual
3550
+ # work unit descriptors that are produced as the result of the
3551
+ # operation. The ID is also used to get the query state and as an
3552
+ # input to the `Execute` operation.
3553
+ # @return [String]
3554
+ #
3555
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/StartQueryPlanningResponse AWS API Documentation
3556
+ #
3557
+ class StartQueryPlanningResponse < Struct.new(
3558
+ :query_id)
3559
+ SENSITIVE = []
3560
+ include Aws::Structure
3561
+ end
3562
+
3563
+ # @note When making an API call, you may pass StartTransactionRequest
3564
+ # data as a hash:
3565
+ #
3566
+ # {
3567
+ # transaction_type: "READ_AND_WRITE", # accepts READ_AND_WRITE, READ_ONLY
3568
+ # }
3569
+ #
3570
+ # @!attribute [rw] transaction_type
3571
+ # Indicates whether this transaction should be read only or read and
3572
+ # write. Writes made using a read-only transaction ID will be
3573
+ # rejected. Read-only transactions do not need to be committed.
3574
+ # @return [String]
3575
+ #
3576
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/StartTransactionRequest AWS API Documentation
3577
+ #
3578
+ class StartTransactionRequest < Struct.new(
3579
+ :transaction_type)
3580
+ SENSITIVE = []
3581
+ include Aws::Structure
3582
+ end
3583
+
3584
+ # @!attribute [rw] transaction_id
3585
+ # An opaque identifier for the transaction.
3586
+ # @return [String]
3587
+ #
3588
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/StartTransactionResponse AWS API Documentation
3589
+ #
3590
+ class StartTransactionResponse < Struct.new(
3591
+ :transaction_id)
3592
+ SENSITIVE = []
3593
+ include Aws::Structure
3594
+ end
3595
+
3596
+ # Contains details about an error related to statistics not being ready.
3597
+ #
3598
+ # @!attribute [rw] message
3599
+ # A message describing the error.
3600
+ # @return [String]
3601
+ #
3602
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/StatisticsNotReadyYetException AWS API Documentation
3603
+ #
3604
+ class StatisticsNotReadyYetException < Struct.new(
3605
+ :message)
3606
+ SENSITIVE = []
3607
+ include Aws::Structure
3608
+ end
3609
+
3610
+ # A structure describing the configuration and details of a storage
3611
+ # optimizer.
3612
+ #
3613
+ # @!attribute [rw] storage_optimizer_type
3614
+ # The specific type of storage optimizer. The supported value is
3615
+ # `compaction`.
3616
+ # @return [String]
3617
+ #
3618
+ # @!attribute [rw] config
3619
+ # A map of the storage optimizer configuration. Currently contains
3620
+ # only one key-value pair: `is_enabled` indicates true or false for
3621
+ # acceleration.
3622
+ # @return [Hash<String,String>]
3623
+ #
3624
+ # @!attribute [rw] error_message
3625
+ # A message that contains information about any error (if present).
3626
+ #
3627
+ # When an acceleration result has an enabled status, the error message
3628
+ # is empty.
3629
+ #
3630
+ # When an acceleration result has a disabled status, the message
3631
+ # describes an error or simply indicates "disabled by the user".
3632
+ # @return [String]
3633
+ #
3634
+ # @!attribute [rw] warnings
3635
+ # A message that contains information about any warnings (if present).
3636
+ # @return [String]
3637
+ #
3638
+ # @!attribute [rw] last_run_details
3639
+ # When an acceleration result has an enabled status, contains the
3640
+ # details of the last job run.
3641
+ # @return [String]
3642
+ #
3643
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/StorageOptimizer AWS API Documentation
3644
+ #
3645
+ class StorageOptimizer < Struct.new(
3646
+ :storage_optimizer_type,
3647
+ :config,
3648
+ :error_message,
3649
+ :warnings,
3650
+ :last_run_details)
3651
+ SENSITIVE = []
3652
+ include Aws::Structure
3653
+ end
3654
+
3655
+ # Specifies the details of a governed table.
3656
+ #
3657
+ # @!attribute [rw] uri
3658
+ # The Amazon S3 location of the object.
3659
+ # @return [String]
3660
+ #
3661
+ # @!attribute [rw] etag
3662
+ # The Amazon S3 ETag of the object. Returned by `GetTableObjects` for
3663
+ # validation and used to identify changes to the underlying data.
3664
+ # @return [String]
3665
+ #
3666
+ # @!attribute [rw] size
3667
+ # The size of the Amazon S3 object in bytes.
3668
+ # @return [Integer]
3669
+ #
3670
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/TableObject AWS API Documentation
3671
+ #
3672
+ class TableObject < Struct.new(
3673
+ :uri,
3674
+ :etag,
3675
+ :size)
3676
+ SENSITIVE = []
3677
+ include Aws::Structure
3678
+ end
3679
+
2305
3680
  # A structure for the table object. A table is a metadata definition
2306
3681
  # that represents your data. You can Grant and Revoke table privileges
2307
3682
  # to a principal.
@@ -2418,14 +3793,14 @@ module Aws::LakeFormation
2418
3793
  include Aws::Structure
2419
3794
  end
2420
3795
 
2421
- # A structure describing a database resource with tags.
3796
+ # A structure describing a database resource with LF-tags.
2422
3797
  #
2423
3798
  # @!attribute [rw] database
2424
- # A database that has tags attached to it.
3799
+ # A database that has LF-tags attached to it.
2425
3800
  # @return [Types::DatabaseResource]
2426
3801
  #
2427
3802
  # @!attribute [rw] lf_tags
2428
- # A list of tags attached to the database.
3803
+ # A list of LF-tags attached to the database.
2429
3804
  # @return [Array<Types::LFTagPair>]
2430
3805
  #
2431
3806
  # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/TaggedDatabase AWS API Documentation
@@ -2437,22 +3812,22 @@ module Aws::LakeFormation
2437
3812
  include Aws::Structure
2438
3813
  end
2439
3814
 
2440
- # A structure describing a table resource with tags.
3815
+ # A structure describing a table resource with LF-tags.
2441
3816
  #
2442
3817
  # @!attribute [rw] table
2443
- # A table that has tags attached to it.
3818
+ # A table that has LF-tags attached to it.
2444
3819
  # @return [Types::TableResource]
2445
3820
  #
2446
3821
  # @!attribute [rw] lf_tag_on_database
2447
- # A list of tags attached to the database where the table resides.
3822
+ # A list of LF-tags attached to the database where the table resides.
2448
3823
  # @return [Array<Types::LFTagPair>]
2449
3824
  #
2450
3825
  # @!attribute [rw] lf_tags_on_table
2451
- # A list of tags attached to the table.
3826
+ # A list of LF-tags attached to the table.
2452
3827
  # @return [Array<Types::LFTagPair>]
2453
3828
  #
2454
3829
  # @!attribute [rw] lf_tags_on_columns
2455
- # A list of tags attached to columns in the table.
3830
+ # A list of LF-tags attached to columns in the table.
2456
3831
  # @return [Array<Types::ColumnLFTag>]
2457
3832
  #
2458
3833
  # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/TaggedTable AWS API Documentation
@@ -2466,6 +3841,95 @@ module Aws::LakeFormation
2466
3841
  include Aws::Structure
2467
3842
  end
2468
3843
 
3844
+ # Contains details about an error where the query request was throttled.
3845
+ #
3846
+ # @!attribute [rw] message
3847
+ # A message describing the error.
3848
+ # @return [String]
3849
+ #
3850
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/ThrottledException AWS API Documentation
3851
+ #
3852
+ class ThrottledException < Struct.new(
3853
+ :message)
3854
+ SENSITIVE = []
3855
+ include Aws::Structure
3856
+ end
3857
+
3858
+ # Contains details about an error related to a transaction that was
3859
+ # cancelled.
3860
+ #
3861
+ # @!attribute [rw] message
3862
+ # A message describing the error.
3863
+ # @return [String]
3864
+ #
3865
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/TransactionCanceledException AWS API Documentation
3866
+ #
3867
+ class TransactionCanceledException < Struct.new(
3868
+ :message)
3869
+ SENSITIVE = []
3870
+ include Aws::Structure
3871
+ end
3872
+
3873
+ # Contains details about an error related to a transaction commit that
3874
+ # was in progress.
3875
+ #
3876
+ # @!attribute [rw] message
3877
+ # A message describing the error.
3878
+ # @return [String]
3879
+ #
3880
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/TransactionCommitInProgressException AWS API Documentation
3881
+ #
3882
+ class TransactionCommitInProgressException < Struct.new(
3883
+ :message)
3884
+ SENSITIVE = []
3885
+ include Aws::Structure
3886
+ end
3887
+
3888
+ # Contains details about an error where the specified transaction has
3889
+ # already been committed and cannot be used for `UpdateTableObjects`.
3890
+ #
3891
+ # @!attribute [rw] message
3892
+ # A message describing the error.
3893
+ # @return [String]
3894
+ #
3895
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/TransactionCommittedException AWS API Documentation
3896
+ #
3897
+ class TransactionCommittedException < Struct.new(
3898
+ :message)
3899
+ SENSITIVE = []
3900
+ include Aws::Structure
3901
+ end
3902
+
3903
+ # A structure that contains information about a transaction.
3904
+ #
3905
+ # @!attribute [rw] transaction_id
3906
+ # The ID of the transaction.
3907
+ # @return [String]
3908
+ #
3909
+ # @!attribute [rw] transaction_status
3910
+ # A status of ACTIVE, COMMITTED, or ABORTED.
3911
+ # @return [String]
3912
+ #
3913
+ # @!attribute [rw] transaction_start_time
3914
+ # The time when the transaction started.
3915
+ # @return [Time]
3916
+ #
3917
+ # @!attribute [rw] transaction_end_time
3918
+ # The time when the transaction committed or aborted, if it is not
3919
+ # currently active.
3920
+ # @return [Time]
3921
+ #
3922
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/TransactionDescription AWS API Documentation
3923
+ #
3924
+ class TransactionDescription < Struct.new(
3925
+ :transaction_id,
3926
+ :transaction_status,
3927
+ :transaction_start_time,
3928
+ :transaction_end_time)
3929
+ SENSITIVE = []
3930
+ include Aws::Structure
3931
+ end
3932
+
2469
3933
  # @note When making an API call, you may pass UpdateLFTagRequest
2470
3934
  # data as a hash:
2471
3935
  #
@@ -2480,19 +3944,19 @@ module Aws::LakeFormation
2480
3944
  # The identifier for the Data Catalog. By default, the account ID. The
2481
3945
  # Data Catalog is the persistent metadata store. It contains database
2482
3946
  # definitions, table definitions, and other control information to
2483
- # manage your AWS Lake Formation environment.
3947
+ # manage your Lake Formation environment.
2484
3948
  # @return [String]
2485
3949
  #
2486
3950
  # @!attribute [rw] tag_key
2487
- # The key-name for the tag for which to add or delete values.
3951
+ # The key-name for the LF-tag for which to add or delete values.
2488
3952
  # @return [String]
2489
3953
  #
2490
3954
  # @!attribute [rw] tag_values_to_delete
2491
- # A list of tag values to delete from the tag.
3955
+ # A list of LF-tag values to delete from the LF-tag.
2492
3956
  # @return [Array<String>]
2493
3957
  #
2494
3958
  # @!attribute [rw] tag_values_to_add
2495
- # A list of tag values to add from the tag.
3959
+ # A list of LF-tag values to add from the LF-tag.
2496
3960
  # @return [Array<String>]
2497
3961
  #
2498
3962
  # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/UpdateLFTagRequest AWS API Documentation
@@ -2519,7 +3983,7 @@ module Aws::LakeFormation
2519
3983
  # }
2520
3984
  #
2521
3985
  # @!attribute [rw] role_arn
2522
- # The new role to use for the given resource registered in AWS Lake
3986
+ # The new role to use for the given resource registered in Lake
2523
3987
  # Formation.
2524
3988
  # @return [String]
2525
3989
  #
@@ -2540,5 +4004,226 @@ module Aws::LakeFormation
2540
4004
  #
2541
4005
  class UpdateResourceResponse < Aws::EmptyStructure; end
2542
4006
 
4007
+ # @note When making an API call, you may pass UpdateTableObjectsRequest
4008
+ # data as a hash:
4009
+ #
4010
+ # {
4011
+ # catalog_id: "CatalogIdString",
4012
+ # database_name: "NameString", # required
4013
+ # table_name: "NameString", # required
4014
+ # transaction_id: "TransactionIdString", # required
4015
+ # write_operations: [ # required
4016
+ # {
4017
+ # add_object: {
4018
+ # uri: "URI", # required
4019
+ # etag: "ETagString", # required
4020
+ # size: 1, # required
4021
+ # partition_values: ["PartitionValueString"],
4022
+ # },
4023
+ # delete_object: {
4024
+ # uri: "URI", # required
4025
+ # etag: "ETagString",
4026
+ # partition_values: ["PartitionValueString"],
4027
+ # },
4028
+ # },
4029
+ # ],
4030
+ # }
4031
+ #
4032
+ # @!attribute [rw] catalog_id
4033
+ # The catalog containing the governed table to update. Defaults to the
4034
+ # caller’s account ID.
4035
+ # @return [String]
4036
+ #
4037
+ # @!attribute [rw] database_name
4038
+ # The database containing the governed table to update.
4039
+ # @return [String]
4040
+ #
4041
+ # @!attribute [rw] table_name
4042
+ # The governed table to update.
4043
+ # @return [String]
4044
+ #
4045
+ # @!attribute [rw] transaction_id
4046
+ # The transaction at which to do the write.
4047
+ # @return [String]
4048
+ #
4049
+ # @!attribute [rw] write_operations
4050
+ # A list of `WriteOperation` objects that define an object to add to
4051
+ # or delete from the manifest for a governed table.
4052
+ # @return [Array<Types::WriteOperation>]
4053
+ #
4054
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/UpdateTableObjectsRequest AWS API Documentation
4055
+ #
4056
+ class UpdateTableObjectsRequest < Struct.new(
4057
+ :catalog_id,
4058
+ :database_name,
4059
+ :table_name,
4060
+ :transaction_id,
4061
+ :write_operations)
4062
+ SENSITIVE = []
4063
+ include Aws::Structure
4064
+ end
4065
+
4066
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/UpdateTableObjectsResponse AWS API Documentation
4067
+ #
4068
+ class UpdateTableObjectsResponse < Aws::EmptyStructure; end
4069
+
4070
+ # @note When making an API call, you may pass UpdateTableStorageOptimizerRequest
4071
+ # data as a hash:
4072
+ #
4073
+ # {
4074
+ # catalog_id: "CatalogIdString",
4075
+ # database_name: "NameString", # required
4076
+ # table_name: "NameString", # required
4077
+ # storage_optimizer_config: { # required
4078
+ # "COMPACTION" => {
4079
+ # "StorageOptimizerConfigKey" => "StorageOptimizerConfigValue",
4080
+ # },
4081
+ # },
4082
+ # }
4083
+ #
4084
+ # @!attribute [rw] catalog_id
4085
+ # The Catalog ID of the table.
4086
+ # @return [String]
4087
+ #
4088
+ # @!attribute [rw] database_name
4089
+ # Name of the database where the table is present.
4090
+ # @return [String]
4091
+ #
4092
+ # @!attribute [rw] table_name
4093
+ # Name of the table for which to enable the storage optimizer.
4094
+ # @return [String]
4095
+ #
4096
+ # @!attribute [rw] storage_optimizer_config
4097
+ # Name of the table for which to enable the storage optimizer.
4098
+ # @return [Hash<String,Hash<String,String>>]
4099
+ #
4100
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/UpdateTableStorageOptimizerRequest AWS API Documentation
4101
+ #
4102
+ class UpdateTableStorageOptimizerRequest < Struct.new(
4103
+ :catalog_id,
4104
+ :database_name,
4105
+ :table_name,
4106
+ :storage_optimizer_config)
4107
+ SENSITIVE = []
4108
+ include Aws::Structure
4109
+ end
4110
+
4111
+ # @!attribute [rw] result
4112
+ # A response indicating the success of failure of the operation.
4113
+ # @return [String]
4114
+ #
4115
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/UpdateTableStorageOptimizerResponse AWS API Documentation
4116
+ #
4117
+ class UpdateTableStorageOptimizerResponse < Struct.new(
4118
+ :result)
4119
+ SENSITIVE = []
4120
+ include Aws::Structure
4121
+ end
4122
+
4123
+ # An object that defines an Amazon S3 object to be deleted if a
4124
+ # transaction cancels, provided that `VirtualPut` was called before
4125
+ # writing the object.
4126
+ #
4127
+ # @note When making an API call, you may pass VirtualObject
4128
+ # data as a hash:
4129
+ #
4130
+ # {
4131
+ # uri: "URI", # required
4132
+ # etag: "ETagString",
4133
+ # }
4134
+ #
4135
+ # @!attribute [rw] uri
4136
+ # The path to the Amazon S3 object. Must start with s3://
4137
+ # @return [String]
4138
+ #
4139
+ # @!attribute [rw] etag
4140
+ # The ETag of the Amazon S3 object.
4141
+ # @return [String]
4142
+ #
4143
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/VirtualObject AWS API Documentation
4144
+ #
4145
+ class VirtualObject < Struct.new(
4146
+ :uri,
4147
+ :etag)
4148
+ SENSITIVE = []
4149
+ include Aws::Structure
4150
+ end
4151
+
4152
+ # Defines the valid range of work unit IDs for querying the execution
4153
+ # service.
4154
+ #
4155
+ # @!attribute [rw] work_unit_id_max
4156
+ # Defines the maximum work unit ID in the range. The maximum value is
4157
+ # inclusive.
4158
+ # @return [Integer]
4159
+ #
4160
+ # @!attribute [rw] work_unit_id_min
4161
+ # Defines the minimum work unit ID in the range.
4162
+ # @return [Integer]
4163
+ #
4164
+ # @!attribute [rw] work_unit_token
4165
+ # A work token used to query the execution service.
4166
+ # @return [String]
4167
+ #
4168
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/WorkUnitRange AWS API Documentation
4169
+ #
4170
+ class WorkUnitRange < Struct.new(
4171
+ :work_unit_id_max,
4172
+ :work_unit_id_min,
4173
+ :work_unit_token)
4174
+ SENSITIVE = []
4175
+ include Aws::Structure
4176
+ end
4177
+
4178
+ # Contains details about an error related to work units not being ready.
4179
+ #
4180
+ # @!attribute [rw] message
4181
+ # A message describing the error.
4182
+ # @return [String]
4183
+ #
4184
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/WorkUnitsNotReadyYetException AWS API Documentation
4185
+ #
4186
+ class WorkUnitsNotReadyYetException < Struct.new(
4187
+ :message)
4188
+ SENSITIVE = []
4189
+ include Aws::Structure
4190
+ end
4191
+
4192
+ # Defines an object to add to or delete from a governed table.
4193
+ #
4194
+ # @note When making an API call, you may pass WriteOperation
4195
+ # data as a hash:
4196
+ #
4197
+ # {
4198
+ # add_object: {
4199
+ # uri: "URI", # required
4200
+ # etag: "ETagString", # required
4201
+ # size: 1, # required
4202
+ # partition_values: ["PartitionValueString"],
4203
+ # },
4204
+ # delete_object: {
4205
+ # uri: "URI", # required
4206
+ # etag: "ETagString",
4207
+ # partition_values: ["PartitionValueString"],
4208
+ # },
4209
+ # }
4210
+ #
4211
+ # @!attribute [rw] add_object
4212
+ # A new object to add to the governed table.
4213
+ # @return [Types::AddObjectInput]
4214
+ #
4215
+ # @!attribute [rw] delete_object
4216
+ # An object to delete from the governed table.
4217
+ # @return [Types::DeleteObjectInput]
4218
+ #
4219
+ # @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/WriteOperation AWS API Documentation
4220
+ #
4221
+ class WriteOperation < Struct.new(
4222
+ :add_object,
4223
+ :delete_object)
4224
+ SENSITIVE = []
4225
+ include Aws::Structure
4226
+ end
4227
+
2543
4228
  end
2544
4229
  end