Skip to main content
Log in

An intelligent hybrid optimistic/pessimistic concurrency control algorithm for centralized database systems using modified GSA-optimized ART neural model

  • Original Article
  • Published:
Neural Computing and Applications Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3

Similar content being viewed by others

References

  1. Garcia-Molina H, Ullman J, Windom J (2009) Database systems: the complete book, 2nd edn. Prentice-Hall, New Jersey

    Google Scholar 

  2. Bernstein PA, Hadzilacos V, Goodman N (1987) Concurrency control and recovery in database systems. Addison Wesley, Massachussets

    Google Scholar 

  3. Burger A, Kumar V (1990) PRABHA—a distributed concurrency control mechanism. In: The proceedings of the ACM annual conference on cooperation, pp 392–397

  4. Lee VCS, Lam K-W, Hung SL (2002) Concurrency control for mixed transactions in real-time databases. IEEE Trans Comput 51:821–834

    Article  Google Scholar 

  5. Carpenter GA, Grossberg S (1987) Self-organization of stable category recognition codes for analog input patterns. Appl Opt 26:4919–4930

    Article  Google Scholar 

  6. Wan M, Wang C, Li L, Yang Y (2012) Chaotic ant swarm approach for data clustering. Appl Soft Comput 12:2387–2393

    Article  Google Scholar 

  7. Du K-L (2010) Clustering: a neural network approach. Neural Netw 23:89–107

    Article  Google Scholar 

  8. 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

    Article  Google Scholar 

  9. Hruschka E, Campello R, de Castro L (2006) Evolving clusters in gene-expression data. Inf Sci 176:1898–1927

    Article  Google Scholar 

  10. Handl J, Meyer B (2007) Ant-based and swarm-based clustering. Swarm Intell 1:95–113

    Article  Google Scholar 

  11. 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

  12. 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)

  13. Li C, Zhou J, Kou P, Xiao J (2012) A novel chaotic particle swarm optimization based fuzzy clustering algorithm. Neurocomputing 83:98–109

    Article  Google Scholar 

  14. 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

    Article  Google Scholar 

  15. 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)

  16. 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)

  17. 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

    Article  Google Scholar 

  18. Rashedi E, Nezamabadi-pour H, Saryazdi S (2009) GSA: a gravitational search algorithm. Inf Sci 179:2232–2248

    Article  MATH  Google Scholar 

  19. Sarafrazi S, Nezamabadi-pour H, Saryazdi S (2011) Disruption: a new operator in gravitational search algorithm. Scientia Iranica D 18:539–548

    Article  Google Scholar 

  20. Lee J (1999) Precise serialization for optimistic concurrency control. Data Knowl Eng 29:163–178

    Article  Google Scholar 

  21. Jun W, Gruenwald L (1998) An effective class hierarchy concurrency control technique in object-oriented database systems. Inf Softw Technol 40:45–53

    Article  Google Scholar 

  22. 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

    Article  Google Scholar 

  23. Jea K-F, Chen S-Y (2006) A high concurrency XPath-based locking protocol for XML databases. Inf Softw Technol 48:708–716

    Article  Google Scholar 

  24. Taniar D, Goel S (2007) Concurrency control issues in Grid databases. Futur Gener Comput Syst 23:154–162

    Article  Google Scholar 

  25. 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

  26. Menasce DA, Nakanishi N (1982) Optimistic versus pessimistic concurrency control mechanisms in database management systems. Inf Syst 7:13–27

    Article  MATH  Google Scholar 

  27. Franaszek P, Robinson JT (1985) Limitations of concurrency in transaction processing. ACM Trans Database Syst 10:l–28

    Google Scholar 

  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

    Article  MATH  Google Scholar 

  29. Thomasian A (1998) Concurrency control: methods, performance, and analysis. ACM Comput Surv 30:70–119

    Article  Google Scholar 

  30. Thomas S, Seshadri S, Haritsa JR (1996) Integrating standard transactions in real-time database systems. Info Syst 21:3–28

    Article  Google Scholar 

  31. Abbott R, Garcia-Molina H (1992) Scheduling real-time transactions: a performance evaluation. ACM Trans Database Syst 17:513–560

    Article  Google Scholar 

  32. Haritsa JR, Carey MJ, Livny M (1992) Data access scheduling in firm real-time database systems. J Real-Time Syst 4:203–242

    Article  Google Scholar 

  33. Herlihy M (1990) Apologizing versus asking permission: optimistic concurrency control for abstract data types. ACM Trans Database Syst 15:96–124

    Article  MathSciNet  Google Scholar 

  34. Bernstein PA, Goodman N (1983) Multiversion concurrency control-theory and algorithms. ACM Trans Database Syst 8:465–483

    Article  MathSciNet  MATH  Google Scholar 

  35. 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

    Article  Google Scholar 

  36. Park C, Park S (2003) The Freeze algorithms for concurrency control in secure real-time database systems. Data Knowl Eng 45:101–125

    Article  Google Scholar 

  37. 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

    Article  Google Scholar 

  38. Sha L, Rajkumar R, Son SH, Chang CH (1991) A real-time locking protocol. IEEE Trans Comput 40:793–800

    Article  Google Scholar 

  39. Liu P, Li J, Jajodia S, Ammann P (2007) Can-follow concurrency control. IEEE Trans Comput 56:1425–1430

    Article  MathSciNet  Google Scholar 

  40. Lee JS, Shin JR, Yoo JS (2001) An efficient distributed concurrency control algorithm using two phase priority. Lect Notes Comput Sci 2113:933–942

    Article  Google Scholar 

  41. 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

    Article  MATH  Google Scholar 

  42. 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)

  43. Jung I, Lee J, Moon S (1998) Concurrency control in multidatabase systems: a performance study. J Syst Archit 45:97–114

    Article  Google Scholar 

  44. Chen JK, Chin YH, Huang YF (2001) Key factors for improving performance of concurrency control algorithms. Inf Sci 138:137–154

    Article  MATH  Google Scholar 

  45. 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

    Article  Google Scholar 

  46. 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

    Article  MATH  Google Scholar 

  47. 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

    Article  Google Scholar 

  48. Feyereisl J, Aickelin U (2012) Privileged information for data clustering. Inf Sci 194:4–23

    Article  Google Scholar 

  49. Goldberg DE (1989) Genetic algorithms in search, optimization and learning. Addison Wesley, Upper Saddle River

    MATH  Google Scholar 

  50. 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

    Google Scholar 

  51. 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

  52. 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

    Google Scholar 

  53. 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)

  54. 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

    Google Scholar 

  55. 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

    Google Scholar 

  56. Xhafa F, Carretero J, Abraham A (2007) Genetic algorithm based schedulers for grid computing systems. Int J Innov Comput Inf Control 3:1053–1071

    Google Scholar 

  57. 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

    Google Scholar 

  58. 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

    Google Scholar 

  59. 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

    Google Scholar 

  60. 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)

  61. 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

    Google Scholar 

  62. Kennedy J, Eberhart RC (1995) Particle swarm optimization. In: The proceedings of the IEEE international conference on neural networks, vol 4, pp 1942–1948

  63. 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

    Google Scholar 

  64. 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

    Article  Google Scholar 

  65. 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

    Google Scholar 

  66. 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

    Google Scholar 

  67. 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

    Google Scholar 

  68. 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)

  69. 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

    Google Scholar 

  70. 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)

  71. 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

    Google Scholar 

  72. 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)

  73. 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)

  74. 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)

  75. 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)

  76. 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

    Google Scholar 

  77. Bonabeau E, Dorigo M, Theraulaz G (1999) Swarm intelligence: from natural to artificial systems. Oxford University Press, New York

    MATH  Google Scholar 

  78. Akay B, Karaboga D (2012) A modified artificial bee colony algorithm for real-parameter optimization. Inf Sci 192:120–142

    Article  Google Scholar 

  79. 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

    Google Scholar 

  80. 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

  81. 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

  82. 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

    Google Scholar 

  83. 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)

  84. Han XH, Chang XM (2012) A chaotic digital secure communication based on a modified gravitational search algorithm filter. Inf Sci 208:14–27

    Article  Google Scholar 

  85. Harwit M (1998) The astrophysical concepts, 3rd edn. Springer, New York

    Book  Google Scholar 

  86. 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

    Article  Google Scholar 

  87. 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)

  88. 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

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mansour Sheikhan.

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.

Fig. 4
figure 4

State transition diagram of transactions

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).

Fig. 5
figure 5

Read command procedure in proposed combined optimistic/pessimistic model

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

Reprints 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

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00521-012-1147-3

Keywords

Navigation