powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Мощность ASA
42 сообщений из 42, показаны все 2 страниц
Мощность ASA
    #32594015
waldemarus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток всем!

Хочется подискутировать на тему возможостей ASA.
Этот продукт позиционируется как мобильная база данных и, исходя из описания "is optimized for larger scale mobile, embedded and small to medium sized business deployments". То есть, как бы и для средних нагрузок ничего.
Интересно бы узнать, у кого под какими нагрузками этот продукт крутится с целью выявляния пределов. Я понимаю, что пределы зависят от многих факторов (железа, интенсивности использования, грамотности кода и т.д.).
В бытность мою администратором базы данных опердня в одном из банков имел следующий опыт:

Сервер
2*800 MHz CPU
1 Gb RAM (под ASA было выделено 850 метров)
RAID 5

Нагрузка
до 200 юзеров одновременно, и они не стояли на месте! :)

Версия
ASA5

И все достаточно прилично работало.
Потом правда все-же перешли на ASE.

Поделитесь своим опытом, кому не лень
...
Рейтинг: 0 / 0
Мощность ASA
    #32594763
michael_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У нас бухгалтерская программа, мы рекомендуем клиентам эту СУБД, если число одновременно работающих юзеров 1-15, в крайнем случае 20 и
оборотов за квартал - не более 300 000 проводок (число записей в таблице).

Иначе - замедления, непонятные блокировки.

Прочие сложности:

Иногда портятся БД (*** ERROR *** Assertion failed: 101412)
Сжатие БД не прозрачно (только unload/reload)
Существуют ошибочные запросы способные остановить сервер

Версии ASA 6,7,8

Для более серьезных клиентов рекомендуем MS SQL.
...
Рейтинг: 0 / 0
Мощность ASA
    #32596486
c127
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 waldemarus

У нас при отладке из-за глюка в .NET драйвере клиентское приложение открывает порядка 500-1000 соединений к ASA. Сервер работает, хоть и тормозит, при этом забирает гиг памяти на 512MB машине. Так что если бы не нужно было свапить память то наверное ничего бы не заметили. Была ASA 8, теперь 9.

2 michael_

>У нас бухгалтерская программа, мы рекомендуем клиентам эту СУБД, если
.....
Для более серьезных клиентов рекомендуем MS SQL.


Всегда завидывал людям, у которых клиентской части все равно, что там внизу крутится: ASA, MSSQL, DB2 или текстовые файлы с записями. Поделитесь тайной написания такого клиента, может попутно выяснится почему ASA тормозит и откуда блокировки.
...
Рейтинг: 0 / 0
Мощность ASA
    #32596492
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
c127
Ну ASA близка к MSSQL, так что если пользоваться только TSQL, то наверное добиться одного клиента на ASA и MSSQL можно, хотя и сложно, отличий все равно много. Так что или у них вся бизнес-логика на клиенте или они одновременно 2 БД проектируют с учетом довольно таки разной архитектуры транзакционной модели и эффективности использования оптимизатора. В обоих случаях тормоза на ASA можно схлопотать порядочные, да и на MSSQL тоже :)
...
Рейтинг: 0 / 0
Мощность ASA
    #32596720
michael_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всегда завидывал людям, у которых клиентской части все равно, что там внизу крутится: ASA, MSSQL, DB2 или текстовые файлы с записями. Поделитесь тайной написания такого клиента, может попутно выяснится почему ASA тормозит и откуда блокировки.

Применяем подмножество команд T-SQL, которые поддерживают оба сервера. А где есть различия, там параллелим код, клиент же всегда знает с какой СУБД он работает. Администрирование совершенно разное, есть различие в синтаксесе курсоров и т. д. Писать не просто, но что делать :)

А блокировки в ASA не из-за нептимального кода, просто SELECT в ASA 6,7,8 не всегда снимает блокировку (в Sybase CIS это признали) и изменить структуру таблицы после этого нельзя. Может зависнуть и создание резервной копии.

Тормоза - тоже не наши проблемы. Запросы к таблицам с 300 000-500 000 записей и более в MS SQL и Sybase ASE выполняются быстрее чем в ASA. Запросы и модель индексов оптимизировали и не раз. Кроме того, ASA работает намного медленнее с большими базами, где есть пустоты. Необходимо хотя бы раз в квартал делать unload/reload. Но это помогает не надолго, а сил требует немало.

А так ASA продукт вполне работоспособный и функционально привлекателен, привлекательна и цена. ASA на небольших объемах полностью нас удовлетворяет, особенно на слабой технике.
...
Рейтинг: 0 / 0
Мощность ASA
    #32598391
c127
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 ASCRUS

Теоретически я представляю как это сделать, но никогда не получалось, даже в простейших случаях.

2 michael_

>просто SELECT в ASA 6,7,8 не всегда снимает блокировку (в Sybase CIS это признали) и изменить структуру таблицы после этого нельзя.

Есть такое дело. Но может структуру таблиц из клиента менять не нужно? По крайней мере не меняйте их на каждый селект, хотя бы через один.

>Кроме того, ASA работает намного медленнее с большими базами, где есть пустоты.

Как-то это подозрительно, такого быть не должно. Но например можно не удалять данные, пустот не будет. 500000 строк это не очень большая таблица, пусть себе растет. Кроме того сервер должен заполнять пустоты новыми данными, я так понимаю у вас новые данные пишутся в базу постоянно, так что не очень понятно как эти пустоты там образовались, что-то видимо не в порядке.

