In my apps I'm using a couple of different icons. Most of my apps persist to a database, so I use a "transitional" icon, with the floppy in front of a set of "database disks" somewhat like this:
Cylinders are known from flow-chart land as data stores, but with flow-charting being a relatively technical thing in the first place, this isn't ideal as an intuitive icon either. Someone might think this looks like a water cooler tank.
For another app, I just use a green checkmark, and the command is to "Commit Changes" instead of "Save". Everything is just data in the DB, no files, and icons for DBs as we discussed are not very intuitive.
In all cases in my apps, the icon does not stand alone; there's always text for the command being performed, such as "Save", "Commit Changes", "Refresh/Revert", etc, even in toolbars. The icon's just a focusing point for mouse clicks, because people are used to the idea that small pictures do something when you click them, while text is trickier to indicate as "active" (and the main things we think of, underlined blue links, have a navigational context; they take you somewhere else).
On the topic of "real-time persistence", we have an environment (a flavor of the Great Plains accounting package) that uses this system; change a field value and it goes to the data store as soon as you tab or mouse out. Our users hate it. Hate it. They not only want to choose when to save their changes, they want a confirmation dialog that it happened successfully.