Сравнительный анализ эффективности выбора данных, страница 3

Рис. 3.9 Группировка по одному столбцу для индексированной и неиндексированной базы данных для Informix


Рис. 3.10 Группировка по одному столбцу для индексированной и неиндексированной базы данных для DB2

1.2.  Группировка по двум столбцам различного числа строк (табл. 3.11)

Текст запроса:

Select ats_number, class, avg(number), max(number), min(number), count(*) from phones where number < «ограничение на число строк» group by ats_number, class

Таблица 3.11

Число

Строк

Время выполнения, сек

DB2

Informix

MS SQL Server

инд.

неинд.

инд.

неинд.

инд.

неинд.

100000

10

14

11

27

1

1

300000

19

28

35

55

2

3

500000

25

37

64

71

3

6

700000

33

48

83

92

6

9

800000

41

60

95

114

9

11

Рис. 3.11 Группировка по двум столбцам для неиндексированной базы данных

Рис. 3.12 Группировка по двум столбцам

для индексированной базы данных


Рис. 3.13 Группировка по двум столбцам для индексированной и неиндексированной базы данных для MS SQL Server

Рис. 3.14 Группировка по двум столбцам для индексированной и неиндексированной базы данных для Informix

Рис. 3.15 Группировка по двум столбцам для индексированной и неиндексированной базы данных для DB2

1.3.  Группировка по трем столбцам различного числа строк (табл. 3.12)

Текст запроса:

Select house, surname, name, max(length(surname)-length(name)), min(length(surname)+length(name)), avg((length(name)-length(surname))/length(name)), count(*) from abonents where ID < «ограничение на количество строк» group by house, surname, name

Таблица 3.12

Число

Строк

Время выполнения, сек

DB2

Informix

MS SQL Server

инд.

неинд.

Инд.

неинд.

инд.

Неинд.

100000

6

9

8

17

2

4

300000

9

13

20

25

6

8

500000

12

18

32

34

9

11

700000

15

22

42

42

14

15

800000

16

23

43

52

14

15

Рис. 3.16 Группировка по трем столбцам

для индексированной базы данных

Рис. 3.17 Группировка по трем столбцам

для неиндексированной базы данных


Рис. 3.18 Группировка по трем столбцам для индексированной и неиндексированной базы данных для MS SQL Server

Рис. 3.19 Группировка по трем столбцам для индексированной и неиндексированной базы данных для Informix


Рис. 3.20 Группировка по трем столбцам для индексированной и неиндексированной базы данных для DB2

1.4.  Группировка по четырем столбцам различного числа строк (табл. 3.13)

Текст запроса:

Select surname, name, patronymic, house, max(length(surname)), min(length(name)), avg(length(patronymic)), avg(house) from abonents where ID < «ограничение на число строк» group by surname, name, patronymic, house

Таблица 3.13