So, when would you use BASE transactions?
One case is when your network is not reliable. For instance, transactions that must span your local network as well as a cloud provider. Local updates can be queued and batched and sent later. While the remote transactions are in-flight the "syste" is in an inconsistent state, but eventually all updates will be applied and the system will be in balance again.
Inventory systems can withstand eventual consistency, usually, thus are good candidates.
In general, consider BASE transactions in cases where ACID transactions are not immediately required and the data eventually becomes consistent and is never lost.
Dave Wentzel CONTENT
data architecture nosql