powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Слабые стороны Cache & SQL
25 сообщений из 273, страница 2 из 11
Слабые стороны Cache & SQL
    #33730194
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторMS SQL-ю можно указать сколько в процентах использовать места в страницах-листьях для кластерного индекса.
При вставке запись делается на страницу с близкими значениями кластерного ключа, если не хватает места, то страница разделяется на две и идет добавление на одну из них.

внутри страницы судя по BOL физической пересортировки не делается.

ИТОГ: перестройка таблицы с кластерным индексом идет только тогда, когда запись не влезает на страницу. при этом происходит расщепление страницы и соответствующая перестройка индекса.
Спасибо за обьяснение. Получается основное отличие от ASA - у нас страница не будет расщепляться, просто если запись не входит по размерам на все подходящие страницы, она уйдет на другую или новую страницу. Ну и соотвествующе и FILL FACTOR в ASA из за этого в индексах не предусмотрено.

--
www.rusug.ru - портал русскоязычной группы пользователей Sybase
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33730299
Sergei Obrastsov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SiDen
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
данные
 148223 , 8125 	 148150 , 3125 	H	 13 . 01 . 2006   23 : 36 : 01 
 148223 , 8125 	 148194 , 5625 	H	 14 . 01 . 2006   23 : 36 : 00 
> + 44 

 20715 , 6875 	 20707 , 9375 	H	 13 . 01 . 2006   23 : 36 : 01 
 20715 , 6875 	 20712 , 375 	H	 14 . 01 . 2006   23 : 36 : 00 
> + 5 

 52531 , 5 	 51845 , 625 	V	 13 . 01 . 2006   23 : 36 : 01 
 52531 , 5 	 52242 , 0625 	V	 14 . 01 . 2006   23 : 36 : 00 
> + 397 

 310500 	 310115 , 8125 	F	 13 . 01 . 2006   23 : 36 : 01 
 311500 	 311230 , 125 	F	 14 . 01 . 2006   23 : 36 : 00 
> + 1115 

H,V - индексы

итого, +1561Mb в сутки для 20 млн. записей, из них индексы занимают
446Mb

посчитаем: 446 / 20 = 22.3 байта на индекс
даже с учетом сжатия маловато вроде

теперь данные: 1115 / 20 = 55.75 байт на запись
и тоже вроде как маловато получается. хотя может
там одни числа?

может я что-то не так считаю?

С уважением. Сергей
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33730318
MX -- ALEX
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sergei Obrastsov ASCRUS MSSQL BOLClustered tables are tables that have a clustered index.
The data rows are stored in order based on the clustered index key. The index is implemented as a B-tree index structure that supports fast retrieval of the rows based on their clustered index key values. The pages in each level of the index, including the data pages in the leaf level, are linked in a doubly-linked list, but navigation from one level to another is done using key values.

аж на душе потеплело, так все знакомо. именно так организованы
структуры в M, ну и соответственно в том Cache, который здесь так дружно
не любят. :)

С уважением. Сергей
может в ASA внутри MUMPS сидит :)

уж очень схема связей идентична
doubly-linked list

интересно про ASA почитать
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33730329
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторможет в ASA внутри MUMPS сидит :)

уж очень схема связей идентична
doubly-linked list

интересно про ASA почитать
Гм, цитата была взята из BOL для MSSQL 2000. Так что лучше читать про MSSQL ;)

--
www.rusug.ru - портал русскоязычной группы пользователей Sybase
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33730368
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ASCRUS авторможет в ASA внутри MUMPS сидит :)

уж очень схема связей идентична
doubly-linked list

интересно про ASA почитать
Гм, цитата была взята из BOL для MSSQL 2000. Так что лучше читать про MSSQL ;)
Да они хоть бы что-то читали... В-дерево - довольна тривиальная вещь и наивно думать что она есть только в кеше.
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33730377
Iura
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sergei Obrastsov SiDen
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
данные
 148223 , 8125 	 148150 , 3125 	H	 13 . 01 . 2006   23 : 36 : 01 
 148223 , 8125 	 148194 , 5625 	H	 14 . 01 . 2006   23 : 36 : 00 
> + 44 

 20715 , 6875 	 20707 , 9375 	H	 13 . 01 . 2006   23 : 36 : 01 
 20715 , 6875 	 20712 , 375 	H	 14 . 01 . 2006   23 : 36 : 00 
> + 5 

 52531 , 5 	 51845 , 625 	V	 13 . 01 . 2006   23 : 36 : 01 
 52531 , 5 	 52242 , 0625 	V	 14 . 01 . 2006   23 : 36 : 00 
