SQL Server รันคิวรีแบบขนานหรือไม่


10

SQL Server รันคิวรีแบบขนานหรือไม่ กล่าวอีกนัยหนึ่งถ้าฉันเรียกใช้การสืบค้นที่หนักที่ใช้เวลา 10 วินาทีในการดำเนินการและในเวลาเดียวกันเริ่มการสอบถามหนักอื่นที่ใช้เวลา 10 วินาทีแบบสอบถามที่สองจะเริ่มจริงหลังจาก 10 วินาทีหรือพวกเขาจะเริ่มทั้งสองในเวลาเดียวกัน ?


1
ไม่มีคำตอบที่เป็นไปได้จริงอ่านเกี่ยวกับการรวมการเชื่อมต่อและการล็อคกลไก

2
มีความเกี่ยวข้องมากขึ้นในการอ่านข้อมูลเกี่ยวกับพนักงาน SQL Server และกลไกการกำหนดตารางเวลาความร่วมมือ IMO โดยทั่วไปคำตอบสำหรับคำถามของคุณคือ "ใช่"
Martin Smith

คำตอบ:


14

คุณหมายถึง "พร้อมกัน" คำตอบคือใช่ด้วยคำเตือนที่กว้างเกินกว่าจะอภิปรายได้ที่นี่ ในความเป็นจริงจุดรวมของ RDBMS คือการทำงานพร้อมกัน

"Parallel" มีความหมายที่แม่นยำใน SQL Server: "แบบสอบถามเดียวถูกกระจายไปยังแกนประมวลผลมากกว่าหนึ่งแกน"


6

ตราบใดที่แบบสอบถามแรกของคุณไม่ได้ล็อคตารางที่จำเป็นในแบบสอบถามที่สองของคุณแบบสอบถามเหล่านั้นจะทำงานในแบบคู่ขนาน


5

แบบสอบถามทำงานในแบบขนานเท่าที่จะทำได้

ฐานข้อมูลใช้ล็อกที่แตกต่างกันสำหรับการอ่านและเขียนในแถวบล็อกหรือตารางทั้งหมดขึ้นอยู่กับสิ่งที่คุณทำ

ถ้าแบบสอบถามหนึ่งอ่านเฉพาะจากตารางแบบสอบถามอื่นสามารถอ่านได้จากตารางเดียวกันในเวลาเดียวกัน หากแบบสอบถามหนึ่งอัพเดตบางระเบียนในตารางแบบสอบถามอื่นอาจยังสามารถอ่านได้จากตารางตราบใดที่ไม่ได้อ่านระเบียนใด ๆ ที่ถูกล็อคไว้สำหรับการปรับปรุง


2

ขึ้นอยู่กับข้อมูล - โดยปกติแล้วพวกเขาจะเรียกใช้แบบขนาน แต่บางสถานการณ์การล็อกอาจทำให้แบบสอบถามหนึ่งรออีก แน่นอนถ้าระบบย่อยดิสก์อ่อนแอและคุณมี RAM ไม่มากการสืบค้นหลายครั้งอาจทำงานช้าลง


0

DDL (ภาษานิยามข้อมูล) ทำงานแบบขนานเช่นคำสั่ง SELECT
DML (ภาษาที่แก้ไขข้อมูล) ไม่ทำงานแบบขนานเช่นคำสั่ง INSERT และ UPDATE


SELECT ไม่ใช่คำสั่ง DDL
a_horse_with_no_name

-1

หากคุณกำลังเขียนคำถามเช่นด้านล่าง ... มันจะทำงานแบบขนาน

SET XACT_ABORT ON
Begin Try
     Begin Tran
        --Your Sql Statement
     Commit Tran
End Try
Begin Catch
    Rollback Tran
End Catch

หมายเหตุ - แบบสอบถามแบบขนานของคุณจะอยู่ในสถานะรอในกรณีที่มีการแทรกจำนวนมากในตาราง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.