我正在尝试处理从upstox收到的实时供稿。我需要实时出价的所有出价和要价。实时供稿还有许多其他内容以及出价和要价,是否有可能每10秒获得一次出价的所有数量,价格和订单的总和。以下代码
val brokers = util.Try(args(0)).getOrElse("localhost:9092")
val inTopic = util.Try(args(1)).getOrElse("live-feed")
val sparkConf = new SparkConf()
val spark = new SparkContext(sparkConf)
val streamCtx = new StreamingContext(spark, Seconds(10))
val inTopicSet = Set(inTopic)
val kafkaParams = Map[String, String](
"bootstrap.servers" -> brokers,
"key.deserializer" -> "org.apache.kafka.common.serialization.StringDeserializer",
"value.deserializer" -> "org.apache.kafka.common.serialization.StringDeserializer"
)
val msg = KafkaUtils.createDirectStream[String, String, StringDecoder, StringDecoder](
streamCtx,
kafkaParams,
inTopicSet
)
msg.print()
streamCtx.start()
streamCtx.awaitTermination()
让我输出如下内容:
[{"timestamp":"1529642738000","exchange":"NSE_EQ","symbol":"RELIANCE","ltp":"1014.4","bids":[{"quantity":"191","price","1014.4","orders","3"}]},...]
我用过
val comp1 = value.map(x => x.split(“,”)(19))
获取数量,但是仍然不知道如何获取所需的输出。任何指导将不胜感激。