create-table
Описание
Создаёт новое определение таблицы в каталоге данных.
См. также: Документацию API AWS
Синтаксис
create-table
[--catalog-id <value>]
--database-name <value>
--table-input <value>
[--partition-indexes <value>]
[--transaction-id <value>]
[--open-table-format-input <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]
Параметры
--catalog-id (строка)
Table. Если не указан, используется идентификатор учётной записи Amazon Web Services по умолчанию.--database-name (строка)
--table-input (структура)
Объект TableInput, определяющий метаданные таблицы для создания в каталоге.
Name -> (строка)
Description -> (строка)
Owner -> (строка)
LastAccessTime -> (метка времени)
LastAnalyzedTime -> (метка времени)
Retention -> (целое число)
StorageDescriptor -> (структура)
Описание хранилища, содержащее информацию о физическом хранении этой таблицы.
Columns -> (список)
Список Columns в таблице.
(структура)
Столбец в Table.
Name -> (строка)
Column.Type -> (строка)
Column.Comment -> (строка)
Parameters -> (карта)
Эти пары ключ-значение определяют свойства, связанные со столбцом.
key -> (строка)
value -> (строка)
Location -> (строка)
AdditionalLocations -> (список)
Список расположений, указывающих на путь, где расположена таблица Delta.
(строка)
InputFormat -> (строка)
SequenceFileInputFormat (двоичный), или TextInputFormat , или пользовательский формат.OutputFormat -> (строка)
SequenceFileOutputFormat (двоичный), или IgnoreKeyTextOutputFormat , или пользовательский формат.Compressed -> (булево)
True, если данные в таблице сжаты, или False, если нет.NumberOfBuckets -> (целое число)
SerdeInfo -> (структура)
Информация о сериализации/десериализации (SerDe).
Name -> (строка)
SerializationLibrary -> (строка)
org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe.Parameters -> (карта)
Эти пары ключ-значение определяют параметры инициализации для SerDe.
key -> (строка)
value -> (строка)
BucketColumns -> (список)
Список столбцов группировки редьюсеров, столбцов кластеризации и столбцов разбиения в таблице.
(строка)
SortColumns -> (список)
Список, указывающий порядок сортировки каждого разбиения в таблице.
(структура)
Определяет порядок сортировки отсортированного столбца.
Column -> (строка)
SortOrder -> (целое число)
== 1) или убывания (==0).Parameters -> (карта)
Пользовательские свойства в виде пар ключ-значение.
key -> (строка)
value -> (строка)
SkewedInfo -> (структура)
Информация о значениях, которые часто встречаются в столбце (искривлённые значения).
SkewedColumnNames -> (список)
Список имён столбцов, содержащих искажённые значения.
(строка)
SkewedColumnValues -> (список)
Список значений, которые настолько часто встречаются, что считаются искажёнными.
(строка)
SkewedColumnValueLocationMaps -> (карта)
Сопоставление искажённых значений со столбцами, которые их содержат.
key -> (строка)
value -> (строка)
StoredAsSubDirectories -> (булево)
True, если данные таблицы хранятся в подкаталогах, или False, если нет.SchemaReference -> (структура)
Объект, ссылающийся на схему, хранящуюся в реестре схем Glue.
При создании таблицы вы можете передать пустой список столбцов для схемы и вместо этого использовать ссылку на схему.
SchemaId -> (структура)
Структура, содержащая поля идентификации схемы. Должен быть указан либо этот элемент, либо SchemaVersionId.
SchemaArn -> (строка)
SchemaArn, либо SchemaName.SchemaName -> (строка)
SchemaArn, либо SchemaName.RegistryName -> (строка)
SchemaVersionId -> (строка)
SchemaId.SchemaVersionNumber -> (длинное целое число)
PartitionKeys -> (список)
Список столбцов, по которым таблица раздроблена. В качестве ключей разбиения поддерживаются только примитивные типы.
Когда вы создаёте таблицу, используемую Amazon Athena, и не указываете никаких partitionKeys, вы должны хотя бы установить значение partitionKeys в пустой список. Например:
"PartitionKeys": [](структура)
Столбец в Table.
Name -> (строка)
Column.Type -> (строка)
Column.Comment -> (строка)
Parameters -> (карта)
Эти пары ключ-значение определяют свойства, связанные со столбцом.
key -> (строка)
value -> (строка)
ViewOriginalText -> (строка)
VIRTUAL_VIEW, определённые параметры Athena, закодированные в base64.ViewExpandedText -> (строка)
TableType -> (строка)
Тип этой таблицы. Glue создаёт таблицы типа EXTERNAL_TABLE. Другие сервисы, такие как Athena, могут создавать таблицы с дополнительными типами таблиц.
Типы таблиц, относящиеся к Glue:
Атрибут совместимости с Hive - указывает на таблицу, не управляемую Hive.
Используется Lake Formation. Каталог данных Glue понимает GOVERNED.
Parameters -> (карта)
Эти пары ключ-значение определяют свойства, связанные с таблицей.
key -> (строка)
value -> (строка)
TargetTable -> (структура)
Структура TableIdentifier, описывающая целевую таблицу для связывания ресурсов.
CatalogId -> (строка)
DatabaseName -> (строка)
Name -> (строка)
Region -> (строка)
ViewDefinition -> (структура)
Структура, содержащая всю информацию, определяющую представление, включая диалект или диалекты для представления и запрос.
IsProtected -> (булево)
Definer -> (строка)
Representations -> (список)
Список структур, содержащих диалект представления и запрос, определяющий представление.
(структура)
Структура, содержащая подробности представления для обновления или создания представления Lake Formation.
Dialect -> (строка)
DialectVersion -> (строка)
ViewOriginalText -> (строка)
ValidationConnection -> (строка)
ViewExpandedText -> (строка)
SubObjects -> (список)
Список основного ARN таблицы, из которых состоит представление.
(строка)
Синтаксис JSON:
{
"Name": "string",
"Description": "string",
"Owner": "string",
"LastAccessTime": timestamp,
"LastAnalyzedTime": timestamp,
"Retention": integer,
"StorageDescriptor": {
"Columns": [
{
"Name": "string",
"Type": "string",
"Comment": "string",
"Parameters": {"string": "string"
...}
}
...
],
"Location": "string",
"AdditionalLocations": ["string", ...],
"InputFormat": "string",
"OutputFormat": "string",
"Compressed": true|false,
"NumberOfBuckets": integer,
"SerdeInfo": {
"Name": "string",
"SerializationLibrary": "string",
"Parameters": {"string": "string"
...}
},
"BucketColumns": ["string", ...],
"SortColumns": [
{
"Column": "string",
"SortOrder": integer
}
...
],
"Parameters": {"string": "string"
...},
"SkewedInfo": {
"SkewedColumnNames": ["string", ...],
"SkewedColumnValues": ["string", ...],
"SkewedColumnValueLocationMaps": {"string": "string"
...}
},
"StoredAsSubDirectories": true|false,
"SchemaReference": {
"SchemaId": {
"SchemaArn": "string",
"SchemaName": "string",
"RegistryName": "string"
},
"SchemaVersionId": "string",
"SchemaVersionNumber": long
}
},
"PartitionKeys": [
{
"Name": "string",
"Type": "string",
"Comment": "string",
"Parameters": {"string": "string"
...}
}
...
],
"ViewOriginalText": "string",
"ViewExpandedText": "string",
"TableType": "string",
"Parameters": {"string": "string"
...},
"TargetTable": {
"CatalogId": "string",
"DatabaseName": "string",
"Name": "string",
"Region": "string"
},
"ViewDefinition": {
"IsProtected": true|false,
"Definer": "string",
"Representations": [
{
"Dialect": "REDSHIFT"|"ATHENA"|"SPARK",
"DialectVersion": "string",
"ViewOriginalText": "string",
"ValidationConnection": "string",
"ViewExpandedText": "string"
}
...
],
"SubObjects": ["string", ...]
}
}
--partition-indexes (список)
Список индексов разбиения, PartitionIndex структур, для создания в таблице.
(структура)
Структура для индекса разбиения.
Keys -> (список)
Ключи для индекса разбиения.
(строка)
IndexName -> (строка)
Упрощённый синтаксис:
Keys=string,string,IndexName=string ...
Синтаксис JSON:
[
{
"Keys": ["string", ...],
"IndexName": "string"
}
...
]
--transaction-id (строка)
--open-table-format-input (структура)
Определяет OpenTableFormatInput структуру при создании таблицы открытого формата.
IcebergInput -> (структура)
Определяет IcebergInput структуру, которая определяет таблицу метаданных Apache Iceberg.
MetadataOperation -> (строка)
CREATE.Version -> (строка)
Упрощённый синтаксис:
IcebergInput={MetadataOperation=string,Version=string}
Синтаксис JSON:
{
"IcebergInput": {
"MetadataOperation": "CREATE",
"Version": "string"
}
}
--cli-input-json | --cli-input-yaml (строка) Считывает аргументы из предоставленной JSON-строки. JSON-строка следует формату, предоставленному --generate-cli-skeleton. Если на командной строке предоставлены другие аргументы, эти значения переопределят значения, предоставленные в JSON. Невозможно передавать произвольные двоичные значения с помощью значения, предоставленного в JSON, так как строка будет воспринята буквально. Это может не быть указано вместе с --cli-input-yaml.
--generate-cli-skeleton (строка) Выводит JSON-скелет в стандартный вывод без отправки запроса к API. Если предоставлено значение без значения или значение input, выводится пример JSON-ввода, который можно использовать в качестве аргумента для --cli-input-json. Аналогично, если предоставлено yaml-input, будет выведен пример ввода YAML, который можно использовать с --cli-input-yaml. Если предоставлено значение output, оно валидирует входные данные команды и возвращает пример JSON-вывода для этой команды. Сгенерированный JSON-скелет нестабилен между версиями AWS CLI, и нет гарантий обратной совместимости в сгенерированном JSON-скелете.
Общие параметры
--debug (логическое значение)
Включить отладочный вывод.
--endpoint-url (строка)
Переопределить стандартный URL команды на указанный URL.
--no-verify-ssl (логическое значение)
По умолчанию AWS CLI использует SSL при взаимодействии с AWS-сервисами. Для каждого SSL-соединения AWS CLI будет проверять SSL-сертификаты. Этот параметр переопределяет стандартное поведение проверки SSL-сертификатов.
--no-paginate (логическое значение)
Отключить автоматическую постраничность. Если автоматическая постраничность отключена, AWS CLI сделает только один вызов для первой страницы результатов.
--output (строка)
Стиль форматирования для вывода команды.
- json
- текст
- таблица
- yaml
- yaml-поток
--query (строка)
Запрос JMESPath для фильтрации данных ответа.
--profile (строка)
Использовать определенный профиль из файла учетных данных.
--region (строка)
Регион для использования. Переопределяет настройки конфигурации/среды.
--version (строка)
Отобразить версию этого инструмента.
--color (строка)
Включить/выключить цветной вывод.
- включить
- выключить
- автоматически
--no-sign-request (логическое значение)
Не подписывать запросы. Учетные данные не будут загружены, если этот аргумент предоставлен.
--ca-bundle (строка)
Файл сертификатов CA для проверки SSL-сертификатов. Переопределяет настройки конфигурации/среды.
--cli-read-timeout (целое число)
Максимальное время чтения сокета в секундах. Если значение установлено в 0, чтение сокета будет блокирующим и без таймаута. Значение по умолчанию — 60 секунд.
--cli-connect-timeout (целое число)
Максимальное время подключения сокета в секундах. Если значение установлено в 0, подключение сокета будет блокирующим и без таймаута. Значение по умолчанию — 60 секунд.
--cli-binary-format (строка)
Стиль форматирования, используемый для двоичных блоков. Формат по умолчанию — base64. Формат base64 ожидает, что двоичные блоки будут предоставлены как строка, закодированная в base64. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, и двоичные значения должны передаваться буквально. При предоставлении содержимого из файла, отображающего двоичный блок fileb:// всегда будет рассматриваться как двоичный и использовать содержимое файла напрямую независимо от настройки cli-binary-format. При использовании file:// содержимое файла должно быть правильно отформатировано для настроенного cli-binary-format.
- base64
- raw-in-base64-out
--no-cli-pager (логическое значение)
Отключить кли-пагинатор для вывода.
--cli-auto-prompt (логическое значение)
Автоматически запрашивать параметры ввода CLI.
--no-cli-auto-prompt (логическое значение)
Отключить автоматическую запрос параметров ввода CLI.
Примеры
Примечание
Для использования следующих примеров необходимо установить и настроить AWS CLI. Подробнее см. руководство по началу работы в Руководстве пользователя AWS CLI.
Если не указано иное, все примеры используют правила цитирования Unix-подобных систем. Эти примеры необходимо адаптировать к правилам цитирования вашей терминальной среды. См. Использование кавычек со строками в Руководстве пользователя AWS CLI.
Пример 1: Создание таблицы для потока данных Kinesis
Следующий create-table пример создает таблицу в каталоге данных AWS Glue, описывающую поток данных Kinesis.
aws glue create-table \
--database-name tempdb \
--table-input '{"Name":"test-kinesis-input", "StorageDescriptor":{ \
"Columns":[ \
{"Name":"sensorid", "Type":"int"}, \
{"Name":"currenttemperature", "Type":"int"}, \
{"Name":"status", "Type":"string"}
], \
"Location":"my-testing-stream", \
"Parameters":{ \
"typeOfData":"kinesis","streamName":"my-testing-stream", \
"kinesisUrl":"https://kinesis.us-east-1.amazonaws.com" \
}, \
"SerdeInfo":{ \
"SerializationLibrary":"org.openx.data.jsonserde.JsonSerDe"} \
}, \
"Parameters":{ \
"classification":"json"} \
}' \
--profile my-profile \
--endpoint https://glue.us-east-1.amazonaws.com
Эта команда не генерирует вывод.
Дополнительную информацию см. в разделе Определение таблиц в каталоге данных AWS Glue в Руководстве разработчика AWS Glue.
Пример 2: Создание таблицы для хранилища данных Kafka
Следующий create-table пример создает таблицу в каталоге данных AWS Glue, описывающую хранилище данных Kafka.
aws glue create-table \
--database-name tempdb \
--table-input '{"Name":"test-kafka-input", "StorageDescriptor":{ \
"Columns":[ \
{"Name":"sensorid", "Type":"int"}, \
{"Name":"currenttemperature", "Type":"int"}, \
{"Name":"status", "Type":"string"}
], \
"Location":"glue-topic", \
"Parameters":{ \
"typeOfData":"kafka","topicName":"glue-topic", \
"connectionName":"my-kafka-connection"
}, \
"SerdeInfo":{ \
"SerializationLibrary":"org.apache.hadoop.hive.serde2.OpenCSVSerde"} \
}, \
"Parameters":{ \
"separatorChar":","} \
}' \
--profile my-profile \
--endpoint https://glue.us-east-1.amazonaws.com
Эта команда не генерирует вывод.
Дополнительную информацию см. в разделе Определение таблиц в каталоге данных AWS Glue в Руководстве разработчика AWS Glue.
Пример 3: Создание таблицы для хранилища данных AWS S3
Следующий create-table пример создает таблицу в каталоге данных AWS Glue, описывающую хранилище данных AWS Simple Storage Service (AWS S3).
aws glue create-table \
--database-name tempdb \
--table-input '{"Name":"s3-output", "StorageDescriptor":{ \
"Columns":[ \
{"Name":"s1", "Type":"string"}, \
{"Name":"s2", "Type":"int"}, \
{"Name":"s3", "Type":"string"}
], \
"Location":"s3://bucket-path/", \
"SerdeInfo":{ \
"SerializationLibrary":"org.openx.data.jsonserde.JsonSerDe"} \
}, \
"Parameters":{ \
"classification":"json"} \
}' \
--profile my-profile \
--endpoint https://glue.us-east-1.amazonaws.com
Эта команда не генерирует вывод.
Дополнительную информацию см. в разделе Определение таблиц в каталоге данных AWS Glue в Руководстве разработчика AWS Glue.
Вывод
Нет
© Copyright 2025, Amazon Web Services. Created using Sphinx.