>Запросы к таблицам с 300 000-500 000 записей и более в MS SQL и Sybase ASE выполняются быстрее чем в ASA.

Может простые запросы быстрее, а вот сложные медленнее. Не любит М$ сложных запросов. Но у вас, я так понял, в базе только данные, логика на клиенте, так что запросы только простые.

У нас наоборот, логика в базе, относительно сложные запросы, M$SQL2000 зависал напрочь, так что с пришлось перейти на ASA.

Ваша команда по-видимому раньше проектировала файл-серверные БД? Это не наезд, я тоже раньше программировал на файл-сервере, на SQL сервер было переключиться довольно сложно.
...
Рейтинг: 0 / 0
Мощность ASA
    #32598422
Фотография Рыжий Кот
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что мне нравится в ASA, так это возможность нагромоздить трехэтажный запрос, который СУБД довольно успешно разжевывает.
Только однажды пришлось использоваться временные таблицы: с ними скорость выполнения составляло порядка 5-10 секунд, без них - до 5 минут, хотя индексы вроде все были.
Логика и расчеты - в базе.

...
Рейтинг: 0 / 0
Мощность ASA
    #32599192
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что значить "трехэтажный запрос" применительно к ASA ?
Просто интересно.
...
Рейтинг: 0 / 0
Мощность ASA
    #32599295
