คำถามติดแท็ก sql-server-2012

SQL Server 2012 (รุ่นบิลด์หลัก 11.00.xxxx) โปรดติดแท็ก sql-server ด้วย

2
การบีบอัดข้อมูล SQL Server นั้นดีสำหรับฐานข้อมูลแบบอ่านอย่างเดียวหรือไม่?
บางวรรณกรรมเกี่ยวกับการบีบอัดข้อมูล SQL Server ฉันอ่านว่าค่าใช้จ่ายในการเขียนเพิ่มขึ้นประมาณสี่เท่าตามปกติ ดูเหมือนว่านี่เป็นข้อเสียเปรียบหลักของการบีบอัดข้อมูลซึ่งหมายความว่าสำหรับฐานข้อมูลการเก็บถาวรแบบอ่านอย่างเดียวประสิทธิภาพจะดีขึ้นด้วยการใช้การบีบอัดข้อมูลที่เต็มหน้า 100% ข้อความข้างต้นเป็นจริงหรือไม่ "การเปลี่ยนแปลง" หลักระหว่างการบีบอัดข้อมูลกับอะไร (สำหรับการอ่าน) "CPU + x%" "IO -y%"? หน้าแยกเกิดขึ้น? การใช้งาน tempdb? การใช้ RAM? และสำหรับการเขียน? สำหรับวัตถุประสงค์ของคำถามนี้คุณสามารถ จำกัด บริบทเป็นการบีบอัดระดับหน้าของฐานข้อมูลขนาดใหญ่(> 1TB)แต่ยินดีต้อนรับความคิดเห็นเพิ่มเติมเสมอ อ้างอิง: บล็อก SQL Server Storage Engine (สถานการณ์สมมติ DW แสดงให้เห็นว่าการบีบอัดมีประโยชน์มาก) การบีบอัดข้อมูล: กลยุทธ์การวางแผนกำลังการผลิตและวิธีปฏิบัติที่ดีที่สุด วิธีการที่มีรายละเอียดมากขึ้นในการตัดสินใจว่าจะบีบอัดอะไรเกี่ยวข้องกับการวิเคราะห์คุณสมบัติเวิร์กโหลดสำหรับแต่ละตารางและดัชนี มันขึ้นอยู่กับสองตัวชี้วัดต่อไปนี้: U: เปอร์เซ็นต์ของการดำเนินการอัปเดตบนตารางดัชนีหรือพาร์ติชันเฉพาะเมื่อเทียบกับการดำเนินการทั้งหมดบนวัตถุนั้น ยิ่งค่าของ U ต่ำลง (นั่นคือตารางดัชนีหรือพาร์ติชันถูกอัพเดตนาน ๆ ครั้ง) ผู้สมัครที่ดีกว่าสำหรับการบีบอัดหน้า S: เปอร์เซ็นต์ของการดำเนินการสแกนบนตารางดัชนีหรือพาร์ติชันสัมพันธ์กับการดำเนินการทั้งหมดบนวัตถุนั้น ยิ่งค่าของ …

2
SQL Server 2012 Availability Group นั้นเป็น“ AlwaysON” หรือไม่
ในคลัสเตอร์ SQL Server แบบดั้งเดิมเมื่อเกิด failover ไคลเอนต์ทั้งหมดที่เชื่อมต่อกับ SQL Server ล้มเหลวเช่นการสูญเสียการเชื่อมต่อและลูกค้าแต่ละคนจะต้องสร้างการเชื่อมต่อใหม่ไปยังอินสแตนซ์คลัสเตอร์ล้มเหลว กลุ่มความพร้อมใช้งาน AlwaysON ลดปัญหานี้หรือไม่ failover ในกรณีที่กลุ่มความพร้อมใช้งาน SQL Server 2012 AlwaysON โปร่งใสให้กับลูกค้าที่เชื่อมต่อกับ SQL Server หรือไม่

