Domande taggate «database-internals»

Per domande tecniche sul funzionamento interno del motore di database.

4
Qual è il numero massimo di variabili locali che possono partecipare all'operazione SET?
Ho una procedura memorizzata che contiene la logica aziendale. Al suo interno ho circa 1609 variabili (non chiedermi perché, ecco come funziona il motore). Provo a SETuna variabile al valore concatenato di tutte le altre variabili. Di conseguenza durante la creazione ottengo l'errore: Messaggio 8631, livello 17, stato 1, procedura …

2
SOMMA di DATALENGTH che non corrispondono alle dimensioni della tabella da sys.allocation_units
Avevo l'impressione che se dovessi sommare DATALENGTH()tutti i campi per tutti i record in una tabella otterrei la dimensione totale della tabella. Mi sbaglio? SELECT SUM(DATALENGTH(Field1)) + SUM(DATALENGTH(Field2)) + SUM(DATALENGTH(Field3)) TotalSizeInBytes FROM SomeTable WHERE X, Y, and Z are true Ho usato questa query di seguito (che ho ricevuto online …






1
Sfratto del piano di misurazione
Abbiamo un SQL Server 2016 SP1 con memoria massima impostata su 24 GB. Questo server ha un numero elevato di compilazioni, solo il 10% di queste compilazioni proviene da query ad hoc. Pertanto, i piani appena compilati devono essere archiviati nella cache del piano ma le dimensioni della cache del …

1
Costo dell'operatore di ricerca indice
Per la query del database di esempio AdventureWorks di seguito: SELECT P.ProductID, CA.TransactionID FROM Production.Product AS P CROSS APPLY ( SELECT TOP (1) TH.TransactionID FROM Production.TransactionHistory AS TH WHERE TH.ProductID = P.ProductID ORDER BY TH.TransactionID DESC ) AS CA; Il piano di esecuzione mostra un costo stimato dell'operatore di 0,0850383 …



1
Perché una funzione di ritorno (SRF) viene eseguita più lentamente in una clausola FROM?
Questa è una domanda interna al database. Sto usando PostgreSQL 9.5, mi chiedo perché Set Returning Functions (SRFs), noto anche come Table Valued Functions (TVFs) funzioni più lentamente quando in una FROMclausola, ad esempio quando eseguo questi comandi, CREATE TABLE foo AS SELECT * FROM generate_series(1,1e7); SELECT 10000000 Time: 5573.574 …




Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.