Фотография Рыжий Кот
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Например так: несколько подзапросов, последний из которых связывается внешним соединением с подобной же конструкцией. При этом по ходу В ЛЮБОМ месте могут фильтры, оформленные в виде ХП, которые сами также являются что-то вроде описанным выше.
И это не от кривых рук, а от постоянно возникающих запросов от клиентов. (Клиент - это не заказчик ПО, а заказчик услуг).
...
Рейтинг: 0 / 0
Мощность ASA
    #32599353
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторА что значить "трехэтажный запрос" применительно к ASA ?
Просто интересно.
У меня например в проекте "расчет зп" на ASA9 довольно шустро одним запросом считаются нарастающие с начала года по текущий месяц включительно, благодаря новым возможностям OLAP в ASA (PARTITION BY), результат перекладывается в времянку, а далее уже рассчитывается одним запросом с использованием этой времянки подоходний налог по всем сотрудникам, который учитывает нарастающие, налоговые вычеты, резиденство и налоговые шкалы (на текущий момент там всего одна запись - 13%). По обьему скрипт расчета подоходнего не маленький и там используется множество подзапросов, CROSS JOIN и LEFT JOIN. Самое удивительное, что довольно шустро работает и строиться приличный план запроса. В этом плане ASA действительно очень красиво оптимизирует - ради интереса я сравнивал аналогичные запросы у MSSQL 2000 и ASA 9.01 на одинаковых по структуре и содержанию БД и для "хитрых" (или можно еще сказать не красиво построенных) запросов ASA умудрялась производить разбор запроса, пересоединение таблиц в другом порядке (а то и просто выбрасывая таблицы, которые только служили для соединения между другими таблицами запроса, полезной нагрузки не несли и главное можно было обойтись без них) и выдавала на выходе более эффективный план запроса. Я не хочу сказать, что у MSSQL2000 плохой оптимизатор - наоборот, он очень мощный и навороченный, однако чтобы им эффективно пользоваться необходимы хорошие и глубокие знания архитектуры и принципов работы MSSQL, ASA же наоборот гарантирует, что как бы плохо не был написан план запроса, она его выполнит более менее эффективно. Раньше это выглядело бы смешно и действительно частенько ASA могла уйти в глубокий table scan, однако ее оптимизатор постоянно прогрессирует и сейчас на текущий момент по моему личному убеждению ничего смешного уже для конкурентов ASA нет по следующим причинам:
1. Существует возможность автоматической калибровки оптимизатора к показателям накопителей (оператор ALTER DATABASE CALIBRATE), позволяющего не гадать на кофейной гуще, за сколько времени считается информация с винта, а при построение запросов учитывать реальные характеристики железа
2. Работает эвристический анализатор запросов, поддерживающий автокорреляцию статистики и отслеживание лучших планов запросов с последующим их сохранением в кэш БД (т.е. планы живы даже после рестарта БД). Он отвечает за самообучение оптимизатора запросов по данным в БД и гарантирует что в независимости от содержания и кол-ва информации в БД оптимизатор будет знать ее текущее состояние и строить адекватные запросы.
3. Встроенна автоматическая поддержка RAID-массивов, гарантирующая, что оптимизатор всегда при построение планов запросов будет правильно выбирать, где лучше вести последовательное, а где параллейное чтение таблиц и индексов.
4. Синтаксис SQL расширен дополнительными конструкциями описания виртуальных представлений запросов, рекурсивных запросов, внутреннего соединения подзапроса с основным запросом (LATERAL соединение), а так же всевозможных OLAP расширений (PARTITION BY, WINDOW, RANGE и т.д.). По всем расширениям оптимизатор запросов имеет собственные специализированные алгоритмы для построения плана запроса, поэтому такие расширения с одной стороны развязывают руки программисту при построении сложных запросов, с другой стороны помогают оптимизатору запросов сразу уловить, что конкретно должен выполнить запрос и выполнить это в наиболее оптимальной форме, чем если бы действие, описанное на обычном SQL делилось на несколько запросов, с использованием времянок или циклов.
5. Поддерживаемый для программиста уровень блокировок как "всегда ROW LOCK" снимает с программиста задачу самому отслеживать, чтобы во время операций не было заблокировано лишних записей и не возникало deadlock-ов. Фактически ASA имеет довольно граммотный механизм блокировок, в которых при возможности без дополнительных последствий автоматом задействуются PRIMARY KEY и UNIQUE и программист при построении запроса всегда может быть уверен на 100%, что блокируются только те записи, которые он и предполагал заблокировать. Так же для уменьшения времени блокировок в ASA реализована модель обработки CONSTRAINTS и BEFORE триггеров во время ведения блокировок. В результате этого, если например должно измениться миллион записей и уже на второй становиться известно, что запись неудовлетворяет условию, ASA снимает блокировки, которые успела поставить и прекращает операцию изменения, откатывая начавшуюся транзакцию (откат все таки происходит по причине того, что в BEFORE триггерах возможно были изменения на обрабатываемые записи). Так же на уровне READ COMMITED открытые курсоры блокируют только текущие записи, а не все.
6. Модель нежесткой кластеризации таблиц с одной стороны в ASA, в отличие от MSSQL приводит к тому, что таблица может быть фрагментирована и для ее дефрагментации по кластерному ключу необходимо вставлять записи с указанием сортировки, приблеженной к кластерному ключу и периодически ее перестраивать с помощью команды REORGANIZE TABLE (к ее чести она не блокирует таблицу и разрешает всем продолжать с ней работать). Сама ASA по возможности старается новые записи вставлять в те странички, которые ближе по кластерному ключу, но опять же только при условии не снижения скорости вставки. Однако такое казалось бы неудобство оборачивается явным преимуществом по сранению с моделью кластарных индексов в MSSQL, так как там из за того, что MSSQL всегда при добавлении или изменении данных перетряхивает таблицу согласно ее кластерному индексу очень часто возникают случаи блокировок последней страницы таблицы, приводящие к тормозам при параллейной работе по вставке и изменению записей множества сессий. Лично мне легче в ASA периодически дефрагментировать таблицу, чем бороться с различными ньюансами блокировок в MSSQL (достаточно посмотреть на форум MSSQL - там блокировки и кластерные индексы - достаточно популярные вопросы)
7. Поддержка различного размера страниц в БД (от 1 до 32 кб), позволяет проектировать эффективные БД для различных задач, где при небольших обьемах БД и мощности серверов достаточно использовать страницы малого обьема, а при построении например аналитических хранилищ использовать большие по размеру страницы. В MSSQL размер страницы 8кб и точка, что не есть хорошее решение по моему скромному мнению
8. Модель работы компилятора ХП, представлений и триггеров в ASA организована так, что они компилируются при первом к ним обращении, однако планы запросов не привязываются к ним, а складываются в общий кэш наравне с планами запросов, непосредственно вызванных сессиями, что соотвествующе с одной стороны снимает всякую необходимость периодически обновлять статистику БД, выполнять перекомпиляцию ХП и гарантирует, что запросы в ХП будут наравне с остальными выполняться по лучшим планам запросов, составленных оптимизатором, что я тоже считаю большим преимуществом по сравнению с MSSQL.
9. Ну и в дополнение для облегчения тюнинга запросов в ASA существует прекрасная возможность создавать виртуальные индексы, которых не существует физически в БД, они не блокируют при создании таблицы, однако ASA учитывает их при построении графического плана запроса и позволяет программисту поэксперементировать с индексами и прикинуть, что и как. Так же этими виртуальными индексами активно пользуется служба "Консультант индексов", которая перехватывает поток запросов к БД, анализирует их и пользуясь такими индексами "прикидывает", а что собственно говоря можно улучшить. Причем рекомендации даются в виде 2 графических планов запросов "Как есть" и "Как может быть". Так же для тюнинга ХП существует служба "Профайлер ХП", отслеживающая все выполнения ХП, UDF и триггеров и показывающая, кто сколько выполнялся, с детальной расшифровкой времени выполнения каждой процедуры по ее строкам. Эта служба позволяет моментально "вычислить" узкие места системы, которые потом можно элементарно отладить с помощью встроенного дебаггера и графического плана запросов (в дебагере позволяется выполнять любые запросы во время точки останова).

Ну вот вроде все, чем по оптимизации ASA круче MSSQL. Но еще раз хочу заметить, что MSSQL не хуже в области оптимизации запросов, например у него в отличие от ASA поддерживается параллейное использование индексов, просто с ним возни больше, знаний больше надо и даже профу можно элементарно "лопухнуться" при составлении запроса, которые на малых тестируемых обьемах будет вести себя на ура, а при реальной нагрузке может привести сервер в состояние вечного тормоза или непрерывной цепи блокировок.
...
Рейтинг: 0 / 0
Мощность ASA
    #32600116
michael_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
c127
>просто SELECT в ASA 6,7,8 не всегда снимает блокировку (в Sybase CIS это признали) и изменить структуру таблицы после этого нельзя.

Есть такое дело. Но может структуру таблиц из клиента менять не нужно? По крайней мере не меняйте их на каждый селект, хотя бы через один.

