There are two components involved in running a stellar backend. The one is stellar-core
which manages peer to peer data propagation, the other one is stellar-horizon
which gets and prepares that data from core for convenient access.
core_latest_ledger
is the latest existing ledger that stellar-core is aware of (it's p2p, it might as well lag behind the network)
history_latest_ledger
is the latest ledger that horizon has already ingested from stellar-core
So it's safe to say that:
real current ledger >= core_latest_ledger >= history_latest_ledger
.
If you want to query more details then rely on history_latest_ledger
, because that's the latest ledger you will get processed details for from horizon anyways.