З досвіду створення системи аналізу відвідуваності комерційного сайту (частина 1), Різне, Інтернет-технології, статті

Автор: Володимир Некрасов, заступник генерального директора компанії Intersoft Lab

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

Аналіз журналу в режимі реального часу. Існує ряд безкоштовних продуктів, таких як відомі системи Analog або WebStat, реалізованих, як правило, у вигляді Java-аплета, який читає в режимі реального часу журнал сайту і відображає на html-сторінці деякий фіксована кількість звітів. Ці рішення передбачають відносно невеликий розмір журналу та скромні потреби користувачів.

Оренда аналітичного сервісу. Другий варіант – аналітичний сервіс, що пропонується на сайті третьої фірми компаніям, які віддають перевагу не експлуатувати ПО, а орендувати чужі обчислювальні ресурси. Користувач має на своєму сайті спеціальний скрипт – шпигун (spider), який отримує інформацію від броузера відвідувача і посилає її на сайт постачальника сервісу, де інформація записується в загальну базу даних. При вході на особисту сторінку сайта користувач сервісу може виконувати параметризрвані запити і отримувати звіти заданої форми. Одним з популярних прикладів такого сервісу на Заході є WebTrends компанії NetIQ, а в Росії – SplyLog, однойменної компанії.

Коробкові продукти масштабу підприємства. Третій варіант – спеціальна система, яка продається як коробковий продукт і складається з модулів, які встановлюються на стороні Інтернет-сервера і в локальній мережі компанії. Ці продукти дозволяють накопичувати історію роботи сайту, зберігати й обробляти значні обсяги даних.

Рішення на базі OLAP-інструментів. Власнику сайту важливо знати, як змінюється кількість відвідувачів, які сторінки, серед яких груп користувачів були найбільш популярні за заданий період, тобто отримувати підсумки відвідуваності сайту в різних розрізах. Це класична задача OLAP аналізу. При наявності даних можна багаторазово і миттєво виконувати подібні запити з різноманітною фільтрацією і угрупованнями. У термінах OLAP ім’я сторінки, ім’я відвідувача і період будуть вимірами, а кількість запитів – фактами. Користувач отримує необмежену кількість динамічних звітів, що підсумовують факти в розрізі вимірювань.

Більшість постачальників OLAP-продуктів пропонують свої рішення для аналізу відвідуваності сайту. У базі даних, що фіксує запити відвідувачів сайту, накопичується величезна кількість інформації за тривалі періоди, ця інформація використовується тільки для аналізу, при цьому потрібно швидко отримувати великі вибірки даних. Таким чином, у наявності всі ознаки класичного Сховища даних, тому, як правило, постачальники OLAP-рішень пропонують комплекси, що включають в себе засоби вилучення, очищення і завантаження даних (ETL – Extract, Transformation, Loading), Сховище даних та OLAP-інструмент для аналізу даних.

Так, корпорація Oracle поставляє “коробковий” продукт масштабу підприємства Oracle9iAS Clickstream Intelligence, який побудований на комплексі продуктів Oracle: СУБД Oracle9i, сервері додатків Oracle9i Application Server (Oracle 9iAS), Oracle Warehouse Builder 2.1.1, а в якості клієнтського кошти пропонується OLAP-клієнт Oracle Discoverer. Цей продукт дозволяє одночасно аналізувати дані декількох сайтів підприємства.

Microsoft пропонує рішення “Clickstream analytics for the Microsoft business intelligence platform”, яке є не продуктом, а концепцією, рекомендованої користувачам. Це рішення включає в себе Інтернет сервер Microsoft Commerce Server, СУБД MS SQL для побудови Сховища даних, OLAP-сервер MS Analysis Services для створення багатовимірних вітрин даних. В якості клієнтського кошти пропонується Excel з вбудованим в нього OLAP-компонентом PivotTable або комплект COM-компонент Office Web Components.

SAS Institute постачає продукт, іменований IntelliVisor, який збирає дані в Сховище даних та аналізує активність відвідувачів сайту.

У цій статті розповідається про досвід створення системи аналізу відвідуваності сайту (clickstream аналізу) на основі OLAP-клієнта Контур Стандарт компанії Intersoft Lab. Система була створена для аналізу роботи нового сайту, призначеного для просування комерційного продукту і реалізованого на ОС Linux і сервер Apache. Для більшої наочності у статті наводяться згенеровані дані.

Джерело даних

Найдоступнішим і повним джерелом даних для аналізу роботи сайту є стандартний журнал Інтернет сервера. Наприклад, журнал сервера Apache містить наступні поля: IP-адреса, Дата, Час, Ім’я запитуваної ресурсу, Статус запиту, Сторінка, з якою прийшов відвідувач. Аналогічна інформація журналу доступна користувачам OC Microsoft Windows і сервера IIS.

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

