5.2.18. TCP-IP Receive table

<< Click to Display Table of Contents >>

Navigation:  5. Detailed description of the Actions > 5.2. Input Actions >

5.2.18. TCP-IP Receive table

Icon: ANATEL~2_img365

Function: TcpIPReceiveTable

Property window:

ANATEL~2_img364 ANATEL~2_img363



Short description:

Receive from a TCP/IP connection a table and its meta-data.


Long Description:

This action receive a table on a specific TCP/IP port (the default port value is 3996).


The ANATEL~2_img365 TcpIPReceiveTable Action and the ANATEL~2_img367 TcpIPSendTable Action are used together to form the “Map” part inside a “Map-Reduce” algorithm (i.e. it allows Anatella to make distributed computations on several PC’s).


When the option “Allow only one connection” is:

Disabled: Several ANATEL~2_img367 TcpIPSendTable Actions can connect simultaneously to the same TCP/IP port: The rows sent by the different ANATEL~2_img367 TcpIPSendTable will be combined into one unique output table.

The “sort flags” of the sent tables are dropped (since all the rows from the different incoming tables are mixed in a random order).

The ANATEL~2_img365 TcpIPReceiveTable Action detects the end of the table (i.e. the end of all transmissions from all the different ANATEL~2_img367 TcpIPSendTable Actions) using two mechanisms:

oThe option “Minimum Number of connection” forces Anatella to wait for a specific number of emettors (i.e. a minimum number of ANATEL~2_img367 TcpIPSendTable Action) before closing all connections and ending the table.

oThe option “Terminate after no more connections for” forces Anatella to wait for a specific duration (the counter starts after the last “live” connection is closed) before ending the table.

Enabled: The “sort flags” of the (unique) sent table is preserved.


The data transferred using the ANATEL~2_img367 TcpIPSendTable Action and the ANATEL~2_img365 TcpIPReceiveTable Action is compressed to reduce the traffic on your computer network (it’s the same row-based compression than inside .gel_anatella files). The compression ratio (25%) typically obtained inside the ANATEL~2_img367 TcpIPSendTable and the ANATEL~2_img365 TcpIPReceiveTable action is thus lower than the compression ratio typically obtained using WinRAR (8%). This means that, when you can choose between:

Transfer a table using the the ANATEL~2_img367 TcpIPSendTable and the ANATEL~2_img365 TcpIPReceiveTable actions.

Transfer a table stored inside a WinRAR file and using a MS-Windows “shared network drive”.

…the later choice might be better because it reduces more the traffic on your computer network (because the volume of data transferred over the network is lower because of the better compression).


For faster processing, all data receptions are using an asynchronious I/O algorithm (See the section about asynchronous I/O algorithms). This means that Anatella can receive (and also CRC-check and also decompress) several data-block (each data-block containing many rows) while, simultaneously, processing the required data transformations on the rows that are already available. The maximum quantity of data-block kept in RAM is defined inside the parameter “Number of buffers for each connection”. A large value allows to cope with sudden&brief “speed drops” of your computer network (but it also implies a higher RAM consumption).

If you need to tranfert different tables using the ANATEL~2_img365 TcpIPReceiveTable Action, than each ANATEL~2_img365 TcpIPReceiveTable Action must have a different port number. You can change the port number using the parameter “Receiver Main connection Port”.