2
sp_executesql กับประเภทตารางที่ผู้ใช้กำหนดไม่ทำงานอย่างถูกต้อง
ปัญหา : มีปัญหาที่ทราบเกี่ยวกับประเภทตารางที่ผู้ใช้กำหนดเป็นพารามิเตอร์สำหรับsp_executesqlหรือไม่ คำตอบ - ไม่ฉันเป็นคนงี่เง่า ตั้งค่าสคริปต์ สคริปต์นี้สร้างหนึ่งในแต่ละตารางขั้นตอนและประเภทตารางที่ผู้ใช้กำหนด (จำกัด SQL Server 2008+ เท่านั้น) จุดประสงค์ของกองคือเพื่อให้การตรวจสอบว่าใช่ข้อมูลทำให้เป็นขั้นตอน ไม่มีข้อ จำกัด ไม่มีสิ่งใดที่จะป้องกันไม่ให้มีการแทรกข้อมูล ขั้นตอนใช้เป็นพารามิเตอร์ที่ผู้ใช้กำหนดประเภทตาราง proc ทั้งหมดจะถูกแทรกลงในตาราง ประเภทตารางที่ผู้ใช้กำหนดนั้นเรียบง่ายเช่นกันเพียงแค่คอลัมน์เดียว ฉันเรียกใช้สิ่งต่อไปนี้11.0.1750.32 (X64) และ10.0.4064.0 (X64)ใช่ฉันรู้ว่ากล่องนั้นสามารถแก้ไขได้ฉันไม่ได้ควบคุมสิ่งนั้น -- this table record that something happened CREATE TABLE dbo.UDTT_holder ( ServerName varchar(200) , insert_time datetime default(current_timestamp) ) GO -- user defined table type transport …

3
เหตุใดเครื่องมือเพิ่มประสิทธิภาพจึงเลือกดัชนีที่เป็นกลุ่ม + เรียงลำดับแทนที่จะเป็นดัชนีที่ไม่ได้ทำคลัสเตอร์
รับตัวอย่างถัดไป: IF OBJECT_ID('dbo.my_table') IS NOT NULL DROP TABLE [dbo].[my_table]; GO CREATE TABLE [dbo].[my_table] ( [id] int IDENTITY (1,1) NOT NULL PRIMARY KEY, [foo] int NULL, [bar] int NULL, [nki] int NOT NULL ); GO /* Insert some random data */ INSERT INTO [dbo].[my_table] (foo, bar, nki) SELECT TOP (100000) ABS(CHECKSUM(NewId())) …

3
คำแนะนำ NOLOCK เปลี่ยนลำดับของบันทึกที่ส่งคืน
มีดัชนีคลัสเตอร์บนโต๊ะเป็นฟิลด์ClientLastName เมื่อฉันเพียงแค่ถ่ายโอนข้อมูลทั้งหมดจากตารางข้อมูลเหล่านั้นจะปรากฏตามลำดับตัวอักษรเว้นแต่(nolock)จะมีการใช้คำใบ้ในแบบสอบถามที่เป็นปัญหา คำใบ้นั้นเปลี่ยนลำดับของบันทึก ควรเป็น?. ฉันมั่นใจว่าไม่มีเซสชันอื่นที่มีธุรกรรมเปิดที่มีการเปลี่ยนแปลงในตารางนั้น (อย่างน้อยsp_who2ก็ไม่แสดงให้ฉันเห็น) ความแตกต่างในการสั่งซื้อสามารถอธิบายได้อย่างไร ดึงข้อมูลเพิ่มเติมจากความคิดเห็น: ไม่มีคำสั่งซื้อโดย ดัชนีที่ไม่ใช่คลัสเตอร์ควรบังคับใช้คำสั่งหรือไม่ คิวรียังคงส่งคืนคำสั่งซื้อที่แตกต่างกันแม้ว่าจะใช้คำใบ้ดัชนีที่ระบุดัชนีคลัสเตอร์ พวกเขาควร? ฉันสงสัยว่าทำไมnolockการเปลี่ยนแปลงลำดับของระเบียนที่ส่งคืนโดยไม่มีการเปลี่ยนแปลงแผน ฉันทำ WinDiff กับพวกเขา - เหมือนกันยกเว้น [the] (nolock)[คำใบ้แบบสอบถาม]

