LXF107:Что за штука
(Новая: ==Что за штука… Akonadi== : Где найти тот электронный адрес? А какой номер телефона у босса? Когда следующа...) |
(викификация, оформление) |
||
Строка 2: | Строка 2: | ||
: Где найти тот электронный адрес? А какой номер телефона у босса? Когда следующая летучка по проекту? '''Марко Фиоретти''' объяснит, откуда ''Akonadi'' знает все это, и не только… | : Где найти тот электронный адрес? А какой номер телефона у босса? Когда следующая летучка по проекту? '''Марко Фиоретти''' объяснит, откуда ''Akonadi'' знает все это, и не только… | ||
+ | |||
+ | * '''''Akonadi'' – это очередное KDE-название, тупо выбранное из-за наличия буквы K?''' | ||
+ | |||
+ | А вот и нет! ''Akonadi'' – имя пророческой богини справедливости у народов Ганы, но выбрали его просто потому, что другие имена были заняты. Вот и все! | ||
+ | |||
+ | * '''И что это такое?''' | ||
+ | |||
+ | Новая унифицированная служба управления данными PIM для KDE 4. | ||
+ | |||
+ | * '''Ну, а PIM что означает?''' | ||
+ | |||
+ | Personal Information Management, управление личными данными, то есть всеми сведениями, которые либо возникают в результате ваших связей с окружающими, либо необходимы для поддержания этих связей и контроля за вашей ежедневной деятельностью: | ||
+ | от сообщений электронной почты до адресных книг, | ||
+ | календарей, расписаний событий и планов будущих | ||
+ | акций. «Управлять» всем этим значит не только поддерживать упорядоченные, организованные всеобъемлющие архивы. Обычно PIM еще включает всякие | ||
+ | полуавтоматические функции вроде управления псевдонимами, предупреждения накладок при назначении | ||
+ | встреч сотрудников – да хоть бы и окно, напоминающее о дне рождения вашей жены! | ||
+ | |||
+ | * '''Но ведь в KDE это уже есть: я сам ежедневно пользуюсь ''KMail'' и ''Kontact''!''' | ||
+ | |||
+ | Да, но PIM-компоненты KDE 3 – это самостоятельные программы с независимыми, подчас дублирующими друг друга механизмами управления данными и их | ||
+ | хранения. Это создает некоторые проблемы, решить которые и призван ''Akonadi''. | ||
+ | |||
+ | * '''А какие именно проблемы?''' | ||
+ | |||
+ | Первая – производительность: чтобы отобразить календарь, ''KOrganizer'' загружает все зарегистрированные события, а ''KAddressBook'' выводит все почтовые адреса, тогда как нам нужны только некоторые. С персональным компьютером это не проблема, но | ||
+ | вообразите, что выдаст сервер коллективной работы, где хранятся данные обо всех 10 000 сотрудников | ||
+ | корпорации! Здесь скорость падает вполне ощутимо: | ||
+ | частью из-за избыточности архитектуры, частью из-за | ||
+ | дублирования кода отдельных библиотек. | ||
+ | |||
+ | * '''Еще проблемы есть?''' | ||
+ | |||
+ | Недостаточная поддержка асинхронного доступа от разных приложений и уведомлений об изменении данных. Первое неудобство может привести к | ||
+ | порче данных при попытке изменить их двумя приложениями одновременно. Вторая позиция означает, | ||
+ | что при обновлении адреса в адресной книге почтовая | ||
+ | программа «не замечает» новой записи до тех пор, | ||
+ | пока не перезапустится. | ||
+ | |||
+ | * '''Как же ''Akonadi'' устранит эти проблемы?''' | ||
+ | |||
+ | Программа обеспечит единый подход к чтению, поиску и записи всех видов PIM-данных и метаданных | ||
+ | за счет архитектуры, изначально рассчитанной на поддержку совместного доступа, своевременных уведомлений и мощных поисковых механизмов. Несмотря на | ||
+ | все это, ''Akonadi'' – не сервер: это своего рода банк данных, централизованный кэш с унифицированным асинхронным интерфейсом для доступа. Реальные | ||
+ | данные хранятся в отведенных им в файловой системе местах, в неизменных форматах (Maildir для почты или iCal для календаря). | ||
+ | |||
+ | * '''И как это решает вышеописанные проблемы?''' | ||
+ | |||
+ | Кэш единый, и в память загружается только по одному экземпляру всех PIM-данных, а сделанные изменения моментально становятся доступны всем программам-клиентам. Кроме того, наличие единого интерфейса для создания запросов разных типов | ||
+ | позволяет приложениям рабочего стола запрашивать только те данные, которые им необходимы, что повышает производительность. | ||
+ | |||
+ | А еще, единый асинхронный интерфейс позволяет получать данные, не вмешиваясь в деятельность программ-клиентов. | ||
+ | |||
+ | * '''Я домашний пользователь, и оперативной памяти на моем компьютере полно. Нужна ли мне ''Akonadi''?''' | ||
+ | |||
+ | Если вы интенсивно пользуетесь ''KMail'' и ''Kontact'' и у вас много друзей – вероятно, да. ''Akonadi'' может существенно снизить потребление памяти, а это никогда не помешает. Кроме того, ''Akonadi'' способен упростить решение других задач, от синхронизации адресных | ||
+ | книг и календарей с удаленными серверами до интеграции PIM-системы с интеллектуальными поисковыми механизмами рабочего стола. | ||
+ | |||
+ | * '''Ладно, давайте выясним, как ''Akonadi'' работает. Что там внутри?''' | ||
+ | |||
+ | ''Akonadi'' состоит из четырех основных компонентов: отдельного хранилища для всех PIM-данных и связанного с ним кэша; менеджера уведомлений; элементов | ||
+ | поискового механизма и библиотеки API (Application Programming Interface, интерфейса прикладной программы). Каждый компонент – это отдельный процесс, | ||
+ | который в случае зависания или сбоя может быть перезапущен независимо от других. | ||
+ | |||
+ | * '''Могут ли другие приложения получать доступ к банку данных не через ''Akonadi''?''' | ||
+ | |||
+ | Строго говоря, да: ведь данные хранятся в стандартных форматах, и к ним по-прежнему будет открыт доступ | ||
+ | самых разнообразных программ. Но успех не гарантируется – по крайней мере, первые версии ''Akonadi'' | ||
+ | могут не справиться с такими вторжениями. Еще в ''Akonadi'' есть менеджер уведомлений – он немедленно | ||
+ | сообщает всем связанным программам о добавлении, | ||
+ | удалении и изменении любого PIM-объекта, хранящегося в кэше – и поисковые программы, это внешние | ||
+ | утилиты, фильтрующие PIM-данные по запросам других приложений. | ||
+ | |||
+ | * '''Есть еще что-нибудь интересное?''' | ||
+ | |||
+ | Да: можно использовать так называемые «агенты» и «ресурсы». Первые – это модули, обрабатывающие данные в хранилище ''Akonadi'', а ресурсы – модули, подключающие это самое хранилище к внешним источникам данных, например, серверам коллективной работы (groupware). | ||
+ | |||
+ | * '''Очень уж сложно звучит. Как же я, не будучи программистом, смогу проверить исправность ''Akonadi''?''' | ||
+ | |||
+ | ''Akonadi'' снабжается утилитой системного лотка, с помощью которой можно будет, по крайней мере, остановить или запустить программу, а также проверить ее состояние. При необходимости эта утилита сможет выдать сообщение об ошибке от ''Akonadi''. | ||
+ | |||
+ | * '''Стоп, мы совсем забыли о библиотеке!''' | ||
+ | |||
+ | Точно! Именно библиотека делает возможным все это: позволяет ''Akonadi'' взаимодействовать с другими программами на языке сравнительно высокого уровня (в стиле ''Qt''-библиотек), независимом от платформы. | ||
+ | |||
+ | Библиотека, вполне предсказуемо называемая ''libakonadi'', может использоваться как приложениями рабочего стола (''Kontact, KOffice'' или ''Evolution''), так и другими службами, направляющими данные в ''Akonadi'' и использующими их. | ||
+ | |||
+ | * '''''Akonadi'' «признает» только KDE?''' | ||
+ | |||
+ | Теоретически, нет: этим может пользоваться любая программа. ''Akonadi'' предлагается, в частности, | ||
+ | как замена ''Evolution Data Server'' (EDS). На практике, хотя основные компоненты не зависят ни от KDE, ни | ||
+ | от ''Qt'', для ''libakonadi'' библиотеки ''Qt'' необходимы. Эта зависимость, а также зависимость от сервера баз | ||
+ | данных, снизит популярность ''Akonadi'' за пределами KDE. | ||
+ | |||
+ | * '''Какие преимущества могут получить (не-KDE) программисты от использования ''Akonadi''?''' | ||
+ | |||
+ | ''Akonadi'' предоставляет улучшенные средства запроса, отображения и изменения PIM-данных для любой программы, которой они могут понадобиться. Это | ||
+ | существенно упрощает написание прикладных программ. Например, разработчикам ''Mailody'' – одного из почтовых клиентов KDE – благодаря наличию ''Akonadi'' хватило десяти минут для написания простейшего просмотрщика почты (см. http://www.omat.nl/drupal/creating-mail-reader-10-minutes). | ||
+ | |||
+ | * '''Вы упомянули, что ''Akonadi'' можно интегрировать с интеллектуальными поисковыми программами для рабочего стола…''' | ||
+ | |||
+ | Да, это конечная цель. Чтобы достичь ее, ''Akonadi'' потребуется координация с ''Nepomuk'' (http://nepomuk.kde.org), KDE-версией семантического рабочего стола. На первом уровне интеграции состоится замена категорий классификации данных, применяемых нынешними PIM-программами KDE, на тэги ''Nepomuk''. Затем можно будет создать «агенты», которые будут автоматически поставлять данные из ''Akonadi'' в ''Nepomuk'' для | ||
+ | должной индексации. | ||
+ | |||
+ | Шквал кодирования приведет к созданию таких вещей, как виртуальные почтовые папки, куда будут | ||
+ | поступать результаты поисков ''Nepomuk''. Например, можно будет запросить связанную с ''Akonadi'' почтовую программу на выдачу всех сообщений с рисунками во вложениях, или сообщений от тех, кто участвует в совещаниях по теме ‘KDE-PIM’, или даже задать сложный запрос на выдачу сообщений, более или менее близко связанных с указанной темой. | ||
+ | |||
+ | Возможна и еще одна выгода от связки ''Akonadi'' и ''Nepomuk'': интеграция с другими, «не-PIM» приложениями. Вообразите, например, отображение фотографий и телефонных номеров своих коллег рядом с их домашними директориями в файловом менеджере… | ||
+ | |||
+ | * '''Чуть не забыл: раз уж мы говорим о почте, календарях и адресных книгах: будет ли ''Akonadi'' совместим с ''Exchange''?''' | ||
+ | |||
+ | Сейчас ведутся работы по обеспечению совместимости с ''MS Exchange'' при помощи библиотеки ''OpenChange MAPI'' (http://www.openchange.org). Но это отдельный проект, его целью является применение протоколов ''Microsoft Exchange'' программами открытого ПО в среде Unix и | ||
+ | Linux. | ||
+ | |||
+ | * '''Когда же все будет готово?''' | ||
+ | |||
+ | KDE 4.1, выход которого ожидается в июле 2008, включит ''Akonadi'' как платформу для разработчика. Это означает, что API будут стабильны, службы | ||
+ | работоспособны, но не все PIM-клиенты смогут использовать возможности ''Akonadi'' в полной мере: для этого нужно будет дождаться KDE 4.2. В любом случае, тестировать ''Akonadi'' можно будет уже скоро! '''LXF''' |
Версия 08:50, 16 октября 2009
|
|
|
Что за штука… Akonadi
- Где найти тот электронный адрес? А какой номер телефона у босса? Когда следующая летучка по проекту? Марко Фиоретти объяснит, откуда Akonadi знает все это, и не только…
- Akonadi – это очередное KDE-название, тупо выбранное из-за наличия буквы K?
А вот и нет! Akonadi – имя пророческой богини справедливости у народов Ганы, но выбрали его просто потому, что другие имена были заняты. Вот и все!
- И что это такое?
Новая унифицированная служба управления данными PIM для KDE 4.
- Ну, а PIM что означает?
Personal Information Management, управление личными данными, то есть всеми сведениями, которые либо возникают в результате ваших связей с окружающими, либо необходимы для поддержания этих связей и контроля за вашей ежедневной деятельностью: от сообщений электронной почты до адресных книг, календарей, расписаний событий и планов будущих акций. «Управлять» всем этим значит не только поддерживать упорядоченные, организованные всеобъемлющие архивы. Обычно PIM еще включает всякие полуавтоматические функции вроде управления псевдонимами, предупреждения накладок при назначении встреч сотрудников – да хоть бы и окно, напоминающее о дне рождения вашей жены!
- Но ведь в KDE это уже есть: я сам ежедневно пользуюсь KMail и Kontact!
Да, но PIM-компоненты KDE 3 – это самостоятельные программы с независимыми, подчас дублирующими друг друга механизмами управления данными и их хранения. Это создает некоторые проблемы, решить которые и призван Akonadi.
- А какие именно проблемы?
Первая – производительность: чтобы отобразить календарь, KOrganizer загружает все зарегистрированные события, а KAddressBook выводит все почтовые адреса, тогда как нам нужны только некоторые. С персональным компьютером это не проблема, но вообразите, что выдаст сервер коллективной работы, где хранятся данные обо всех 10 000 сотрудников корпорации! Здесь скорость падает вполне ощутимо: частью из-за избыточности архитектуры, частью из-за дублирования кода отдельных библиотек.
- Еще проблемы есть?
Недостаточная поддержка асинхронного доступа от разных приложений и уведомлений об изменении данных. Первое неудобство может привести к порче данных при попытке изменить их двумя приложениями одновременно. Вторая позиция означает, что при обновлении адреса в адресной книге почтовая программа «не замечает» новой записи до тех пор, пока не перезапустится.
- Как же Akonadi устранит эти проблемы?
Программа обеспечит единый подход к чтению, поиску и записи всех видов PIM-данных и метаданных за счет архитектуры, изначально рассчитанной на поддержку совместного доступа, своевременных уведомлений и мощных поисковых механизмов. Несмотря на все это, Akonadi – не сервер: это своего рода банк данных, централизованный кэш с унифицированным асинхронным интерфейсом для доступа. Реальные данные хранятся в отведенных им в файловой системе местах, в неизменных форматах (Maildir для почты или iCal для календаря).
- И как это решает вышеописанные проблемы?
Кэш единый, и в память загружается только по одному экземпляру всех PIM-данных, а сделанные изменения моментально становятся доступны всем программам-клиентам. Кроме того, наличие единого интерфейса для создания запросов разных типов позволяет приложениям рабочего стола запрашивать только те данные, которые им необходимы, что повышает производительность.
А еще, единый асинхронный интерфейс позволяет получать данные, не вмешиваясь в деятельность программ-клиентов.
- Я домашний пользователь, и оперативной памяти на моем компьютере полно. Нужна ли мне Akonadi?
Если вы интенсивно пользуетесь KMail и Kontact и у вас много друзей – вероятно, да. Akonadi может существенно снизить потребление памяти, а это никогда не помешает. Кроме того, Akonadi способен упростить решение других задач, от синхронизации адресных книг и календарей с удаленными серверами до интеграции PIM-системы с интеллектуальными поисковыми механизмами рабочего стола.
- Ладно, давайте выясним, как Akonadi работает. Что там внутри?
Akonadi состоит из четырех основных компонентов: отдельного хранилища для всех PIM-данных и связанного с ним кэша; менеджера уведомлений; элементов поискового механизма и библиотеки API (Application Programming Interface, интерфейса прикладной программы). Каждый компонент – это отдельный процесс, который в случае зависания или сбоя может быть перезапущен независимо от других.
- Могут ли другие приложения получать доступ к банку данных не через Akonadi?
Строго говоря, да: ведь данные хранятся в стандартных форматах, и к ним по-прежнему будет открыт доступ самых разнообразных программ. Но успех не гарантируется – по крайней мере, первые версии Akonadi могут не справиться с такими вторжениями. Еще в Akonadi есть менеджер уведомлений – он немедленно сообщает всем связанным программам о добавлении, удалении и изменении любого PIM-объекта, хранящегося в кэше – и поисковые программы, это внешние утилиты, фильтрующие PIM-данные по запросам других приложений.
- Есть еще что-нибудь интересное?
Да: можно использовать так называемые «агенты» и «ресурсы». Первые – это модули, обрабатывающие данные в хранилище Akonadi, а ресурсы – модули, подключающие это самое хранилище к внешним источникам данных, например, серверам коллективной работы (groupware).
- Очень уж сложно звучит. Как же я, не будучи программистом, смогу проверить исправность Akonadi?
Akonadi снабжается утилитой системного лотка, с помощью которой можно будет, по крайней мере, остановить или запустить программу, а также проверить ее состояние. При необходимости эта утилита сможет выдать сообщение об ошибке от Akonadi.
- Стоп, мы совсем забыли о библиотеке!
Точно! Именно библиотека делает возможным все это: позволяет Akonadi взаимодействовать с другими программами на языке сравнительно высокого уровня (в стиле Qt-библиотек), независимом от платформы.
Библиотека, вполне предсказуемо называемая libakonadi, может использоваться как приложениями рабочего стола (Kontact, KOffice или Evolution), так и другими службами, направляющими данные в Akonadi и использующими их.
- Akonadi «признает» только KDE?
Теоретически, нет: этим может пользоваться любая программа. Akonadi предлагается, в частности, как замена Evolution Data Server (EDS). На практике, хотя основные компоненты не зависят ни от KDE, ни от Qt, для libakonadi библиотеки Qt необходимы. Эта зависимость, а также зависимость от сервера баз данных, снизит популярность Akonadi за пределами KDE.
- Какие преимущества могут получить (не-KDE) программисты от использования Akonadi?
Akonadi предоставляет улучшенные средства запроса, отображения и изменения PIM-данных для любой программы, которой они могут понадобиться. Это существенно упрощает написание прикладных программ. Например, разработчикам Mailody – одного из почтовых клиентов KDE – благодаря наличию Akonadi хватило десяти минут для написания простейшего просмотрщика почты (см. http://www.omat.nl/drupal/creating-mail-reader-10-minutes).
- Вы упомянули, что Akonadi можно интегрировать с интеллектуальными поисковыми программами для рабочего стола…
Да, это конечная цель. Чтобы достичь ее, Akonadi потребуется координация с Nepomuk (http://nepomuk.kde.org), KDE-версией семантического рабочего стола. На первом уровне интеграции состоится замена категорий классификации данных, применяемых нынешними PIM-программами KDE, на тэги Nepomuk. Затем можно будет создать «агенты», которые будут автоматически поставлять данные из Akonadi в Nepomuk для должной индексации.
Шквал кодирования приведет к созданию таких вещей, как виртуальные почтовые папки, куда будут поступать результаты поисков Nepomuk. Например, можно будет запросить связанную с Akonadi почтовую программу на выдачу всех сообщений с рисунками во вложениях, или сообщений от тех, кто участвует в совещаниях по теме ‘KDE-PIM’, или даже задать сложный запрос на выдачу сообщений, более или менее близко связанных с указанной темой.
Возможна и еще одна выгода от связки Akonadi и Nepomuk: интеграция с другими, «не-PIM» приложениями. Вообразите, например, отображение фотографий и телефонных номеров своих коллег рядом с их домашними директориями в файловом менеджере…
- Чуть не забыл: раз уж мы говорим о почте, календарях и адресных книгах: будет ли Akonadi совместим с Exchange?
Сейчас ведутся работы по обеспечению совместимости с MS Exchange при помощи библиотеки OpenChange MAPI (http://www.openchange.org). Но это отдельный проект, его целью является применение протоколов Microsoft Exchange программами открытого ПО в среде Unix и Linux.
- Когда же все будет готово?
KDE 4.1, выход которого ожидается в июле 2008, включит Akonadi как платформу для разработчика. Это означает, что API будут стабильны, службы работоспособны, но не все PIM-клиенты смогут использовать возможности Akonadi в полной мере: для этого нужно будет дождаться KDE 4.2. В любом случае, тестировать Akonadi можно будет уже скоро! LXF