Здавалка
Главная | Обратная связь

Файл-серверная архитектура



 

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

Основные достоинства и недостатки файл-серверных архитектур.

Конечно, основным достоинством является простота организации. Проектировщики и разработчики информационной системы находятся в привычных и комфортных условиях IBM PC в среде MS-DOS, Windows или какого-либо облегченного варианта Windows NT. Имеются удобные и развитые средства разработки графического пользовательского интерфейса, простые в использовании средства разработки систем баз данных и/или СУБД.

В целом, в файл-серверной архитектуре мы имеем "толстого" клиента и очень "тонкий" сервер в том смысле, что почти вся работа выполняется на стороне клиента, а от сервера требуется только достаточная емкость дисковой памяти.

Клиент-серверная архитектура

Под клиент-серверным приложением мы будем понимать информационную систему, основанную на использовании серверов баз данных.

Термин "сервер баз данных" обычно используют для обозначения всей СУБД, основанной на архитектуре "клиент-сервер", включая и серверную, и клиентскую части. Такие системы предназначены для хранения и обеспечения доступа к базам данных.

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

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

Типичный сервер баз данных отвечает за выполнение следующих функций:

  • поддержание логически согласованного набора файлов;
  • обеспечение языка манипулирования данными;
  • восстановление информации после разного рода сбоев;
  • организацию реально параллельной работы нескольких пользователей.

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

  • Клиентская часть приложения взаимодействует с клиентской частью программного обеспечения управления базами данных, которая, фактически, является индивидуальным представителем СУБД для приложения.

Интерфейс между клиентской частью приложения и клиентской частью сервера баз данных, как правило, основан на использовании языка SQL. Поэтому такие функции, как, например, предварительная обработка форм, предназначенных для запросов к базе данных, или формирование результирующих отчетов выполняются в коде приложения.

Клиентская часть сервера баз данных, используя средства сетевого доступа, обращается к серверу баз данных, передавая ему текст оператора языка SQL.

Сервер получает от клиента текст оператора на языке SQL.

· Сервер производит компиляцию полученного оператора. .

· Далее (если компиляция завершилась успешно) происходит выполнение оператора. Рассмотрим возможные действия операторов SQL.

· Оператор может относиться к классу операторов определения (или создания) объектов базы данных (точнее и правильнее было бы говорить про элементы схемы базы данных или про объекты метабазы данных). В частности, могут определяться домены, таблицы, ограничения целостности, триггеры, привилегии пользователей, хранимые процедуры. В любом случае, при выполнении оператора создания элемента схемы базы данных соответствующая информация помещается в таблицы-каталоги базы данных (в таблицы метабазы данных). Ограничения целостности обычно сохраняются в метабазе данных прямо в текстовом представлении. Для действий, определенных в триггерах, и хранимых процедур вырабатывается и сохраняется в таблицах-каталогах процедурный выполняемый код. Заметим, что ограничения целостности, триггеры и хранимые процедуры являются, в некотором смысле, представителями приложения в поддерживаемой сервером базе данных; они составляют основу серверной части приложения (см. ниже).

· При выполнении операторов выборки данных на основе содержимого затрагиваемых запросом таблиц и, возможно, с использованием поддерживаемых в базе данных индексов формируется результирующий набор данных (мы намеренно не используем здесь термин "результирующая таблица", поскольку в зависимости от конкретного вида оператора результат может быть упорядоченным, а таблицы, т.е. отношения неупорядочены по определению). Серверная часть СУБД пересылает результат клиентской части, и окончательная обработка производится уже в клиентской части приложения.

· При выполнении операторов модификации содержимого базы данных (INSERT, UPDATE, DELETE) проверяется, что не будут нарушены определенные к этому моменту ограничения целостности (те, которые относятся к классу немедленно проверяемых), после чего выполняется соответствующее действие (сопровождаемое модификацией всех соответствующих индексов и журнализацией изменений). Далее сервер проверяет, не затрагивает ли данное изменение условие срабатывания какого-либо триггера, и если такой триггеробнаруживается, выполняет процедуру его действия. Эта процедура может включать дополнительные операторы модификации базы данных, которые могут вызвать срабатывание других триггеров и т.д. Можно считать, что те действия, которые выполняются на сервере баз данных при проверке удовлетворенности ограничений целостности и при срабатывании триггеров, представляют собой действия серверной части приложения.

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

