I've tried a lot to find out about sampling onto SD cards at a high enough sampling rate.
I have an Arduino uno, MPU 6050, and Adafruit data logger. They're all conected correctly and providing data which i can log to an SD card at a sampling rate of about 50Hz. This isn't nearly fast enough for what i require and i was wondering if anyone knew the fastest way to log data to an SD card (preferably up to about 1000Hz)?
You will never come close to 1000 Hz unless you log binary data. You will need to use 400 kHz I2C and buffer data read from the MPU 6050 FIFO. You will need to create a contiguous file and use raw SD streaming writes.
You may never reach 1000 Hz since just reading data from the MPU 6050 may take more than 50% of the CPU even with 400 kHz I2C.
See this example. You will need to adapt the method for use with the MPU 6050.
No good, Arduino I2C only runs at 400 kHz max. Most Arduino I2C libraries eat CPU because they don't use interrupts well. They just spin burning CPU while the I2C transfer takes place.
Many people get less than 200Hz sample rate for the 6050 with 100 kHz I2C so 400 kHz I2C may not be fast enough.
You need to prove you can read data from the 6050 at 1,000 Hz with less than 50% of the CPU.
Forget the SD until you are able to buffer data from the device at 1,000 Hz with a delay of 500 µs for every sample (the delay assures 50% free CPU).