Не просто перемещение данных!

Каждый раз, когда компания Microsoft выпускает новую версию Exchange Server, мы гадаем, сохранится ли в ней поддержка общих папок. С течением времени интенсивность использования общих папок на предприятиях растет. Общие папки (предназначенные для архивов данных) используются по-разному, в том числе для хранения резервных копий настольных компьютеров и даже для запуска важнейших бизнес-программ. Но недавно компания Microsoft объявила об Exchange Server 2007, очередной существенно обновленной версии продукта, в которой заложены основы для «снятия акцента» с общих папок.

Терри Маерсон, генеральный менеджер Microsoft Exchange Server Group, изложил стратегию компании в отношении общих папок для Exchange 2007 в своем Web-дневнике (http://blogs.technet.com/ exchange/archive/2006/02/20/419994.aspx). Отвечая на вопросы о будущем общих папок, он сделал несколько важных замечаний. Во вновь развернутых экземплярах Exchange общие папки станут необязательным компонентом при использовании Microsoft Office Outlook 2007 и не будут устанавливаться по умолчанию. После миграции существующих систем Exchange функционирование общих папок будет мало отличаться от Exchange Server 2003. Переход к Exchange 2007 не будет зависеть от переноса или ликвидации общих папок.

В результате у администраторов компаний возникает вопрос: «Если не использовать общие папки, то что придет им на смену и каким будет переход к этому новшеству?» В своем Web-дневнике Терри предлагает компаниям, желающим заменить общие папки Exchange, обратиться к Windows SharePoint Services (SharePoint). Данный вариант SharePoint поставляется вместе с Windows Server 2003. Это Web-служба, предназначенная для совместной работы пользователей и обмена документами. Каким будет процесс перехода от общей папки к SharePoint? В данной статье рассматриваются стратегические аспекты взаимодействия SharePoint и общих папок, а затем процедура переноса данных.

SharePoint и общие папки

В своем Web-дневнике Терри отмечает, что Microsoft будет полностью поддерживать Exchange 2007 в течение 10 лет. Что в связи с этим будет происходить с SharePoint?

SharePoint — мощное решение для коллективной работы, которое обеспечивает ряд преимуществ по сравнению с общими папками. Общие папки прекрасно подходят для архивирования данных, но в них нет таких возможностей, как управление документами, автоматическое оповещение об изменениях содержимого, интеграция с Microsoft Office Live Communications Server и InfoPath и интегрированный поиск информации.

В сущности, SharePoint представляет собой Web-приложение .NET, в котором Microsoft SQL Server используется как хранилище данных. В SharePoint применяются концепции списков и библиотек, каждая с уникальными свойствами и возможностями. Примеры списков — дискуссии, контакты, задания и события. Списки не основываются на документах. Существует три типа библиотек: библиотеки документов, форм и изображений. В библиотеках документов можно хранить наборы документов или других файлов, предназначенных для совместного использования. Среди компонентов и возможностей библиотек: вложенные папки, отслеживание версий файлов, регистрация и контроль использования файлов. Достаточно понять основные принципы хранения объектов в SharePoint, чтобы увидеть, каким образом наличие отдельных типов списков и библиотек может вызвать проблемы при миграции данных.

В общих папках функции, соответствующие дискуссионным спискам и библиотекам документов SharePoint, объединены в одном типе хранения. Прежде чем начать миграцию, необходимо решить, куда перемещать общие папки, и от этого выбора зависят доступные возможности. Например, в одной общей папке могут находиться документы Office (SmartDocs) и потоковые дискуссии. Если переместить все содержимое в библиотеку документов SharePoint, то будет потеряна связность дискуссии (или потоки). Переместить все элементы в дискуссионный список — значит лишиться возможности управления документами. Вероятно, лучше сделать выбор и содержать папку в списке определенного типа. Разделение списка может вызвать путаницу, и пользователи не будут знать, где найти информацию, которая когда-то находилась в известном пользователю месте.

Еще одно существенное различие между двумя продуктами — модели безопасности. Exchange располагает многочисленными детализированными ролями, и пользователи могут настроить разрешения в папке, чтобы удалять только собственные материалы. В SharePoint нет защиты на уровне элементов; безопасность обеспечивается только на уровне списка и библиотеки. Поэтому можно создать единичные библиотеки со специальными разрешениями или примириться с новой моделью безопасности, в соответствии с которой каждый может удалить любой чужой документ. Если к общей папке применено много элементов управления доступом, то миграция этой папки приведет к возникновению нескольких библиотек SharePoint или незащищенности папки. Эти различия между продуктами показывают, что миграция сложнее, чем может показаться на первый взгляд.

Процесс миграции

В процессе миграции, описанном в данной статье, использованы два инструмента с Web-узла GotDotNet.com компании Microsoft. На этом узле находятся программы извлечения, которые получают данные из какого-нибудь источника, такого как общие папки Exchange или файловая система Windows, и преобразуют их в промежуточный формат, пригодный для программы импорта в SharePoint.

Установочные пакеты и исходный текст Exchange Public Folder Extractor и SharePoint Products and Technologies Import Wizard опубликованы по адресу http://www.gotdotnet.com/workspaces/workspace.aspx?id=6996fb17-2a54-4607-983b-35c7697baa53. Исходный текст предоставляется бесплатно, поэтому инструменты постоянно развиваются и совершенствуются благодаря поддержке и взаимодействию сообщества. Могут быть полезны и несколько коммерческих продуктов, такие как Tzunami Deployer и решение для миграции фирмы CASAHL, среди достоинств которых — полная поддержка потребителей.

Экран 1. Пример дерева общих папок

Процесс миграции состоит из трех этапов - очистки общих папок, извлечения содержимого из общих папок Exchange и импорта этого содержимого в SharePoint - с использованием трех отдельных инструментов: программы очистки PFDAVAdmin (можно загрузить из Web-узла Microsoft по адресу http://www.microsoft.com/ downloads/details.aspx?familyid=635be792-d8ad-49e3-ada4-e2422c0ab424&displaylang=en) и упомянутых выше инструментов извлечения и импорта. После очистки содержимое общей папки Exchange пересылается по пути, указанному для совместно используемого файла, в типовом экспортном формате. Затем информация импортируется SharePoint из пути, указанного для совместно используемого файла. Каждый этап будет рассмотрен подробно. На экране 1 показано дерево общих папок, которое поможет разобраться в процессе миграции.

Очистка

Чтобы повысить шансы на успех, необходимо очистить общие папки перед перемещением данных. Очистить и уменьшить объем информации — например, консолидировать папки и удалить устаревшую информацию — важно по нескольким причинам: во-первых, эти данные вряд ли будут удалены после того, как попадут в новую систему; во-вторых, чем меньше информации, тем меньше байт пересылается по сети в ходе миграции; в-третьих, существует немного инструментов для очистки данных, уже попавших в SharePoint. Одна из особенностей PFDAVAdmin — возможность генерировать отчет о содержимом, в котором показано число элементов, размер и последние изменения любой папки. С помощью этих сведений можно отыскать старое содержимое и часто изменяемые папки.

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

Затем следует идентифицировать папки, используемые приложениями как хранилища данных для рабочих потоков или специализированных форм. Такие папки нельзя идентифицировать с помощью инструментов, но администраторы систем обработки сообщений, как правило, знают о них. Идентифицировав папку приложения, можно использовать альтернативное хранилище данных, например базу данных, или не трогать существующее приложение до тех пор, пока не будет построена однородная среда Exchange 2007 и Office 2007. В SharePoint применяются совершенно другие API доступа и объектные модели, поэтому нет простого метода переноса существующего программного кода и форм. Эти папки — не лучшие кандидаты для миграции в SharePoint, и, как правило, в долгосрочной перспективе они вряд ли будут удачным местоположением для общих папок.

Наконец, чтобы сократить старое содержимое, полезно установить пределы хранения и включить механизм старения, если это уже не сделано. См. статью Microsoft «HOW TO: Configure Storage Limits on Public Folders in Exchange 2003» по адресу http://support.microsoft.com/?kbid=823144. Пределы хранения можно установить по умолчанию для всех папок и отменять их для отдельных папок. После очистки и идентификации важнейших папок можно приступать к миграции.

Извлечение содержимого общих папок Exchange

Теперь все готово для извлечения данных из общих папок Exchange. Программу Exchange Public Folder Extractor можно установить на любой клиентской машине с .NET Framework 1.1 и Outlook, настроенным для работы с объектами Collaboration Data Objects (CDO) 1.2.1. Учетная запись для запуска Extractor должна иметь разрешение Read в общих папках Exchange и разрешение Write в выходном каталоге. В данном примере используется интерактивный интерфейс, но Extractor можно запустить и из командной строки. После запуска Extractor необходимо заполнить все поля на вкладке Exchange Settings мастера Exchange Public Folder Export Wizard (экран 2). Администратор выбирает папку, с которой следует начать экспорт; можно обработать все дочерние папки или установить флажок Export only this folder, чтобы обработать только данную папку. Флажок Add Webpart указывает, будет ли целевой список содержать Web-модули, созданные на домашней странице SharePoint. Если этот флажок не установлен, то список SharePoint будет доступен только из панели Quick Launch Web-узла SharePoint.

Экран 2. Вкладка Exchange Settings

После ввода всей необходимой информации следует перейти к вкладке Message Settings мастера, на которой можно фильтровать исходные материалы по расширению вложенного файла или по дате. У общих папок, содержащих элементы Mail and Post Items, нет точного эквивалента в SharePoint (в отличие от других типов общих папок, в которых календарь соответствует событиям, а контакты — контактам), поэтому необходимо выбрать тип дискуссии. В инструмент требуется ввести данные о типе списка или библиотеки SharePoint, в которую следует преобразовать папки. Как отмечалось ранее, SharePoint располагает библиотеками документов и дискуссионными списками и каждому типу хранилищ свойственны уникальные характеристики. Дискуссионные списки содержат последовательности сообщений, а текст сообщений переносится как текст публикаций. Любые вложенные файлы привязаны к публикации. Вложенные папки в родительской папке становятся новыми списками дискуссионной панели. Если выбрать почтовый тип вместо дискуссионного, то будет потеряна последовательность сообщений (способность группировать сообщения, относящиеся к одному разговору). Вложенные папки переносятся как вложенные папки списка документов (похоже на вид файловой системы, как в Windows Explorer). В примере на экране 3 можно увидеть, как выглядит панель Quick Launch в SharePoint в зависимости от типа целевой библиотеки. Почта выбирается слева, а дискуссии справа. При преобразовании почты сохраняются родительские/дочерние взаимосвязи между папками, которые существуют в Exchange, но если выбран дискуссионный тип, то список дискуссий не поддерживает вложенные списки, и папки переносятся в отдельные списки одного уровня.

Экран 3. Панель Quick Launch программы SharePoint

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

Импортер SharePoint

После окончания экспорта все готово к завершению миграции с помощью мастера SharePoint Products and Technologies Import Wizard. В отличие от Extractor, мастер Import Wizard должен быть установлен на Web-сервере SharePoint. Учетная запись, из которой запускается Import Wizard, должна иметь разрешение для обновления реестра этого сервера. Учетная запись также должна иметь разрешение для создания узлов и областей на узле SharePoint. Для мастера SharePoint Products and Technologies Import Wizard необходима инфраструктура .NET Framework 1.1.

Экран 4. Вкладка Settings

В поле Source directory на вкладке Settings мастера Import Wizard (экран 4) следует указать местоположение экспортируемых файлов, а в поле Target — ввести URL для сервера SharePoint. В URL не нужно включать имя узла, так как оно уже было указано в процессе извлечения и хранится в файле struct.xml в папке, заданной в процессе извлечения общей папки. Существуют и другие возможности изменить способ импорта — например, можно разрешить импорт в существующие узлы и библиотеки. На вкладке Import можно инициировать процесс импорта и следить за его выполнением.

Ограниченная интеграция

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

Главное различие между SharePoint и Outlook заключается в том, что SharePoint — Web-приложение; пользователи обращаются к информации через браузер. Предполагается, что Outlook 2007 будет теснее интегрирован с SharePoint и пользователи смогут обращаться к более обширной информации через Outlook. В настоящее время интеграция между двумя продуктами ограничена. Например, можно обращаться к спискам событий SharePoint (календарь) в Microsoft Office Outlook 2003, но информация доступна только для чтения. Дополнительные сведения об Office 2007 можно получить на сайте Office 2007 компании Microsoft (http://www.microsoft.com/office).

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

Джеффри Розен (jrosen@microsoft.com) — старший консультант службы Microsoft Consulting Services. Специализируется на Exchange Server и инструментах коллективной работы. Имеет сертификаты CISSP и Microsoft Certified Systems Engineer in Security and Messaging.