title: How to determine shard id for a specific partition key with KCL?
body: <p><a href="http://docs.aws.amazon.com/kinesis/latest/APIReference/API_PutRecord.html" rel="nofollow"><code>PutRequest</code></a> API uses partition keys in order to determine the shard id for the record. Even though the response of <code>PutRequest</code> contains shard id, it's not reliable because the shards are splittable so that the records may be moved to a new shard. I couldn't find a way to determine the shard id for a specific partition key in consumer side.</p>
  
  <p>It seems that AWS maps partition keys to 128-bit integer keys but the hashing algorithm is not explained in the documentation. What I want to do is to process records in a Kinesis stream that has a specific partition key, which means that they will be in a specific shard so that I can just fetch data in a particular shard but I couldn't find the appropriate API in the documentation.</p>