Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Горячая тема (более 10 ответов) Как работает индекс в ИТЗ? (число прочтений - 2777 )
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 854
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Как работает индекс в ИТЗ?
27. Мая 2008 :: 12:54
Печать  
Что происходит с созданным индексом, когда в ИТЗ добавляются или удаляются строки? Его нужно вручную перестраивать или он автоматом изменяется?
  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как работает индекс в ИТЗ?
Ответ #1 - 27. Мая 2008 :: 13:01
Печать  
Автоматом.
Поэтому официально очень рекомендуется добавлять индексы уже после добавления/изменения строк, иначе при каждом добавлении будет некая переиндексация Печаль
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
alyuev
God Member
*****
Отсутствует


Гражданин Вселенной

Сообщений: 854
Местоположение: Одесса
Зарегистрирован: 07. Декабря 2007
Пол: Мужской
Re: Как работает индекс в ИТЗ?
Ответ #2 - 27. Мая 2008 :: 13:20
Печать  
А после каких методов ИТЗ обновляется индекс?
  

1C 7.7.025; 1C++ 3.2.4.3; Formex 2.0.5.94; 1sqlite
Наверх
IP записан
 
PVR
God Member
*****
Отсутствует



Сообщений: 622
Зарегистрирован: 19. Ноября 2007
Пол: Мужской
Re: Как работает индекс в ИТЗ?
Ответ #3 - 27. Мая 2008 :: 13:25
Печать  
alyuev писал(а) 27. Мая 2008 :: 13:20:
А после каких методов ИТЗ обновляется индекс?

Наверное после всех, изменяющих данные ИТЗ  Улыбка
  
Наверх
 
IP записан
 
varelchik
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 788
Зарегистрирован: 22. Мая 2006
Re: Как работает индекс в ИТЗ?
Ответ #4 - 27. Мая 2008 :: 13:38
Печать  
А почему бы не сделать как у XBase?
база огромная, а индекс при каждой новой записи не переиндексируется.
  
Наверх
 
IP записан
 
PVR
God Member
*****
Отсутствует



Сообщений: 622
Зарегистрирован: 19. Ноября 2007
Пол: Мужской
Re: Как работает индекс в ИТЗ?
Ответ #5 - 27. Мая 2008 :: 13:43
Печать  
varelchik писал(а) 27. Мая 2008 :: 13:38:
А почему бы не сделать как у XBase?
база огромная, а индекс при каждой новой записи не переиндексируется.


Поясни  Озадачен
  
Наверх
 
IP записан
 
varelchik
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 788
Зарегистрирован: 22. Мая 2006
Re: Как работает индекс в ИТЗ?
Ответ #6 - 27. Мая 2008 :: 14:04
Печать  
artbear писал(а) 27. Мая 2008 :: 13:01:
Автоматом.
Поэтому официально очень рекомендуется добавлять индексы уже после добавления/изменения строк, иначе при каждом добавлении будет некая переиндексация Печаль


Я это имел ввиду.
Если ИТЗ будет строк эдак на 100-200 тыщ так перендексация с несколькими индексами начнеть
устраивать хорошие тормоза.
Или я чет не правильно понял?
  
Наверх
 
IP записан
 
PVR
God Member
*****
Отсутствует



Сообщений: 622
Зарегистрирован: 19. Ноября 2007
Пол: Мужской
Re: Как работает индекс в ИТЗ?
Ответ #7 - 27. Мая 2008 :: 14:17
Печать  
varelchik писал(а) 27. Мая 2008 :: 14:04:
Я это имел ввиду.
Если ИТЗ будет строк эдак на 100-200 тыщ так перендексация с несколькими индексами начнеть
устраивать хорошие тормоза.
Или я чет не правильно понял?

Это так! удаляешь индексы, меняешь данные, индексируеш.

поясни XBase, резве он не перестраевает индекс после добавления или изменения полей?
  
Наверх
 
IP записан
 
varelchik
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 788
Зарегистрирован: 22. Мая 2006
Re: Как работает индекс в ИТЗ?
Ответ #8 - 27. Мая 2008 :: 14:21
Печать  
На сколько я понимаю он не переиндексирует всю базу а только обновляет сам индекс(индексы) не переиндексируя всю бавзу.
Если ИТЗ работает не так, то надо шо-то решать.
Может я и неправ.
Я в ИТЗ на больших объемах не добавлял записи при уже созданном индексе(индексах).
Индексы создавал только когда набор данных уже создан.
  
Наверх
 
IP записан
 
PVR
God Member
*****
Отсутствует



Сообщений: 622
Зарегистрирован: 19. Ноября 2007
Пол: Мужской
Re: Как работает индекс в ИТЗ?
Ответ #9 - 27. Мая 2008 :: 14:36
Печать  
varelchik писал(а) 27. Мая 2008 :: 14:21:
На сколько я понимаю он не переиндексирует всю базу а только обновляет сам индекс(индексы) не переиндексируя всю бавзу.
Если ИТЗ работает не так, то надо шо-то решать.
Может я и неправ.
Я в ИТЗ на больших объемах не добавлял записи при уже созданном индексе(индексах).
Индексы создавал только когда набор данных уже создан.

Вот, индексы он перестраивает!  Улыбка

Но возможно в ИТЗ более сложное индексное дерево, в котором тяжко поменять несколько записей, а не все дерево. Так как при множественном изменении данных очень тормозит, без явного удаления индекса  Печаль
  
Наверх
 
IP записан
 
varelchik
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 788
Зарегистрирован: 22. Мая 2006
Re: Как работает индекс в ИТЗ?
Ответ #10 - 27. Мая 2008 :: 14:43
Печать  
Вот потому Артур и говорит что индексы строить надо уже после получения нужной Таблицы.
Я склоняюсь к тому же мнению.
Потому как ИТЗ использують только для работы с полученными данными от прямых запросов.
И добалением или удалением записей в ИТЗ уже не занимаюсь.
А только накладую нужный индекс на ИТЗ и получаю выборку по нему.
Так я понимаю экономически выгоднее.
Да и на сколько я понимаю ИТЗ в принципе делалось именно с этой целью, а не быть как говориться накопилелем данных (вернее базой данных).
Это мое личное мнение.
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать