Abstract
Concurrency control is the activity of synchronizing operations issued by concurrent executing transactions on a shared database. The aim of this control is to provide an execution that has the same effect as a serial (non-interleaved) one. The optimistic concurrency control technique allows the transactions to execute without synchronization, relying on commit-time validation to ensure serializability. Effectiveness of the optimistic techniques depends on the conflict rate of transactions. Since different systems have various patterns of conflict and the patterns may also change over time, so applying the optimistic scheme to the entire system results in degradation of performance. In this paper, a novel algorithm is proposed that dynamically selects the optimistic or pessimistic approach based on the value of conflict rate. The proposed algorithm uses an adaptive resonance theory–based neural network in making decision for granting a lock or detection of the winner transaction. In addition, the parameters of this neural network are optimized by a modified gravitational search algorithm. On the other hand, in the real operational environments we know the writeset (WS) and readset (RS) only for a fraction of transactions set before execution. So, the proposed algorithm is designed based on optional knowledge about WS and RS of transactions. Experimental results show that the proposed hybrid concurrency control algorithm results in more than 35 % reduction in the number of aborts in high-transaction rates as compared to strict two-phase locking algorithm that is used in many commercial database systems. This improvement is 13 % as compared to pure-pessimistic approach and is more than 31 % as compared to pure-optimistic approach.



Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
Garcia-Molina H, Ullman J, Windom J (2009) Database systems: the complete book, 2nd edn. Prentice-Hall, New Jersey
Bernstein PA, Hadzilacos V, Goodman N (1987) Concurrency control and recovery in database systems. Addison Wesley, Massachussets
Burger A, Kumar V (1990) PRABHA—a distributed concurrency control mechanism. In: The proceedings of the ACM annual conference on cooperation, pp 392–397
Lee VCS, Lam K-W, Hung SL (2002) Concurrency control for mixed transactions in real-time databases. IEEE Trans Comput 51:821–834
Carpenter GA, Grossberg S (1987) Self-organization of stable category recognition codes for analog input patterns. Appl Opt 26:4919–4930
Wan M, Wang C, Li L, Yang Y (2012) Chaotic ant swarm approach for data clustering. Appl Soft Comput 12:2387–2393
Du K-L (2010) Clustering: a neural network approach. Neural Netw 23:89–107
Shieh S-L, Liao I-E (2012) A new approach for data clustering and visualization using self-organizing maps. Expert Syst Appl 39:11924–11933
Hruschka E, Campello R, de Castro L (2006) Evolving clusters in gene-expression data. Inf Sci 176:1898–1927
Handl J, Meyer B (2007) Ant-based and swarm-based clustering. Swarm Intell 1:95–113
van der Merwe DW, Engelbrecht AP (2003) Data clustering using particle swarm optimization. In: The proceedings of the IEEE congress on evolutionary computation, pp 215–220
Yan X, Zhu Y, Zou W, Wang L (2012) A new approach for data clustering using hybrid artificial bee colony algorithm. Neurocomputing (article in press, available online 12 Jun 2012. doi:10.1016/j.neucom.2012.04.025)
Li C, Zhou J, Kou P, Xiao J (2012) A novel chaotic particle swarm optimization based fuzzy clustering algorithm. Neurocomputing 83:98–109
Kuo RJ, Syu YJ, Chen Z-Y, Tien FC (2012) Integration of particle swarm optimization and genetic algorithm for dynamic clustering. Inf Sci 195:124–140
Hatamlou A, Abdullah S, Nezamabadi-pour H (2012) A combined approach for clustering based on K-means and gravitational search algorithms. Swarm and Evolutionary Computation (article in press, available online 12 Mar 2012. doi:10.1016/j.swevo.2012.02.003)
Ilc N, Dobnikar A (2012) Generation of a clustering ensemble based on a gravitational self-organising map. Neurocomputing (article in press, available online 30 May 2012. doi:10.1016/j.neucom.2011.10.043)
Yin M, Hu Y, Yang F, Li X, Gu W (2011) A novel hybrid K-harmonic means and gravitational search algorithm approach for clustering. Expert Syst Appl 38:9319–9324
Rashedi E, Nezamabadi-pour H, Saryazdi S (2009) GSA: a gravitational search algorithm. Inf Sci 179:2232–2248
Sarafrazi S, Nezamabadi-pour H, Saryazdi S (2011) Disruption: a new operator in gravitational search algorithm. Scientia Iranica D 18:539–548
Lee J (1999) Precise serialization for optimistic concurrency control. Data Knowl Eng 29:163–178
Jun W, Gruenwald L (1998) An effective class hierarchy concurrency control technique in object-oriented database systems. Inf Softw Technol 40:45–53
Lam K-Y, Kuo T-W, Tsang W-H, Law Gary CK (2000) Concurrency control in mobile distributed real-time database systems. Inf Syst 25:261–286
Jea K-F, Chen S-Y (2006) A high concurrency XPath-based locking protocol for XML databases. Inf Softw Technol 48:708–716
Taniar D, Goel S (2007) Concurrency control issues in Grid databases. Futur Gener Comput Syst 23:154–162
Lausen G (1982) Concurrency control in database system: a step towards the integration of optimistic methods and locking. In: The proceedings of the ACM conference, pp 64–68
Menasce DA, Nakanishi N (1982) Optimistic versus pessimistic concurrency control mechanisms in database management systems. Inf Syst 7:13–27
Franaszek P, Robinson JT (1985) Limitations of concurrency in transaction processing. ACM Trans Database Syst 10:l–28
Lam K-Y, Kuo T-W, Kao B, Lee Tony SH, Cheng R (2002) Evaluation of concurrency control strategies for mixed soft real-time database systems. Inf Syst 27:123–149
Thomasian A (1998) Concurrency control: methods, performance, and analysis. ACM Comput Surv 30:70–119
Thomas S, Seshadri S, Haritsa JR (1996) Integrating standard transactions in real-time database systems. Info Syst 21:3–28
Abbott R, Garcia-Molina H (1992) Scheduling real-time transactions: a performance evaluation. ACM Trans Database Syst 17:513–560
Haritsa JR, Carey MJ, Livny M (1992) Data access scheduling in firm real-time database systems. J Real-Time Syst 4:203–242
Herlihy M (1990) Apologizing versus asking permission: optimistic concurrency control for abstract data types. ACM Trans Database Syst 15:96–124
Bernstein PA, Goodman N (1983) Multiversion concurrency control-theory and algorithms. ACM Trans Database Syst 8:465–483
Xiangdong L, Yuelong Z, Songqiao C, Xiaoli Y (2009) Concurrency control in mobile distributed real-time database systems. J Parallel Distrib Comput 69:866–876
Park C, Park S (2003) The Freeze algorithms for concurrency control in secure real-time database systems. Data Knowl Eng 45:101–125
Kuo TW, Kao YT, Kuo CF (2003) Two-version based concurrency control and recovery in real-time client/server databases. IEEE Trans Comput 52:506–524
Sha L, Rajkumar R, Son SH, Chang CH (1991) A real-time locking protocol. IEEE Trans Comput 40:793–800
Liu P, Li J, Jajodia S, Ammann P (2007) Can-follow concurrency control. IEEE Trans Comput 56:1425–1430
Lee JS, Shin JR, Yoo JS (2001) An efficient distributed concurrency control algorithm using two phase priority. Lect Notes Comput Sci 2113:933–942
Xiong M, Ramamritham K, Haritsa JR, Stankovic JA (2002) MIRROR: a state-conscious concurrency control protocol for replicated real-time databases. Inf Syst 27:277–297
Xiao YY, Lü K (2011) Secure concurrency control protocol with timeliness guarantees in real-time database systems. Math Comput model (article in press, available online 20 Jan 2011. doi: 10.1016/j.mcm.2011.01.009)
Jung I, Lee J, Moon S (1998) Concurrency control in multidatabase systems: a performance study. J Syst Archit 45:97–114
Chen JK, Chin YH, Huang YF (2001) Key factors for improving performance of concurrency control algorithms. Inf Sci 138:137–154
Prudêncio JG, Murta L, Werner C, Cepêda R (2012) To lock, or not to lock: that is the question. J Syst Softw 85:277–289
Usui T, Behrends R, Evans J, Smaragdakis Y (2010) Adaptive locks: combining transactions and locks for efficient concurrency. J Parallel Distrib Comput 70:1009–1023
Di Sanzo P, Ciciani B, Palmieri R, Quaglia F, Romano P (2012) On the analytical modeling of concurrency control algorithms for software transactional memories: the case of commit-time-locking. Perform Eval 69:187–205
Feyereisl J, Aickelin U (2012) Privileged information for data clustering. Inf Sci 194:4–23
Goldberg DE (1989) Genetic algorithms in search, optimization and learning. Addison Wesley, Upper Saddle River
Iqbal MA, Khan NK, Mujtaba H, Baig AR (2011) A novel function optimization approach using opposition based genetic algorithm with gene excitation. Int J Innov Comput Inf Control 7:4263–4276
Shah NA, Moffitt RA, Wang MD (2007) Modified genetic algorithm for parameter selection of compartmental models. In: The proceedings of the IEEE international conference on engineering in medicine and biology society, pp 143–146
Kaitwanidvilai S, Nath A (2012) Design and implementation of a high performance hard disk drive servo controller using GA based 2DOF robust controller. Int J Innov Comput Inf Control 8:1025–1036
Sheikhan M, Mohammadi N (2011) Neural-based electricity load forecasting using hybrid of GA and ACO for feature selection. Neural Comput Appl (article in press, available online 1 May 2011. doi:10.1007/s00521-011-0599-1)
Latif A, Naghsh-Nilchi AR (2012) Digital image watermarking based on parameters amelioration of parametric Slant-Hadamard transform using genetic algorithm. Int J Innov Comput Inf Control 8:1205–1220
Sheikhan M, Garoucy S (2011) Computational complexity reduction of AMR-WB speech coding algorithm using new GA-optimized fast codebook search techniques. World Appl Sci J 14:63–70
Xhafa F, Carretero J, Abraham A (2007) Genetic algorithm based schedulers for grid computing systems. Int J Innov Comput Inf Control 3:1053–1071
Sheikhan M, Sharifi Rad M (2011) Intrusion detection improvement using GA-optimized fuzzy grids-based rule mining feature selector and fuzzy ARTMAP neural network. World Appl Sci J 14:772–781
Wang CL, Hong TP, Horng G, Wang WH (2009) A GA-based key-management scheme in hierarchical wireless sensor networks. Int J Innov Comput Inf Control 5:4693–4702
Tan TH, Huang YF, Liu FT (2010) Multi-user detection in DS-CDMA systems using a genetic algorithm with redundancy saving strategy. Int J Innov Comput Inf Control 6:3347–3364
Gharavian D, Sheikhan M, Nazerieh AR, Garoucy S (2011) Speech emotion recognition using FCBF feature selection method and GA-optimized fuzzy ARTMAP neural network. Neural Comput Appl (article in press, available online 27 May 2011. doi:10.1007/s00521-011-0643-1)
Nazir M, Jaffar MA, Hussain A, Mirza AM (2011) Efficient gender classification using optimization of hybrid classifiers using genetic algorithm. Int J Innov Comput Inf Control 7:7021–7032
Kennedy J, Eberhart RC (1995) Particle swarm optimization. In: The proceedings of the IEEE international conference on neural networks, vol 4, pp 1942–1948
Nafar M, Gharehpetian GB, Niknam T (2012) Using modified fuzzy particle swarm optimization algorithm for parameter estimation of surge arresters models. Int J Innov Comput Inf Control 8:567–582
Chen X, Li Y (2007) A modified PSO structure resulting in high exploration ability with convergence guaranteed. IEEE Trans Syst Man Cybern B Cybern 37:1271–1289
Lai CC, Wu CH, Tsai MC (2009) Feature selection using particle swarm optimization with application in spam filtering. Int J Innov Comput Inf Control 5:423–432
Kuo RJ, Lin FJ (2010) Application of particle swarm optimization-based clustering method to reduce SMT setup time for industrial PC manufacturer in Taiwan. Int J Innov Comput Inf Control 6:3381–3400
Qin P, Lin Y, Chen M (2009) Improvement of tracking performance in model-free adaptive controller based on multi-innovation and particle swarm optimization. Int J Innov Comput Inf Control 5:1367–1377
Sheikhan M, Pezhmanpour M, Moin MS (2011) Improved contourlet-based steganalysis using binary particle swarm optimization and radial basis neural networks. Neural Comput Appl (article in press, available online 19 Aug 2011. doi:10.1007/s00521-011-0729-9)
Pahasa J, Ngamroo I (2012) PSO based kernel principal component analysis and multi-class support vector machine for power quality problem classification. Int J Innov Comput Inf Control 8:1523–1540
Sheikhan M, Shahnazi R, Garoucy S (2011) Synchronization of general chaotic systems using neural controllers with application to secure communication. Neural Comput Appl (article in press, available online 19 Jul 2011. doi:10.1007/s00521-011-0697-0)
Hsu CH (2011) Optimizing MIMO-SDMA smart antennas by using linear array phase perturbations based on particle swarm optimization. Int J Innov Comput Inf Control 7:1331–1340
Sheikhan M, Sha’bani AA (2012) PSO-optimized modular neural network trained by OWO-HWO algorithm for fault location in analog circuits. Neural Comput Appl (article in press, available online 25 Apr 2012. doi:10.1007/s00521-012-0947-9)
Sheikhan M, Pardis R, Gharavian D (2012) State of charge neural computational models for high energy density batteries in electric vehicles. Neural Comput Appl (article in press, available online 17 Feb 2012. doi:10.1007/s00521-012-0883-8)
Sheikhan M, Shahnazi R, Hemmati E (2012) Adaptive active queue management controller for TCP communication networks using PSO-RBF models. Neural Comput Appl (article in press, available online 4 Jan 2012. doi:10.1007/s00521-011-0786-0)
Sheikhan M, Shahnazi R, Garoucy S (2011) Hyperchaos synchronization using PSO-optimized RBF-based controllers to improve security of communication systems. Neural Comput Appl (article in press, available online 16 Dec 2011. doi:10.1007/s00521-011-0774-4)
Alfi A (2012) Particle swarm optimization algorithm with dynamic inertia weight for online parameter identification applied to Lorenz chaotic system. Int J Innov Comput Inf Control 8:1191–1204
Bonabeau E, Dorigo M, Theraulaz G (1999) Swarm intelligence: from natural to artificial systems. Oxford University Press, New York
Akay B, Karaboga D (2012) A modified artificial bee colony algorithm for real-parameter optimization. Inf Sci 192:120–142
Suriya S, Deepalakshmi R, Suresh Kannan S, Shantharajah SP (2012) Enhanced bee colony algorithm for complex optimization problems. Int J Comput Sci Eng 4:72–78
Jiann-Horng L, Li-Ren H (2009) Chaotic bee swarm optimization algorithm for path planning of mobile robots. In: The proceedings of the WSEAS international conference on evolutionary computing, pp 84–89
Quijano N, Passino KM (2007) Honey bee social foraging algorithms for resource allocation, part II: application. In: The proceedings of the American control conference, pp 3389–3394
Idris RM, Khairuddin A, Mustafa MW (2010) Optimal allocation of FACTS devices in deregulated electricity market using bees algorithm. WSEAS Trans Power Syst 5:108–119
Khajehzadeh M, Raihan Taha M, El-Shafie A, Eslami M (2012) A modified gravitational search algorithm for slope stability analysis. Eng Appl Artif Intell (article in press, available online 2 Feb 2012. doi:10.1016/j.engappai.2012.01.011)
Han XH, Chang XM (2012) A chaotic digital secure communication based on a modified gravitational search algorithm filter. Inf Sci 208:14–27
Harwit M (1998) The astrophysical concepts, 3rd edn. Springer, New York
Ji J, Pang W, Zhou C, Han X, Wang Z (2012) A fuzzy k-prototype clustering algorithm for mixed numeric and categorical data. Knowl Syst 30:129–135
Sheikhan M, Rohani M, Ahmadluei S (2011) A neural-based concurrency control algorithm for database systems. Neural Comput Appl (article in press, available online 21 Jul 2011. doi:10.1007/s00521-011-0691-6)
Al-Jumah NB, Hassanein HS, El-Sharkawi M (2000) Implementation and modeling of two-phase locking concurrency control—a performance study. Inf Softw Technol 42:257–273
Author information
Authors and Affiliations
Corresponding author
Appendices
Appendix A: transaction states in HCC algorithm
Ready state:
The transaction is in the queue of ready for execution.
Waiting state:
The transaction is waiting for the termination of another transaction.
Commit state:
The execution of transaction is successfully finished, and its effect on the database has become permanent.
Commit_Blocked (CB) state:
If the execution of transaction T has been finished and the old versions of objects (that have been written by T) have been read by other transactions, then T should wait until all of the corresponding transactions that read the old version are finished and it will then commit. In such a situation, the state of T changes to CB. In order to guarantee the serializability, if the execution of a transaction is successfully finished, then the commitment of that transaction is not performed. In this situation, the transaction waits for other transactions to finish. Since the transaction certainly commits in this situation, the other transactions can read the objects that have been written by this transaction. Obviously, the transactions which read the value of objects, written by a transaction in CB state, should be committed after the writer transaction commits.
Command_Finished (CF) state:
If the transaction T has read some objects, written by the uncommitted transactions, then it cannot commit at the end of command execution. In this case, the transaction is changed to CF state. It should be noted that committing of a transaction in CB state is guaranteed, but in CF state, the result is dependent on other transactions. The state transition diagram of transactions is shown in Fig. 4.
Appendix B: basic procedures in HCC algorithm
Read command procedure:
If the transaction T1 wants to read the object O1, and O1 has two versions, then transaction T2 would be the writer of new version. The procedure of “Read command” is shown in Fig. 5. For more details about this procedure, refer to [87]. In all conditions that the intersection of RS and WS are checked (Boxes 2, 10, 15, and 21 in Fig. 5), the result will be “YES”, “NO” or “RS & WS are unknown”. In the absence of WS/RS information, based on the value of E and threshold (Th), the algorithm selects optimistic or pessimistic approach (Boxes A1–A4 in Fig. 5).
If the decision making by the HCC based on HF is not possible (because of the limitation enforced by RS and WS), then it will make another decision based on RS and WS information. RS and WS information either approves or rejects the decision made using HF; otherwise, it is neutral (if RS and WS are unknown) and selection of the optimistic or pessimistic approach determines the result. If WS and RS information rejects this decision, it will not be executed. In fact, despite of selecting the old or new version using HF, if RS and WS information rejects this selection, the proposed HCC algorithm will try to read another version.
Write command procedure:
It is assumed that if the object has two versions, then T2 is the writer of a new version. The flowchart of this procedure is given in [87].
Deadlock detection:
If T1 is to be added to “list B” of T2 in the first invocation, the deadlock detection procedure will be called as Have Deadlock(T1(A), T2(B)). For more details about this procedure, refer to [87].
Commit and Abort:
In the commit command, all the locks acquired by this transaction are released, and the old version of object that has a new version generated by this transaction is overwritten by the new version, and the new version is discarded. The Type parameter does not exist in signals that have been sent to “list A” members, since just in the abort of one transaction, the signal is sent to “list A” members of that transaction. For more details about these procedures, refer to [87].
Receiving signal from a transaction in list:
T1 receives signal from one of the “list A” members, for example from T2. Signal type can be SW, HW, Abort or Commit. The format of this function is as Receives Signal(Sender_Id, Signal Type). The flowchart of this procedure is given in [87].
Rights and permissions
About this article
Cite this article
Sheikhan, M., Ahmadluei, S. An intelligent hybrid optimistic/pessimistic concurrency control algorithm for centralized database systems using modified GSA-optimized ART neural model. Neural Comput & Applic 23, 1815–1829 (2013). https://doi.org/10.1007/s00521-012-1147-3
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00521-012-1147-3