It looks you don't know what "clock" means. A clock is something that synchronizes. Say you are supposed to arrive at work at 9 o'clock. When your boss' clock reaches 9 o'clock, he will check if you are absent and flag you as arriving late if so. When your clock reaches 9 o'clock, you check if you have arrived and bang your head against the wall if not.
In electronics, the clocks is usually a binary signal. Anything that uses the clock just watches if it's 1 or 0. An edge (the signal changing from 0 to 1 or vice versa) will be (hopefully) seen by all users of the clock at the same time. In the going to work case, you can change the clock to something that outputs 1 only when it's 9 o'clock to 17 o'clock, and you and your boss will act the same.
Back to SPI. SPI has different modes, I'll be using mode 1 in this example. The master provides a clock that changes periodically. On a rising edge, the master changes MOSI to the next bit in the buffer and the slave changes MISO to the next bit in the buffer. On a falling edge, the master reads MISO into the buffer and the slave reads MISO into the buffer.
Does it send at the same data rate on both sides like in UART? Only the master controls the clock. The slave acts according to the clock. Because the master and the slave read on the same clock edge and write on the same clock edge, data is sent at the same rate in SPI.
Now you've mentioned UART. As you may know, "A" in "UART" stands for "asynchronous". It doesn't have a line dedicated for clock. The two sides synchronize by using their own clock running at the same frequency.