DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

DevioLab підбирає стратегії, відстежує ринки та автоматизує купівлю і продаж активів. Кількість доступних криптовалют, акцій і торгових можливостей зростає щодня.

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Звіт до лабораторної роботи № 3 на тему: «Оптимізація запитів»

Оригінальна назва роботи

Оптимізація запитів

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних наук та інформаційних технологій
Факультет:
Комп’ютерні науки
Кафедра:
Кафедра програмного забезпечення

Інформація про роботу

Рік:
2009
Тип роботи:
Звіт
Предмет:
Бази даних
Група:
ПІ
Коротко про документ

Про що ця робота

У звіті до лабораторної роботи розглядаються методи оптимізації SQL-запитів. Студент створює бази даних, аналізує плани виконання та використовує інструменти оптимізації.

У роботі розглядаються

  • Оптимізація запитів
  • Бази даних
  • SQL скрипти
  • План виконання запиту
  • SQL Server
  • Схеми баз даних

Зміст і розділи

  1. Тема роботи
  2. Мета роботи
  3. Індивідуальне завдання
  4. Результати виконання завдання
  5. Створення бази даних
  6. Створення схеми бази даних
  7. Внесення відповідних даних у таблиці
  8. Виконання індивідуального завдання
  9. Висновок
Для кого:Студенти вищих навчальних закладів технічних спеціальностей, які вивчають реляційні бази даних.
Викладачі:Павич Н. Я.

Ключові поняття

оптимізатор запитівSQL Query AnalyzerSQL Profilerплан виконання запитубаза данихтаблицясхемаSQL скрипттранзакціяіндекс

