目录

Search

  1. 前言
  2. 使用转换
  3. 汇总器转换
  4. 自定义转换
  5. 自定义转换函数
  6. 数据屏蔽转换
  7. 数据屏蔽示例
  8. 表达式转换
  9. 外部过程转换
  10. 筛选器转换
  11. HTTP 转换
  12. Identity Resolution 转换
  13. Java 转换
  14. Java 转换 API 引用
  15. Java 表达式
  16. Java 转换示例
  17. 联接器转换
  18. 查找转换
  19. 查找缓存
  20. 动态查找缓存
  21. 规范器转换
  22. 等级转换
  23. 路由器转换
  24. 序列生成器转换
  25. 排序器转换
  26. 源限定符转换
  27. SQL 转换
  28. 在映射中使用 SQL 转换
  29. 存储过程转换
  30. 事务控制转换
  31. 联合转换
  32. 非结构化数据转换
  33. 更新策略转换
  34. XML 转换

转换指南

转换指南

可重用序列生成器

可重用序列生成器

如果某个可重用序列生成器转换存在于多个会话中,且这些会话同时运行,请使用“缓存值数”,以确保每个会话在同一序列中接收的值是唯一的。 默认情况下,可重用序列生成器的“缓存值数”设置为 1000。
如果多个会话同时使用同一序列生成器转换,则会存在为每个会话生成相同值的风险。 为避免此风险,请通过配置“缓存值数”使集成服务为每个会话缓存一组值数。
例如,请按如下方式配置可重用序列生成器转换:缓存值数 = 50,当前值 = 1,增量 = 1。 两个会话使用该序列生成器,且计划使这两个会话在几乎相同的时间运行。 集成服务启动第一个会话时,将为此会话缓存 50 个值,并在存储库中将当前值更新为 50。 集成服务开始在会话中使用 1 到 50 之间的值。 当集成服务启动第二个会话时,将检查存储库来获得当前值,该值为 50。 然后,集成服务将缓存接下来的 50 个值并将当前值更新为 100。 随后,集成服务开始在第二个会话中使用 51 到 100 之间的值。 当两个会话均已使用了所有缓存值,集成服务将缓存一组新值,并更新当前值,以保证这些值对于序列生成器仍是唯一的。
对于可重用序列生成器转换,可以通过减少“缓存值数”来将已丢弃值降到最低,但“缓存值数”必须大于 1。 减少“缓存值数”时,可能要增加集成服务在会话期间访问存储库以缓存值的次数。