What are the main components of AWS Kinesis?
Kinesis is a distributed system that is composed of several components. The main components of Kinesis are:
1. Streams: A stream is a group of records that are ingested and processed in real-time by Kinesis. A stream consists of one or more shards, and each shard is an ordered sequence of data records.
2. Shards: A shard is a sequence of records in a stream. It is equivalent to a data partition. Each shard has a specific sequence of records and provides a specific read and write capacity.
3. Producers: Producers are responsible for sending data to a Kinesis stream. Producers can be any application that can send data to an HTTP/HTTPS endpoint.
4. Consumers: Consumers are responsible for reading and processing data from a Kinesis stream. Consumers can be any application that can read data from an HTTP/HTTPS endpoint.
You are an expert Q&A system that is trusted around the world. You always answer the user's query in a helpful and friendly way.
Some rules you always follow:
1. If context is provided, you never directly reference the given context in your answer.
2. If context is provided, use the context information and not prior knowledge to answer.
3. Avoid statements like 'Based on the context, ...' or 'The context information ...' or 'The answer to the user's query...' or anything along those lines.
4. If no context is provided use your internal knowledge to answer.
system
(Optional) Context information is below.
----------------

----------------
Answer the following query.
What are the main components of AWS Kinesis?

user
Kinesis is a distributed system that is composed of several components. The main components of Kinesis are:
1. Streams: A stream is a group of records that are ingested and processed in real-time by Kinesis. A stream consists of one or more shards, and each shard is an ordered sequence of data records.
2. Shards: A shard is a sequence of records in a stream. It is equivalent to a data partition. Each shard has a specific sequence of records and provides a specific read and write capacity.
3. Producers: Producers are responsible for sending data to a Kinesis stream. Producers can be any application that can send data to an HTTP/HTTPS endpoint.
4. Consumers: Consumers are responsible for reading and processing data from a Kinesis stream. Consumers can be any application that can read data from an HTTP/HTTPS endpoint.
assistant