Я новичок в использовании саксона. Могу ли я попросить эксперта по использованию Saxon для обработки XQuery указать некоторые подробности о том, Что хорошего в Saxon? и чем он отличается от других процессоров XQuery? заранее спасибо
Саксонский процессор XQuery
Ответы (2)
Майкл Кей, автор Saxon, написал об этом в статье Ten Reasons Why Saxon XQuery is Fast (PDF). Он довольно хорошо описывает выбор дизайна, сделанный при разработке Saxon.
Возможно, главное отличие процессоров XQuery состоит в том, что они делятся на три класса:
автономные процессоры XQuery, работающие с XML в памяти
XQuery как язык запросов для собственных баз данных XML
XQuery как расширение SQL для доступа к XML (и другим данным), хранящимся в реляционных базах данных.
Saxon относится к первому классу, хотя, конечно, места для себя у него нет. Если вы выбираете продукт, вы избалованы выбором. Я знаю некоторых людей, которые пытаются обеспечить, чтобы их приложение работало с более чем одним процессором XQuery, чтобы они могли сравнивать за определенный период времени, но это немного роскошь. Большинство людей просто выбирают один более или менее случайным образом, а затем меняют его только в том случае, если он оказывается бесполезным.
Saxon не всегда занимает первое место в тестах производительности, хотя обычно он достаточно близок к лидеру, поэтому производительность не будет значительным отличием от других ведущих продуктов. Конечно, результаты тестов будут различаться в зависимости от типа рабочей нагрузки. Стабильно получать серебряные медали важнее, чем время от времени выигрывать золото. Но производительность сама по себе не является нашей главной целью при разработке Saxon: наш первый приоритет — соответствие стандартам, второй — удобство использования (особенно отладка и сообщения об ошибках, а также API), а производительность — только третье.
Если вам нужна одна единственная причина для выбора Saxon, я бы сказал, что это отладка и диагностика. Вы будете тратить большую часть своего времени и денег, пытаясь понять, почему ваши запросы дают неправильные ответы, и мы прилагаем огромные усилия, чтобы помочь вам ответить на этот вопрос как можно быстрее и безболезненнее.