· Аналогично, триггеры могут срабатывать при уничтожении объектов схемы базы данных (доменов, таблиц, ограничений целостности и т.д.).

· Особый класс операторов языка SQL составляют операторы вызова ранее определенных и сохраненных в базе данных хранимых процедур. Если хранимая процедура определяется с помощью достаточно развитого языка, включающего и непроцедурные операторы SQL, и чисто процедурные конструкции (например, языка PL/SQL компании Oracle), то в такую процедуру можно поместить серьезную часть приложения, которое при выполнении оператора вызова процедуры будет выполняться на стороне сервера, а не на стороне клиента.

· При выполнении оператора завершения транзакции сервер должен проверить соблюдение всех, так называемых, отложенных ограничений целостности (к таким ограничениям относятся ограничения, накладываемые на содержимое таблицы базы целиком или на несколько таблиц одновременно; например, суммарная зарплата сотрудников отдела 999 не должна превышать 150 млн. руб.). Снова к проверке отложенных ограничений целостности можно относиться как к выполнению серверной части приложения.

Как видно, в клиент-серверной организации клиенты могут являться достаточно "тонкими", а сервер должен быть "толстым" настолько, чтобы быть в состоянии удовлетворить потребности всех клиентов

Архитектура "клиент-сервер" на первый взгляд кажется гораздо более дорогой, чем архитектура "файл-сервер". Требуется более мощная аппаратура (по крайней мере, для сервера) и существенно более развитые средства управления базами данных. Однако, это верно лишь частично. Громадным преимуществом клиент-серверной архитектуры является ее масштабируемость и вообще способность к развитию.

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

 

Выделяют три модели реализации технологии «клиент-сервер»:

1. Модель доступа к удаленным данным (Remote Data Access – RDA) – “толстый клиент»;

2. Модель сервера базы данных (Date Base Server - DBS) – «тонкий клиент»;

3. Модель сервера приложений (Application Server - AS).

 

Один из основных принципов технологии «клиент - сервер» заключается в разделении операций обработки данных на три группы, имеющие различную природу:

1) ввод и отображение данных;

2) прикладные операции обработки данных, характерные для решения задач данной предметной области;

3) операции хранения и управления данными (базами данных или файловыми системами).

 

В RDA-модели программы представления и прикладные программы объединены и выполняются на компьютере-клиенте, который поддерживает как операции ввода и отображения данных, так и прикладные операции. Доступ к информационным ресурсам обеспечивается или операторами языка SQL, если речь идет о базах данных, или вызовами функций специальной библиотеки. Запросы к информационным ресурсам направляются по сети удаленному компьютеру, например серверу базы данных, который обрабатывает запросы и возвращает клиенту необходимые для обработки блоки данных (рис.5).

DBS-модель строится в предположении, что программы, выполняемые на компьютере-клиенте, ограничиваются вводом и отображением, а прикладные программы реализованы в процедурах базы данных и хранятся непосредственно на компьютере-сервере базы данных вместе с программами, управляющими и доступом к данным - ядру СУБД (рис.6).

На практике часто используются смешанные модели, когда поддержка целостности базы данных и простейшие операции обработки данных поддерживаются хранимыми процедурами (DBS-модель), а более сложные операции выполняются непосредственно прикладной программой, которая выполняется на компьютере клиента (RDA-модель).

В AS-модели программа, выполняемая на компьютере-клиенте, решает задачу ввода и отображения данных, т.е. реализует операции первой группы. Прикладные программы выполняются одним либо группой серверов приложений (удаленный компьютер или несколько компьютеров). Доступ к информационным ресурсам, необходимым для решения прикладных задач, обеспечивается так же, как и в RDA-модели. Прикладные программы обеспечивают доступ к ресурсам различных типов - базам данных, индексированным файлам, очередям и др. RDA- и DBS-модели опираются на двухзвенную схему разделения операций. В AS-модели реализована трехзвенная схема разделения операций, где прикладная программа выделена как важнейшая (рис.7).

             
 
 
   
 
   
 
   
Рис.7. Модель сервера приложений

 