2
ปรับการค้นหาให้เหมาะสมสำหรับ 25+ ล้านแถว
ฉันใช้ MS SQL และฉันต้องเรียกใช้แบบสอบถามหลายรายการในตารางเดียวกันในเกณฑ์ที่แตกต่างกัน ตอนแรกฉันเรียกใช้แบบสอบถามแต่ละรายการในตารางเดิมแม้ว่าพวกเขาทั้งหมดแชร์การกรองบางอย่าง (เช่นวันที่สถานะ) การดำเนินการนี้ใช้เวลานาน (ประมาณ 2 นาที) มีข้อมูลที่ซ้ำกันในแถวข้อมูลและดัชนีทั้งหมดไม่ได้เป็นคลัสเตอร์ ฉันสนใจเฉพาะคอลัมน์ 4 คอลัมน์สำหรับเกณฑ์ของฉันและผลลัพธ์ควรให้ผลลัพธ์การนับเท่านั้นสำหรับการค้นหาทั้งหมด คอลัมน์ที่ต้องการ: TABLE, FIELD, AFTER, DATEและมีดัชนีในแต่ละและDATETABLE หลังจากสร้างตารางชั่วคราวที่มีเฉพาะฟิลด์ที่ฉันต้องการมันลงไปเป็นเวลา 1:40 นาทีซึ่งยังแย่มาก CREATE TABLE #TEMP ( TABLE VARCHAR(30) NULL, FIELD VARCHAR(30) NULL, AFTER VARCHAR(1000) NULL, DATE DATETIME, SORT_ID INT IDENTITY(1,1) ) CREATE CLUSTERED INDEX IX_ADT ON #TEMP(SORT_ID) INSERT INTO #TEMP …

1
จะอนุญาตให้ใช้งานโพรซีเดอร์ที่เก็บไว้ แต่ไม่ได้เขียนได้อย่างไร
ฉันต้องการตั้งค่าผู้ใช้ "อ่าน" บนอินสแตนซ์ SQL Server 2012 ของฉัน ฉันต้องการอนุญาตให้เขามีสิทธิ์ดำเนินการกระบวนงานที่เก็บไว้หรือฟังก์ชันหรือคำสั่ง SQL โดยตรงซึ่งดึงข้อมูลจากตารางและมุมมองทั้งหมด แต่ไม่อัปเดตหรือแทรก (เช่นอ่านอะไรและเขียนอะไร) ฉันสามารถตั้งค่านี้ได้โดยไม่ให้สิทธิ์เฉพาะกับแต่ละฟังก์ชั่นหรือขั้นตอนการจัดเก็บตามชื่อ แต่ให้สิทธิ์การดำเนินการที่ถูกต้องกับฟังก์ชั่นใด ๆ หรือขั้นตอนการจัดเก็บ จะมีอะไรเปลี่ยนแปลงไหมถ้าฉันใช้ SQL Server 2008 แทน ชี้แจงและเพิ่มเติม: หากขั้นตอนการจัดเก็บเปลี่ยนแปลงข้อมูลผู้ใช้ควรได้รับข้อความแสดงข้อผิดพลาด (ปฏิเสธการแก้ไขหรือปฏิเสธการเข้าถึงขั้นตอนการจัดเก็บทั้งหมด) หากวิธีแก้ไขที่เป็นไปได้เกี่ยวข้องกับการปฏิเสธสิทธิ์ฉันจะไม่ให้สิทธิ์บางอย่างแทนการปฏิเสธได้หรือไม่ สามารถใช้การปฏิเสธกับตารางทั้งหมดมุมมอง ฯลฯ (มีอยู่ทั้งในปัจจุบันและในอนาคต) ในฐานข้อมูลในคำสั่งเดียวได้หรือไม่

3
การมิร์เรอร์ฐานข้อมูลเซิร์ฟเวอร์ SQL กำลังจะตาย ฉันจะรับประกันความพร้อมใช้งานสูงในขณะนี้ได้อย่างไร
มิเรอร์ฐานข้อมูลคุณลักษณะของ SQL Server จะตาย: คุณลักษณะนี้จะถูกลบใน Microsoft SQL Server รุ่นอนาคต หลีกเลี่ยงการใช้คุณสมบัตินี้ในงานพัฒนาใหม่และวางแผนแก้ไขแอปพลิเคชั่นที่ใช้คุณสมบัตินี้ในปัจจุบัน ใช้กลุ่มความพร้อมใช้งานAlwaysOnแทน ไม่มีใครรู้ว่าเมื่อไหร่? ตัวเลือกของฉันสำหรับฐานข้อมูลความพร้อมใช้งานสูง (และการกู้คืนอย่างรวดเร็ว) คืออะไร

