powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / А можно tempdb на RamDisk засунуть (MS SQL 2000)?
21 сообщений из 21, страница 1 из 1
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
    #32058418
genie_vats
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
Вроде быстродействие должно повысится...
(:
...
Рейтинг: 0 / 0
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
    #32058422
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В SQL 2000 эта установка больше не поддерживается
...
Рейтинг: 0 / 0
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
    #32058447
genie_vats
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В \r
/topic/9883\r
Вы писали - tempdb на отдельном диске. Как? Не получается в sysfiles изменить путь для tempdb. Или в SQL 2000 и этого нельзя никак?
...
Рейтинг: 0 / 0
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
    #32058453
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
См. здесь про перемещение Tempdb
...
Рейтинг: 0 / 0
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
    #32058465
Фотография KANDed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Glory, он не про память спрашивает, а про эмулятор диска в памяти, типа RamDiskNT 1.3 for WinNT/2000.
Честно говоря, не пробовал, а интересно было бы узнать, позволяет ли SQL использовать такие диски. Хотя, считаю, что вряд ли сервер ускорится. Память-то у него забирать придется. Хотя, как знать... Разные режимы работы могут быть.
...
Рейтинг: 0 / 0
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
    #32058471
genie_vats
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо Glory, получилось!
KANDed прав - перенес tempdb на RamDisk. Буду испытывать на предмент увеличения производительности. (:
...
Рейтинг: 0 / 0
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
    #32058475
Фотография KANDed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Genie_vats, получишь результаты, поделись с Форумом!
...
Рейтинг: 0 / 0
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
    #32058508
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Йоу, диджей.
Действительно не понял, думал речь идет про установки от SQL 6.5.
Теоритически, если памяти настолько много, что сам SQL не может ее использовать, то может быть и будет выигрыш.
Хотя сейчас скорее встану на позицию KANDed-а.
Получите результаты - напишите обязательно
...
Рейтинг: 0 / 0
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
    #32058526
Ax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Именно.
...
Рейтинг: 0 / 0
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
    #32058534
Фотография Garya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мы уже аналогичные тесты проводили. Только засунули на RAMDisk не TempDB, а саму основную базу данных (благо, она не очень большая). Таки вот, по сравнению с БД на жестком диске существенного прироста скорости не заметили (не более 1%). Нас это сильно удивило, тем не менее факт есть факт. Видать, MS SQL Server гораздо оптимальнее использует оперативную память, нежели я о нем думал...
...
Рейтинг: 0 / 0
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
    #32058543
Фотография Александр Гладченко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это действительно так, если вспомнить, что он кэширует данные (читай базы), планы процедур и многое другое... т.ч. лучше просто положить tempdb на другой диск, если она так уж мешает жить другим базам.
...
Рейтинг: 0 / 0
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
    #32058673
genie_vats
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброе утро.
Вот провел маленький тест. Он наверное довольно синтетический - но хоть какое-то представление дает.
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
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
    #32058679
nandji
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
))
ну правильно вставка в оперативную память наверное обязана быть быстрее чем на винт ...
а селекты ?
...
Рейтинг: 0 / 0
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
    #32058694
Andrey Max
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пользовал как-то RamDisk от SuperSpeed - триальный период. Перенес tempdb.

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

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

Код: 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
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
    #32058769
Фотография Garya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 genie_vats. А вторые цифры в твоих тестах мерялись при возвращенной оперативной памяти SQL-серверу (которую под RAM-диск откусывали)?
...
Рейтинг: 0 / 0
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
    #32058773
genie_vats
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет.

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

Process sqlserver.exe  155570  K


Думаю памяти хватало. Но сейчас выключу RamDisk и попробую
...
Рейтинг: 0 / 0
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
    #32058777
Фотография KANDed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ээээйййй! Выключай поосторожнее! Серверу Ето НЕ понравится!
...
Рейтинг: 0 / 0
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
    #32058829
Фотография Garya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мы в основном проверяли на select-ах. При первом обращении может быть небольшое замедление. Но при последующих - все данные уже в кэше. По сравнению с RAM диском никакого ускорения не получается. Если памяти SQL-серверу отведено море, то он сам запихает в оперативку все, что ему нужно для быстрой работы.
Конечно же, на UPDATE и DELETE результат может быть другим. Но нас он интересовал меньше...
...
Рейтинг: 0 / 0
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
    #32058939
Фотография Александр Гладченко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А можно ещё журнал транзакций в ОЗУ засунуть... Например, сделать его фиксированным и маленьким, а после старта сервера присоединить к нему файл в памяти... Вот тогда всё залетает...
...
Рейтинг: 0 / 0
А можно tempdb на RamDisk засунуть (MS SQL 2000)?
    #32058976
VAT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кажется, интересная идея. При инсерте в 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
21 сообщений из 21, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / А можно tempdb на RamDisk засунуть (MS SQL 2000)?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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