essentially, an oscilloscope gives you a graded reading of the voltage on the line while a logic analyzer will only tell you if it is 0 or "high" (the value of "high" could potentially be 5V, 3.3V or 1.8V depending on your circuit). You will often see that logic analysers have many more channels (lines that can be read simultaneously) than oscilloscopes because of the lower resolution required.
As for a specific device, I have heard great things about the Saleae Logic. It samples at 24MHz; this means it checks if the voltage on a particular probe is high or low 24 million times a second. The software also appears to have some knowledge of the common embedded protocols to aid debugging. I would imagine that 24MHz would be enough for arduino work as the maximum clock speed of the Atmegaxx8 is 20MHz.
The problem is that you are using a MEMS digital accelerometer, and what you are reading is the SCK (serial clock) pin of the serial interface. In order to function, that sensor needs to be interfaced with a microcontroller, that sets it for the sampling frequency, the range and so forth.
So you don't have to expect a square wave with 100Hz frequency, but a fast (depending on the bus bitrate) spike, corresponding to a transmission. Expanding the spike, if the scope is fast enough, you should then see the clock square wave inside the spike.
Moreover, if you don't set the SPI interface correctly, the uC will not generate the clock (the sensor operates in slave mode), and you won't read any value.
If you want to see a 100Hz signal, you could probe the Int pin, which sends an interrupt to the microcontroller every time a measure is available. Then, if you handle the interrupt from the microcontroller properly, you wil see the pulse corresponding to the transmission every 10 ms (100Hz).
But make sure that you're not using motion detection; in that case, only when an acceleration is measured, it will generate the interrupt.
To read the data at the SPI port, the simplest thing is to configure the communication with the sensor; otherwise, it won't send data at all. Then, check if the microcontroller is getting the interrupts and if it's reading the data the sensor gives; you can use a timer to add a timestamp to values and check the frequency they come.
(still WIP)
Best Answer
This is for a repetitive signal like a standing sine wave.
When I buy a scope I always look for is the real-time sample rate which indicates the maximum rate an incoming signal can be acquired in a single-shot acquisition. On the other hand, repetitive sample is a method of reconstructing a signal based on a series of triggered waveforms that are each acquired in single-shot mode. The advantage of repetitive mode is that it offers a higher effective sample rate. The downside, however, is that it takes more time and is applicable only for repetitive signals. This scope has a real time rate of only 200MSa/s - far from the 20GSa/s.
In general I hate using PC based oscilloscopes and would tell you to go for something like this instead if you're in the market for a scope to use. Unless you are really strapped for money and need the 200MHz bandwidth or really need the deep sample rate.