Hello, Tonal!
You wrote on Sun, 04 May 2008 12:56:44 +0700:
T Посмотри внимательно - в изначальном запросе автор
T выбирал се записи из таблицы TOVARY, которые
T НЕ присутствуют в подзапросе Твой запрос выбирает
T все записи, которые присутствуют.
А, ну да. Сорри.
--
Удач
Alexander A. Venikov,
Arkhangelskiy A.G. ...
Ingwar пишет:
Можно использовать следующий запрос:
Select t.ID,us.T_ID
from TOVARY t
Left Outer Join (SELECT T_ID FROM STORAGE UNION
SELECT T_ID FROM INDETAILS UNION
SELECT T_ID FROM OUTDETAILS) us
on us.T_ID=t.ID
where us.T_ID is null
Он работает много
Тут мне умные люди подсказали решение- работает еще лучше:
SELECT T.ID, T.NAME
FROM TOVARY T
WHERE NOT EXISTS
(
SELECT T_ID FROM STORAGE WHERE T_ID = T.ID
UNION ALL
SELECT T_ID FROM INDETAILS WHERE T_ID = T.ID
UNION ALL
SELECT T_ID FROM OUTDETAILS WHERE T_ID = T.ID
)
Для сравнения:
Для сравнения: скорость выполнения запросов в моем конкретном случае
1. Мой изначальный ~1 мин
2. Предложенный Архангельским А.Г. ~130 мс
3. Предложенный в етом сообщении ~20 мс.
Ты еще посчитай общее время фетча всех записей запросов
On Sun, 04 May 2008 15:19:42 +0400, Ingwar [EMAIL PROTECTED] wrote:
Для сравнения:
FetchAll делаешь, или до получения первой записи?
Кроме того, попробуй ещё такой вариант:
WHERE NOT EXISTS (SELECT T_ID FROM STORAGE WHERE T_ID = T.ID)
AND NOT EXISTS (SELECT T_ID FROM INDETAILS WHERE T_ID =
FetchAll делаешь, или до получения первой записи?
FetchAll
Кроме того, попробуй ещё такой вариант:
WHERE NOT EXISTS (SELECT T_ID FROM STORAGE WHERE T_ID = T.ID)
AND NOT EXISTS (SELECT T_ID FROM INDETAILS WHERE T_ID = T.ID)
AND NOT EXISTS (SELECT T_ID FROM OUTDETAILS WHERE T_ID = T.ID)
Как можно ускорить выполнениезапроса:
SELECT ID FROM TOVARY WHERE NOT ID IN
(SELECT T_ID FROM STORAGE UNION
SELECT T_ID FROM INDETAILS UNION
SELECT T_ID FROM OUTDETAILS)
Индексы по полям T_ID в таблицах STORAGE, INDETAILS, OUTDETAILS
существуют.
Ingwar пишет:
Как можно ускорить выполнениезапроса:
SELECT ID FROM TOVARY WHERE NOT ID IN
(SELECT T_ID FROM STORAGE UNION
SELECT T_ID FROM INDETAILS UNION
SELECT T_ID FROM OUTDETAILS)
Индексы по полям T_ID в таблицах STORAGE, INDETAILS, OUTDETAILS
существуют.
Можно использовать следующий
Можно использовать следующий запрос:
Select t.ID,us.T_ID
from TOVARY t
Left Outer Join (SELECT T_ID FROM STORAGE UNION
SELECT T_ID FROM INDETAILS UNION
SELECT T_ID FROM OUTDETAILS) us
on us.T_ID=t.ID
where us.T_ID is null
Он работает много быстрее. Количество чтений равно кол.
Hello, Arkhangelskiy!
You wrote on Sat, 03 May 2008 15:07:56 +0400:
AA Можно использовать следующий запрос:
AA Select t.ID,us.T_ID
AA from TOVARY t
AA Left Outer Join (SELECT T_ID FROM STORAGE UNION
AASELECT T_ID FROM INDETAILS UNION
AASELECT T_ID FROM OUTDETAILS) us
AA on
Ingwar пишет:
Можно использовать следующий запрос:
Select t.ID,us.T_ID
from TOVARY t
Left Outer Join (SELECT T_ID FROM STORAGE UNION
SELECT T_ID FROM INDETAILS UNION
SELECT T_ID FROM OUTDETAILS) us
on us.T_ID=t.ID
where us.T_ID is null
Он работает много быстрее. Количество чтений равно
Здравствуйте!
Можно left outer спокойно заменить на inner (можно явно не указывать,
inner - по умолчанию), что позволит выбросить кляузу where:
Select t.ID,us.T_ID from TOVARY t
Join (SELECT T_ID FROM STORAGE UNION
SELECT T_ID FROM INDETAILS UNION
SELECT T_ID FROM OUTDETAILS) us
on
Alexander A. Venikov пишет:
Можно left outer спокойно заменить на inner (можно явно не
указывать, inner - по умолчанию), что позволит выбросить кляузу where:
Select t.ID,us.T_ID from TOVARY t
Join (SELECT T_ID FROM STORAGE UNION
SELECT T_ID FROM INDETAILS UNION
SELECT T_ID FROM OUTDETAILS)
Novo [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED]
ждать. Хочется задоунлоадить и сравнить. А то все слова, слова. Как
говорят у нас в Одессе - 96% процентов людей на земле знают как надо
делать деньги и только 4% умееют.
Я не знаю как у вас в Одессе, а у нас давно есть TPCC/TPCR.
Привет, Oleg!
Вы пишешь 13 апреля 2007:
[Sorry, skipped]
OL P.S. Ты случайно не из пиндостана нам сюда буковки царапаешь?
OL Ась?
=Beginning of the citation==
Comcast Corporation
1500 Market Street
Philadelphia, PA 19102
US
=The end of the
Alex Cherednichenko [EMAIL PROTECTED] wrote in message news:[EMAIL
PROTECTED]
=Beginning of the citation==
Comcast Corporation
1500 Market Street
Philadelphia, PA 19102
US
=The end of the citation
Небоскрёбы небоскрёбы а я маленький
Novo ...
Уважаемый Хорсун Влад, позвольте спросить, а что хамстсво - это
единственное, что вы умеете делать?
Да, я большой специалист, а что ?
Как говорится, сам себя не похвалишь - никто не похвалит.
Ну раз большой специалист, то ты можешь написать правильные тесты с
у нас в Одессе - 96% процентов людей на земле знают как надо
делать деньги и только 4% умееют.
да пойми ты, синтетические тесты это скучное и никому не интересное
дело. Т.е. оно интересно только одной категории разработчиков,
которые вообще или пока не понимают, что производительность
зависит от
On Apr 11, 10:51 am, Vlad Horsun [EMAIL PROTECTED] wrote:
Novo ...
Уважаемый Хорсун Влад, позвольте спросить, а что хамстсво - это
единственное, что вы умеете делать?
Да, я большой специалист, а что ?
Как говорится, сам себя не похвалишь - никто не похвалит.
Ну раз большой
Ахтунг, из зоопарка сбежало животное!
Особые приметы - очень культурное, знает многом умных букв и умеет
пользоваться компьютером!
Коваленко Дмитрий.
www.ibprovider.com
PS. Пятница начилась удачно. По всем пунктам.
Привет, Novo!
Вы пишешь 13 апреля 2007:
N Как говорят у нас в Одессе - 96% процентов людей на земле знают как надо
N делать деньги и только 4% умееют.
А шо у вас у Филадельфии тоже есть Одесса?
Не знал...
зы: забаньте его уже кто-нить...
--
With best regards, Alex Cherednichenko.
Novo ...
Для сравнения тесты для SQLITE.
Для сравнения результаты рядом показывают, а не заставляют читателя
прыгать по тексту десятки раз
...
При работе с SQLITE процесс занимает порядка 3 Mb, при работе с
Embedded Firebird процесс занимает порядка 30 мег.
Та ты шо ! А можно и 300
Уважаемый Хорсун Влад, позвольте спросить, а что хамстсво - это
единственное, что вы умеете делать?
On Apr 11, 2:42 am, Vlad Horsun [EMAIL PROTECTED] wrote:
Novo ...
Для сравнения тесты для SQLITE.
Для сравнения результаты рядом показывают, а не заставляют читателя
прыгать по тексту
Привет, Novo!
Вы пишешь 11 апреля 2007:
N Уважаемый Хорсун Влад, позвольте спросить, а что хамстсво - это
N единственное, что вы умеете делать?
Юноша, ты ещё пока очень юн и глуп.
Первое поправимо.
Второе - ой ли..
Прощай навеки!
--
With best regards, Alex Cherednichenko.
Vlad Horsun [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED]
Ещё вопросы есть ?
Дайте, дайте я ему отвечу...
Уважаемый некто под названием Novo. Вся мировая общественность приносит Вам
свои извинения по факту употребления Владом буквосочетания Та ты шо ! в Ваш
адрес.
Наверно
Count мы победили агрегатными триггерами :)
Блохи на моей голове вздрогнули от воспоминаний о багах, которые несут
такие триггеры :)
это всего лишь еще один способ блокировки одновременных писателей.
у нас собираются агрегаты на документы, насколько я знаю, у Деда тоже.
--
Булычев Алексей
Boulitchev Aleksey wrote:
у нас собираются агрегаты на документы, насколько я знаю, у Деда тоже.
Угумс.
--
Regards. Ded.
У меня есть тесты, сделанные по образцу SQLite.
Сделаны они были для тестирования различных API.
Написано все на C++.
На текущий момент можно потестировать:
/SQLITE
/SQLITE_EMB
/ADO/Microsoft.Jet.OLEDB.4.0
/ODBC/Microsoft Access Driver (*.mdb)
/InterBase (Firebird 1.5)
/InterBase_EMB (Firebird
Вдогонку к своему-же письму.
E:\work\tmp\perf_sdbperf_sdb_test.exe --conn_str=/InterBase_EMB --
db_name=TES
T01.FDB --user_name=test --user_passwd=test
Sdb performance tests ...
Test INSERT 01. Insert 4000 records. Autocommit.
INSERT INTO t1 VALUES(:?, :?, :?)
0.062 sec.
Test INSERT 02.
Привет!
2. влияние оказывает архитектура сервера. Поскольку FB
версионник, это надо принимать во внимание, и сравнивать
его с версионниками. Всякие SQLLite надо сравнивать с такими
же однопользовательскими движками.
Кстати, о Птичках :)
Работаю сейчас по одному проекту с программером,
Sergey Mereutsa wrote:
2) Меделенный count() как без так и с условием - по сравнению именно с
Постгри. Тут я ничего сказать не могу, потому что Постгри тоже
версионник, но count() там реально быстрый. Как он там реализован
хз, но факт - сам видел.
Не верю (с) Функция count там
Привет!
2) Меделенный count() как без так и с условием - по сравнению именно с
Постгри. Тут я ничего сказать не могу, потому что Постгри тоже
версионник, но count() там реально быстрый. Как он там реализован
хз, но факт - сам видел.
Не верю (с) Функция count там устроена абсолютно
Count мы победили агрегатными триггерами :)
Блохи на моей голове вздрогнули от воспоминаний о багах, которые несут
такие триггеры :)
Коваленко Дмитрий
Sergey Mereutsa wrote:
Зуб даешь?
А то!
З.Ы. Что вы там такого в hEAD намутили с readline, что под линухом оно
пытается сделать rm -f readline readline.exe и обламывается? И зачем
там .exe? ;-)
Вопрос не по адресу :-)
--
Дмитрий Еманов
Привет!
Count мы победили агрегатными триггерами :)
Блохи на моей голове вздрогнули от воспоминаний о багах, которые несут
такие триггеры :)
Там очень специфичная задача - и count()-ы условий практически никогда
не пересекаются у разных пользователей - вероятность пересечения
стремится к
Hello, cDima!
cDima wrote:
The Open Source Database Benchmark - http://osdb.sourceforge.net/
Например http://www.sqlite.org/cvstrac/wiki?p=SpeedComparison ,
сравнивание firebird 1.5 и SQLite по разным типам запросов.
какой смысл сравнивать СЕРВЕР со встраиваемым однопользовательским
Hello, All!
Dmitri Kuzmenko wrote:
The Open Source Database Benchmark - http://osdb.sourceforge.net/
Например http://www.sqlite.org/cvstrac/wiki?p=SpeedComparison ,
сравнивание firebird 1.5 и SQLite по разным типам запросов.
какой смысл сравнивать СЕРВЕР со встраиваемым однопользовательским
c Отличный ответ, спасибо. LINQ сильно бы облегчил жизнь, но пока его
c нет будем использовать firebird.
и и к чему тогда был этот топик, если всеравно уже давно выбрал firebird?
Не, ну ты чего? Никак не догонишь? А как же понты?
Коваленко Дмитрий.
Исследовательских статей на эту
тему вы *совсем* не видели?
Неее, этот чукча - их писатель.
Бугыгы. Пацталом.
Коваленко Дмитрий.
Hello cDima,
Friday, April 6, 2007, 1:12:12 AM, you wrote:
c Добрый день,
c Особенно интересует случай с примерно 1000-100 элементов в
Если ты будешь сериализовать дата сеты то загрузки 100 можешь не
дождаться :)))
c таблице, запросы на выборки по LIKE Somethin% с сортировкой по int-
Hello, cDima!
cDima wrote:
Подскажите обзоры производительности embedded-версии Firebird DB,
последних версий. Можете подсказать статьи или ресурсы, плиз? Язык не
важен.
Embedded это вариант сервера. соответственно производительность та
же самая. потом, что значит производительность? Возьми
embedded-версии Firebird DB,
последних версий. Можете подсказать статьи или ресурсы, плиз? Язык не
важен.
Embedded это вариант сервера. соответственно производительность та
же самая. потом, что значит производительность? Возьми данные,
залей, попробуй.
--
Dmitri Kouzmenko,www.ibase.ru, (495
ну вот я исследовал. 15 получилось.
c
c Возьми данные, залей, попробуй. - я не первый и не последний буду
c засекать время запросов от Firebird. Исследовательских статей на эту
c тему вы *совсем* не видели?
--
С уважением
Кочмин Александр
Firebird Foundation associate member #257
Если бы XML был настолько совершенен, то не было бы MS SQL
например. :-)))
Тут пока и сравнивать нечего.
Дмитрий
Зря я упоминул XML. =)
Не спорю, но для мелких объемов (300 rss feed'ов, каждый по 30
элементов, в целом 1 элементов в базе) не требуется термоядерный
Firebird.
Вы совсем не
c Вы совсем не видили статьи мудрецов с правильно поставленными
c экспериментами для анализа скорости Firebird?
c Можно варьировать тип запроса, размер таблицы и прочее, не хотелось бы
c это делать на коленке.
нифига непонятно чего тебе надо-то.
Сформулируй нормально сначала, потом поймешь,
Alexandr Kochmin [EMAIL PROTECTED]
сообщил/сообщила в новостях следующее: news:[EMAIL PROTECTED]
ну вот я исследовал. 15 получилось.
Ну вот, тоже мне исследователь, 17 должно быть. И вааще, чего аппаратную
конфигурацию не приводишь? Монитор у тебя какой?
With b/r. Gleb.
МГ
МГ
МГ Alexandr Kochmin [EMAIL PROTECTED]
МГ сообщил/сообщила в новостях следующее: news:[EMAIL PROTECTED]
МГ
МГ ну вот я исследовал. 15 получилось.
МГ
МГ Ну вот, тоже мне исследователь, 17 должно быть. И вааще, чего
МГ аппаратную конфигурацию не приводишь? Монитор у тебя какой?
ой точно. 17
On Fri, 06 Apr 2007 13:52:10 +0400, cDima [EMAIL PROTECTED] wrote:
я не первый и не последний буду
засекать время запросов от Firebird.
Мои выполняются по-разному, от 1 мс до 20 минут.
В зависимости от ... эээ ... куда тут можно залить архив со списком
зависимостей?
--
Сергей Смирнов.
Yurij ...
Если же нужны сложные отчеты - LINQ .NET-овский вроде еще не вышел, а
sql сразу намного упрощает жизнь.
А вот скажи - чем LINQ принципиально отличается от embedded sql ?
--
Хорсун Влад
Hello, cDima!
cDima wrote:
Вы совсем не видили статьи мудрецов с правильно поставленными
экспериментами для анализа скорости Firebird?
а вы вообще такие статьи в отношении других серверов видели?
К чему этот сферический конь в вакууме?
на ibase.ru есть статьи с тестами. например, бэкапа,
Hello, cDima!
cDima wrote:
Возьми данные, залей, попробуй. - я не первый и не последний буду
засекать время запросов от Firebird.
Исследовательских статей на эту
тему вы *совсем* не видели?
ну я исследователь и мудрец. что исследовать-то надо?
статьи на ibase.ru, в разделе документация,
cDima wrote:
Исследовательских статей на эту
тему вы *совсем* не видели?
Неее, этот чукча - их писатель.
--
Regards. Ded.
Вы совсем не видили статьи мудрецов с правильно поставленными
экспериментами для анализа скорости Firebird?
а вы вообще такие статьи в отношении других серверов видели?
The Open Source Database Benchmark - http://osdb.sourceforge.net/
Например
Если данные помешаются в доступную физическую память, сохранение и
загрузка с диска делаются нечасто, не нужно делать безумные
многокритериальные запросы с сортировкой и группировкой - xml
достаточно. Десериализовал в память, покрутил как хочешь, сериализовал
обратно. Ну и объекты сложной
Привет!
Не популярен интерес к benchmark-ам среди вас, понятно.
А ты не задумывался, _почему_ нормальные пацаны _никогда_ бенчмарками
не меряюццо? А вот подумай...
--
Best regards,
Sergeymailto:[EMAIL PROTECTED]
c Отличный ответ, спасибо. LINQ сильно бы облегчил жизнь, но пока его
c нет будем использовать firebird.
и и к чему тогда был этот топик, если всеравно уже давно выбрал firebird?
--
С уважением
Кочмин Александр
Firebird Foundation associate member #257
Привет Sergey Mereutsa
Не популярен интерес к benchmark-ам среди вас, понятно.
А ты не задумывался, _почему_ нормальные пацаны _никогда_ бенчмарками
не меряюццо? А вот подумай...
IIRC Ковязин мерял разные серевра для TPC-C. Наверное народ не понимает
что они хотят от бенчмарка.
WBR Evgeny
Добрый день,
Я хочу понять, что быстрее, встроенный в .Net XML-средства хранения
информации на жётском диске, или встроенная Firebird-база.
Подскажите обзоры производительности embedded-версии Firebird DB,
последних версий. Можете подсказать статьи или ресурсы, плиз? Язык не
важен.
Особенно
Если бы XML был настолько совершенен, то не было бы MS SQL
например. :-)))
Тут пока и сравнивать нечего.
Дмитрий
dada sasa [EMAIL PROTECTED] wrote:
На серваке (под Линуксом да и под
Виндой) довольно много памяти
пропадает зря. Сервак занят только FB.
Памяти, скажем, 2 Гига. Вполне можно 1Гиг
отдать под RAMDISK, а на него FB может
класть временные файлы (т.е. TmpDirectory
указать туда).
Лучше
Промежуточные результаты тестов TPC-C пол Вин показывают, что если
оперативная память больше (обычно в 1.5 раза) размера БД, то
производительность почти удаивается. Причем настройки сервера
стандартные, никаких Рамдисков и т.д.
Желающие попробовать (с многопроцессорными машинками) пишите в мыло
Alexey Kovyazin [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED]
ЗЫ Информация неофциальная, отчет о tpc-c будет позже.
Ты тулкит то мне вышли уже давно жду. Интересно такой же тест как с TPCR
забабахать.
Hi Oleg LOA
Имелось в виду что используя специальный ключик можно разрешить обычным Win32
приложениям использовать под свои нужды 3GB из 4-х GB адресного пространства
процесса.
Или извращаясь с sharedmemory использовать большое количество отображая разные
кусочки физической памяти в верхние
Eugeney Putilin evgeneyputilin-JGs/[EMAIL PROTECTED] wrote in message
news:[EMAIL PROTECTED]
Или извращаясь с sharedmemory использовать большое количество отображая
разные кусочки физической памяти в верхние 2(1)Гб
Большее чего? :-)
Больше чем адресное пространство отведённое для процесса
Hi Oleg LOA
Большее чего? :-)
4 гигов
Надо больше - велкам то AWE на cоответствующей редакции винды, а проще говоря
не @бите себе мозги и ждите 64-битную винду :-):-):-)
Олег вспомми как работали с EMS памятью в дос, и 16 битные винды. Нужен кусок
памяти его отобразили в адресное
65 matches
Mail list logo