Частина тексту файла (без зображень, графіків і формул):

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ "ЛЬВІВСЬКА ПОЛІТЕХНІКА" Інститут КНІТ Кафедра ПЗ ЗВІТ До лабораторної роботи № 3 На тему: “ Оптимізація запитів ” З дисципліни : " Бази даних. Частина 2 " Лектор: Доцент Павич Н.Я. Тема роботи: Оптимізація запитів Мета роботи: Навчитися використовувати оптимізатор запитів. Індивідуальне завдання Створити базу даних із архітектурою таблиць згідно варіанту. Всі новостворені об’єкти бази даних помістити у наперід створену схему бази даних. Внести відповідні дані у таблиці. Виконати індивідуальне завдання згідно варіанту для відповідної навчальної бази даних. Проглянути план виконання запиту. Використовуючи SQL Query Аnalyzer и SQL Profiler здійснити оптимізацію запиту. Якщо запит надто простий, то ускладнити його штучно зайвими операціями. Привести отриманий план запиту. Варіант 6. Знайдіть середню швидкість ПК, випущених виробником A. Варіант 24*. Порахувати залишок грошових коштів на початок дня 15/04/01 на кожному пункті прийому для бази даних зі звітністю не частіше одного разу на день. Висновок: пункт, залишок. Результати виконання завдання 1.Створення бази даних і чотирьох таблиць: Product, PC, Laptop, Printer. Відповідні SQL скрипти: USE [DateBaseKlyovan] GO CREATE TABLE [ComputerFirm].[MyProduct]( [maker] [varchar](10) PRIMARY KEY, [model] [varchar](50) NOT NULL, [type] [varchar](50) NOT NULL ) GO USE [DateBaseKlyovan] GO CREATE TABLE [ComputerFirm].[MyPC]( [code] [int] PRIMARY KEY, [model] [varchar](50) NOT NULL, [speed] [smallint] NOT NULL, [ram] [smallint] NOT NULL, [hd] [real] NOT NULL, [cd] [varchar](10) NOT NULL, [price] [money] NULL ) GO USE [DateBaseKlyovan] GO CREATE TABLE [ComputerFirm].[MyLaptop]( [code] [int] PRIMARY KEY, [model] [varchar](50) NOT NULL, [speed] [smallint] NOT NULL, [ram] [smallint] NOT NULL, [hd] [real] NOT NULL, [price] [money] NULL, [screen] [tinyint] NOT NULL ) GO USE [DateBaseKlyovan] GO CREATE TABLE [ComputerFirm].[MyPrinter]( [code] [int] PRIMARY KEY, [model] [varchar](50) NOT NULL, [color] [char](1) NOT NULL, [type] [varchar](10) NOT NULL, [price] [money] NULL ) GO Вигляд таблиць та встановлених зв’язків на діаграмі:  2. Створення схеми бази даних: USE [DateBaseKlyovan] GO CREATE SCHEMA [ComputerFirm] AUTHORIZATION [UserKlyovan] GO Задання створеної схеми схемою за замовчуванням для даного користувача. Після цього всі новостворені таблиці поміщатимуться в цю схему: USE [DateBaseKlyovan] GO ALTER USER [UserKlyovan] WITH DEFAULT_SCHEMA=[ComputerFirm] GO 3. Внесення відповідних даних у таблиці: INSERT INTO [DataBaseKlyovan].[ComputerFirm].[MyProduct] VALUES ('Samsung','1428','PC'); INSERT INTO [DataBaseKlyovan].[ComputerFirm].[MyProduct] VALUES ('Samsung','1429','PC'); INSERT INTO [DataBaseKlyovan].[ComputerFirm].[MyProduct] VALUES ('Samsung','1621','Laptop'); INSERT INTO [DataBaseKlyovan].[ComputerFirm].[MyProduct] VALUES ('HP','3734','Laptop'); INSERT INTO [DataBaseKlyovan].[ComputerFirm].[MyProduct] VALUES ('HP','3992','Printer'); INSERT INTO [DataBaseKlyovan].[ComputerFirm].[MyProduct] VALUES ('SomeFirm','7144','PC'); INSERT INTO [DataBaseKlyovan].[ComputerFirm].[MyProduct] VALUES ('SomeFirm','7321','Laptop'); INSERT INTO [DataBaseKlyovan].[ComputerFirm].[MyProduct] VALUES ('SomeFirm','7979','Printer'); INSERT INTO [DateBaseKlyovan].[ComputerFirm].[MyPC] VALUES(40,'1428',1200,512,160,'52x',250); INSERT INTO [DateBaseKlyovan].[ComputerFirm].[MyPC] VALUES (41,'1428',1200,1024,500,'52x',350); INSERT INTO [DateBaseKlyovan].[ComputerFirm].[MyPC] VALUES (84,'7144',1500,2048,320,'52x',500); INSERT INTO [DateBaseKlyovan].[ComputerFirm].[MyLaptop] VALUES(44,'1621',1200,512,160,400,15); INSERT INTO [DateBaseKlyovan].[ComputerFirm].[MyLaptop] VALUES (72,'3734',800,256,80,250,14); INSERT INTO [DateBaseKlyovan].[ComputerFirm].[MyLaptop] VALUES (87,'7321',1500,1024,240,NULL,15); INSERT INTO [DateBaseKlyovan].[ComputerFirm].[MyPrinter] VALUES(75,'3992','y','Laser',200); INSERT INTO [DateBaseKlyovan].[ComputerFirm].[MyPrinter] VALUES(88,'7979','n','Jet',140); INSERT INTO [DateBaseKlyovan].[ComputerFirm].[MyPrinter] VALUES(89,'7979','n','Matrix',120) Виконання індивідуально завдання: Запит: use RCompany go SET STATISTICS IO ON; select i.point as point, i.inc - o.[out] as result from ComSchema.Income_o i join ComSchema.Outcome_o o on i.[date] = o.[date] and i.point = o.point and i.[date] = '2001-04-15'; SET STATISTICS IO OFF; План виконання запиту:  Повідомлення про ввід/вивід Table 'Outcome_o'. Scan count 0, logical reads 10, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0. Table 'Income_o'. Scan count 1, logical reads 2, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0. Для оптимізації запиту використаємо підказку FAST n. Оптимізований запит: select i.point as point, i.inc - o.[out] as result from ComSchema.Income_o i join ComSchema.Outcome_o o on i.[date] = o.[date] and i.point = o.point and i.[date] = '2001-04-15' option (fast 5); Повідомлення про ввід/вивід Table 'Income_o'. Scan count 1, logical reads 11, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0. Table 'Outcome_o'. Scan count 1, logical reads 2, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0.  Висновок На даній лабораторній роботі я навчився використовувати оптимізацію запитів, користуватися засобами SQL Query Аnalyzer і SQL Profiler, навчився переглядати плани виконання запитів та впливати на їх зміну.
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!