1

我没有使用网格脚本来启动 hello-samza 项目http://samza.apache.org/startup/hello-samza/0.11/ 我按照网格脚本中的步骤进行操作

  1. 下载 hadoop、kafka 和 zookeeper
  2. 像在网格脚本中一样配置 zookeeper、hadoop、kafka
  3. 启动zookeeper、yarn、kafka,这一步我可以在浏览器中通过8088端口访问yarn页面
  4. 然后我运行脚本 bin/run-job.sh --config-factory=org.apache.samza.config.factories.PropertiesConfigFactory --config-path=file://$PWD/deploy/samza/config/wikipedia -feed.properties

我在第 4 步得到 NullPointException。

2016-12-07 12:28:20.724 [main] CoordinatorStreamSystemConsumer [INFO] Bootstrapping configuration from coordinator stream.
Exception in thread "main" org.apache.samza.SamzaException: org.apache.samza.SamzaException: java.lang.NullPointerException
    at org.apache.samza.coordinator.stream.CoordinatorStreamSystemConsumer.bootstrap(CoordinatorStreamSystemConsumer.java:182)
    at org.apache.samza.job.JobRunner.run(JobRunner.scala:112)
    at org.apache.samza.job.JobRunner$.main(JobRunner.scala:65)
    at org.apache.samza.job.JobRunner.main(JobRunner.scala)
Caused by: org.apache.samza.SamzaException: java.lang.NullPointerException
    at org.apache.samza.serializers.JsonSerde.fromBytes(JsonSerde.scala:44)
    at org.apache.samza.coordinator.stream.CoordinatorStreamSystemConsumer.bootstrap(CoordinatorStreamSystemConsumer.java:155)
    ... 3 more
Caused by: java.lang.NullPointerException
    at java.lang.String.<init>(String.java:491)
    at org.apache.samza.serializers.JsonSerde.fromBytes(JsonSerde.scala:42)
    ... 4 more

我认为这与工作未能从 kafka 读取提要有关。我该如何解决这个问题,如何知道哪一步是错误的。

4

1 回答 1

0

看起来您正在尝试使用 JsonSerde 从 Kafka 中的协调器流中消费消息,但是 Kafka 中的任何内容似乎都没有正确格式化为 JSON。

您可能想使用 Kafka 附带的工具来使用该主题,然后弄清楚如何修复这些消息的格式。如果没有更多信息,这很难解决。

于 2017-02-15T18:20:15.523 回答