쿠키 기본 설정 선택

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

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

Spark 쉘에 액세스 - Amazon EMR

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

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

Spark 쉘에 액세스

Spark 쉘은 Scala REPL (Read-Eval-Print-Loop)을 기반으로 합니다. Scala REPL을 사용하면 Spark 프로그램을 대화식으로 생성하고 작업을 프레임워크로 제출할 수 있습니다. 프라이머리 노드를 SSH에 연결하고 spark-shell을 간접 호출하여 Spark 쉘에 액세스할 수 있습니다. SSH를 사용하여 프라이머리 노드에 연결하는 방법에 대한 자세한 내용은 Amazon EMR 관리 안내서에서 SSH를 사용하여 프라이머리 노드에 연결을 참조하세요. 다음 예제에서는 Amazon S3에 저장된 Apache HTTP Server 액세스 로그가 사용됩니다.

참고

이러한 예제의 Amazon 버킷은 미국 동부(버지니아 북부)에 액세스할 수 있는 클라이언트에서 사용 가능합니다.

기본적으로 Spark 쉘은 sc라는 자체 SparkContext 객체를 생성합니다. REPL 내에서 필요한 경우 이 컨텍스트를 사용할 수 있습니다. 또한 sqlContext도 이 쉘에서 사용할 수 있으며, HiveContext입니다.

예 Spark 쉘을 사용하여 Amazon S3에 저장된 파일에서 특정 문자열의 발생 개수 계산

이 예제에서는 sc를 사용하여 Amazon S3에 저장된 텍스트 파일을 읽습니다.

scala> sc res0: org.apache.spark.SparkContext = org.apache.spark.SparkContext@404721db scala> val textFile = sc.textFile("s3://elasticmapreduce/samples/hive-ads/tables/impressions/dt=2009-04-13-08-05/ec2-0-51-75-39.amazon.com-2009-04-13-08-05.log")

Spark에서 textFile 및 관련 데이터 구조가 생성됩니다. 그 다음, 이 예제는 로그 파일에서 "cartoonnetwork.com" 문자열이 나오는 행 수를 셉니다.

scala> val linesWithCartoonNetwork = textFile.filter(line => line.contains("cartoonnetwork.com")).count() linesWithCartoonNetwork: org.apache.spark.rdd.RDD[String] = MapPartitionsRDD[2] at filter at <console>:23 <snip> <Spark program runs> scala> linesWithCartoonNetwork res2: Long = 9
예 Python 기반 Spark 쉘을 사용하여 Amazon S3에 저장된 파일에서 특정 문자열의 발생 개수 계산

Spark에는 Python 기반 셸인 pyspark도 포함되어 있으며, 이 셸을 사용하여 Python에서 작성된 Spark 프로그램을 시제품화할 수 있습니다. spark-shell과 마찬가지로, 프라이머리 노드에서 pyspark를 간접 호출합니다. 이 쉘에도 동일한 SparkContext 객체가 있습니다.

>>> sc <pyspark.context.SparkContext object at 0x7fe7e659fa50> >>> textfile = sc.textFile("s3://elasticmapreduce/samples/hive-ads/tables/impressions/dt=2009-04-13-08-05/ec2-0-51-75-39.amazon.com-2009-04-13-08-05.log")

Spark에서 textFile 및 관련 데이터 구조가 생성됩니다. 그 다음, 이 예제는 로그 파일에서 "cartoonnetwork.com" 문자열이 나오는 행 수를 셉니다.

>>> linesWithCartoonNetwork = textfile.filter(lambda line: "cartoonnetwork.com" in line).count() 15/06/04 17:12:22 INFO lzo.GPLNativeCodeLoader: Loaded native gpl library from the embedded binaries 15/06/04 17:12:22 INFO lzo.LzoCodec: Successfully loaded & initialized native-lzo library [hadoop-lzo rev EXAMPLE] 15/06/04 17:12:23 INFO fs.EmrFileSystem: Consistency disabled, using com.amazon.ws.emr.hadoop.fs.s3n.S3NativeFileSystem as filesystem implementation <snip> <Spark program continues> >>> linesWithCartoonNetwork 9
프라이버시사이트 이용 약관쿠키 기본 설정
© 2025, Amazon Web Services, Inc. 또는 계열사. All rights reserved.