This question is perhaps somewhat soft, but I'm hoping that someone could provide a useful heuristic. My interest in this question mainly concerns various derived equivalences arising in geometric representation theory.

**Background**

For example, Bezrukavnikov, Mirkovic, and Rumynin have proved the following: Let $G$ be a reductive algebraic group over an algebraically closed field of positive characteristic. Then there is an equivalence between the bounded derived category of modules for the sheaf $\cal D$ of crystalline (divided-power) differential operators on the flag variety, and the bounded derived category of modules with certain central character for the enveloping algebra $\cal U$ of Lie($G$). What is interesting is that it is *not* true that this equivalence holds on the non-derived level: The category of $\cal D$-modules is not equivalent to the category of $\cal U$-modules with the appropriate central character. This is true in characteristic 0 (this is the Beilinson-Bernstein correspondence), but something is broken in positive characteristic: there are certain "bad" sheaves that are $\cal D$-modules which make the correspondence not hold.

There are other results in geometric representation theory of this form. For example, Arkhipov, Bezrukavnikov, and Ginzburg have proved that there is an equivalence (in characteristic 0) between the bounded derived category of a certain block of representations for the quantum group associated to $G$, and the bounded derived category of $G \times \mathbb C^*$-equivariant sheaves on the cotangent bundle of the flag variety of $G$. Again, this equivalence does not hold on the non-derived level.

In general, there are a number of results in geometric representation theory that hold on the derived level, but not the non-derived level.

**Question**

Here's my question: Why would one be led to expect that a derived equivalence holds, when the non-derived equivalence does not? It seems as though the passage to the derived level in some sense fixes something that was broken on the non-derived level; how does it do that?