Sometimes, the real data source is not available or for testing purposes a controlled input data is necessary. Odysseus provides a wide range of predefined data generators that can be used to test queries.
Under application/generator in the git repository, there is an abstract generator framework that can be used to simplify the generation and transfering of data to Odysseus.
- The execution of the data generator has no dependencies to Odysseus so that it can be run on other machines.
- Only three bundles are needed
- The bundle with the abstract generator (de.uniol.inf.is.odysseus.generator)
- The bundle that holds the own implementation of the generator
- the OSGi framwork, e.g. org.eclipse.osgi
Accessing by Odysseus
In Odysseus you may use a normal channel-connection (in detail: a tcp socket and pushed based byte stream connection)
according to the example above, the schema must match the definition of the DataTuple-instances. The port is the one that is provided for starting the StreamServer. So, if both Odysseus and the generator run on the same machine (localhost), the create stream statement in StreamSQL may look like the following:
The same in PQL
In the following, we show how to use available generators and how to build own generators. You may either build your own data generation mechanism or you can also use value-generators that also use pre-defined error and burst-models.