This is not entirely true. ExpressionEngine 3.0 introduced a new underlying Model/ORM system which handles saving all datatypes within ExpressionEngine. The models ensure that all entity types are created and managed consistently, especially with future versions of ExpressionEngine. When a model is called to save an entity type, in DataGrab's case an entry, it also calls sub-routines that trigger other events that ExpressionEngine uses internally, and 3rd party developers can subscribe to. For this reason, it is a little slower than inserting data directly into the database the old way. DataGrab 3 also used the models to save entries. If you used DataGrab in ExpressionEngine 2, then you may notice it was faster, because DataGrab was using the old Entry API, which inherently did direct database SQL writes.