<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def execute(self, conn, data_tier_name='', transaction = False, cache=None):
 """ returns id for a given datatier name """

	if cache:
            ret=cache.get("DATA_TIERS")
            if not ret==None:
                return ret
        sql = self.sql
	binds={}
	if data_tier_name:
            op = ('=', 'like')['%' in data_tier_name]
	    sql += "WHERE DT.DATA_TIER_NAME %s :datatier" %op 
	    binds = {"datatier":data_tier_name}
        result = self.dbi.processData(sql, binds, conn, transaction)
        plist = self.formatDict(result)
        return plist