Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » InterBase и FireBird: вопросы по работе и их решение

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104

Открыть новую тему     Написать ответ в эту тему

salexn1



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ant0ni02004
Ну оракл тоже пока напильником-потом надфилем-потом нулевкой не пройдешься может выдавать не самый оптимальный вариант.
Но вот если все подтюнить - насобирать статистику и прочее - летает!

Всего записей: 502 | Зарегистр. 21-02-2008 | Отправлено: 16:51 13-06-2012
miwa

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
delover

Цитата:
 
Двоешники. Я вам толдычу что такое индекс - я то думаю со своим топорным мозгом и бедным запасом алгоритмов вызову другую реакцию.  

Прочти для начала сам, что такое индекс в базах данных вообще, потом хоть что-то по теме ФБ, прежде чем вываливать на форум кучу несвязного бреда, отличник ты наш.
 

Цитата:
Пример данных с индексами без любых компонентов баз данных.

Какое отношение вообще имеют никому не известные библиотеки к организации индексов в файрберде?

Всего записей: 455 | Зарегистр. 10-10-2004 | Отправлено: 17:34 13-06-2012
AnGo



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Не в обиду delover будет спрошено, я один такой тупой, что практически не понимаю его размышления или есть ещё на форуме такие тугодумы?
Просто у меня после пары первых предложений его очередного поста соображалка отключается.

Всего записей: 1078 | Зарегистр. 07-07-2002 | Отправлено: 17:44 13-06-2012 | Исправлено: AnGo, 17:47 13-06-2012
salexn1



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AnGo
+1
 
Поначалу у меня складывалось впечатление, что это гугл перевод... может так оно и есть... но читать этот поток сознания просто не реально...

Всего записей: 502 | Зарегистр. 21-02-2008 | Отправлено: 17:58 13-06-2012 | Исправлено: salexn1, 17:59 13-06-2012
ant0ni02004

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AnGo
salexn1
у меня тоже, но оказалось, что речь шла об неких индексах, совершенно к ФБ не относящихся и вообще о другой БД

Всего записей: 442 | Зарегистр. 26-10-2004 | Отправлено: 18:54 13-06-2012
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Повторюсь - двоешники.
AnGo

Цитата:
 не понимаю его размышления

Вы тут с птицами разберитесь кто гадкий утёнок а кто местные. Если не доверяете писать демку могу заказать студенту - сделает за пару суток. (возможно с самокритикой перегибаю). Я то гадкий, но в DECIMAL(8,2) тоже плаваю.
 
salexn1

Цитата:
 читать этот поток сознания

За этим потоком реальный человек в трезвом уме (, который незнает чего он больше хочет - чтобы рубордовцы были асами индексов или чтобы сервера были скоростными), однако в течении потока сознания (все промежуточные посты) нет ниодного вразумительного замечания что автор был неправ. "Ты знаешь я читал Утреннюю Зарю Ницше, почти за 10 минут прочитал - ничё интересного - поток сознания... Ва прочитал сценарий Михалкова, это клёвая тема но я все равно не всё понял..."
 
ant0ni02004
О, сказка про тридевятое царство которое очень много стоит... Переписывать запрос с нуля это самое эффективное средство, ну может исключая Оракл. Пользователю всегда импонирует игра в которой пользователь идиот способный угадать под каким колпачком шарик. Вспоминая что Посгрест иногда лучше Мускулов, потягиваясь от уверенности что Майкрософт стабилен, понимая, что за последние 5 лет он впервые скачал новый сервер SQL. Из того что он знал про физику индексов решил чтото найти нового - за последние 20 лет всё так же плохо - нет такой кнопки нигде - хоть тресни.
 
 
Добавлено:
Кстати можно задавать вопросы если не боитесь быть заклёванными, так уж комуто есть дело. Хе-хе.
 
Добавлено:
Да и предлагаю не трогать эту тему 1 год. Было бы прикольно если бы странички можно было прочесть через год два.

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 19:56 13-06-2012 | Исправлено: delover, 00:39 27-07-2012
ant0ni02004

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
delover

Цитата:
мой vdb сделает тоже что IB в 100 раз быстрее

сделает всё то же что умеет делать ФБ или что-то одно? (а остальное медленнее )
или упадёт в 100 раз быстрее лучше детально объяснить что вы имеете в виду
 

Цитата:
Пользователю всегда импонирует игра в которой пользователь идиот способный угадать под каким колпачком шарик

ну не то чтобы совсем с нуля переписывать, а самому пораскинуть мозгами как должны выбираться данные и соотв. этому переписать запрос. дело ведь не в физике индексов(по вашей терминологии), а в том какие индексы, как и в каком порядке применять при выборке
 
ок, ФБ, предположим обошли вы в 100раз, а если сравнить с Postgres, MSSQL, MySQL - какой выигрыш предполагается?

