Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Как механизмът на базата данни обработва едновременните вмъквания?

Двигател на база данни като SQL Server (за който предполагам, че питате, тъй като го маркирате така) ще използва някаква версия на ОВЕН Регистриране с предварително запис протокол. Тъй като такъв протокол изисква записването на дневника като последователен поток, следва като правило, че 100 вмъквания, задействани едновременно, дори на сървър със 100 CPU, ще трябва да се сериализират вътрешно, когато имат достъп до дневника. Следователно едновременността на ниво „наносекунда“, както предполагате, не е дори теоретично възможна. Темата е описана на няколко места, вижте Регистър на транзакциите с предварителен запис , Възстановяване на транзакция и Как работи:I/O презентация на Боб Дор за SQL Server .

От практическа гледна точка обаче трябва да мислите от гледна точка на транзакции и изолация нива .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Изпълнението на скрипта, направен от генериране на скрипт на различен сървър, дава грешка

  2. Как да генерирате динамични етикети и да използвате името и стойността на колоната като текст

  3. Как да съкратите всички таблици в база данни с помощта на TSQL?

  4. Как да получите стойност на квадратчето за отметка от gridview, когато квадратчето за отметка OnCheckedChanged

  5. Как да изберете низ между два низа в колона в SQL Server?