Главное преимущество RDA-модели состоит в том, что она представляет множество инструментальных средств, которые обеспечивают быстрое создание приложений, работающих с SQL-ориентированными СУБД. Иными словами, основное достоинство RDA-модели заключается в унификации и широком выборе средств разработки приложений, Подавляющее большинство этих средств разработки на языках четвертого поколения, включая и средства автоматизации программирования, обеспечивает разработку прикладных программ и операций представления.

Недостатки :

Серверной части системы отводится пассивная роль хранения (сортировки ) информации

Сервер по запросу клиента пересылает избыточный блок данных, что создает напряженный сетевой трафик

В клиентской части необходимо предусмотреть все многообразие представления данных и методов их обработки

Требуется четкое разделение функций обработки между разными приложениями – поэтому такая модель громоздка в реализации

Требования к аппаратной части клиента высоки (дорогой КТС)

Масштабируемость системы низкая (20-30 рабочих мест)

 

Несмотря на широкое распространение, RDA-модель постепенно уступает место более технологичной DBS-модели. Последняя реализована в некоторых реляционных СУБД (Ingres, SyBase, Oracle).

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

AS-модель имеет универсальный характер. Четкое разграничение логических компонентов и рациональный выбор программных средств для их реализации обеспечивают модели такой уровень гибкости и открытости, который пока недостижим в RDA- и DBS-моделях. Именно AS-модель используется в качестве фундамента относительно нового вида программного обеспечения - мониторов транзакций.

Мониторы обработки транзакций (Transaction Processing Monitor - ТРМ), или просто мониторы транзакций, - программные системы, обеспечивающие эффективное управление информационно-вычислительными ресурсами в распределенной сети, представляют собой гибкую, открытую среду для разработки и управления мобильными приложениями, ориентированными на оперативную обработку распределенных транзакций.

Понятия транзакций в ТРМ и в традиционных СУБД несколько различны. Транзакция в СУБД трактуется гораздо шире: она включает не только операции с данными, но и любые другие действия - передачу сообщений, запись в индексированные файлы, опрос датчиков и т.д. Это и позволяет реализовать в ТРМ прикладные действия предметной области (СУБД это сделать не в состоянии).

ТРМ обладает возможностями, которые существенно снижают стоимость обработки данных в режиме on-line.

Основная функция ТРМ - обеспечить быструю обработку запросов, поступающих к AS от множества клиентов - сотен и даже тысяч.

Эффективная обработка сообщений может быть повышена за счет использования систем управления очередями. Разработчики ТРМ обычно включают в арсенал своих систем специальный менеджер ресурсов, отвечающий за управление очередями.

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

На современном рынке мониторов транзакций наиболее популярными являются такие системы, как ACMS (DEC), CICS (IBM), TOP END (NCR), PATHWAY (Tandem), ENCINA (Transarc), TUXEDO System (USL).

Среди сетевого программного обеспечения (СПО) можно выделить три класса систем: слабые, средние и серьезные. К первому классу принадлежат программы типа LapLink или типа коммуникационных средств программы Norton Comander. Они обычно занимают минимум ресурсов сервера и соединяют с сервером только одну машину. Ко второму классу СПО относятся программы типа Lantastic, NetWare Lite и Lansmart. Такие СПО обычно позволяют выполнять большинство сетевых задач. При старте программы выделяется компьютер-сервер сети. В таких сетях ПК тоже потребляют достаточно мало ресурсов сервера. Обычно пользователь может работать в MS DOS параллельно с СПО.

Для систем первых двух классов характерно то, что для доступа к ресурсам компьютера-сервера программа сервер использует обычно средства MS DOS, под управлением которых работает сервер. СПО третьего класса работают достаточно независимо от MS DOS и часто используют свои драйверы низкого уровня для доступа к ресурсам сервера.

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

К третьему классу относятся СПО NetWare фирмы Novell, Banyan Vines.

 

 

OLTP-технология

OLTP-технология - это технология обработки данных , ориентированная на ежедневную работу объекта управления –on-line transaction processing – или обработка транзакций в реальном времени . БД таких систем хранят актуальную информацию о текущей деятельности объекта. Данные могут изменяться и сохраняют свою актуальность до конца отчетного периода.