Для ідентифікації клієнта замість IP-адреси іноді використовують запис cookie – текстового рядка, що з’являється на його комп’ютері при першому заході на сайт. При наступних заходах відвідувач розпізнається по цьому рядку. Це вирішує ряд проблем, наприклад, деякі провайдери, наприклад AOL, динамічно генерують IP-адреси, що робить їх користувачів анонімними. Однак можна заборонити запис cookie на свій комп’ютер або періодично очищати його, що робить таку технологію не більш точною, ніж розпізнавання відвідувача по IP-адресою.

Оскільки в нашому випадку ми маємо доступ до журналу сайту, то саме він і був обраний в якості джерела даних. Для ідентифікації відвідувачів був використаний їх IP-адреса, як найбільш простий і прийнятний по точності підхід.

У зв’язку з тим, що було потрібно забезпечити високу інтерактивність роботи користувача зі звітами, було прийнято рішення про зберігання журналу в спеціальній базі даних. Для цього був розроблений простий скрипт на мові Python – “мігратор”, який з заданою періодичністю копіював нові записи журналу в СУБД MS SQL. “Мігратор” став нашим ETL інструментом.

Доступ до даних

Існує кілька варіантів розташування БД журналу і способів вилучення з нього даних.

Прямий доступ до БД по IP-протоколу. База даних розташовується на віддаленому сервері, а клієнтська програма на персональному комп’ютері. До переваг даного способу можна віднести можливість отримання інформації в режимі реального часу і використання “товстого” клієнта, до недоліків – високий трафік, особливо, якщо користувачів багато. Крім того, він небезпечний і вимагає спеціальних заходів щодо захисту від хакерів.

Виконання запиту на Web-сторінці. Для виконання запитів до БД, розташованої на Інтернет сервері в режимі on-line, можна розробити CGI-модуль і реалізувати як традиційний користувальницький інтерфейс параметризованих запитів, так і сторінку, на якій розташована ActiveX OLAP-компонента, яка буде виконувати ці запити і надавати користувачеві інтерактивні звіти. Таким чином, аналіз сайту буде виконуватися через Інтернет. Цей спосіб особливо ефективний для масового користувача і в разі необхідності підтримки безперервного моніторингу сайту.

Періодична інкрементального реплікація даних в БД, розташовану в локальній мережі. Незважаючи на гадану ваговитість, це рішення дуже просто в реалізації і надає найбільш комфортні умови для роботи кінцевого користувача сервісу завдяки максимальній швидкості виконання запитів. Крім того, це найбільш економічний спосіб, оскільки він породжує мінімальний трафік.

Оскільки нашим завданням було створення системи OLAP-аналізу корпоративного сайту для декількох співробітників компанії, перевагу було віддано третім варіантом.

Розширення інформативності

Отже, із заданою періодичністю нові записи журналу сайту копіюються в базу даних MS SQL, яка знаходиться в локальній мережі компанії.

Ім’я користувача. Про наш відвідувача ми знаємо тільки одне – його IP-адресу. Однак це нічого не говорить аналітику. Тому в “мігратор” був доданий код, який запитує по IP-адресою ім’я хоста. Припустимо, що воно має наступний вигляд: host123.interbusiness.it. Дивлячись на нього можна зрозуміти, що на сайті побував співробітник компанії interbusiness з Італії. Можна розчленувати ім’я хоста на два поля: ім’я сервера і країну, що підвищить наочність і зручність використання. Однак, це дуже грубий метод – сервер відвідувача може знаходитися в домені com і при цьому розташовуватися в будь-якій країні.

Географія відвідувачів. Більш точний спосіб отримати код країни відвідувача з його IP-адреси – виконати запит до однієї з баз даних в Мережі, що зберігає зарезервовані діапазони IP-адрес, наприклад, www.ripe.net/perl/whois. Щоб перетворити в звіті код країни в назву, потрібно додати в базу даних довідник країн і зв’язати його з таблицею журналу. Для отримання коду міста або регіону можна виконувати запит до регіональних серверів. Отримання географічних характеристик відвідувача – це окрема цікава тема, на яку можна знайти багато публікацій в Інтернеті. Це найважливіший вид аналізу для глобального бізнесу: міжнародного або в масштабах країни.

Посилаються сервера. Якщо сайт комерційний і його власник зацікавлений у високому трафіку, він, напевно, розміщує в каталогах, пошукових машинах та інших ресурсах Мережі відомості про сайт і продаються на ньому продуктах. Оскільки ця робота вимагає значного часу, а часто і великих інвестицій, необхідно аналізувати її ефективність, а саме: отримувати звіти про кількість користувачів, які зайшли на сайт за посиланнями з інших сайтів і з пошукових машин. З повною посилання на посилається сторінку можна виділити тип посилається сервера: пошукова машина, News Groups, який посилається сайт і власний сайт. У таблицю журналу додається поле “Категорія посилається сервера”, і створюється пов’язаний з ним довідник; також додаються поле “посилається сервер”, в яке записується ім’я сервера, виділення із заслання.

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

