Skip to content

create_dataset async

create_dataset(
    name: DatasetName,
    input: Input,
    *,
    config_overrides: Optional[AsyncDataBrewClientConfig] = None,
    format: Optional[InputFormat] = None,
    format_options: Optional[FormatOptions] = None,
    path_options: Optional[PathOptions] = None,
    tags: Optional[TagMap] = None,
) -> CreateDatasetResponse

Creates a new DataBrew dataset.

Parameters:

  • name (DatasetName) –

    The name of the dataset to be created. Valid characters are alphanumeric (A-Z, a-z, 0-9), hyphen (-), period (.), and space.

  • format (Optional[InputFormat], default: None ) –

    The file format of a dataset that is created from an Amazon S3 file or folder.

  • path_options (Optional[PathOptions], default: None ) –

    A set of options that defines how DataBrew interprets an Amazon S3 path of the dataset.

  • tags (Optional[TagMap], default: None ) –

    Metadata tags to apply to this dataset.

Raises:

Source code in docs_src/capo_databrew/_services/async_data_brew.py
async def create_dataset(
    self,
    name: "capo_databrew.types.dataset_name.DatasetName",
    input: "capo_databrew.types.input.Input",
    *,
    config_overrides: Optional[AsyncDataBrewClientConfig] = None,
    format: Optional["capo_databrew.types.input_format.InputFormat"] = None,
    format_options: Optional[
        "capo_databrew.types.format_options.FormatOptions"
    ] = None,
    path_options: Optional["capo_databrew.types.path_options.PathOptions"] = None,
    tags: Optional["capo_databrew.types.tag_map.TagMap"] = None,
) -> "capo_databrew.types.create_dataset_response.CreateDatasetResponse":
    """<p>Creates a new DataBrew dataset.</p>

    Args:
        name: <p>The name of the dataset to be created. Valid characters are alphanumeric (A-Z, a-z, 0-9), hyphen (-), period (.), and space.</p>
        format: <p>The file format of a dataset that is created from an Amazon S3 file or folder.</p>
        path_options: <p>A set of options that defines how DataBrew interprets an Amazon S3 path of the dataset.</p>
        tags: <p>Metadata tags to apply to this dataset.</p>

    Raises:
        capo_databrew.errors.access_denied_exception.AccessDeniedException: <p>Access to the specified resource was denied.</p>
        capo_databrew.errors.conflict_exception.ConflictException: <p>Updating or deleting a resource can cause an inconsistent state.</p>
        capo_databrew.errors.service_quota_exceeded_exception.ServiceQuotaExceededException: <p>A service quota is exceeded.</p>
        capo_databrew.errors.validation_exception.ValidationException: <p>The input parameters for this request failed validation.</p>
        capo_databrew.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_databrew.types.create_dataset_request.CreateDatasetRequest]",
    ) -> AsyncOperationResponse[
        "capo_databrew.types.create_dataset_response.CreateDatasetResponse"
    ]:
        import capo_databrew._operations.aws_glue_data_brew.create_dataset

        (
            output,
            http_response,
        ) = await capo_databrew._operations.aws_glue_data_brew.create_dataset.async_create_dataset(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("CreateDataset")
    )
    input_: capo_databrew.types.create_dataset_request.CreateDatasetRequest = {
        "name": name,
        "input": input,
    }
    if format is not None:
        input_["format"] = format
    if format_options is not None:
        input_["format_options"] = format_options
    if path_options is not None:
        input_["path_options"] = path_options
    if tags is not None:
        input_["tags"] = tags

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output