def METHOD_NAME(self, time, data):
    relevant_tokens = filter(self._diskstats_is_relevant_line, map(lambda x: x.split(), data.split(b'\n')))
    diskdata = [0] * 3
    reduced = None
    for tokens in relevant_tokens:
        # rsect
        diskdata[0] += int(tokens[5])
        # wsect
        diskdata[1] += int(tokens[9])
        # use
        diskdata[2] += int(tokens[12])
    if self.diskstats_ltime:
        # We need to compute information about the time interval
        # since the last sampling and record the result as sample
        # for that point in the past.
        interval = time - self.diskstats_ltime
        if interval > 0:
            sums = [ a - b for a, b in zip(diskdata, self.diskstats_data) ]
            readTput = sums[0] / 2.0 * 100.0 / interval
            writeTput = sums[1] / 2.0 * 100.0 / interval
            util = float( sums[2] ) / 10 / interval
            util = max(0.0, min(1.0, util))
            reduced = (self.diskstats_ltime, (readTput, writeTput, util))
    self.diskstats_ltime = time
    self.diskstats_data = diskdata
    return reduced