Jeśli napiszę dużą instrukcję SQL z wieloma klauzulami grupującymi i tak dalej; czy byłoby to o wiele szybsze przy normalnym SQL (może w procedurze przechowywanej), czy też Linq przetwarza je tylko do bardzo miłej instrukcji SQL i daje mi moje wyniki dość szybko?Czy LINQ jest generalnie wolniejszy od równej instrukcji SQL?
5
A
Odpowiedz
9
W niektórych przypadkach może w stanie dostroić SQL lepiej niż LINQ to SQL ... ale naprawdę LINQ to SQL uruchomiony. Nie pobiera wszystkich danych do procesu, a następnie przetwarza je w postaci , a następnie. Możesz (i powinieneś) rejestrować, co jest generowane przez SQL i profilować wszystko, co wygląda podejrzanie.
Oczywiście istnieje narzut konwersji zapytania w SQL na początek (dzięki czemu można je wstępnie skompilować), a następnie nakłada się konwersję danych na obiekty - i śledzenie identyfikatorów itp. Z mojego doświadczenia wynika, że jest to zwykle nie jest znaczące obciążenie ogólne. Jak zawsze, profiluj swój kod ...
Powiązane problemy
- 1. Czy IntelliJ IDEA Ultimate jest wolniejszy od wersji Community?
- 2. Czy monodroid jest wolniejszy?
- 3. RAMdisk wolniejszy od dysku?
- 4. Dlaczego PhoneGap jest wolniejszy od przeglądarki?
- 5. Czy plik DLL jest wolniejszy od łącza statycznego?
- 6. Czy indeksowanie tabeli SQL poprawi wydajność instrukcji LINQ?
- 7. HtmlUnit wolniejszy od przeglądarki GUI?
- 8. Czy można użyć instrukcji Case w sql Od klauzuli
- 9. Czy LINQ do SQL jest przestarzałe?
- 10. Czy wiele instrukcji .Where() w LINQ jest problemem z wydajnością?
- 11. Porównaj typy null od Linq do Sql
- 12. Czy podział jest wolniejszy niż pomnożenie?
- 13. Czy plik_get_contents jest wolniejszy niż zawiera?
- 14. Dlaczego std :: mutex jest dwa razy wolniejszy od CRITICAL_SECTION
- 15. Zainstalowany klejnot o wiele wolniejszy od źródła
- 16. Dlaczego mój kod C++ jest o wiele wolniejszy od R?
- 17. Dlaczego getattr() jest o wiele wolniejszy od siebie .__ dict __. Get()?
- 18. Czy LINQ jest leniwy?
- 19. Serwer SQL (TSQL) - czy możliwe jest równoległe wykonywanie instrukcji EXEC?
- 20. SQL: Czy jest możliwe dodanie kolumny dummy do instrukcji select?
- 21. Połączyć wiele instrukcji Linq Where
- 22. Czy MERGE użyciu LINQ do SQL
- 23. Używanie tekstu SQL z LINQ
- 24. Przechodzenie przez końcówki instrukcji Linq
- 25. Buforowanie wykonania instrukcji SQL
- 26. Jaka jest przyszłość Linq do SQL
- 27. Czy możliwe jest zastrzyki przez dynamiczny LINQ?
- 28. Czy nie rozumiem LINQ do SQL .AsEnumerable()?
- 29. Parsowanie instrukcji SQL z Irony
- 30. Czy MATLAB jest szybszy od Pythona?
Jeśli coś wygląda na temat prezentacji DB werid, uruchom narzędzie sql-profiler i spójrz na czasy wykonania zapytań. Jeśli jakiekolwiek zapytania są bardzo powolne, możesz zajrzeć do metod sprawdzania tego zapytania. – AndreasN
Jeśli chcesz tylko zrozumieć, co sql jest produkowane w tle, Linqpad (http://www.linqpad.net/) ma bardzo fajną funkcję, gdy po uruchomieniu zapytania linq nie tylko pokazuje wyniki , ale także polecenia sql, które zostały uruchomione. – sgmoore