因此,我无法向亚马逊发送API请求并返回显示产品信息的XML,尤其是价格.我正在使用已签名的请求帮助程序来生成我的请求,并且一直在关注AWS文档中的示例.
这是我的请求URL和params:
http://webservices.amazon.com/onca/xml?
Service=AWSECommerceService
&Operation=ItemLookup
&ResponseGroup=OfferFull
&Condition=All
&IdType=ASIN
&ItemId=B001L8NG0Q
Run Code Online (Sandbox Code Playgroud)
帮助器还生成我的签名,访问密钥等.但是这是我提交此请求的内容:
<ErrorResponse xmlns="http://ecs.amazonaws.com/doc/2005-10-05/">
<Error>
<Code>InvalidAction</Code>
<Message>
The action ItemLookup is not valid for this endpoint.
</Message>
</Error>
<RequestId>a006f1ec-11b3-4afd-a5a3-cb8cfd7e4186</RequestId>
</ErrorResponse>
Run Code Online (Sandbox Code Playgroud)
关于我的问题是什么的任何想法?我似乎能够让这个工作正常用于关键字查询,但我遇到这个项目查找的麻烦.
我遇到了 Spark-Streaming 和 Kafka 的问题。在运行示例程序以从 Kafka 主题中消费并将微批处理结果输出到终端时,当我设置选项时,我的工作似乎挂起:
df.option("startingOffsets", "earliest")
从最新的偏移量开始作业工作正常,当每个微批次流过时,结果会打印到终端。
我在想这可能是资源问题——我正在尝试从一个包含大量数据的主题中读取数据。但是我似乎没有内存/cpu 问题(使用本地 [*] 集群运行此作业)。这项工作似乎从未真正开始,但只是悬而未决:
19/09/17 15:21:37 INFO Metadata: Cluster ID: JFXVL24JQ3K4CEbE-VA58A
val sc = new SparkConf().setMaster("local[*]").setAppName("spark-test")
val streamContext = new StreamingContext(sc, Seconds(1))
val spark = SparkSession.builder().appName("spark-test")
.getOrCreate()
val topic = "topic.with.alotta.data"
//subscribe tokafka
val df = spark.readStream.format("kafka")
.option("kafka.bootstrap.servers", "127.0.0.1:9092")
.option("subscribe", topic)
.option("startingOffsets", "earliest")
.load()
//write
df.writeStream
.outputMode("append")
.format("console")
.option("truncate", "false")
.start()
.awaitTermination()
Run Code Online (Sandbox Code Playgroud)
我希望看到打印到控制台的结果......但是,应用程序似乎就像我提到的那样挂起。有什么想法吗?感觉就像一个火花资源问题(因为我正在针对一个有大量数据的主题运行一个本地“集群”。是否有关于我缺少的流数据帧的性质?
apache-kafka apache-spark kafka-consumer-api spark-structured-streaming