使用数据通道连接源信息
数据的输入输出可以不用使用带数据通道连接源信息视表在视表过滤器之间传递文件被执行。
带数据通道连接源信息视表可以通过为视表设置一个所谓的虚拟连接源来创建。
带数据通道连接源信息视表也俗称数据通道连接器。
数据通道连接器(带数据通道连接源信息视表),以及 临时文件
(带临时文件连接源信息视表)
和虚拟文件
(带虚拟文件连接源信息视表)
可以作为中间文件被使用当数据在视表过滤器之间被转移时。
为有效利用数据通道连接器,必须理解数据通道连接器的特征并为其分配合适的作业。尝试用临时文件代替如果需要使用中间文件而不用复杂的考虑。
为使用临时文件,使用临时文件连接源信息。
为了使用虚拟文件,参照 使用虚拟文件连接源信息。
当使用数据通道连接器时的注意事项描述如下。
然而,需要细心理解其特征来完全利用其功能或性能。
- 数据通道连接器可以与正常视表一样被处理但是与中间文件不一样。每个视表过滤器可以在Windows OS中作为线程被执行。但是数据通道连接器为线程之间的数据传输(其作为线程之间的通信)工作。
(了解UNIX可以很容易理解,因为它可以被理解为UNIX中作为内部进程通信的数据通道实施)。
线程时一个执行单元其每个线程有一个专用的虚拟CPU并且在由时间划分的并行物理CPU工作。
如果多线程同时运行,
需要比单线程操作更多的内存容量和 CPU 时间。
如果系统具有较高的配置 (资源),它比使用数据通带连接器工作的更快。
然而,如果系统配置很低,
性能将会降低,它是资源的虚拟分配。
正常情况下,很难为特定作业估计所需的 CPU 时间和内容容量。
如果作业需要更多的数据通道连接器被执行,在相似的环境下执行相同并且根据需求,增加 CPU 与内存设置或作业的执行调整。
关于执行多线程的一般信息,参照 视表过滤器的并行处理。
- 当两个视表过滤器通过flat file被连接,下一个视表过滤器要在前一个完成全部文件数据的读写之后才能开始。当两个视表过滤器是通过数据通道连接器被连接,它们可以同时工作。前一个视表过滤器向数据通道连接器写入数据并且下一个视表过滤器从数据通道连接器中异步读取数据。重复上述过程,
就形成了进度。
前一个视表过滤器只能在数据通道连接器中写入记录单元的数据并且下一个视表过滤器只能读取,如果在数据通道连接器中有任何记录或数据可行。如果下一个视表过滤器从数据通道连接器中读取记录,
数据通道连接器数据被删除并且所以如果向数据通道连接器写入与从数据通道连接器读取是在同一地方被执行,大量的数据将不会留在数据通道连接器中。
然而,如果下一个视表过滤器由于某种原因需要等待,不再数据通道连接器中读取的记录数据逐渐积累。结果个别数据通道连接器所允许的内存被耗尽并且将不会有任何记录单元的写入数据,而前一个视表过滤器变为"等待状态"。 "等待状态"继续直到下一个视表过滤器从数据通道连接器中读取记录。
有各种原因使得下一个视表过滤器需要等待。如果在下一个视表过滤器中有前一个过程,执行需要等待直到前一个过程完成。当下一个视表过滤器读取很多输入视表像引用视表过滤器和更新SQL DB
视表过滤器,执行需要等待开始直到其它视表准备好。
需要调整,因为数据通道连接器中记录的积累将通过下一个视表过滤器与上一个视表过滤器间兼容性的特征很容易被改变。
当通过数据通道连接器处理大量数据的作业通过增加CPU与内存设置或通过在测试环境中通过提前根据必要性参照数据通道连接器内存大小的描述执行作业调整被执行。
上述的说明当存在数据通道连接器的下一个视表过滤器时是必须的,成为多个视表过滤器的输入过滤器并且下一个视表过滤器将不从数据通道连接器中删除记录,直到记录被读取。建议只有一个数据通道连接器的视表过滤器,因为监控多个视表过滤器的读取需要较大的开销。
- 视表过滤器间通过数据通道连接器的数据事务处理根据成为文件的输入输出并接近内部数据类型格式的数据的不同而不同。
关于这些,参照 内部数据类型。