## Database Import Bean

The AbleDBmport bean provides access to data SQL database tables. Import beans provide data to other beans through data buffer connections.

Import beans are different from other AbleBeans because only one Import bean's data connection may be active at any given time. When an Import bean's data connection is turned ON, all other Import beans in the AbleAgent are turned OFF.

A Database Import bean is a read-only table, and its layout is specified in SQL metadata. Field usage can be provided interactively on the Data properties tab for fields that differ from the default usage of input. The Database Import table is managed by interfaces provided in AbleDataSource. A table can be read into memory either all at once or in blocks to conserve memory space. All data buffering is handled by the AbleDataSource.

Some algorithms may use more than one bean as a data source, such as a neural network algorithm that uses one or more data sources for training and testing. These data sources must share the same record layout and field statistics so the same conversions are done on each record in each file.

Some algorithms benefit from presenting data in random sequence. For example, the weights of a back propagation neural network may tend to 'follow' the data if it is always presented in the same sequence. Randomizing the sequence helps the network train in this case. In other algorithms such as temporal difference learning, the sequence of records represents a series of steps from one state to another and the sequencing is critical to the algorithm.

A Database Import bean can access any relational database, provided it supports JDBC interfaces and its properties are set appropriately. Users have provided parameters for a number of commercial databases such as DB2 and Oracle.