Міфи і реальність XML, Різне, Інтернет-технології, статті

Сергій Кузнецов, ІСП РАН, Центр інформаційних технологій
www.citforum.ru

Людям властиво вірити у філософський камінь. Ось-ось хтось його винайде, і все життя зміниться. Так відбувається і в світі інформаційних технологій. Згадаймо, наприклад, коротку, але яскраву історію Java-технологій. У 1995 р. мені довелося бути присутнім на дводенній конференції, організованої компанією Sun Microsystems спеціально для журналістів. Формально конференція присвячувалася випуску першого мікропроцесора серії UltraSparc. Фактично велику частину часу зайняло представлення нового об’єктно-орієнтованої мови Java. Тоді мене вразило виступ Білла Джоя, який сказав, що створення цієї мови є головним досягненням в його житті, і що нарешті відкриваються реальні можливості організації та доступу в Internet мультимедійної інформації. Напевно, всі пам’ятають, скільки сил і коштів витратила Sun, щоб переконати розробників програмного забезпечення повністю перейти на використання мови Java.

Сьогодні вже зрозуміло, що Java-технології (зокрема, JavaBeans і Jini) є ще одним набором інформаційних технологій, який придатний і вигідний для використання в одних ситуаціях і не приносить успіху в інших випадках. Більше того, мені не відомі випадки, коли серйозні інформаційні системи створювалися б на основі лише цих технологій без залучення існували раніше або виникли паралельно (Щоб більше не відволікатися від теми, не буду приводити конкретні приклади).

Тепер багатьом здається, що XML врятує світ і призведе до нової епохи інформаційного благоденства. Можливо, воно й так, але щось я в цьому сумніваюся. Перерахую деякі міфи, що виникли навколо XML:

Міф перший. XML повністю змінить життя в Internet, забезпечивши, нарешті, єдине світовий інформаційний простір.

Міф другий. XML стане єдиним загальноприйнятим стандартом подання інформації в системах електронного бізнесу (як B2C, так і B2B).

Міф третій. Засновані на XML системи баз даних за рахунок своєї більшої гнучкості витіснять реляційні та інші системи.

Цей список наявних міфів можна продовжувати, але для наших цілей їх вистачить. В міфи хочеться вірити. Але щось рідко зустрічаються випадки, коли сліпа віра давала хороші результати. З іншого боку, в кожному міфі є частка реальності. Обговоримо, чому міфічні наведені вище висловлювання і яка їхня реальна складова.

Міф перший (спростування). Що нас сьогодні не влаштовує в Internet? (Я не буду говорити про технічні труднощі.) Фактично, сьогодні Всесвітня Павутина нагадує джунглі, де, звичайно, можна пробратися від будь-якого заданого місця до іншого, але якщо метою походу в джунглі є пошук конкретного виду орхідей, то далеко не факт, що подорож завершиться успішно. Звичайно, крім явної навігації за гіперпосиланнями (ліанах, що охоплює всі джунглі) в Internet є ряд пошукових машин (не знаю прямого аналога в джунглях). Але всі знають, що всі ми маємо право шукати в Internet, але не маємо гарантій того, що знайдемо бажане (навіть якщо воно реально існує).

Міф полягає в тому, що якщо перейти від плоских файлів HTML до напівструктурованих файлів XML, то можливості релевантного пошуку різко покращаться. За кожним міфом варто реальність. Дійсно, повністю переробивши весь Internet на XML, вирішивши масу проблем уніфікованого подання метаінформації, створивши принципово нові пошукові машини, можна теоретично принципово поліпшити життя в Internet. Але все-таки це міф. Міф, тому що переважна більшість постачальників інформації в Internet не зацікавлене в тому, щоб ця інформація легко знаходилася через універсальні пошукові машини. Реальність полягає в тому, що в Internet з’являться тематично орієнтовані острівці, знаючи про які, ви дійсно можете знайти будь-яку інформацію з даної тематики. Але навіть ця реальність – це не реальність сьогоднішнього дня. Але я в неї вірю.

