1. A distributed database management system for transaction processing comprising: two or more query processors with a common data source; at least one database client for managing a transaction including two or more queries; a transaction analyzer for checking if a transaction can be processed by more than one query processor, wherein the transaction analyzer is configured for determining that a tag indicating that the transaction is distributable is associated with the transaction, and for determining that a tag indicating that the transaction is a long running or a short running transaction; a query processor optimizer for locating the optimum query processor for each query in the transaction based on workload of each query processor; a workload balancer for directing each query to the new optimum query processor if the transaction can be processed by more than one query processor; and further comprising a lock mechanism for locking portions of the common data source at a query level to a new query processor, wherein the lock mechanism can be transferred to the new query processor when a transaction is transferred to a new query processor and using existing global lock and cache data, and the transaction is transferred as a whole.