Постараемся :) Но все же добавлять иногда поле в тот или иной справочник нужно.

c127
>Кроме того, ASA работает намного медленнее с большими базами, где есть пустоты.

Как-то это подозрительно, такого быть не должно. Но например можно не удалять данные, пустот не будет. 500000 строк это не очень большая таблица, пусть себе растет. Кроме того сервер должен заполнять пустоты новыми данными, я так понимаю у вас новые данные пишутся в базу постоянно, так что не очень понятно как эти пустоты там образовались, что-то видимо не в порядке.

Данные удалять все-таки надо. А почему в базе пустоты не заполняются - это вопрос к тех. поддержки Sybase. Попробуйте сами боевую базу сжать методами unload и reload. И сравните объем.

c127
>Запросы к таблицам с 300 000-500 000 записей и более в MS SQL и Sybase ASE выполняются быстрее чем в ASA.

Может простые запросы быстрее, а вот сложные медленнее. Не любит М$ сложных запросов. Но у вас, я так понял, в базе только данные, логика на клиенте, так что запросы только простые.

У нас наоборот, логика в базе, относительно сложные запросы, M$SQL2000 зависал напрочь, так что с пришлось перейти на ASA.

Ваша команда по-видимому раньше проектировала файл-серверные БД? Это не наезд, я тоже раньше программировал на файл-сервере, на SQL сервер было переключиться довольно сложно.

Логики и на сервере и на клиенте хватает. А клиент-серверными системами мы уже 6-й год занимаемся.
...
Рейтинг: 0 / 0
Мощность ASA
    #32600703
c127
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 MasterZiv

>А что значить "трехэтажный запрос" применительно к ASA ?
Просто интересно.

Группы пользователей (и сами пользователи) имеют различные права доступа на группы ресурсов (и сами ресурсы). Права наследуются, пользователь/ресурс может входить в несколько групп, поэтому может быть конфликт прав. Определить имеет ли данный пользователь право данного типа на данный ресурс. Никаких промежуточных таблиц и никаких фйнкций нет, есть несколько промежуточных представлений, все чистый SQL.

Это как раз то на чем MSSQL зависал, а ASA щелкало по 30 запросов в секунду.

2 michael_
>А почему в базе пустоты не заполняются - это вопрос к тех. поддержки Sybase. Попробуйте сами боевую базу сжать методами unload и reload. И сравните объем.

Не спорю, наверняка уменьшится. Только я никогда не замечал зависимости скорости работы ASA от наличия пустот в базе, а Вы говорите: "Кроме того, ASA работает намного медленнее с большими базами, где есть пустоты." Ни разу в жизни не делал unload/load на рабочей базе, и никаких проблем в связи с этим не было.

Скорость запросов от длины таблиц почти не зависит, конечно если правильно выставлены индексы и не вытаскивается вся таблица. По крайней мере на 500000 записей точно ничего не должно быть заметно, для ASA это не объем.
...
Рейтинг: 0 / 0
Мощность ASA
    #32600939
michael_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
c127 Только я никогда не замечал зависимости скорости работы ASA от наличия пустот в базе, а Вы говорите: "Кроме того, ASA работает намного медленнее с большими базами, где есть пустоты." Ни разу в жизни не делал unload/load на рабочей базе, и никаких проблем в связи с этим не было.

Скорость запросов от длины таблиц почти не зависит, конечно если правильно выставлены индексы и не вытаскивается вся таблица. По крайней мере на 500000 записей точно ничего не должно быть заметно, для ASA это не объем.

2c127
Советую поэксперементировать и попробовать сжать БД, а потом посмотреть среденее выполнение запросов. Если база живет давно, то "почуствуйте разницу". У нас время выполнения некоторых выборок раза в 2-3 сокращалось. В MS SQL и ASE такого эффекта нет, это фича ASA.

Скорость запросов зависит от количества записей в таблице и еще как, только зависимость нелинейная. И для ASA 500000 записей - это неплохая нагрузка. Если бы скорость от этого не зависела, то Oracle не делал бы сегментирование таблиц по значению одного из полей, например по полю "месяц" . Это же должно появиться и в MS SQL Yukon. А пока нам самим приходится это делать, сегментируем проводки по кварталам.

У Вас самого насколько большие таблицы? Какие по ним выборки? Критично ли время выполнения SUM/GROUP BY?
...
Рейтинг: 0 / 0
Мощность ASA
    #32600974
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторКритично ли время выполнения SUM/GROUP BY?
В ASA 9.01 кстати появилась новая опция БД: OPTIMIZATION_WORKLOAD = MIXED/OLAP
При значении MIXED ASA при оптимизации запросов для сессии использует алгоритмы, подходящие более OLTP, а при OLAP начинает использовать алгоритмы для OLAP задач (алгоритмы хеширования групповых запросов, в т.ч. с использованием кластерного индекса). Так что развитие по аггрегатным операциям в ASA не останавливается и наоборот они сейчас аккуратненько "слизывают" самое лучшее из Оракла и DB2.
...
Рейтинг: 0 / 0
Мощность ASA
    #32601479
michael_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я говорю про сегментирование, когда большая таблица физически бьется на несколько, а обращаетесь вы к ней как к одной. Такое есть в Oracle, будет в MS SQL и вроде обещают в ASE 15.

