Re: ИндексЫ

2011-09-19 Пенетрантность Sergey Mereutsa
Привет!

 Подскажите можно сделать индекс не полю а например на основании udf, которая
 будет обрабатывать блоб?

 Можно сделать так что бы не все записи добавлялась в индекс?

 Ответ на вопрос зачем: например в таблице очень много записей и нужно
 искать только небольшое количество по специфичному индексу, если будет
 индекс построен по всей таблице, то он просто будет слишком большим и
 главное он такой совсем не нужен.

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

Индексы по выражениям строить можно и очень часто они помогают.

-- 
Best regards,
 Sergeymailto:gebele...@gmail.com




RE: ИндексЫ

2011-09-19 Пенетрантность Михаил Викторович
Вы не поняли, повторю.

Допустим есть в таблице 1 записей.
Если я строю по ней индекс, то в индекс будут добавлены все записи из
таблицы, т.е. все 1.
Мне нужно поострить индекс в который будут добавлены, например только 7%, от
общего количества записей. Просто остальные записи для поиска по этому
индексу не нужны. Наличие не нужных записей в индексе очень заметно тормозит
вставку новых записей в таблицу.

-Original Message-
From: ru-firebird@googlegroups.com [mailto:ru-firebird@googlegroups.com] On
Behalf Of Sergey Mereutsa
Sent: Monday, September 19, 2011 1:03 PM
To: ru-firebird@googlegroups.com
Subject: Re: ИндексЫ

Привет!

 Подскажите можно сделать индекс не полю а например на основании udf,
которая
 будет обрабатывать блоб?

 Можно сделать так что бы не все записи добавлялась в индекс?

 Ответ на вопрос зачем: например в таблице очень много записей и нужно
 искать только небольшое количество по специфичному индексу, если будет
 индекс построен по всей таблице, то он просто будет слишком большим и
 главное он такой совсем не нужен.

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

Индексы по выражениям строить можно и очень часто они помогают.

-- 
Best regards,
 Sergeymailto:gebele...@gmail.com



RE: ИндексЫ

2011-09-19 Пенетрантность Dmitry Beloshistov
Привет!


Мне нужно поострить индекс в который будут добавлены, например только 7%, от
общего количества записей. Просто остальные записи для поиска по этому
индексу не нужны. Наличие не нужных записей в индексе очень заметно тормозит
вставку новых записей в таблицу.

Ну а вынести эти 7% в отдельную таблицу и построить уже по ней правильные 
индексы никак? 


WBR, Dmitry Beloshistov AKA [-=BDS=-]






Re: ИндексЫ

2011-09-19 Пенетрантность dennis redozubov

19.09.2011 14:33, Михаил Викторович пишет:

Мне нужно поострить индекс в который будут добавлены, например только 7%, от
общего количества записей. Просто остальные записи для поиска по этому
индексу не нужны. Наличие не нужных записей в индексе очень заметно тормозит
вставку новых записей в таблицу.
Ну, так и надо сделать отдельную таблицу, связанную 1-к-1 с исходной, 
куда добавлять

ключи требуемых записей, а в запросах на выборку эти таблицы джойнить.

--
С уважением,
Денис Редозубов




RE: ИндексЫ

2011-09-19 Пенетрантность Михаил Викторович
Решение связанное с разбиением таблиц очевидное, и не интересное совсем.
Вопрос про индексы остался открытым или твердое нет?

-Original Message-
From: ru-firebird@googlegroups.com [mailto:ru-firebird@googlegroups.com] On
Behalf Of dennis redozubov
Sent: Monday, September 19, 2011 2:52 PM
To: ru-firebird@googlegroups.com
Subject: Re: ИндексЫ

19.09.2011 14:33, Михаил Викторович пишет:
 Мне нужно поострить индекс в который будут добавлены, например только 7%,
от
 общего количества записей. Просто остальные записи для поиска по этому
 индексу не нужны. Наличие не нужных записей в индексе очень заметно
тормозит
 вставку новых записей в таблицу.
Ну, так и надо сделать отдельную таблицу, связанную 1-к-1 с исходной, 
куда добавлять
ключи требуемых записей, а в запросах на выборку эти таблицы джойнить.

-- 
С уважением,
Денис Редозубов



Re: ИндексЫ

2011-09-19 Пенетрантность Oleg Matveyev

Решение связанное с разбиением таблиц очевидное, и не интересное совсем.


есть два варианта:
а) разбить таблицу на две одинаковых, в одной 7%, в другой 93%
б) сделать еще одну таблицу, в которой хранится только одно поле - PK из 
большой таблицы.

те самые 7% PK

В вашем случае в таблице лучше сделать два поля - PK, и значение, которое 
выдает udf






Re: ИндексЫ

2011-09-19 Пенетрантность Khorsun Vlad

Михаил Викторович ...

Подскажите можно сделать индекс не полю а например на основании udf, которая
будет обрабатывать блоб?


   Да.


Можно сделать так что бы не все записи добавлялась в индекс?


   Нет.

--
Хорсун Влад