Memsql Spark-Kafka转换失败

时间:2016-01-31 12:08:00

标签: apache-spark apache-kafka memsql

我们在Memsql下运行了一个Spark Cluster,我们运行了不同的管道,ETL设置如下。

  1. 提取: - 来自Kafka Cluster的Spark读取消息(使用Memsql Kafka-Zookeeper)
  2. 转换: - 我们为此步骤部署了自定义jar
  3. 加载: - 来自Transform阶段的数据在Columnstore中加载
  4. 我有些疑惑:

    如果作业在转换阶段失败,那么从Kafka调查的消息会发生什么 - Memsql是否负责再次加载该消息 - 或者,数据是丢失的

    如果数据丢失,我该如何解决这个问题,是否需要对此进行配置更改?

2 个答案:

答案 0 :(得分:0)

目前,至少有一次语义在MemSQL Ops中不可用。它位于路线图上,将出现在Ops的未来版本中。

答案 1 :(得分:0)

如果还没有,你应该查看MemSQL 5.5 Pipelines。 http://blog.memsql.com/pipelines/

这个不是基于spark,(并且转换的方式有点不同,所以你可能需要重写代码),但我们现在有本地的kafka流。

我们使用原生版本获得一次的方式很简单;将数据库中的偏移量存储为与实际数据相同的原子事务。如果某些内容失败且交易未提交,则不会提交偏移,因此我们会自然地自动重试该分区偏移范围。