Еще раз говорю, скорость работы с таблицей ЗАВИСИТ от ее размера!

Странный спор, мы пытаемся сравнивать ASA с большими серверами, это все равно что сравнивать Газель с КАМАЗом. Они разные по своей "грузоподъемности" и по решаемым задачам. Нужно и то и это. ASA сервер для рабочих групп и наша пятилетняя практика работы с ним это подтверждает. ASA - быстрый кросплатформенный сервер для небольших предприятий.
...
Рейтинг: 0 / 0
Мощность ASA
    #32601578
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
9-ая ASA вообще то уже часто используется именно как Enterprise, а не как Workgroup. Достаточно посмотреть на Story на iAnywhere.com :) От себя могу сказать из личного опыта, что гонял ее на БД 5-15 гб, с табличками по 5-15 миллионов записей и ничего страшного обнаружено не было. Если граммотно сделаны индексы и кластерные индексы, а так же запросы нормально написанны и их план приличный, то даже на серваке с гигом памяти все просто летает. Хотя заметил одну вещь: ASA очень чувствительна к методам проектирования БД: если БД красиво и правильно спроектирована, то и СУБД быстро работает по ее структуре, а если в конечном счете запросы: сплошные внешние соединения, участие по соединениям множества таблиц с огромным кол-вом записей и т.д. - то тут MSSQL прилично делает ASA благодаря своей способности на одну таблицу задействовать в запросе множество индексов.

Кстати я помаленьку Оракл учу и могу сказать только одно: сегментирование таблиц, эффективная работа с курсорами, тонкая ручная его настройка и т.д. сделано там не от хорошей жизни, а как защита от очень "граммотных" спецов, пищущих такие БД, что волосы дыбом встают и действительно кроме Оракла никто с "таким" работать не сможет - тут он действительно крут.

P.S. Ну а про то, что у Вас решения на MSSQL тянут лучше, чем на ASA, так это тоже просто - проектировалась одна БД под 2 абсолютно разных по архитектуре СУБД и не важно, что там TSQL одинаковый. Как итог - решение не оптимизировано не под одну из СУБД, так как различий на уровне оптимизации как раз у ASA и MSSQL гораздо больше, чем например, у ASE и MSSQL (TempDB, лог-журнал, блокировки, принципы работы кластерных индексов, даже поведение оптимизатора при различных уровнях изоляции). По сравнению с 8-кой у MSSQL мощнее оптимизатор не под "заточенные" решения, поэтому быстрее он у Вас и работает. Я думаю, если взять Ваши затыки в ASA и ручками поработать, то выровнять скорость с MSSQL будет можно, только вот совместимость с ним пропадет, вернее уже решения на нем пойдут в тормоз. Ну а если вместо TSQL на ASA задействовать WatcomSQL и перевести на 9-ку, то можно будет вообще получить очень неплохие результаты по скорости работы, обьемам БД и кол-ву подключенных пользователей (особенно если вспомнить специальные OLAP фунции и алгоритмы хэширования, NOT TRANSACTIONAL времянки и т.д.). Я пару раз переводил с MSSQL2000 на ASA9 действительно большие БД (от 10 гб), после ручной оптимизации для ASA одна очень сложная ХП расчета, затрагивающая большие обьемы данных и работающая на MSSQL ровно 40 минут у меня отрабатывалась на ASA9 ровно 31 сек. Хотя далее я опять же ручками провел оптимизацию в MSSQL и сумел сократить время выполнения до 16 минут, что лишний раз подтвердило мою аксиому, что сравнивать СУБД лучше при больших нагрузках, но не на кривых решениях (разве что Оракл под эту аксиому не попадает, в этом плане ему все фиолетово, так как там все равно все ручками и делается).
...
Рейтинг: 0 / 0
Мощность ASA
    #32601745
michael_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну а про то, что у Вас решения на MSSQL тянут лучше, чем на ASA, так это тоже просто - проектировалась одна БД под 2 абсолютно разных по архитектуре СУБД и не важно, что там TSQL одинаковый. Как итог - решение не оптимизировано не под одну из СУБД

Вы наш продукт видели? Я же писал, что где надо, там мы запросы параллелим. Пытаемся выжать все.

Раз уж речь зашла, то
ASA - быстрее работают курсоры, внешние объединения, удаление записей.
MS SQL - быстрее выборки, SUM/GROUP BY, держит сотни активно работающих клиентов.

Но самая большая беда ASA - слабая надежность (безвозвратно портятся базы, сервер может просто вылететь от ошибочного запроса) и критичные баги, они появляются с пугающей регулярностью от релиза к релизу. Какой же это Enterprise? Даже в Sybase об этом молчат. А удачные истории.. Мы сами не хуже про наши внедрения пишем:)
...
Рейтинг: 0 / 0
Мощность ASA
    #32601842
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Баги есть везде. Вопрос только, у кого они быстрее исправляются. Зайдите на форум MSSQL и посканьте его - и сервера просто так виснут до перезагруза и Access Violation с остановкой СУБД периодически появляются и БД в SUSPEND уходят с порчей лога.