OLAP –on-line analytical processing – аналитическая обработка данных..

 

Управление комплексом маркетинга предприятия на основе CRM­технологий

 

Customer Relationship Management — современное направление в сфере автоматизации корпоративного управления

CRM (Customer Relationship Management – Управление взаимоотношениями с клиентами) это НЕ программный продукт и НЕ технология. Это даже НЕ набор продуктов. CRM - это направленная на построение устойчивого бизнеса концепция и бизнес стратегия, ядром которой является "клиенто-ориентированный" подход.

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

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

Развитие рынка и усиление конкуренции в российской экономике вынуждает предприятия искать конкурентные преимущества. Эти преимущества может обеспечить либо внутренняя производственная эффективность, либо лучшая по сравнению с конкурентами ориентация на рынок.

Производственная эффективность обеспечивается в настоящее время корпоративными системами управления ERP (enterprise resource planning — планирование ресурсов пред-приятия). На российском рынке такие системы представлены как российскими разработчиками («Эталон», «Парус», «Галактика» и др.), так и западными (SAP, Baan и др.).

ERP системы появились, когда на первое место ставился продукт и бизнес-процессы, обеспечивающие его производство, то есть учет, контроль и распределение считались основными. Это была эра автоматизации "бэк-офиса".

В настоящий момент информационными системами, обеспечивающими эффективную ориентацию на рынок, являются системы класса CRM (customer relationship management — управление взаимоотношениями с клиентами). Данные системы направлены на создание обширной базы «верных» клиентов, которая как раз и становится для предприятия долго-срочным конкурентным преимуществом. CRM­системы появились лишь в середине 90­х гг. и находятся в стадии развития, поэтому на российском рынке они представлены гораздо в меньшей степени, чем системы ERP.

CRM системы стали нужны на высоко конкурентном рынке, где в фокусе стоит клиент.Главная задача CRM систем - повышение эффективности бизнес процессов, сосредоточенных во "фронт-офисе", направленных на привлечение и удержание клиентов – в маркетинге, продажах, сервисе и обслуживании, независимо от канала, через который происходит контакт с клиентом.

На уровне технологий CRM – это набор приложений, связанных единой бизнес-логикой и интегрированных в корпоративную информационную среду компании (часто в виде надстройки над ERP) на основе единой базы данных. Специальное программное обеспечение позволяет провести автоматизацию соответствующих бизнес-процессов в маркетинге, продажах и обслуживании. Как результат, компания может обратиться к "нужному" заказчику в "правильный" момент времени, с наиболее эффективным предложением и по наиболее удобному заказчику каналу взаимодействия.

На практике интегрированная система CRM обеспечивает координацию действий различных отделов, обеспечивая их общей платформой для взаимодействия с клиентами. С этой точки зрения назначение CRM - исправить ситуацию, когда отделы маркетинга, продаж и сервиса действуют независимо друг от друга, причем их видение заказчика часто не совпадает, а действия несогласованны.

С точки зрения управления бизнесом эффект от внедрения CRM проявляется в том, что процесс принятия решения за счет автоматизации переносится на более низкий уровень и унифицируется. За счет этого повышается скорость реакции на запросы, растет скорость оборота средств и снижаются издержки.

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

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

Цифры и факты:

  • Затраты на привлечение нового клиента в среднем в пять раз больше, чем на удержание существующего.
  • Большая часть компаний из списка Fortune 500 теряет 50% своих клиентов каждые 5 лет.
  • Удовлетворенный клиент расскажет о удачной покупке в среднем 5 своим знакомым. Неудовлетворенный – минимум 10.
  • Большая часть клиентов окупается лишь через год работы с ними (соответственно, если клиент “ушел” до этого срока, то он принес убытки )
  • Увеличение процента удержания клиентов на 5% увеличивает прибыль компании на 50-100%.
  • Около 50% существующих клиентов компании не прибыльны из-за неэффективного взаимодействия с ними.
  • В среднем компания контактирует 4 раза в год с существующим клиентом и 6 раз в год с потенциальным.
  • Поставщики продуктов класса CRM обещают повышение прибыльности предприятий на десятки процентов, а рентабельность проектов - от 200 до 800 процентов за 2-3 года.

Формула успеха CRM







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.