Всего записей: 442 | Зарегистр. 26-10-2004 | Отправлено: 20:38 13-06-2012
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ant0ni02004

Цитата:
будет демка мой vdb сделает

Немного погорячился, у меня не готов логотип, демки не будет в течении года двух.
 

Цитата:
а в том какие индексы, как и в каком порядке применять при выборке

Истинные слова художника, а не сантехника которому нужен ключь на 80.

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 21:14 13-06-2012
ant0ni02004

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
delover

Цитата:
демки не будет в течении года двух

вы так и не объяснили с чем вы тягаться собираетесь с ФБ эти 2 года - выборка из одной таблицы?

Цитата:
сантехника которому нужен ключь на 80

ну так ФБ есть SQL-БД прежде всего. вот нас и интересует в первую очередь как оно запросы выполняет, особенно ко многим таблицам, с аналитикой, группировками, функциями. не говоря уже о транзакциях, триггерах, процедурах, UDF, бекапах, итд
 
а то ж есть еще всякие FVMas да TJ7 (не к ночи будь помянуты)...

Всего записей: 442 | Зарегистр. 26-10-2004 | Отправлено: 21:31 13-06-2012 | Исправлено: ant0ni02004, 21:36 13-06-2012
miwa

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ant0ni02004
Есть мысль, что мы имеем честь лицезреть еще одного автора TJ7, который знает только слово "индекс", а обо всем остальном, упомянутом и не упомянутом вами, не имеет ни малейшего понятия.
 
delover
Душевно вас прошу, создайте отдельную тему, в который вы будете просвещать людей о работе индексов, и не мусорьте в текущей. Пожалуйста.

Всего записей: 455 | Зарегистр. 10-10-2004 | Отправлено: 09:30 14-06-2012
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
miwa

Цитата:
и не мусорьте в текущей.  

Передам Ваши слова ФБ. Пусть действительно не мусорит временем.
 
ant0ni02004

Цитата:
в первую очередь

На моём счёте в первую очередь деревня которая не слышала про 3ю оперецию над индексами - парное катание. В библиотеке vdb этого нет, клиенты не просили, а в интернете не всегда актуальное vdb. Упрёк на счёт не известной библиотеки упирается в трудности связанные с незнанием современных школьников трудов Толстова. Я ждал что мне кто нибудь спросит а как ты будешь оператор IN вычислять... Не случилось.
 

Цитата:
с аналитикой, группировками, функциями.

Тут всё банально - я огорчу Вас. Мои клиенты бывает предоставляют исходный код и я там балуюсь со скоростями. То есть всё ручками. То что сервер умеет автоматом делать, всё доступно только ручками. Корявость вылазит даже когда я ещё не приступил к реально существующим джойнам.
 
Добавлено:
Вопрос был про Постгрес. У меня пока кроме восторга нет других эмоций. Юзаю сравнительно недавно. Трудно бывает представить что то интереснее чем MySQL.
 
Добавлено:
Кто-то здесь обронил фразу стандарт SQL. Ну и всё завертелось с этого. Отмечу, метафора не очень сложная. Есть объектное программирование, а есть и противоположность, обладающая качествами доступности. Стандарт SQL похоже возник до изобретения ООП. И в таком виде существует. Про всякие TSQL упоминать смысла нет. Вам дали набор процедур являющихся не объектом, распарсили запрос и отправили в эти процедуры. Когда было GO что-то произошло и на клиенте получилось счастье. Про применение virtual к запросу в стандартном SQL речи никогда не было. Иначе бы сейчас
Цитата:
TJ7
обгонял все сервера кроме Оракла. Писан SQL челом не смотревшим фильм Матрица. Тут трагическая пауза, для большего эффекта.

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 20:14 14-06-2012
salexn1



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Не пора ли модераторам применить свои скилы в познании SQL и просто drop-нуть данного мыслителя.
 
Прочитав посты на SQL.RU про TJ7(FVMas) и прочитав этот БРЕД можно с уверенностью сказать, что это секта... или одно и тоже лицо...
 
delover
что-же вы тут до сих пор делаете, раз все сервера дружно лажают перед вашим чудо изобретением...

Всего записей: 502 | Зарегистр. 21-02-2008 | Отправлено: 22:56 14-06-2012
miwa

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
 
Я ждал что мне кто нибудь спросит а как ты будешь оператор IN вычислять...
 

Лично меня больше интересует реализация аналитических функций, рекурсивных и вложенных запросов и ACID.

Всего записей: 455 | Зарегистр. 10-10-2004 | Отправлено: 23:36 14-06-2012
salexn1



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
delover
Вот чего я до сих пор не понимаю, так это каким боком in-memory dataset к базам данных????
 

Всего записей: 502 | Зарегистр. 21-02-2008 | Отправлено: 00:46 15-06-2012
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
salexn1

Цитата:
на SQL.RU про TJ7(FVMas) и прочитав