> + 397 

 310500 	 310115 , 8125 	F	 13 . 01 . 2006   23 : 36 : 01 
 311500 	 311230 , 125 	F	 14 . 01 . 2006   23 : 36 : 00 
> + 1115 

H,V - индексы

итого, +1561Mb в сутки для 20 млн. записей, из них индексы занимают
446Mb

посчитаем: 446 / 20 = 22.3 байта на индекс
даже с учетом сжатия маловато вроде

теперь данные: 1115 / 20 = 55.75 байт на запись
и тоже вроде как маловато получается. хотя может
там одни числа?

может я что-то не так считаю?

С уважением. Сергей

Народ когда такие сравнения делаете, пожалуйста сначала седала truncate log а потом dbcc shrink database. Результаты вас приятно удивят.

Во вторых страшен как размер индекса, так и высота дерева, которая используется при построении индекса.
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33730404
ЛП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSuperВ-дерево - довольна тривиальная вещь и наивно думать что она есть только в кеше.
Судя по фразе автора топика ( "... Полагаю, что при такой нагрузке Cache будет жить спокойней. Проблема для SQL будет в нагрузке на пересчет индексного дерева..." ) некоторые думают, что как раз таки в кеше деревьев нет никаких, стал быть и перестраивать нечего. Или, быть может, думают, что дерево в кеше - волшебное, самоперестраивающееся.
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33730515
Sergei Obrastsov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛП SergSuperВ-дерево - довольна тривиальная вещь и наивно думать что она есть только в кеше.
Судя по фразе автора топика ( "... Полагаю, что при такой нагрузке Cache будет жить спокойней. Проблема для SQL будет в нагрузке на пересчет индексного дерева..." ) некоторые думают, что как раз таки в кеше деревьев нет никаких, стал быть и перестраивать нечего. Или, быть может, думают, что дерево в кеше - волшебное, самоперестраивающееся.
некоторые думают, что Cache - это такая же колбаса, только в другой обертке, отсюда все непонимание. B-дерево, действительно, вещь тривиальная, не спорю, но ведь используют же. значит что-то в нем есть.
причем используют именно там "где рвется". я прав?

С уважением. Сергей
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33730535
MX -- ALEX
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SergSuper ASCRUS авторможет в ASA внутри MUMPS сидит :)

уж очень схема связей идентична
doubly-linked list

интересно про ASA почитать
Гм, цитата была взята из BOL для MSSQL 2000. Так что лучше читать про MSSQL ;)
Да они хоть бы что-то читали... В-дерево - довольна тривиальная вещь и наивно думать что она есть только в кеше.

А дерево где -
в моем посте нет про дерево
.................

..мальчики кровавые в глазах
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33730537
Мясник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergei Obrastsov........
некоторые думают, что Cache - это такая же колбаса, только в другой обертке, отсюда все непонимание. .......


Сергей, с интересом слежу за обсуждением. Слово "колбаса" впервые встретилось в Вашем посте. Есля я не прав, приведите ссылку, кто думает, что Cache - это колбаса.
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33730623
Sergei Obrastsov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мясник Sergei Obrastsov........
некоторые думают, что Cache - это такая же колбаса, только в другой обертке, отсюда все непонимание. .......

Сергей, с интересом слежу за обсуждением. Слово "колбаса" впервые встретилось в Вашем посте. Есля я не прав, приведите ссылку, кто думает, что Cache - это колбаса.
впервые. но оно не главная значимая часть этого предложения, главная -
"такая же" :)

С уважением. Сергей

P.S. ну что, блин, за детство?
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33730634
SiDen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей, речь не о 20, а о 2 млн, внимательнее плз
To lura: 1. лог приведен отдельно (опять же внимательнее), 2. вы пробовали шринкать полутеррабайтные базы на системах 24х7? Занимательное однако занятие :)
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33730723
Sergei Obrastsov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SiDenСергей, речь не о 20, а о 2 млн, внимательнее плз
To lura: 1. лог приведен отдельно (опять же внимательнее), 2. вы пробовали шринкать полутеррабайтные базы на системах 24х7? Занимательное однако занятие :)
а действительно. прошу прощения
теперь верю

С уважением. Сергей
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33730850
Iura
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SiDenСергей, речь не о 20, а о 2 млн, внимательнее плз
To lura: 1. лог приведен отдельно (опять же внимательнее), 2. вы пробовали шринкать полутеррабайтные базы на системах 24х7? Занимательное однако занятие :)

В таких случаях полгаюа делают shrink file. А кол-во файлов там наверняка больше чем 2. Не разумно в таком случае в одном файле хранить всю инфо :)

В зависиомост от модели базы данных MSSQL FULL or Simple, shrink приводит к совершенно разным результатм.

А шринкать в случае FULL обязательно надо, а то база будет разрастаться, не только от инсерт но и от delet & update.
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33730931
LittleCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛПИли, быть может, думают, что дерево в кеше - волшебное, самоперестраивающееся.
Вот именно, самоперестраивающееся. При вставке в любое место дерева изменяется максимум несколько блоков.
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33730936
Фотография ChA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IuraВ зависиомост от модели базы данных MSSQL FULL or Simple, shrink приводит к совершенно разным результатм.Что значит "совершенно разные результаты" ? Можно подробнее ?
IuraА шринкать в случае FULL обязательно надо, а то база будет разрастаться, не только от инсерт но и от delet & update.База будет "разрастаться" от delete ? Вы подразумеваете транзакционный лог ? А зачем "шринкать" ? Чтобы потом сервер опять корячился снова выделяя место под тот же самый лог ? В принципе, есть еще и другие способы создавать проблемы серверу и его пользователям.
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33730989
Andreww
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 LittleCat


>>Вот именно, самоперестраивающееся. При вставке в любое место дерева изменяется максимум несколько блоков.

Так там не В*-дерево ?

А что тогда ?

Ссылочку на алгоритм приведёте. Интересно посмотреть....
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33731110
Iura
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ChA IuraВ зависиомост от модели базы данных MSSQL FULL or Simple, shrink приводит к совершенно разным результатм.Что значит "совершенно разные результаты" ? Можно подробнее ?
IuraА шринкать в случае FULL обязательно надо, а то база будет разрастаться, не только от инсерт но и от delet & update.База будет "разрастаться" от delete ? Вы подразумеваете транзакционный лог ? А зачем "шринкать" ? Чтобы потом сервер опять корячился снова выделяя место под тот же самый лог ? В принципе, есть еще и другие способы создавать проблемы серверу и его пользователям.

На самом деле зависит от логики сервера. Как часто происходит delete & update & insert. Если очень часто, то помимо того, что у тебя лог файл разрастется и файл данных, когда ты будешь делать любые операции - у тебя в такой базе число операций поиска и чтения страниц с диска увеличится. Ведь на диске не все последоавтельно находится, и нужна инфа не в одной странице находится.

А чтобы, сервер не мучался, ты делаешь shrink до задоного предела. Ты должен расчитать, сколько тебе нужно места в запасе на неделю и столько места хранить. А все лишнее чистить.
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33731146
Фотография ChA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IuraНа самом деле зависит от логики сервера. Как часто происходит delete & update & insert. Если очень часто, то помимо того, что у тебя лог файл разрастется и файл данных, когда ты будешь делать любые операции - у тебя в такой базе число операций поиска и чтения страниц с диска увеличится. Ведь на диске не все последоавтельно находится, и нужна инфа не в одной странице находится.

А чтобы, сервер не мучался, ты делаешь shrink до задоного предела. Ты должен расчитать, сколько тебе нужно места в запасе на неделю и столько места хранить. А все лишнее чистить.Если Вы считате, что ответили на прямо поставленные вопросы, то вынужден огорчить, это не так. Вы браво продолжаете изрекать банальности, не считая откровенного, очень мягко говоря, непонимания. Будьте любезны ответить на более простые вопросы. Какой у Вас опыт работы с MS SQL Server-ом ? А вообще опыт работы с СУБД ?
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33731151
c127
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SergSuper ASCRUS авторможет в ASA внутри MUMPS сидит :)

уж очень схема связей идентична
doubly-linked list

интересно про ASA почитать
Гм, цитата была взята из BOL для MSSQL 2000. Так что лучше читать про MSSQL ;)
Да они хоть бы что-то читали... В-дерево - довольна тривиальная вещь и наивно думать что она есть только в кеше.
Это понятно, когда ничего кроме кеша не знаешь, то кажется что все что есть в мире - взято из кеша.


iliker c127Убить при можно любую систему, дело только в наличии желания. Из хелпа по АСА9
CLUSTERED keyword
The CLUSTERED attribute causes table rows to be stored in an approximate key order corresponding to the index . While the server makes an attempt to preserve key order, total clustering is not guaranteed.
If a clustered index exists, the LOAD TABLE statement inserts rows into the table in the order of the index key, and the INSERT statement attempts to put new rows on the same table page as the one containing adjacent rows, as defined by the key order.

