This article provides an introduction on how Upsolver works with Amazon Kinesis along with a guide on how to create an Amazon Kinesis Stream data source in Upsolver.
How Upsolver works with Amazon Kinesis
Reading from a stream
Upsolver can read events from your Amazon Kinesis, from the specified stream.
While setting up the data source, Upsolver scans the last 30 minutes of data in the stream in order find 100 records (to preview) and auto detect the content format.
If there is no data from the last 30 minutes, you will need to select a content format.
When a data source is created it is populated with the sample 100 records from the preview. Once data is captured from the data stream, this preview data will be replaced with the actual data.
This means that if you do not select to read from the start, the data source will initially appear with 100 historical records from the past 30 minutes, and these will be replaced when data is ingested from the stream.
If you create an output based on this data source, the preview data is not included.
By default the data in a data source is kept forever. If you specify a retention period (e.g. 30 days), this only applies to the data source. I
f you create an output based on this data source, it will have its own retention, and these do not need to match (e.g. output may be configured to retain the data for a year).
Create an Amazon Kinesis data source
If you wish to customize the data source by selecting:
6. Select the name of the Kinesis stream to read from.
7. Decide whether or not to read the streamfrom the start.
This could be a day or a week, depending on the Amazon Kinesis setup.
If you do not select Read From Start, the stream will be read from the current time onwards and there will be no historical data in the data source.
8. From the dropdown, select a compute cluster (or create a new one) to run the calculation on.
9. Select a target storage connection (or create a new one) to store the data read from the stream (output storage).
10. If you choose to check Enabled, specify a retention period in Upsolver for the data in minutes, hours, or days.
The data will be deleted permanently after this period elapses.
By default, the data is kept forever.
Click Show Advanced Options to configure:
Real Time Statistics
End Read At
Store Raw Data
Otherwise, skip to step 17.
11. Check Real Time Statistics to calculate the data source statistics in real time directly from the input stream.
This is relevant to lookup tables, when answers are required very fast and in real time.
12. Specify the number of shards or parallel readers from Amazon Kinesis (the more shards, the quicker the data processing).
Each shard in Upsolver can read from one or more shards in Amazon Kinesis.
The number of shards in Upsolver must be less than or equal to the number of shards in Amazon Kinesis.
Contact Upsolver Professional Services if you want to configure this option. Typically you need one Upsolver shard per 10-20 MBps of data.
13. Contact Upsolver Professional Services if you wish to configure the execution parallelism. This determines how many files will be created in the data source per minute and must be set to a value that is less than the number of shards.
14. (Optional) Under End Read At, select a time to stop reading from the stream. This is useful if you wish to stop processing a stream.
15. Select the compression in the stream from the dropdown options.
If you set the compression to Auto Detect, the data that is ingested can be in multiple formats.
16. Check Store Raw Data to store an additional copy of the data in its original format without any transformations.
17. Click Continue. A preview of the data will appear.
18. For CSV, select a Header.
19. Click Continue again.
Parsed data samples will appear and you can review the Sample Size, Parsed Successfully, and # of Errors.
18. (Optional) If there are any errors, click Back to change the settings as required.
19. Click Create.
You can now use your Amazon Kinesis Stream data source.