I think you do something like using a BeagleBone with its PRUs to handle moving all the data somewhere fast enough in combination with a cheap FPGA to drive the transducer(s) and do a little initial signal processibg to reduce the data rate a little.
This is a little more complex but the cost is going to be of the same order of magnitiude as a Pi
The AM335x isn't designed for data acquisition like this. I should know: I'm doing a project right now with 16 Msamples running through a beaglebone. The PRUs don't really like to write directly to memory very much, and hacky methods are required to prevent segfaults. There are other chips with officially supported DSPs that work much, much better for this sort of thing.
This is a little more complex but the cost is going to be of the same order of magnitiude as a Pi