

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# SDK for Python (Boto3)을 이용한 특성 저장소 사용
<a name="feature-store-create-feature-group"></a>

특성 그룹은 Amazon SageMaker 특성 저장소에 저장된 기계 학습 (ML) 데이터 및 메타데이터를 포함하는 주요 특성 저장소 리소스입니다.특성 그룹은 특성과 레코드의 논리적 그룹입니다. 특성 그룹 정의는 온라인 및 오프라인 저장소의 구성과 레코드 값을 설명하는 데 사용되는 특성 정의 목록으로 구성됩니다. 특성 정의에는 레코드 식별자 이름과 이벤트 시간 이름이 포함되어야 합니다.특성 저장소 개념에 대한 자세한 내용은 [특성 저장소 개념](feature-store-concepts.md)섹션을 참고하세요.

특성 저장소를 사용하기 전에는 일반적으로 데이터세트를 로드하고, 변환을 실행하고, 수집할 특성을 설정합니다. 이 프로세스는 변동이 많고 데이터에 따라 크게 달라집니다. 다음 주제의 예제 코드는 각각 [특성 저장소 소개](https://sagemaker-examples.readthedocs.io/en/latest/sagemaker-featurestore/feature_store_introduction.html) 및 [Amazon SageMaker 특성 저장소를 통한 사기 탐지](https://sagemaker-examples.readthedocs.io/en/latest/sagemaker-featurestore/sagemaker_featurestore_fraud_detection_python_sdk.html) 예제 노트북을 참조합니다. 둘 다 AWS SDK for Python (Boto3)를 사용합니다. 추가 Feature Store 예시 및 리소스는 [Amazon SageMaker 특성 저장소 리소스](feature-store-resources.md) 섹션을 참조하세요.

특성 저장소는 `String`, `Fractional`(IEEE 64비트 부동 소수점 값), `Integral`(Int64 - 64비트 부호 있는 정수 값) 등의 특성 유형을 지원합니다. 기본값 유형은 `String`으로 설정됩니다. 즉, 데이터세트의 열이 `float`또는 `long`특성 유형이 아닌 경우 해당 열은 기본값으로 특성 저장소에 `String`으로 설정됩니다.

스키마를 사용하여 데이터의 열과 데이터 유형을 설명할 수 있습니다. 이 스키마를 `FeatureGroup`의 필수 파라미터인 `FeatureDefinitions`에 전달합니다. `load_feature_definitions` 함수를 사용할 때 자동으로 데이터 유형을 감지하는 Python용 SDK(Boto3)를 사용할 수 있습니다.

기존 레코드 ID를 사용하여 새 특성 레코드를 추가할 때의 기본 동작은 다음과 같습니다. 오프라인 저장소에서는 새 레코드가 추가됩니다. 온라인 저장소에서 새 레코드의 이벤트 시간이 기존 이벤트 시간보다 짧으면 아무 일도 일어나지 않지만 새 레코드의 이벤트 시간이 기존 이벤트 시간보다 크거나 같으면 레코드를 덮어씁니다.

새 특성 그룹을 생성할 때 다음 테이블 형식 중 하나를 선택할 수 있습니다.
+ AWS Glue (기본값)
+ Apache Iceberg

특히 스트리밍할 때 데이터를 수집하면 많은 수의 작은 파일이 오프라인 저장소에 보관될 수 있습니다. 이는 필요한 파일 작업 수가 많아져 쿼리 성능에 부정적인 영향을 미칠 수 있습니다. 잠재적인 성능 문제를 방지하려면 새 특성 그룹 생성 시 Apache Iceberg 테이블 형식을 사용하세요. Iceberg를 사용하면 작은 데이터 파일을 파티션에 있는 더 적은 수의 큰 파일로 압축하여 쿼리 속도를 크게 높일 수 있습니다. 이 압축 작업은 동시에 수행되며 특성 그룹에서 진행 중인 읽기 및 쓰기 작업에는 영향을 주지 않습니다. 새 특성 그룹을 생성할 때 Iceberg 옵션을 선택하면 Amazon SageMaker 특성 저장소는 Parquet 파일 형식을 사용하여 Iceberg 테이블을 생성하고 테이블을 AWS Glue Data Catalog에 등록합니다.

**중요**  
Iceberg 테이블 형식의 특성 그룹의 경우 이벤트 시간 값으로 `String`을 지정해야 한다는 점에 유의하세요. 다른 유형을 지정하면 특성 그룹을 성공적으로 생성할 수 없습니다.

다음은 사용 가능한 특성 저장소 관리 리소스 몇 가지를 보여줍니다.

**Topics**
+ [특성 저장소 소개 예제 노트북](feature-store-introduction-notebook.md)
+ [특성 저장소를 통한 사기 탐지 예제 노트북](feature-store-fraud-detection-notebook.md)
+ [Iceberg 메타데이터 관리](feature-store-iceberg-metadata-management.md)