Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Akses shell Spark
Cangkang Spark didasarkan pada Scala REPL (Read-Eval-Print-Loop). Ini memungkinkan Anda untuk membuat program Spark secara interaktif dan mengirimkan pekerjaan ke kerangka kerja. Anda dapat mengakses shell Spark dengan menghubungkan ke node utama dengan SSH dan memanggil. spark-shell
Untuk informasi selengkapnya tentang menghubungkan ke node utama, lihat Connect ke node primer menggunakan SSH di Amazon EMR Management Guide. Contoh berikut menggunakan Apache HTTP Server akses log disimpan di Amazon S3.
catatan
Bucket dalam contoh-contoh ini tersedia untuk klien yang dapat mengakses US East (Virginia N.).
Secara default, shell Spark membuat SparkContextsc
. Anda dapat menggunakan konteks ini jika diperlukan dalam REPL. sqlContext juga tersedia di cangkang dan itu adalah a HiveContext
contoh Gunakan shell Spark untuk menghitung kemunculan string dalam file yang disimpan di Amazon S3
Contoh ini digunakan sc
untuk membaca file teks yang disimpan di 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.rproxy.goskope.com-2009-04-13-08-05.log")
Spark menciptakan textFile dan terkait Struktur data
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
contoh Gunakan shell Spark berbasis Python untuk menghitung kemunculan string dalam file yang disimpan di Amazon S3
Spark juga termasuk shell berbasis Python, pyspark
, yang dapat Anda gunakan untuk prototipe program Spark ditulis dengan Python. Sama sepertispark-shell
, panggil pyspark
pada simpul utama; itu juga memiliki 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.rproxy.goskope.com-2009-04-13-08-05.log")
Spark menciptakan textFile dan terkait Struktur data
>>> 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