Если вы недовольны функцией в datamapper, либо найдите упрощенный способ сделать это, поскольку ваш запрос активной записи может быть слишком дорогим, как вы говорите.
Всегда запускайте свой профилировщик:
$this->output->enable_profiler(TRUE);
Это даст вам истинное представление о том, что делается за кулисами. Оптимизируйте с этого момента. В противном случае нам нужно больше кода, чтобы продолжить, чтобы дать соответствующие ответы.