首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以跳过使用kiba-etl gem加载行?

是否可以跳过使用kiba-etl gem加载行?
EN

Stack Overflow用户
提问于 2015-10-01 16:36:12
回答 2查看 200关注 0票数 1

如果我认为使用kiba-etl宝石行无效,是否可以跳过加载某些行?

例如,如果在将验证加载到系统或出现错误之前必须通过验证,那么在记录问题时,我仍然需要将数据推入sys。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-10-01 19:02:40

这里是Kiba的作者!要从管道中删除一行,只需在转换结束时返回nil

代码语言:javascript
复制
transform do |row|
  row_valid = some_custom_operation
  row_valid ? row : nil
end

您还可以“写下”违规行,并在以后使用类似于此的post_process块报告它们(在本例中,需要中等到低数量的伪行):

代码语言:javascript
复制
@bogus_row_ids = []

transform do |row|
  # SNIP
  if row_valid(row)
    row
  else
    @bogus_row_ids << row[:id]
    nil # remove from pipeline
  end
end

post_process do
  # do something with @bogus_row_ids, send an email, write a file etc
end

让我知道这是否正确地回答了你的问题,或者如果你需要一个更精确的答案。

票数 1
EN

Stack Overflow用户

发布于 2015-10-01 16:47:52

我是哑巴。我意识到您可以在转换/加载过程中捕获错误并返回零。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32892608

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档