Это ж оно пыталось перестроить таблицу (не индекс, а именно таблицу) каждый раз при добавлении новой записи со случайным значением в индекированном поле. Ну может не каждой, но периодически перестраивало.
Обратите внимание While the server makes an attempt to preserve key order, total clustering is not guaranteed.
Не перестраивает asa каждый раз таблицу.Перестройка делается ручками при помощи reorganize table.
А MSSQL, похоже, перестраивает каждый раз.(маловато информации в MSDN)
MSDN 1
MSDN 2

А где я сказал, что ПЕРЕСТРАИВАЕТ каждый раз?

А какое отношение МСДН имет к АСА?


Iura c127
Это ж оно пыталось перестроить таблицу (не индекс, а именно таблицу) каждый раз при добавлении новой записи со случайным значением в индекированном поле. Ну может не каждой, но периодически перестраивало.

Вот вот! Но и индекс тоже, чтобы хранить ссылку на страницу
Уважаемый товарищ, перестроить индекс это совсем не то же самое что перестроить таблицу.

Кластерный индекс в данной ситуации совершенно не подходит, организовав кластерный индекс Вы сделали откровенную глупость. В этом нет ничего страшного, Вы же не администратор СКЛ серверов, но вот только нужно не выкручиваться, а признать это.
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33731189
c127
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Iura
На самом деле зависит от логики сервера. Как часто происходит delete & update & insert. Если очень часто, то помимо того, что у тебя лог файл разрастется и файл данных, когда ты будешь делать любые операции - у тебя в такой базе число операций поиска и чтения страниц с диска увеличится.
Бред какой-то. Физически СКЛ сервер записи не удаляет, это неэффективно, только помечает как удаленные, поэтому размер базы при делитах не меняется. Я удивлюсь, если в КЕШ-е не аналогично.

Если был делит, потом инсерт, то запись может попасть на место удаленной, размер базы не изменится. Поэтому файл не обязательно разрастается.

Лог растет, но на то он и лог, туда пишется большинство операций и ничего само по себе не удаляется по определению. Правда не все операции пишутся в лог, truncate table, например, в АСА не пишется. Если Вы так озабочены размером лога, то его можно отключить, но делать это по понятным причинам не рекомендуется.

Iura
А чтобы, сервер не мучался, ты делаешь shrink до задоного предела. Ты должен расчитать, сколько тебе нужно места в запасе на неделю и столько места хранить. А все лишнее чистить.
Чушь.
Во-первых скорость работы сервера от размера файлов БД не зависит, поскольку, как Вы правильно сказали, информация на современных дисках хранится не последовательно. Поэтому ужимать файлы БД не обязательно, если есть место на диске. В утилитах АСА шринка по-моему вообще нет, по крайней мере у меня ни разу в жизни не возникала необходимость его использовать, при обычной работе пустых мест в файле БД не так много.

Во-вторых база с необходимостью растет только при инсертах и отсутствии пустых мест в таблицах. Чудес же не бывает, нужно где-то хранить информацию. Или может КЕШ способен все на свете засунуть в пространство фиксированного размера, например в один байт?
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33731316
Sergei Obrastsov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
c127Кластерный индекс в данной ситуации совершенно не подходит, организовав кластерный индекс Вы сделали откровенную глупость. В этом нет ничего страшного, Вы же не администратор СКЛ серверов, но вот только нужно не выкручиваться, а признать это.
вот я уж точно не администратор СКЛ серверов, а потому просто спрошу: может Вы мне подскажете как обойтись без организации "кластерных
индексов" в таблице типа

A B C D E F,

где при выборке на любое поле может придти условие вида

1. VAL = x1,x2,x3...

или

2. x1<VAL<x2

при количестве записей в таблице ~90 млн.
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33731324
Пьяный Лох
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Sergei Obrastsov
При чем здесь кластерные индексы?
Вы вообще понимаете о чем говорите?
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33731334
Sergei Obrastsov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пьяный Лох2 Sergei Obrastsov
При чем здесь кластерные индексы?
Вы вообще понимаете о чем говорите?
свихнешься тут с вами, все перепутал, sorry :)
вопрос снимается
...
Рейтинг: 0 / 0
Слабые стороны Cache & SQL
    #33731335
Пьяный Лох
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergei Obrastsovсвихнешься тут с вами
Ну вот, мы еще и виноваты :)

Sergei Obrastsovвсе перепутал, sorry :)
Ничего, приходите еще :)
...
Рейтинг: 0 / 0
25 сообщений из 273, страница 2 из 11
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Слабые стороны Cache & SQL
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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