Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / А можно tempdb на RamDisk засунуть (MS SQL 2000)? / 21 сообщений из 21, страница 1 из 1
15.10.2002, 15:16:03
    #32058418
genie_vats
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
Вроде быстродействие должно повысится...
(:
...
Рейтинг: 0 / 0
15.10.2002, 15:23:59
    #32058422
Glory
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
В SQL 2000 эта установка больше не поддерживается
...
Рейтинг: 0 / 0
15.10.2002, 15:50:43
    #32058447
genie_vats
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
В \r
/topic/9883\r
Вы писали - tempdb на отдельном диске. Как? Не получается в sysfiles изменить путь для tempdb. Или в SQL 2000 и этого нельзя никак?
...
Рейтинг: 0 / 0
15.10.2002, 15:58:09
    #32058453
Glory
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
См. здесь про перемещение Tempdb
...
Рейтинг: 0 / 0
15.10.2002, 16:16:38
    #32058465
KANDed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
Glory, он не про память спрашивает, а про эмулятор диска в памяти, типа RamDiskNT 1.3 for WinNT/2000.
Честно говоря, не пробовал, а интересно было бы узнать, позволяет ли SQL использовать такие диски. Хотя, считаю, что вряд ли сервер ускорится. Память-то у него забирать придется. Хотя, как знать... Разные режимы работы могут быть.
...
Рейтинг: 0 / 0
15.10.2002, 16:28:40
    #32058471
genie_vats
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
Спасибо Glory, получилось!
KANDed прав - перенес tempdb на RamDisk. Буду испытывать на предмент увеличения производительности. (:
...
Рейтинг: 0 / 0
15.10.2002, 16:37:32
    #32058475
KANDed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
Genie_vats, получишь результаты, поделись с Форумом!
...
Рейтинг: 0 / 0
15.10.2002, 17:41:40
    #32058508
Glory
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
Йоу, диджей.
Действительно не понял, думал речь идет про установки от SQL 6.5.
Теоритически, если памяти настолько много, что сам SQL не может ее использовать, то может быть и будет выигрыш.
Хотя сейчас скорее встану на позицию KANDed-а.
Получите результаты - напишите обязательно
...
Рейтинг: 0 / 0
15.10.2002, 18:22:00
    #32058526
Ax
Ax
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
Именно.
...
Рейтинг: 0 / 0
15.10.2002, 18:57:13
    #32058534
Garya
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
Мы уже аналогичные тесты проводили. Только засунули на RAMDisk не TempDB, а саму основную базу данных (благо, она не очень большая). Таки вот, по сравнению с БД на жестком диске существенного прироста скорости не заметили (не более 1%). Нас это сильно удивило, тем не менее факт есть факт. Видать, MS SQL Server гораздо оптимальнее использует оперативную память, нежели я о нем думал...
...
Рейтинг: 0 / 0
15.10.2002, 19:08:36
    #32058543
Александр Гладченко
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
Это действительно так, если вспомнить, что он кэширует данные (читай базы), планы процедур и многое другое... т.ч. лучше просто положить tempdb на другой диск, если она так уж мешает жить другим базам.
...
Рейтинг: 0 / 0
16.10.2002, 11:13:11
    #32058673
genie_vats
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
Доброе утро.
Вот провел маленький тест. Он наверное довольно синтетический - но хоть какое-то представление дает.
P3 933, 512 MB, Adv. Server, SQL 2000 Enterprise, IDE 5400
(рабочая лошадка (:
RamDiskNT v.1.4.12, создан диск Z - 100 MB (not-paged pool)

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
declare @n int, @D datetime

create table #tab1
	(
	RowID int identity,
	Field1 datetime,
	Field2 varchar( 100 )
	)

select @n= 1 , @D=getdate()

while @n< 100000 
begin
	insert into #tab1 (Field1, Field2)
	values ('2002.10.16', 'qwertyuiop[];lkjhgfdsazxcvbnm,./qwertyuiop[];lkjhgfdsazxcvbnm,./')
	set @n=@n+ 1 
end

select datediff(ms, @D, getdate())

drop table #tab1


И вот результаты (ms):

Код: plaintext
1.
2.
3.
4.
 1 . tempdb на RAM
 28010 ,  27940 ,  27640 

 2 . Все то же - только с обычной таблицей (tab1)
 75696 ,  75346 ,  75676 
...
Рейтинг: 0 / 0
16.10.2002, 11:24:25
    #32058679
nandji
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
))
ну правильно вставка в оперативную память наверное обязана быть быстрее чем на винт ...
а селекты ?
...
Рейтинг: 0 / 0
16.10.2002, 11:51:21
    #32058694
Andrey Max
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
Пользовал как-то RamDisk от SuperSpeed - триальный период. Перенес tempdb.

Особой разницы нет. Правда основная бд около 2 гиг. Да и запросов особо нет, чтоб милионы строк отсортированные и еще что-нибудь.

Однажды получил проблему - при старте SQL не смог найти устройство - старт обломался. Перегружаюсь не часто - но вот напоролся. Убрал этот ramDisk от греха подальше
...
Рейтинг: 0 / 0
16.10.2002, 13:48:46
    #32058753
genie_vats
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
Вот еще тест.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
declare @n int, @D datetime,  @D_total datetime, @S varchar( 64 )

create table tab1
	(
	RowID int identity,
	Field1 float,
	Field2 varchar( 64 )
	)

create table tab2
	(
	RowID int identity,
	Field1 float,
	Field2 varchar( 64 )
	)

set nocount on

select @n= 1 , @D=getdate(), @D_total=getdate(), @S='qwertyuiop[];lkjhgfdsazxcvbnm,./qwertyuiop[];lkjhgfdsazxcvbnm,./'

while @n< 100000 
begin
	insert into tab1 (Field1, Field2)
	values (sin(@n), @S)
	set @n=@n+ 1 
end
create index tab1_ind1 on tab1 (Field1)

select datediff(ms, @D, getdate())
set @D=getdate()

while @n> 1 
begin
	insert into tab2 (Field1, Field2)
	values (sin(@n), @S)
	set @n=@n- 2 
end
create index tab2_ind1 on tab2 (Field1)

select datediff(ms, @D, getdate())
set @D=getdate()

update tab2 set Field2='1234567890123456789012345678901234567890'
where (cast(RowID as numeric( 15 , 3 ))/ 2 -round(cast(RowID as numeric( 15 , 3 ))/ 2 , 0 ))= 0  and Field1> 0 . 2 

drop index tab1.tab1_ind1
drop index tab2.tab2_ind1

create index tab1_ind1 on tab1 (Field1)
create index tab2_ind1 on tab2 (Field1)

select *
from tab1 t1 inner join
	tab2 t2 on t1.Field1=t2.Field1
where t2.Field1 between  0 . 5  and  0 . 7 
order by t1.Field1

select datediff(ms, @D, getdate()), datediff(ms, @D_total, getdate())

drop table tab1
drop table tab2


Результаты

Код: plaintext
1.
2.
3.
 1 . #temptables
 7163 ;  3543 ;  1903 , 12610 
 2 . tables
 46116 ;  22050 ;  2243 ,  70410 
...
Рейтинг: 0 / 0
16.10.2002, 14:04:49
    #32058769
Garya
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
2 genie_vats. А вторые цифры в твоих тестах мерялись при возвращенной оперативной памяти SQL-серверу (которую под RAM-диск откусывали)?
...
Рейтинг: 0 / 0
16.10.2002, 14:17:28
    #32058773
genie_vats
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
Нет.

Код: plaintext
1.
2.
3.
4.
5.
Phisical Memory(K)
Total  522544 
Available  52248 
System Cache  118244 

Process sqlserver.exe  155570  K


Думаю памяти хватало. Но сейчас выключу RamDisk и попробую
...
Рейтинг: 0 / 0
16.10.2002, 14:22:42
    #32058777
KANDed
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
Ээээйййй! Выключай поосторожнее! Серверу Ето НЕ понравится!
...
Рейтинг: 0 / 0
16.10.2002, 15:58:00
    #32058829
Garya
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
Мы в основном проверяли на select-ах. При первом обращении может быть небольшое замедление. Но при последующих - все данные уже в кэше. По сравнению с RAM диском никакого ускорения не получается. Если памяти SQL-серверу отведено море, то он сам запихает в оперативку все, что ему нужно для быстрой работы.
Конечно же, на UPDATE и DELETE результат может быть другим. Но нас он интересовал меньше...
...
Рейтинг: 0 / 0
16.10.2002, 18:45:56
    #32058939
Александр Гладченко
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
А можно ещё журнал транзакций в ОЗУ засунуть... Например, сделать его фиксированным и маленьким, а после старта сервера присоединить к нему файл в памяти... Вот тогда всё залетает...
...
Рейтинг: 0 / 0
16.10.2002, 20:11:28
    #32058976
VAT
VAT
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
Кажется, интересная идея. При инсерте в tempdb транзакции в её лог пишутся на диск, а они там в принципе не нужны.
В BOL:
Place the tempdb database on a fast I/O subsystem to ensure good performance. Stripe the tempdb database across multiple disks for better performance. Use filegroups to place the tempdb database on disks different from those used by user databases.

Другая проблема в том, если места в tempdb не хватит. Но, наверное, можно добавить файл для роста на реальном диске.

Эх, если бы памяти побольше...
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / А можно tempdb на RamDisk засунуть (MS SQL 2000)? / 21 сообщений из 21, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]