

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Amazon S3 データソースの作成
<a name="create-ds-s3"></a>

次の例は、 Amazon S3 データソースの作成を示しています。この例では、インデックスからデータを読み取るアクセス許可を持つインデックスと IAM ロールを既に作成していることを前提としています。 IAM ロールの詳細については、[IAM 「アクセスロール](https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html#iam-roles-ds)」を参照してください。インデックスの作成の詳細については、「[インデックスの作成](https://docs.aws.amazon.com/kendra/latest/dg/create-index.html)」を参照してください。

------
#### [ CLI ]

```
aws kendra create-data-source \
 --index-id index ID \
 --name example-data-source \
 --type S3 \
 --configuration '{"S3Configuration":{"BucketName":"bucket name"}}' 
 --role-arn 'arn:aws:iam::account id:role:/role name
```

------
#### [ Python ]

次の Python コードのスニペットは、 Amazon S3 データソースを作成します。完全な例については、[開始方法 (AWS SDK for Python (Boto3))](gs-python.md) を参照してください。

```
print("Create an Amazon S3 data source.")
    
    # Provide a name for the data source
    name = "getting-started-data-source"
    # Provide an optional description for the data source
    description = "Getting started data source."
    # Provide the IAM role ARN required for data sources
    role_arn = "arn:aws:iam::${accountID}:role/${roleName}"
    # Provide the data soource connection information
    s3_bucket_name = "S3-bucket-name"
    type = "S3"
    # Configure the data source
    configuration = {"S3DataSourceConfiguration":
        {
            "BucketName": s3_bucket_name
        }
    }

    data_source_response = kendra.create_data_source(
        Configuration = configuration,
        Name = name,
        Description = description,
        RoleArn = role_arn,
        Type = type,
        IndexId = index_id
    )
```

------

データソースの作成には時間がかかることがあります。[DescribeDataSource](https://docs.aws.amazon.com/kendra/latest/APIReference/API_DescribeDataSource.html) API を使用して進行状況をモニタリングできます。データソースのステータスが `ACTIVE` の場合、データソースを使用する準備ができています。

次の例は、データソースのステータスの取得を示しています。

------
#### [ CLI ]

```
aws kendra describe-data-source \
 --index-id index ID \
 --id data source ID
```

------
#### [ Python ]

次の Python コードのスニペットでは、 S3 データソースに関する情報を取得します。完全な例については、[開始方法 (AWS SDK for Python (Boto3))](gs-python.md) を参照してください。

```
print("Wait for Amazon Kendra to create the data source.")

    while True:
        data_source_description = kendra.describe_data_source(
            Id = "data-source-id",
            IndexId = "index-id"
        )
        status = data_source_description["Status"]
        print(" Creating data source. Status: "+status)
        time.sleep(60)
        if status != "CREATING":
            break
```

------

このデータソースにはスケジュールがないため、自動的に実行されません。データソースのインデックスを作成するには、[StartDataSourceSyncJob](https://docs.aws.amazon.com/kendra/latest/APIReference/API_StartDataSourceSyncJob.html) を呼び出し、インデックスをデータソースと同期させます。

次の例は、データソースの同期を示しています。

------
#### [ CLI ]

```
aws kendra start-data-source-sync-job \
 --index-id index ID \
 --id data source ID
```

------
#### [ Python ]

次の Python コードのスニペットで Amazon S3 データソースを同期します。完全な例については、[開始方法 (AWS SDK for Python (Boto3))](gs-python.md) を参照してください。

```
print("Synchronize the data source.")

    sync_response = kendra.start_data_source_sync_job(
        Id = "data-source-id",
        IndexId = "index-id"
    )
```

------