AXForum  
Вернуться   AXForum > Рынок > Сравнение ERP-систем
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 07.12.2009, 12:25   #10  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Похоже больше нет тем.

Тогда попробую начать обосновывать свое мнение. Цитирую:
Цитата:
Сообщение от mazzy Посмотреть сообщение
Нет, конечно. До Аксапты им как до Китая раком.
Тогда еще некоторые темы для обсуждения.
Пока кратко, без обоснования и ссылок (в надежде, что большинство понимает о чем идет речь):

1. Query
В платформе 1С нет объекта, который позволяет ПРОГРАММИСТУ строить query программно. Аксаповеды, вы не поверите, но программисты 1С до сих пор парсят и правят тексты строк запросов.

Т.е. если пользователь хочет добавить условия и фильтры, то программист должен позаботиться об этом и вставить куски кода с этими условиями в текствоый запрос. Для этого программисту нужно парсить строку запроса и вставлять туда условия со скобками, кавырками и прочей чешуей...

Да, в 1С есть Построитель запросов - это некий конструктор, который позволяет мышкой создать и вставить текст запроса в код. Но с этим Построителем запросов нельзя работать программно в run-time. Только в design-time.

Да, в 1С есть возможность задавать запросы в отчетах. И такие запросы пользователь может менять. Но в такие запросы нельзя влезть программно. И кроме того, такая возможность существует только в отчетах.

Очень много Бла-бла-бла... на эту тему. Но надеюсь, что большинство участников, понимает о чем идет речь.

2. Кэширование таблиц
В Аксапте очень большое значение уделяется кэшированию таблиц. См. книжку Dynamics Inside.

Кэширование конечно же не поможет при работе с большими таблицами типа InventTrans, InventSettlement и прочее. Но кэширование заметно помогает при работе с настроечными таблицами (профили разноски, параметры компании, параметры валют, вевозможные группы, статусы и другие настройки)

В результате треть запросов (и больше) Аксапта просто не отправляется на SQL-сервер.

На кэшировании таблиц в Аксапте завязано очень многое. Так код может выполняться быстрее
X++:
while select custtrans
where ...
{
    custtable = custtable::find(custtrans.accountnum)
}
чем код
X++:
while select custtrans
where ...
join custtable
where custtable.accountnum == custtrans.accountnum
{
...
}
а код
X++:
while select custgroup
where custgroup.CustGroup == 'myGroup'
{
  if( custgroup.paymtermid == 'myTerm' )
  {
  ...
  }
}
может выполняться быстрее, чем
X++:
while select custgroup
where custgroup.CustGroup == 'myGroup'
&& custgroup.paymtermid == 'myTerm'
{
  ...
}
Это просто пронизывает Аксапту.

Те, кто говорят о том, что Аксапта не поддерживает T-SQL в полном объеме, просто не понимают о чем идет речь. Аксапта очень большое число "правильно написанных" запросов просто не посылает на SQL-сервер. И для разработчиков самой Аксапты, и для разработчиков приложений на этой самой Аксапты предельно важно, чтобы макисмально распределить нагрузку между AOS и SQL.

Принцип простой - в многопользовательской среде - несколько простых и кэшируемых запросов намного лучше (с точки зрения производительности), нежели один сложный запрос. Выражаясь языком поговорок - лучше сорок раз по разу, чем один раз, но сорок раз.

3. Listerals vs Placeholders
http://axapta.mazzy.ru/lib/literals_vs_placeholders/
В 1С просто нет такой штуки. Разработчики платформы 1С об этом не думали.
Они вообще не думали, как SQL будет выполнять такие запросы.

Они похоже не думали, что MS SQL прекращает всякую оптимизацию запроса, если в нем присутствует больше 8 таблиц. См. также разыменование.
Комментарий: ниже Alexius и Vezunchik настойчиво попросили меня подтвердить мое высказывание про прекращение оптимизации. Я покопался и не смог найти подтверждение. О чем написал здесь. Поэтому свое высказывание про оптимизацию зачеркиваю. Спасибо вам за настойчивость. Однако, на мой взгляд это никак не влияет на исходный тезис, поскольку 1С с легкостью генерирует complex SELECT statements, для которых оптимизатор выбирает не самый оптимальный план. Мое мнение осталось прежним - разработчики платформы 1С не думали как будут выполняться такие сложные запросы.
Ну и так далее.

В общем, разработчики 1С повышают скорость работы единственного пользователя в монопольном режиме.
А разработчики Аксапты прежде всего повышают скорость работы в многопользовательском режиме. (Где-то была статья про отличия в этих подходах. Вроде у Еременко. Не помню... Буду благодарен, если подскажете ссылки)

Платформа еще не скоро приблизится
Если и приближается, то к старым версиям Аксапты 2.1, 2.5, которые существовали лет 8-10 назад.
Чтобы там ни провозглашали 1Сники. И как бы не пытались промыть мозги маркетингом.
__________________
полезное на axForum, github, vk, coub.

Последний раз редактировалось mazzy; 13.12.2009 в 21:41. Причина: про прекращение оптимизации запроса с 8ю таблицами.
За это сообщение автора поблагодарили: sukhanchik (4), FE (1), alex55 (1).
Теги
1c, платформа, сравнение систем

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
1С: Франчайзи - есть ли будущее? miklenew Другие системы на рынке 13 03.10.2009 12:22
Изменения ассортимента, цен, условий поставки и сопровождения ряда продуктов «1С:Предприятия 7.7» mazzy Другие системы на рынке 40 30.04.2008 23:31
Обсуждение документа "Сравнение 1С и AX" Кузнецов Александр Сравнение ERP-систем 44 20.02.2008 13:56
Платформа «1С:Предприятие» как средство разработки бизнес-приложений Morpheus Другие системы на рынке 1 26.12.2006 13:10
1С ищет стратегического инвестора Роман Кошелев Другие системы на рынке 1 16.04.2003 23:02

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 13:49.