aws-sdk-lakeformation 1.19.0 → 1.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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