'Get a new transaction handle
see https://cloud.google.com/datastore/docs/apis/v1beta2/datasets/beginTransaction
:return: a transaction handle'

def begin_transaction(self):

    resp = self.connection.datasets().beginTransaction(datasetId=self.dataset_id, body={}).execute()
    return resp['transaction']