Пошукові слова. З рядка посилання для пошукових машин виділяються пошукові слова, які для зручності дублюються “мігратор” в окреме поле таблиці журналу. Це дозволить проаналізувати області цілеспрямованих інтересів відвідувачів, а також наскільки відповідають мета-теги і контент сайту цим інтересам.

Маршрут руху відвідувачів. Якщо відфільтрувати категорію посилається сайту за значенням “наш сайт”, то що посилаються сторінки стануть показувати маршрут руху відвідувача. Можна побудувати класичну реляційну ієрархію “батько-дитя” з двох полів таблиці. У кожного запису в поле “Батько” буде розташована перше посилання, а в поле “Дитя” – сторінка, на яку перейшов відвідувач з батьківської сторінки. Таку ієрархію можна “розкручувати” в звітах самими різними способами. Зокрема, OLAP-система може показати найбільш популярних “Батьків”, з яких відвідувач приходить на сторінку “Замовлення продукту”. Справедливості заради треба визнати, що найбільш повний аналіз навігації відвідувачів надають спеціалізовані програми або системи видобутку даних (data mining). Крім того, це завдання замикається з CRM-аналізом, що було відзначено багатьма постачальниками, зокрема продукт WebTrends CommerceTrends компанії NetIQ був інтегрований з відомою CRM-системою Siebel.

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

В результаті цих модифікацій база даних журналу перетворилася на повноцінну вітрину даних, побудовану за класичною схемою “Зірка”. Для різних видів звітів були створені спеціальні подання (View). Наприклад, для отримання кількості унікальних відвідувачів створюється уявлення, в якому містяться описові поля – характеристики відвідувача, дата. Запити користувача виключаються, створюється поле-лічильник як вираження Select 1 AS counter. Це забезпечує унікальність запису про одне користувача за одну дату.

Всі підготовчі роботи наш Web-майстер виконав за кілька днів.

Створення OLAP-додатки

Для створення аналітичного програми система “Контур Стандарт” налаштовується на базу даних, потім у спеціальному інтерфейсі без програмування описуються запити до бази, після цього на їх основі створюються OLAP-звіти.

Специфіка OLAP-технології така, що всі звіти, необхідні для аналізу сайту, можуть бути реалізовані як один звіт з безліччю вимірів (Хост, Дата, Запит, Лінк) і трьома фактами (Кількість унікальних відвідувачів, Кількість запитів, Об’єм завантаження). Міняючи місцями колонки звіту і встановлюючи різні фільтри, аналітик може самостійно отримати всю необхідну інформацію. Проте користуватися таким звітом незручно.

Тому був зроблений набір інтерактивних звітів, необхідних для аналізу комерційного сайту:

  1. Унікальні відвідувачі.

  2. Географія відвідувачів.

  3. Відвідувані сторінки.

  4. Посилаються сайти.

  5. Пошукові машини і слова.

Цей набір не є кінцевим, по мірі необхідності можуть додаватися й інші звіти, наприклад, “Помилки”, “Завантаження демонстраційних версій” і т.д.

Унікальні відвідувачі

Цей звіт показує динаміку відвідувань сайту. У верхній частині звіту розташовані виміру, за якими можна виконувати фільтрацію. З їх допомогою можна отримати серію похідних звітів: “Унікальні відвідувачі з США “,” Динаміка відвідувань по днях заданого місяця “та інші.

Рис. 1. Унікальні відвідувачі

Географія відвідувачів

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

Рис. 2. Географія відвідувачів

Відвідувані сторінки

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

Рис. 3. Відвідувані сторінки

Посилаються сайти

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

Рис. 4. Посилаються сайти

Пошукові машини

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

Рис. 5. Пошукові машини

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

Рис. 6. Аналіз динаміки приходу відвідувачів з пошукових машин

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

Висновок

Існує безліч сервісів для дослідження відвідуваності сайтів. У чому переваги застосування OLAP-технології для вирішення цього завдання?

По-перше, такий підхід знімає зовнішні обмеження на розмір аналізованої бази даних і склад звітів. Можна досліджувати дані, накопичені за будь-який проміжок часу. Нові довільні OLAP-звіти створюються швидко і без програмування.

По-друге, застосування описаного підходу дозволяє користувачам, не озираючись на розробника сервісу, постійно розширювати поле та логіку аналізу. Наприклад, модифікуючи “мігратор”, можна збільшити склад аналізованих показників, застосувати складні алгоритми розрахунку відсутніх даних і налаштувати на їх основі нові інформаційні зрізи.

Нарешті, користувачі звітів: маркетологи, аналітики, керівники – отримують всі переваги технології OLAP.

У порівнянні з іншими OLAP-рішеннями, описана реалізація є однією з найбільш простих і недорогих. Вона включає в себе 3 елементи: відносно нескладний скрипт для трансформації й завантаження даних, реляційну вітрину даних на MS SQL-сервері і клієнтську OLAP-систему.

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


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

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

Ваш отзыв

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

*

*