2
LATCH_EX รอทรัพยากร METADATA_SEQUENCE_GENERATOR
เรามีกระบวนการที่สร้างรายงานสินค้าคงคลัง ในฝั่งไคลเอ็นต์กระบวนการแยกจำนวนเธรดผู้ปฏิบัติงานที่สามารถกำหนดค่าได้เพื่อสร้างกลุ่มข้อมูลสำหรับรายงานที่สอดคล้องกับที่เก็บหนึ่งแห่งจากหลาย ๆ ที่ (อาจเป็นพันหลายสิบโดยทั่วไป) เธรดผู้ปฏิบัติงานแต่ละคนเรียกบริการเว็บที่ดำเนินการตามขั้นตอนที่เก็บไว้ กระบวนการฐานข้อมูลสำหรับการประมวลผลแต่ละกลุ่มรวบรวมข้อมูลลงในตาราง #Temporary ในตอนท้ายของแต่ละชิ้นประมวลผลข้อมูลจะถูกเขียนไปยังตารางถาวรใน tempdb ในที่สุดเมื่อสิ้นสุดกระบวนการหนึ่งเธรดที่ฝั่งไคลเอ็นต์ร้องขอข้อมูลทั้งหมดจากตาราง tempdb ถาวร ยิ่งผู้ใช้ที่เรียกใช้รายงานนี้ยิ่งได้รับช้า ฉันวิเคราะห์กิจกรรมในฐานข้อมูล ณ จุดหนึ่งฉันเห็นคำขอ 35 รายการที่ถูกบล็อกทั้งหมดถูกบล็อก ณ จุดหนึ่งในกระบวนการ SPIDs ทั้งหมดเหล่านี้ได้ในคำสั่งของ 50 มิลลิวินาทีรอประเภททรัพยากรLATCH_EX METADATA_SEQUENCE_GENERATOR (00000010E13CA1A8)SPID หนึ่งมีทรัพยากรนี้และอื่น ๆ ทั้งหมดกำลังบล็อก ฉันไม่พบสิ่งใดเกี่ยวกับทรัพยากรการรอนี้ในการค้นหาเว็บ ตารางใน tempdb ที่เราใช้อยู่มีIDENTITY(1,1)คอลัมน์ SPID เหล่านี้กำลังรอคอลัมน์ประจำตัวหรือไม่ เราสามารถใช้วิธีการใดในการลดหรือกำจัดการบล็อก เซิร์ฟเวอร์เป็นส่วนหนึ่งของคลัสเตอร์ เซิร์ฟเวอร์กำลังเรียกใช้ SQL Server 2012 Standard Edition SP1 64 บิตใน Windows 2008 R2 …

