How long does it take for Oracle Flashback Database to restore the data? Is it an instantaneous operation or dependent on the data volume?
Flashback Database relies on flashback logs (stored in the flash recovery area) to restore a database to a particular point in time. The time taken to restore a database using Flashback Database would therefore be dependent on the amount of flashback log created between the restoration period and the current point in time. See this link for more information & limitations.
I'll add that it's lots quicker than a point-in-time restore using RMAN (I imagine that's what you were eluding to when you asked the question in the first place), but there is also the extra overhead in writing flashback logs that needs taking into account.