Міф другий (спростування). Якщо перший міф властивий нещасним користувачам Internet, то другий дуже сильно роздувається за рахунок зусиль відділів маркетингу виробників апаратури і програмного забезпечення. Подивіться, як здорово вийшло. Майже одночасно виникли два незрозумілих, але привабливих терміна – “електронний бізнес” і “XML”. І солідні компанії говорять вам, що електронний бізнес гарантує вашої власної компанії абсолютне процвітання, але цей бізнес можна засновувати тільки на продуктах, що базуються на XML. Хороший маркетинговий хід, мені він і самому подобається. Але в чому полягає реальність?

А вона полягає в тому, що для досягнення реального успіху в електронному бізнесі при створенні відповідної системи потрібно вирішити масу завдань, які не мають ніякого відношення до XML. XML не може претендувати навіть на роль стандарту подання інформації, оскільки майже завжди поряд з наявністю нових XML-баз даних розумно припустити існування традиційних структурованих баз даних. Так в чому ж полягає реальність? Вона полягає в тому, що в електронного бізнесу як правило дійсно потрібна можливість зберігання і вибіркі даних, які не є повністю структурованими. Так, на сьогодні найкращим кандидатом для подання даних є XML, але є безліч невирішених (або вирішених погано) проблем, що заважають використанню цієї мови.

Міф третій (спростування). Давайте згадаємо, звідки є пішли бази даних. А звідти, що за наявності тільки файлових систем (з яких і почалося управління даними у зовнішній пам’яті) структуру даних (Бухгалтерських, банківських, систем резервування тощо) доводилося підтримувати в прикладній програмі. А якщо їх більше однієї? Як контролювати узгодженість? Я ж не буду говорити про цілісність даних, можливість багатокористувацького доступу, транзакційні управління, журнализация змін і відновлення після збоїв і т.д. Міфічність того, що бази даних, засновані на XML, витіснять традиційні бази даних, для мене очевидна. Є маса прикладних областей, в яких потрібні саме структуровані, а не напівструктуровані дані. Для них потрібні і будуть потрібні традиційні бази даних зі структурованої схемою.

Реальність полягає в тому, що є безліч інформаційних програм, для яких дані не вкладаються природним чином в традиційні моделі. Для них XML може бути вельми корисний. Але зауважу, що за наявності кількох комерційних серверів XML-баз даних, ні в одному з них поки не вирішені у повному обсязі ті завдання, з вирішенням яких успішно справляються традиційні СУБД.

Хочу посилити свою позицію і заявити про те, що, на мою думку, розумно використовувати будь-яку технологію, пов’язану з XML, можна тільки в комбінації з іншими технологіями. Наведу кілька прикладів.

У певному сенсі XML аналогічний мові асемблера. Припустимо, що нам потрібно спроектувати деяку XML-базу даних. (Якщо ви думаєте, що для таких баз даних фаза проектування не потрібно, то глибоко помиляєтеся.) Один з підходів полягає у використанні UML (Unified Modeling Language). Існує де-факто стандарт відображення UML в XML. Є відповідна промислова підтримка.

Коли мені кажуть, що MS Explorer тепер підтримує XML, я голосно сміюся. Очевидно, що стандартний браузер розуміє тільки підмножина XML, а певні користувачами теги просто ігнорує. Наскільки я розумію, можливі два рішення для забезпечення адекватного сприйняття XML-документів на стороні користувача. Перший (очевидний) підхід – створення спеціалізованих браузерів, які розуміють сенс DTD заданого набору XML-документів. Другий підхід полягає у використанні Java-аплетів. Він універсальний і забезпечує можливість правильної роботи з XML-документами з будь-якого стандартного браузера.

Якщо виникає бажання створити на основі XML розподілену інформаційну систему, то, звичайно, буде потрібно використання додаткового програмного забезпечення проміжного рівня (middleware). Для мене краще була б CORBA, але можливі рішення і на основі COM / DCOM або RMI.

Нарешті, я глибоко впевнений, що які б нові мови запитів не були придумані для XML-баз даних, буде жити мова SQL. Рано чи пізно знадобиться реалізувати SQL для роботи з XML-базами даних, що володіють реляційної структурою. Тоді й згодиться інженерія традиційних SQL-орієнтованих СУБД.

Я далеко не песиміст і сподіваюся, що поява XML-технологій і стандартів реально дозволить поліпшити інформаційну технологію в цілому, хоча і не справить революційного перевороту.

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*