I am not aware of any standard way to find out exactly on which nodes a particular record is stored (but would not rule out that there is one). It is however not usually something that one need to be concerned about.
Riak spreads out records across physical nodes based on consistent hashing in a way transparent to users and redistributes data across the cluster (in order to maintain n_val copies) if nodes are added or removed in an orderly fashion.
If a node goes down unexpectedly, changes to data held on this node will be tracked by other nodes during the downtime and passed on to the node once it comes back up.
This means that as long as you define N,R and W depending on the consistency requirements you have for the data, Riak will work to keep these even if nodes are added or removed.
In this way I believe Riak to some extent differs from databases that rely on sharding, as data there is more tied to specific nodes and not necessarily automatically redistributed to other nodes/shards.