Readers are the initial components of graphs. They read data from data sources and send it to other graph components. This is the reason why each reader must have at least one output port through which the data flows out. Readers can read data from files or databases located on disk. They can also receive data through some connection using FTP, LDAP, or JMS. Some Readers can log the information about errors. Among the readers, there is also the Data Generator component that generates data according to some specified pattern. And, some Readers have an optional input port through which they can also receive data. They can also read data from dictionary.
Remember that you can see some part of input data when you right-click a reader and select the View data dialog as when debugging the edges. For more details see Viewing Debug Data. This dialog allows you to view the read data (it can even be used before graph has been run).
option. After that, you will be prompted with the sameHere we present a brief overview of links to these options:
Some examples of the File URL attribute for reading from local and remote files, through proxy, from console, input port and dictionary:
As has been shown in Defining Transformations, some Readers allow that a transformation can be or must be defined in them. We also provide some examples of attributes for reading from local and remote files, through proxy, from console, input port and dictionary. For information about transformation templates for transformations written in CTL see:
As has been shown in Defining Transformations, some Readers allow that a transformation can be or must be defined in them. We also provide some examples of attribute for reading from local and remote files, through proxy, from console, input port and dictionary. For information about transformation interfaces that must be implemented in transformations written in Java see:
Here we present an overview of all Readers:
Table 47.1. Readers Comparison
Component | Data source | Input ports | Output ports | Each to all outputs1) | Different to different outputs2) | Transformation | Transf. req. | Java | CTL |
---|---|---|---|---|---|---|---|---|---|
DataGenerator | none | 0 | 1-n | yes3) | |||||
CSVReader | flat file | 0-1 | 1-2 | ||||||
ParallelReader | flat file | 0 | 1 | ||||||
CloudConnectDataReader | CloudConnect binary file | 0 | 1-n | ||||||
SF Reader | Salesforce | 0 | 1 | ||||||
Google Analytics Reader | Google Analytics | 0 | 1 | ||||||
HTTPConnector | REST APIs | 0-1 | 1 | ||||||
WebServiceClient | SOAP APIs | 0-1 | 0-N | ||||||
XLSDataReader | XLS(X) file | 0-1 | 1-n | ||||||
DBFDataReader | dBase file | 0-1 | 1-n | ||||||
DBInputTable | database | 0 | 1-n | ||||||
XMLExtract | XML file | 0-1 | 1-n | ||||||
XMLXPathReader | XML file | 0-1 | 1-n | ||||||
JMSReader | jms messages | 0 | 1 | - | - | ||||
EmailReader | email messages | 0 | 1 | - | - | ||||
LDAPReader | LDAP directory tree | 0 | 1-n | ||||||
MultiLevelReader | flat file | 1 | 1-n | ||||||
ComplexDataReader | flat file | 1 | 1-n |
Legend
1) Component sends each data record to all of the connected output ports.
2) Component sends different data records to different output ports using return values of the transformation (DataGenerator and MultiLevelReader). See Return Values of Transformations for more information. XMLExtract and XMLXPathReader send data to ports as defined in their Mapping or Mapping URL attribute.