Just to clarify, it's Tor clients that select which relays (entry guard, middle and exit) to use in circuits. Also, each relay in a circuit knows (or at least, could know, if it wanted to) both source and destination. But with three-relay circuits, no relay know both user identity and destination.
Also, by default, Tor changes circuits at 10-minute intervals.
Also, by default, Tor changes circuits at 10-minute intervals.