Android ListView: como evitar a consulta ao banco de dados em bindView ()? Precisa buscar um para muitos dados de relacionamento

Eu tenho uma exibição de lista para exibir álbuns. Em cada item da lista de álbuns, preciso exibir algumas informações de cada foto deste álbum. Aqui está como meu carregador de cursor se parece:

@Override
public Loader<Cursor> onCreateLoader(int id, Bundle args) {
    return new CursorLoader(this, AlbumsColumns.CONTENT_URI, null, null, null, null);
}

@Override
public void bindView(View view, Context context, Cursor cursor) {

    long albumId = cursor.getLong(cursor.getColumnIndex(AlbumsColumns._ID));

    Cursor photoCursor = getContentResolver().query(PhotosColumns.CONTENT_URI, null, PhotosColumns.ALBUM_ID + " = ?", 
            new String[]{Long.toString(albumId)}, null);

    if (photoCursor.moveToFirst()){
        do{

            // Here I collect the information from each photo in the album

        }while(photoCursor.moveToNext());
    }

    photoCursor.close();
}

Basicamente, deixo o carregador de cursor gerenciar a consulta do álbum e, cada vez no bindView, consulta as fotos do cursor passado no álbum. Eu sinto que isso pode ser um problema de desempenho. Existe uma maneira melhor de fazer isso?