쿠키 기본 설정 선택

당사는 사이트와 서비스를 제공하는 데 필요한 필수 쿠키 및 유사한 도구를 사용합니다. 고객이 사이트를 어떻게 사용하는지 파악하고 개선할 수 있도록 성능 쿠키를 사용해 익명의 통계를 수집합니다. 필수 쿠키는 비활성화할 수 없지만 '사용자 지정' 또는 ‘거부’를 클릭하여 성능 쿠키를 거부할 수 있습니다.

사용자가 동의하는 경우 AWS와 승인된 제3자도 쿠키를 사용하여 유용한 사이트 기능을 제공하고, 사용자의 기본 설정을 기억하고, 관련 광고를 비롯한 관련 콘텐츠를 표시합니다. 필수가 아닌 모든 쿠키를 수락하거나 거부하려면 ‘수락’ 또는 ‘거부’를 클릭하세요. 더 자세한 내용을 선택하려면 ‘사용자 정의’를 클릭하세요.

Apache Spark용 데이터 소스 커넥터 작업

포커스 모드

이 페이지에서

Apache Spark용 데이터 소스 커넥터 작업 - Amazon Athena

일부 Athena 데이터 소스 커넥터는 Spark DSV2 커넥터로 사용할 수 있습니다. Spark DSV2 커넥터 이름에는 -dsv2 접미사(예: athena-dynamodb-dsv2)가 있습니다.

다음은 현재 사용 가능한 DSV2 커넥터, 해당 Spark .format() 클래스 이름, 해당 Amazon Athena 페더레이션된 쿼리 설명서 링크입니다.

DSV2 커넥터 Spark .format() 클래스 이름 설명서
athena-cloudwatch-dsv2 com.amazonaws.athena.connectors.dsv2.cloudwatch.CloudwatchTableProvider CloudWatch
athena-cloudwatch-metrics-dsv2 com.amazonaws.athena.connectors.dsv2.cloudwatch.metrics.CloudwatchMetricsTableProvider CloudWatch 지표
athena-aws-cmdb-dsv2 com.amazonaws.athena.connectors.dsv2.aws.cmdb.AwsCmdbTableProvider CMDB
athena-dynamodb-dsv2 com.amazonaws.athena.connectors.dsv2.dynamodb.DDBTableProvider DynamoDB

DSV2 커넥터용 .jar 파일을 다운로드하려면 Amazon Athena Query Federation DSV2 GitHub 페이지를 방문하고 Releases, Release <version>, Assets 섹션을 참조하세요.

Spark에 대해 jar 지정

Spark에서 Athena DSV2 커넥터를 사용하려면 사용하는 Spark 환경에 커넥터용 .jar 파일을 제출합니다. 다음 섹션에서는 구체적인 사례를 설명합니다.

Athena for Spark

Amazon Athena for Apache Spark에 사용자 지정 .jar 파일 및 사용자 지정 구성을 추가하는 방법에 대한 자세한 내용은 Spark 속성을 사용하여 사용자 지정 구성 지정 섹션을 참조하세요.

일반 Spark

커넥터 .jar 파일을 Spark로 전달하려면 다음 예제와 같이 spark-submit 명령을 사용하고 --jars 옵션에 .jar 파일을 지정합니다.

spark-submit \ --deploy-mode cluster \ --jars https://github.com/awslabs/aws-athena-query-federation-dsv2/releases/download/some_version/athena-dynamodb-dsv2-some_version.jar

Amazon EMR Spark

Amazon EMR에서 --jars 파라미터와 함께 spark-submit 명령을 실행하려면 Amazon EMR Spark 클러스터에 단계를 추가해야 합니다. Amazon EMR에서 spark-submit을 사용하는 방법에 대한 자세한 내용은 Amazon EMR 릴리스 안내서Add a Spark step을 참조하세요.

AWS Glue ETL Spark

AWS Glue ETL의 경우 .jar 파일의 GitHub.com URL을 aws glue start-job-run 명령의 --extra-jars 인수로 전달할 수 있습니다. AWS Glue 설명서에는 Amazon S3 경로를 사용하며 --extra-jars 파라미터를 설명하지만, 파라미터는 HTTPS URL을 사용할 수도 있습니다. 자세한 내용은 AWS Glue 개발자 안내서Job parameter reference를 참조하세요.

Spark에서 커넥터 쿼리

Apache Spark에서 Athena의 기존 페더레이션된 쿼리와 동일한 쿼리를 제출하려면 spark.sql() 함수를 사용합니다. 예를 들어 다음과 같은 Athena 쿼리를 Apache Spark에서 사용하는 경우를 가정합니다.

SELECT somecola, somecolb, somecolc FROM ddb_datasource.some_schema_or_glue_database.some_ddb_or_glue_table WHERE somecola > 1

Amazon Athena DynamoDB DSV2 커넥터를 사용하여 Spark에서 동일한 쿼리를 수행하려면 다음 코드를 사용합니다.

dynamoDf = (spark.read .option("athena.connectors.schema", "some_schema_or_glue_database") .option("athena.connectors.table", "some_ddb_or_glue_table") .format("com.amazonaws.athena.connectors.dsv2.dynamodb.DDBTableProvider") .load()) dynamoDf.createOrReplaceTempView("ddb_spark_table") spark.sql(''' SELECT somecola, somecolb, somecolc FROM ddb_spark_table WHERE somecola > 1 ''')

파라미터 지정

Athena 데이터 소스 커넥터의 DSV2 버전은 해당 Athena 데이터 소스 커넥터와 동일한 파라미터를 사용합니다. 파라미터 정보는 해당 Athena 데이터 소스 커넥터의 설명서를 참조하세요.

PySpark 코드에서 다음 구문을 사용하여 파라미터를 구성합니다.

spark.read.option("athena.connectors.conf.parameter", "value")

예를 들어 다음 코드는 Amazon Athena DynamoDB 커넥터 disable_projection_and_casing 파라미터를 always로 설정합니다.

dynamoDf = (spark.read .option("athena.connectors.schema", "some_schema_or_glue_database") .option("athena.connectors.table", "some_ddb_or_glue_table") .option("athena.connectors.conf.disable_projection_and_casing", "always") .format("com.amazonaws.athena.connectors.dsv2.dynamodb.DDBTableProvider") .load())
프라이버시사이트 이용 약관쿠키 기본 설정
© 2025, Amazon Web Services, Inc. 또는 계열사. All rights reserved.