We have a 'geocode' Scheduled Task plugin, which will process a list with address data, and use the Google Maps geocode API to look up and set the lat/lon coords for a map element in the list.
So ... I'm assuming you have created a Fabrik list from your data (either by creating the list directly from your client table, or with a CSV import). Add a 'googlemap' element to it.
Create a 'geocode' Scheduled task.
Set the various address fields appropriately.
In the options, you can specify when to geocode (if the map element is empty, or if is set to a specific default value, or always). You can also specify a "batch" size - Google rate limit the geocode API usage, and will block if you run too many queries in a short time. You should be OK doing 400, but you might want to set this down to something small while you test, like 10, until you are happy that the plugin is working. Then up it to 50, and if that works, up it to 100. Depending on your PHP and server setup, you may also find you run in to maximum script execution time issues if you set it too high, as the process of geocoding and updating the data takes a while.
You will also need to configure a Google Maps "API Key" in the global Fabrik options, if you haven't already done so. I think the geocode API will work without it, but the limits will be much lower, and you'd probably get locked out.
https://developers.google.com/maps/documentation/javascript/get-api-key
We then use that ey in all usage of Google maps (this geocode plugin, the googlemap element, and the googlemap viz).
Set the plugin to be "Unpublished", as you don't want it running on an actual scheduled basis. Instead, once you have set it up, save & close it, select it from the list, and hit the "Run" button.
You should get some feedback about how many records were updated.
You can also check the #__fabrik_log table for more feedback.
Once you have geocoded all your records, you can then set up a map visualization to display your locations.
-- hugh