Видимо неверно выразился, что такое TJ7 я совершенно не знаю. С Ваших слов подумал что какая-то очередная лажа, будет интересно глянуть.
 

Цитата:
так это каким боком in-memory

Датасет никаким боком, датасета вобще-то я не давал - в примере сказано - без компонентов, мой пример работает без установки пакета, ну если установили ничего страшного.  
 

Цитата:
Вот чего я до сих пор не понимаю

С моим терпением уже бы материться пора. Речь шла о том что SQL не устраивает тем что в запросе нельзя явно указать 1 выбираемый в любом случае индекс. Не костылями которые может напридумывать программист используя планы индексов. Которые всё равно уже есть.
 
Есть запрос CREATE INDEX. Даже имена у индексов есть. Программисту пофиг на эти имена. Программист выделяет условие содержищее филды.
 
1)После этого запрос работает быстрее.
2)После этого проходит много времени и этого программиста уже нет на матушке земле.
3)И индексов уже нет на эти филды.
4)Но прочитав такой запрос очередной студент скажет:
  - Дак ты индекс создай вот такой вот и всё опять быстро заработает.
 
Я в курсе что у программеров самый любимый метод - дурака включать, но тут уже просто тема выросла и не все помнят с чего начиналось.
 
ЛЮБОЙ Сервер всё равно выбирает этот первый индекс.
 
Добавлено:
miwa

Цитата:
Лично меня больше интересует реализация аналитических функций

Всё на всех серверах работает так же, но первый индекс выбирается не автоматом в некоторых запросах, о чём указывать будет синтаксис.
 
Добавлено:
miwa
А совершенно точно... В запросе:

Код:
 
select bla1 from
(
  select bla3 from
  (
    select bla5 from
    (
   
      select bla7 from  
                              bla888  on (bla_id in (1,2,3,4,5,6,7,8))
      where
         bla9  
 
    ) z3  
    where bla6
  ) z2  
  where bla4
) z1
where bla2
 

Индекс bla_id будет видно даже в выборке z1 получается. Не знаю, к чему я это писал.

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 09:49 15-06-2012 | Исправлено: delover, 01:39 27-07-2012
ant0ni02004

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
delover
ну хоть немного по теме топика

Цитата:
1)После этого запрос работает быстрее.


Цитата:
3)И индексов уже нет на эти филды.

это как так? то в п.1 были индексы, а в п.3 уже и пропали?

Цитата:
ЛЮБОЙ Сервер всё равно выбирает этот первый индекс.

а вот тут индекс опять есть
о чем разговор-то?
 
 
 

Всего записей: 442 | Зарегистр. 26-10-2004 | Отправлено: 17:33 15-06-2012
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ant0ni02004
Всё круто за мня не беспокойтесь типо есть уже будет зделано. Всем желаю отдохнуть.
 
пятница, вечер, отписался, суббота, проснулся, удалил, мои извинения.

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 20:02 15-06-2012 | Исправлено: delover, 20:22 26-07-2012
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ant0ni02004
Разговор о том что запрос 1 отличается от запроса 2
 

Код:
 
1)select * from t1
where
  id>200000 and fig not null
 
2)select * from t1  
  on (id>200000)
where
   fig not null
 

 
В запросе 2 серверу явно указано что он обязательно должен проверить существование индекса на поле id а только потом разбирать другие условия. И если он обнаруживает индекс на поле id то он обязательно должен идти по этому индексу. Короткий, юнит хоть и не выложил, но он готовится за довольно быстро.

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 08:00 16-06-2012 | Исправлено: delover, 20:26 26-07-2012
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Жаль что miwa не задал вопросов.  

Цитата:
Индекс bla_id будет видно даже в выборке z1

Все индексы подселекта видны в этом случае. Я не имел ввиду мапирования исходных индексов в индексы внешнего селекта. Я имел ввиду - если для Delphi программеров - инлайн методы могут компилироваться так - что они не являются CALL процедуры, так же как подселект не является подселектом. Для Си программеров это макросы. Эта оптимизация тоже не доступна из аксиоматических норм синтаксиса SQL. В любом случае мои предложения были только плюсом к тому что есть а не отменой того что уже есть. Для серверов не обладающих кластерными индексами не доступна реальная статистика плотности последовательного чтения индекса на участке, по этой причине - автоматический выбор индекса в большинстве случаев гадание  гадалки на кофейной гуще, чаще всего оправданное - то есть это псевдонаука.

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 19:25 18-06-2012
ant0ni02004

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
delover
в ФБ можно и прямо указать, напр. PLAN(SOMETABLE INDEX(SOMEINDEX))  
а индексы иногда и пересчитывать полезно, иногда даже пересоздавать

Всего записей: 442 | Зарегистр. 26-10-2004 | Отправлено: 21:11 18-06-2012
Открыть новую тему     Написать ответ в эту тему

Страницы: 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 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » InterBase и FireBird: вопросы по работе и их решение


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru