- 阅读权限
- 255
- 威望
- 1 级
- 论坛币
- 49402 个
- 通用积分
- 51.7504
- 学术水平
- 370 点
- 热心指数
- 273 点
- 信用等级
- 335 点
- 经验
- 57815 点
- 帖子
- 4006
- 精华
- 21
- 在线时间
- 582 小时
- 注册时间
- 2005-5-8
- 最后登录
- 2023-11-26
|
- /**
- * Illustrates a simple map partition in Scala
- */
- package com.oreilly.learningsparkexamples.scala
- import org.apache.spark._
- import org.eclipse.jetty.client.ContentExchange
- import org.eclipse.jetty.client.HttpClient
- object BasicMapPartitions {
- def main(args: Array[String]) {
- val master = args.length match {
- case x: Int if x > 0 => args(0)
- case _ => "local"
- }
- val sc = new SparkContext(master, "BasicMapPartitions", System.getenv("SPARK_HOME"))
- val input = sc.parallelize(List("KK6JKQ", "Ve3UoW", "kk6jlk", "W6BB"))
- val result = input.mapPartitions{
- signs =>
- val client = new HttpClient()
- client.start()
- signs.map {sign =>
- val exchange = new ContentExchange(true);
- exchange.setURL(s"http://qrzcq.com/call/${sign}")
- client.send(exchange)
- exchange
- }.map{ exchange =>
- exchange.waitForDone();
- exchange.getResponseContent()
- }
- }
- println(result.collect().mkString(","))
- }
- }
复制代码
|
|