2
สคีมาเปลี่ยนกลุ่ม "สถานะว่าง" หรือพวกมันถูกจัดการอย่างโปร่งใสหรือไม่?
องค์กรของฉันวางแผนที่จะนำกลุ่มความพร้อมใช้งานของ SQL Server 2012 มาใช้และฉันพยายามที่จะเข้าใจว่าจะมีผลกระทบอย่างไร (ถ้ามี) ในกระบวนการอัปเกรดแอปพลิเคชันของเรา เราปล่อยการอัปเดตแอปพลิเคชันในรอบ 8 สัปดาห์และการเปิดตัวใด ๆ อาจรวมถึงการเปลี่ยนแปลงสคีมาและ / หรือการย้ายข้อมูล สิ่งที่ฉันพยายามทำความเข้าใจคือว่าโซลูชัน HA / DR จะจัดการกับการเปลี่ยนแปลง schema อย่างโปร่งใสหรือไม่ (คอลัมน์ใหม่, ดัชนีเพิ่มเข้ากับ Secondaries) หรือเป็นการแทรกแซงด้วยตนเองที่จำเป็นในการสร้าง schema ในแต่ละอินสแตนซ์ ส่วนการโยกย้ายข้อมูลที่ฉันสมมติว่ามีการจัดการอย่างโปร่งใส แต่ต้องการยืนยันเช่นกัน ฉันเดาว่าฉันกำลังสร้างสมมุติฐานแบบครอบคลุมว่าพฤติกรรมเหล่านี้ไม่แตกต่างกันไปตามการกำหนดค่ากลุ่มความพร้อมใช้งานซึ่งอาจเป็นเท็จเช่นกัน โปรดแจ้งให้เราทราบ โดยสังเขป; ในแอปพลิเคชันของฉันที่ระบุฉันสามารถเปลี่ยนตารางที่มีขนาดใหญ่มาก (10s ถึง 100s ของเรคคอร์ด) โดยการเพิ่มคอลัมน์ลงไป บางคอลัมน์อาจเป็น "ใหม่สุทธิ" เพื่อให้สามารถใช้ประโยชน์จากฟังก์ชันการเปลี่ยนแปลงแบบแผนของ Enterprise Online ได้ คอลัมน์อื่นอาจเป็นการ refactoring ของคอลัมน์ที่มีอยู่ (FullName ได้รับการแบ่งเป็น FirstName …

6
ไม่สามารถดำเนินการต่อได้เนื่องจากเซสชันอยู่ในสถานะ kill ในขณะที่สร้างดัชนีคลัสเตอร์
ฉันได้รับข้อผิดพลาดต่อไปนี้ขณะที่พยายามสร้างดัชนีคลัสเตอร์ คำสั่งถูกยกเลิก ข่าวสารเกี่ยวกับ 596 ระดับ 21 สถานะ 1 บรรทัด 0 ไม่สามารถดำเนินการต่อได้เนื่องจากเซสชันอยู่ในสถานะ kill ข่าวสารเกี่ยวกับ 0 ระดับ 20 สถานะ 0, บรรทัด 0 ข้อผิดพลาดร้ายแรงที่เกิดขึ้นกับคำสั่งปัจจุบัน ควรยกเลิกผลลัพธ์หากมี ดัชนีคือ: BEGIN TRANSACTION SET QUOTED_IDENTIFIER ON SET ARITHABORT ON SET NUMERIC_ROUNDABORT OFF SET CONCAT_NULL_YIELDS_NULL ON SET ANSI_NULLS ON SET ANSI_PADDING ON SET ANSI_WARNINGS ON COMMIT BEGIN TRANSACTION GO …

6
วิธีการแก้ไขการจำลองแบบ messed up บน MS SQL Server
ฉันกู้คืนฐานข้อมูลจากข้อมูลสำรอง ฐานข้อมูลใช้การจำลองแบบเพื่อเผยแพร่ไปยังเซิร์ฟเวอร์อื่น สมมติว่าการคืนค่าฐานข้อมูลจะทำให้การจำลองแบบแตกหักฉันพยายามลบการจำลองและสร้างใหม่อีกครั้ง (เรามีสคริปต์เพื่อสร้างใหม่อีกครั้งตั้งแต่เริ่มต้น) ฉันไม่แน่ใจว่าสิ่งที่ฉันทำ แต่ตอนนี้มันอยู่ในสภาพที่ยุ่งเหยิงอย่างสมบูรณ์และฉันไม่สามารถแก้ไขได้ ก่อนอื่นฉันพยายามกำจัดการสมัครรับข้อมูล (บนเซิร์ฟเวอร์ผู้เผยแพร่): EXEC sp_dropsubscription @publication = 'PublicationName', @article = N'all', @subscriber = 'SubscriberServerName' ดูเหมือนว่าจะใช้งานได้ SELECT * FROM syssubscriptionsไม่แสดงผลลัพธ์ ค้นหาเซิร์ฟเวอร์สมาชิก SSMS> {SubscriberServer}> การจำลองแบบ> การสมัครสมาชิกท้องถิ่น - การสมัครสมาชิกไม่ได้อยู่ที่นั่น ดังนั้นฉันจึงพยายามลบสิ่งพิมพ์ SSMS> {Server}> การจำลองแบบ> Local Publications> {PublicationName}> ลบ สิ่งนี้ทำให้เกิดข้อความแสดงข้อผิดพลาดต่อไปนี้: Could not delete publication 'PublicationName'. Could not drop article. A …

1
การใช้กระบวนการไม่ถูกต้องจากเหตุการณ์ที่เพิ่มความสมบูรณ์ของระบบหรือไม่
ฉันเพิ่งทำงานเกี่ยวกับการทำความเข้าใจข้อมูลหรือตัวชี้วัดที่ถูกเก็บไว้ในไฟล์เหตุการณ์ขยายระบบสุขภาพ เรากำลังพยายามใช้การรวบรวมข้อมูลของตัวชี้วัดประสิทธิภาพโดยใช้ความสมบูรณ์ของระบบตามที่ระบุไว้ที่นี่ มีรายงานที่ให้ตัวชี้วัดเช่นการใช้ CPU, การใช้งานกระบวนการอื่น ๆ ที่รวบรวมจากเหตุการณ์สถานะระบบ scheduler_monitor_system_health_ring_buffer_recorded ฉันไม่สามารถเข้าใจเซิร์ฟเวอร์ไม่กี่แห่งของฉันได้เพราะเหตุใดฟิลด์ "process_utilization" ซึ่งแสดงอยู่ในรายงานเนื่องจากการใช้งาน CPU CPU นั้นใช้เวลาส่วนใหญ่มากกว่า 100 เวลาสูงสุดในช่วงเวลาสูงสุดจะแตกต่างกันระหว่าง 120-160 และเพราะรายงานนั้น แสดง CPU ที่สูงกว่า 100 เสมอแม้ว่าฉันจะตรวจสอบจากเซิร์ฟเวอร์กิจกรรมการตรวจสอบที่ไม่เคยกรณี ฉันได้หยิบยกปัญหานี้ขึ้นใน Github แต่ดูเหมือนไม่มีการแก้ไขหรือตอบสนอง ดังนั้นคำถามของฉันจะเป็น ฉันจะได้รับหมายเลขที่ถูกต้องสำหรับการใช้งาน CPU CPU สำหรับเซิร์ฟเวอร์ของฉันโดยใช้บัฟเฟอร์เสียงเรียกทำงานระบบได้อย่างไร? รายงานยังแสดงตัวนับสำหรับเขตข้อมูลด้านล่าง 2 คำนวณจากรายงานของพวกเขา 100-System_idle-process_utilization เป็น OtherProcessUtil 100-system_idle เป็น SystemUtil OtherProcessUtilและSystemUtilเหล่านี้มีความจำเป็น / มีประโยชน์สำหรับอะไร? ฉันยังเห็นการใช้หน่วยความจำทุกครั้งที่แสดงเป็น 100 ซึ่งดูไม่ถูกต้องเช่นกัน มีใครสังเกตเห็นไหม เครื่องมืออื่น ๆ เช่น …

2
การสร้างดัชนีแบบกลุ่มล้มเหลวในการสร้างตาราง
เราพบข้อผิดพลาดเมื่อเรียกใช้สคริปต์ต่อไปนี้ IF NOT EXISTS (SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE='BASE TABLE' AND TABLE_NAME='Table_Name') BEGIN CREATE TABLE Table_Name ( Field_Name_1 binary(32) NOT NULL CONSTRAINT PK_Name_Goes_Here PRIMARY KEY NONCLUSTERED , Field_Name_2 int NOT NULL , Field_Name_3 datetime NOT NULL INDEX IX_Name_Goes_Here CLUSTERED ) END โดยเฉพาะอย่างยิ่งมันคือการสร้างดัชนีคลัสเตอร์ที่แสดงข้อผิดพลาดต่อไปนี้: ข่าวสารเกี่ยวกับ 1018, ระดับ 15, สถานะ 1, บรรทัดที่ …

3
SQL Server จัดการข้อมูลสำหรับการสืบค้นที่มีที่ว่างไม่เพียงพอในแคชบัฟเฟอร์อย่างไร
คำถามของฉันคือ SQL Server จะจัดการกับแบบสอบถามที่ต้องการดึงข้อมูลจำนวนมากลงในแคชบัฟเฟอร์ได้อย่างไร แบบสอบถามนี้จะมีการรวมหลายรายการดังนั้นชุดผลลัพธ์จึงไม่มีอยู่ในรูปแบบนี้บนดิสก์แล้วและจะต้องรวบรวมผลลัพธ์ แต่แม้หลังจากการรวบรวมก็ยังคงต้องการพื้นที่มากกว่าที่มีอยู่ในแคชบัฟเฟอร์ ฉันจะยกตัวอย่าง สมมติว่าคุณมีอินสแตนซ์ของ SQL Server ที่มีเนื้อที่แคชแคชรวม 6GB ฉันเรียกใช้คิวรีที่มีการรวมหลายตัวที่อ่านข้อมูล 7GB ได้ SQL Server สามารถตอบสนองต่อคำขอนี้ได้อย่างไร มันเก็บข้อมูลชั่วคราวใน tempdb หรือไม่? มันล้มเหลวหรือไม่ มันทำสิ่งที่เพิ่งอ่านข้อมูลจากดิสก์และรวบรวมส่วนในเวลาหรือไม่ นอกจากนี้จะเกิดอะไรขึ้นถ้าฉันพยายามคืนข้อมูลทั้งหมด 7GB นั่นจะเปลี่ยนวิธีจัดการกับ SQL Server หรือไม่ ฉันรู้อยู่แล้วว่าหลายวิธีในการแก้ไขปัญหานี้ฉันแค่อยากรู้ว่า SQL Server จัดการกับคำขอนี้เป็นการภายในเมื่อทำงานตามที่ระบุไว้ นอกจากนี้ฉันแน่ใจว่าข้อมูลนี้มีอยู่ที่ใดที่หนึ่ง แต่ฉันประสบความสำเร็จในการค้นหา

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