А где матросы с винтовками или о масштабируемости



Posted by Рустем Мухаметшин on January 14, 1999 at 00:19:47:

In Reply to: Согласен, что это революция posted by Васеленко Сергей, Фирма КАРДИНАЛ on January 12, 1999 at 09:30:24:

        Сергей, я не очень понял почесу Вы так резко сменили мнение. Я не разглядел ни каких объективных причин. Вы что отказываетесь от результатов своего теста? Результаты опубликованных на "доске" тестов говорят о том что быстродействие форм с посиком фактов увеличивается в лучшем случае (наиболее подходящем для применения данного механизма) примерно на 40% (по данным Сергея Холево), в Вашем тесте вообще мизерное ускорение. А память то расходуется (в 2 раза больше под факты), да и время сбивки баланса увеличивается (на 10%).

        Моя позиция нисколько не изменилась с первого моего высказывания. Повторю ее обобщив и добавив приближенные количественные оценки:
        1. Быстродействие поиска фактов увеличивается в 2 раза
        2. Быстродействие сбивки баланса падает на 10%
        3. Расход памяти под факты увеличивается в 2 раза
        Исходя из таких пропрций можно сказать что в стремлении к идеалу каждый следующий шаг обходится дороже предидущего. Но, господа, нужно же выбирать направление !!!! Есть направления где этих шагов было сделано не так уж много. Шагнув туда Вы получите гораздо большую отдачу. Другими словами, я хочу повториться и сказать то что много раз говорил - не стоит данное ускорение тех затрат (413, 420, 427). Ясно что мы говорим не об ускорении 1 сек к 0.1 сек, а всего лишь 0.2 сек к 0.1 сек, ну уж если Вам так хочется пусть будет 20 сек к 10 сек. Не вижу принципиальной разницы.
        Как раз время поговорить о масштабируемости и революциях. Масштабируемость??? Давайте разберемся. Конечно, из всей ленты выбираются сразу все те которые подходят, следствие от общего объема прямой зависимости нет. Прекрасно, но ведь нужные факты как ни крути а листать то последовательно приходится !!!!! И никакой масштабируемости. Порядок вычислений остается прежний, выигрышь в раз или два (из моих предположений в среднем в 2 раза). Ваш пример, Аркадий, был для Вас наиболее удачным. На 2 "нужных" факта - 100,000 не "нужных". Идеальный плацдарм для блицкриха. Да уж, найти 2 по цепи это запросто. А как быть когда на 100,000 всего будет 10,000 нужных. Вот тут то мы и приедем (я делал такой тест - ускорение формы на 40%, замедление счета баланса в 2.4 раза в чистом тесте только с фактами без другой нагрузки).
        Ну и о практике жизни. Ферарри ездит очень быстро, берет хороший разгон, но чего это стоит. Поэтому для работы берем то что технологичней даже если нам нужна скорость. У меня базы не большие 50 тыс операций в год. На них время счета форм меня вполне устраивает. Большинство форм (я говорю о тех где есть поиск по фактам) работает где то-за секунду. Есть те которые работают за ~5сек. И есть очень редкие (по числу вызовов - типа книги покупок) которые работают за ~10-20 сек С увеличением объема базы скорость линейно упадет (именно линейно!!!). Объем потребляемого ОЗУ примерно так же возрастет. Считаю ситуацию сравнимой с приведенным лирическим отступлением потому как увеличить потребление ОЗУ на факты (наиболее весомая статья) в 2 раза просто не разумно ради ускорения некоторых форм в 2 раза. Вместе с тем гораздо более ценное время подсбивки увеличится.
        Аспект железа. Я не говорю что жадность не дает увеличить память, я говорю что на серьезные задачи ее и так уже выделено много. На базе с сотнями тысяч фактов и так должно стоять 256 Мб. Куда дальше то? Брать матплату в которую можно воткнуть 512М. А может проще взять оную с двумя процессорами или просто повысить частоту последнего? Выигрышь будет более адевкатен ...


Пpишедшие ответы: