ADXL345 data rate & method to read it

So if I set the ADXL345 data rate at 100 Hz, I have to set the Arduino to sample at 200 Hz?

No, thats not what I meant at all. The point is, your maximum possible data acqusition rate is limited
to whatever is the worst of the possible constraints.

For example, if a GPS device only updates it's position once each second, then there is not much point in
asking it for the position 100 times a second, even if the communication method in use enables that to happen.

Conversely, some device might generate millions of samples a second, but if the communication process only
enables you to enquire and get a response 20 times a second, then that is the sample rate which you
will get.