Ну а насчет слабой надежности полностью не согласен - что у меня, что у моих друзей крутяться немалые по обьему БД с большой нагрузкой и ничего не портиться и не вылетает (причем есть реально работающее огромное аналитическое хранилище данных на базе ASA9, с кучей сервером, подвязанными как Remote Server к центральному хранилищу). Вылетает только на появляющихся фичах в новых EBF, я отловил с конца февраля 6 штук, заявил в Sybase, уже в мае они все были пофиксены (сейчас мной заявлено и зарегестрировано еще 2 бага, скорее всего они будут уже исправлены в следующем EBF) . Ну а баги, обнаруженные в MSSQL мной и коллегами тоже оперативно ... были занесены Micsrosoft в MSDN, что конечно приятно с точки зрения заботы о пользователях, но не очень полезно с точки зрения борьбы с багами. Ждать их новый сервис-пак годами и молиться, чтобы в него вошли исправления багов - лично мне это не нравиться.
...
Рейтинг: 0 / 0
Мощность ASA
    #32601861
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
P.S. Давайте кстати подведем итог так: у меня был удачный опыт использования ASA, а у Вас неудачный. Признайте, что просто так БД не портятся ни в одной СУБД, в основном это проблемы железа. Просто так запросы, которые долго работали сами по себе не вылетают, это или накатили непроверенный EBF, где есть эти проблемы или же неправильная настройка сервера. И т.д. и т.п. Я лично считаю, что проблемы можно обсуждать только указывая на причины их возникновения, у меня тоже например в MSSQL базы улетали, но это были проблемы железа, поэтому обвинить MSSQL в том, что он портит БД я не могу. Зато могу указать на конкретные проблемы с float, TempDB, кластерными индексами и времянками, которые действительно возникали по вине MSSQL и в дальнейшем были исправлены в его последующих сервис-паках (шаманским путем было выявлено, что и где было исправлено).
...
Рейтинг: 0 / 0
Мощность ASA
    #32602141
michael_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Признайте, что просто так БД не портятся ни в одной СУБД, в основном это проблемы железа

Портятся везде, но кое-где есть штатные средства по выявлению и по возможности исправлению ошибок (например, DBCC в ASE и MS SQL) и они нас выручали и не раз, а кое-где нет (sa_validate вылетает с тем же Assertion failed, сервер падает с невразумительным сообщением).

у меня был удачный опыт использования ASA, а у Вас неудачный

Неправда, на ASA на нашем продукте работают сотни, а то и тысячи пользователей. Опыт весьма удачный. Есть некоторые трудности, я о них и пишу. Они не смертиельны, но хотелось бы жить без них.
На MS SQL работают тысячи наших клиентов и статистика надежности там намного лучше, хотя есть проблемы и там. Но в целом, продукт более стабилен и держит действительно большие объемы и большое количество клиентов. (Я не говорю, что все там лучше - это не так).
Тема была - мощь ASA, я описал наш опыт, причем рассказал как о сильных, так и ослабых сторонах продукта, который мы выявили при эксплуатации. Если Вы с ними не сталкивались - рад за Вас, но хвалить только один сервер не хочу.

Могу, если хотите, и MS поругать :) Только, наверное, это уже надо делать в другом форуме.
...
Рейтинг: 0 / 0
Мощность ASA
    #32602219
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Согласен, только одно хвалить не стоит. Но и не стоит забывать, что ASA8 и ASA9 довольно таки разные уже СУБД по возможностям и наворотам. Было бы здорово конечно услышать от Вас мнение о 9-ке на Ваших БД, так что если решитесь переводить и будут какие нибудь вопросы/проблемы, то с удовольствием помогу в решение проблем и тестах 9-ой версии.
...
Рейтинг: 0 / 0
Мощность ASA
    #32602286
Костя_1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ASCRUS, а как Ваше мнение о select * from big_table. big_table напр. 1.5Mln строк, resultset - 20000 /300kB/.

ASA8 vs ASA9 vs MSSQL.

Знаю, что это "плохой, тупой" селект, но интерестно усышат о путях повышения скорости возврата.
...
Рейтинг: 0 / 0
Мощность ASA
    #32602311
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторASCRUS, а как Ваше мнение о select * from big_table. big_table напр. 1.5Mln строк, resultset - 20000 /300kB/.
Скорость такого SELECT-а зависит только от скорости жесткого накопителя, пропускной способности сети и драйвера доступа к СУБД. Это тоже самое, что сравнивать, в какой ОС быстрее обычное копирование файлов по сети работает :)
...
Рейтинг: 0 / 0
Мощность ASA
    #32602344
Костя_1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А попробуйте такой селект на MSSQL и ASA запустить. Посмотрите на скорость....

Такие селекты любят IMHO, BusinessObjects, Cognos, Delph'исты /некоторые/.
...
Рейтинг: 0 / 0
Мощность ASA
    #32602350
Костя_1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Р.С. Улутшить можно? /скорость/
...
Рейтинг: 0 / 0
Мощность ASA
    #32602481
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А на чем предлагаете скорость сравнивать ? Если например сравнивать ISQL через JConnect и Query Analizer, то они у меня и 15 миллионов записей оба достаточно шустро возвращают.

Чтобы быстрее начинать получать данные в ASA, установите эту опцию:
Код: plaintext
SET PUBLIC.OPTIMIZATION_GOAL = 'first-row'

