Is it safe to update a field value direclty on the Database
It is not recommended, there is a way of doing this using field_attach_update which should give you the performance benefit of not saving the whole node while using drupal api. Example:

$node = new stdClass();
$node-&gt;id = $id_value;          // node id
$node-&gt;type = $bundle_value;  // aka content type

$node-&gt;field_fieldname[LANGUAGE_NONE][0]['value'] = 'some value';
field_attach_update('node', $node);


Sources:

updating field value of a content type with query

https://www.urbaninsight.com/2011/10/24/saving-nodes-fields-without-saving-node-itself

https://api.drupal.org/api/drupal/modules%21field%21field.attach.inc/function/field_attach_update/7