I am not sure what you mean by "most efficient". I assume that you mean "best practice". If that's what you mean, I would look in the Developer's Guide and the Tutorials.
Remember that adding or modifying an entity is a 2 step process:
(1) Add the entity to the cache or modify an existing entity in the cache
(2) Save the entity from the cache to the database
I have a feeling that I don't quite understand your question, so feel free to respond.