А так все это разговоры для бедных, такие задачи для блокировочников противопоказаны, и без разницы каких - MSSQL, ASA, ASE или еще чего. Ну изменю я одну всего запись в 1,5 миллионом наборе данных и подержу COMMIT пару минут - и спрашивается, как долго "BusinessObjects, Cognos, Delph'исты /некоторые/" будут сидеть и ждать ответа от сервера с заблокированной записью, которая может им совсем и не нужна ?
...
Рейтинг: 0 / 0
Мощность ASA
    #32602608
Костя_1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И с Infomaker'om i s PBuilderom сравнить можно. К АСА утилиты в комплекте есть (fetchtst.exe).

P.S. имеется в виду не скорость first-record, где АСА очень даже молодец, а выгрузка, например, истории. Мне без злости, просто интерестно, можно ли выгрузку ускорить до скорости MSSQL или ASE. ASE чуток побыстрее MS.
...
Рейтинг: 0 / 0
Мощность ASA
    #32602790
c127
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 michael_

> Скорость запросов зависит от количества записей в таблице и еще как, только зависимость нелинейная.

А я что сказал? "Скорость запросов от длины таблиц почти не зависит, конечно если правильно выставлены индексы". Это и есть нелинейная зависимость.

> У Вас самого насколько большие таблицы? Какие по ним выборки? Критично ли время выполнения SUM/GROUP BY?

Мы проверяли простые запросы на ASA8 на таблицах 200000 - 5000000, замедления не заметили, правда не сильно смотрели.

Те запросы с пользователями и группами, о которых я упоминал, отрабатывали в ASA7 когда в таблице group_users было 800000 записей и 500000 в group_recourses. Замедления скорости с ростом таблиц тоже не наблюдалось. M$SQL2000 на тот момент давно помер и вмешательсво M$ саппорта его не спасло.

SUM/GROUP BY специально не тестировали, пока не критично.

> Странный спор, мы пытаемся сравнивать ASA с большими серверами, это все равно что сравнивать Газель с КАМАЗом.

А по какой это классификации M$SQL попадает в класс больших серверов? По классификации самого мелкософта? Так если их послушать винда получается дешевле линукса.

Они одной весовой категории - для малого и среднего бизнеса, только в случае ASA об этом честно говорят, а мелкософт беззастенчиво толкает свой заведомо неподходящий продукт куда ни попадя.

С надежностью ASA ни разу проблем не было. Иногда непонятно себя вела репликация (ASA7), но это скорее dbremote.


Пора переходить в "сравнение БД".
...
Рейтинг: 0 / 0
Мощность ASA
    #32602811
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторПора переходить в "сравнение БД".
А стоит ли ? Зафлудят ведь. А потом придут некоторые ораклисты и скажут, что все суета сует по сравнению с Ораклом, даже не вникая, что мы тут SMB решения обсуждаем :) Думаю кому интересно узнать про ASA, то они этот топик и так посмотрели.
...
Рейтинг: 0 / 0
Мощность ASA
    #32602868
Guest_2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
КостяК АСА утилиты в комплекте есть (fetchtst.exe).
А у меня такой штуки нет. Поподробнее расскажите, пожалуста, что за утилита, где лежит...
...
Рейтинг: 0 / 0
Мощность ASA
    #32602915
Костя_1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SQL Anywhere 9\Samples\ASA\PerformanceFetch либо http://www.sybase.com/detail?id=1002447 (Fetch and Insert Performance Tool )
...
Рейтинг: 0 / 0
Мощность ASA
    #32602919
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторА попробуйте такой селект на MSSQL и ASA запустить. Посмотрите на скорость....
Попробовал :) У меня есть 5-гиговая БД для ASA и MSSQL. Они абсолютно идентичны по структуре и заполнению данных (это реально работающая БД, перегнанная с MSSQL на ASA). Итак там есть табличка, в которой 26 полей (длина записи - 154 байта) и 4271622 записей. Если ее выгрузить командой UNLOAD TABLE в ASA, то размер получившегося файла: 433 мб. Выгружается она ровно за 38 сек, что есть еще один плюс ASA по работе с командами LOAD и UNLOAD. Далее у меня есть по ODBC алиасу на каждую из СУБД. Для чистоты эксперимента обе СУБД имеют одинаковый размер фиксированного кэша 650 мб, расположенного в AWE и запущенны с оптимальными настройками. Так как нас интересует скорость получения всех записей, то для ASA опция OPTIMIZATON_GOAL = 'ALL-ROWS'. Скорость получения данных проверяется на PowerBuilder, на котором был сделан Grid DataWindow на основе запроса "SELECT * FROM TABLE" с включенной опцией "Row as Disk" (сначала я забыл ее включить и после того, как PB скушал 2 гб виртуальной памяти, я получил синий экранчик в XP и "Subsystem error"). Далее сделана формочка, на которую брошен DataWindow Control, кнопочка "Retrieve" и 2 Label, в одну из которых заноситься время до Retrieve, а во вторую после. Итак сами результаты тестов:
Код: plaintext
1.
ASA  9  -  386  секунд
MSSQL  2000  -  704  секунды
Комментарии я думаю не нужны - тесты были честными, на одной машине, через один протокол ODBC и с одинаковыми настройками на одинаковой БД, через одного клиента, который считается одним из самых быстрых и эффективных по получению и работе с данными.

P.S. Я специально не стал сравнивать скорость через Query Analizer и ISQL по той причине, что это было бы нечестно, так как Query Analizer заточен под получение больших данных по прямому протоколу, а ISQL работает через стандартные протоколы и стал бы дико тормозить на таких обьемах хотя бы из за того, что он написан на Java, которая очень любит кушать память.
...
Рейтинг: 0 / 0
Мощность ASA
    #32602934
Костя_1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ваш результат меня радует. :) Пожалуй, время повторить тест самому (я пробовал с АСА8 и АСА9бета ~год назад)
...
Рейтинг: 0 / 0
Мощность ASA
    #32603098
Sergey Orlov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
К сожалению все забыли, что ASA мультиплатформенный сервер SQL, и поведение его наверняка зависит от платформы на которой его тестируют.
У нас был ASE на NT, который просел при количестве пользователей в районе 50, увеличилось время отклика в 4 раза.
Перенесли на слабенький SPARC с ос Solaris 8, проблема изчезла. хоть 5 пользователей, хоть 70.
...
Рейтинг: 0 / 0
Мощность ASA
    #32603186
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ASA9 прекрасно себя чувствует на Windows XP, 2000 и 2003, пользуется AWE, что снимает проблему свапа (основная проблема тормозов на Windows) и большого обьема памяти, может задействовать SMTP протокол и еще много чего. Тесты кстати проводились на XP SP1 для обоих СУБД.
...
Рейтинг: 0 / 0
Мощность ASA
    #32604945
Kovalevsky Oleg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извиняюсь, но Query Analyzer использует не TDS, а ODBC.

Best wishes,
-------------------------------
Kovalevsky Oleg
Polarnet Ltd
Moscow, Russia
...
Рейтинг: 0 / 0
Мощность ASA
    #32604963
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо за поправку, посмотрел, действительно в MSSQL2000 ISQLW работает через ODBC, раньше насколько я помню он по другому работал. Хотя это без разницы для примера - ASA ISQL все одно писан на Java, работает через JDBC или JConnect и уже уйдет в аут и при получении 10000 записей, такая вот она эта - Java :)
...
Рейтинг: 0 / 0
Мощность ASA
    #32604978
c127
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sergey Orlov

>К сожалению все забыли, что ASA мультиплатформенный сервер SQL, и поведение его наверняка зависит от платформы на которой его тестируют.
У нас был ASE на NT, который просел ...


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

Врядли количество пользователей ASE так сильно зависит от ОС. Скорее всего сервер был неудачно установлен или настроен.
...
Рейтинг: 0 / 0
Мощность ASA
    #32605371
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
c127
Sergey Orlov

>К сожалению все забыли, что ASA мультиплатформенный сервер SQL, и поведение его наверняка зависит от платформы на которой его тестируют.
У нас был ASE на NT, который просел ...


Врядли количество пользователей ASE так сильно зависит от ОС. Скорее всего сервер был неудачно установлен или настроен.

Зависит, факт. У нас тоже была та же ситуация, описанная Sergey Orlov.
Работали на NT - ASE загибалось. Перешли на Sun, сначала даже на простенький, о четырех ( кажется ) процах, с четырех процного Intel-а.
Картина разительно изменилась в лучшую сторону.

Мы тестировали под нашей нагрузкой несколько платформ (даже графики строили ). Вывод был такой - NT на Intel работает быстрее при малом кол-ве пользователей, потом при росте кол-ва пользователей - загибается. Sun ровнехонько подтормаживает (относительно NT), но делает это примерно одинаково и на 10 пользователях, и на 100-200. Говорят, у Intel большие накладные на переключение задач. Не знаю, уже (увы) далеко отстал от современности в этих вопросах.

Вот так вот.
...
Рейтинг: 0 / 0
Мощность ASA
    #32607177
c127
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 MasterZiv

> Зависит, факт.

Может быть, с ASE не работал.

> Вывод был такой - NT на Intel работает быстрее при малом кол-ве пользователей, потом при росте кол-ва пользователей - загибается.
...
Говорят, у Intel большие накладные на переключение задач. Не знаю, уже (увы) далеко отстал от современности в этих вопросах.


Так кто тормозит: NT или ASE? ASE тут вроде ни при чем.

Всегда говорил что интел это архитектура для домохозяек.
...
Рейтинг: 0 / 0
Мощность ASA
    #32607841
michael_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
c127
Так кто тормозит: NT или ASE? ASE тут вроде ни при чем.


Тормозит ASE на NT. ASE плохо оптимизирован на NT, он заточен, прежде всего, для UNIX. А на NT, а ранее и на NetWare - проблемы с многопользовательской работой. Потому такой и эффект. Это беда многих кроссплатформенных систем - хорошо работают не везде.

Хотя, и NT не без греха. Многозадачность в Юниксах подобротнее сделана.

А вот с ASA на Win все в порядке. Там только на NetWare в сети не все гладко.
...
Рейтинг: 0 / 0
Мощность ASA
    #32607853
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так кто тормозит: NT или ASE? ASE тут вроде ни при чем.
А фиг его знает. ASE под NT. Хотя очень не понятно еще , при чем здесь, например, переключение задач - в ASE оно свое, свои задачи, свое пререключение.
...
Рейтинг: 0 / 0
42 сообщений из 42, показаны все 2 страниц
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Мощность ASA
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]