Perst - Perst
Эта статья поднимает множество проблем. Пожалуйста помоги Улучши это или обсудите эти вопросы на страница обсуждения. (Узнайте, как и когда удалить эти сообщения-шаблоны) (Узнайте, как и когда удалить этот шаблон сообщения)
|
Разработчики) | McObject |
---|---|
изначальный выпуск | 2003 |
Операционная система | Кроссплатформенность |
Тип | ODBMS |
Лицензия | GPL или проприетарный |
Интернет сайт | www |
Perst является Открытый исходный код, двойная лицензия, объектно-ориентированный встроенный система управления базами данных (ODBMS ). Оба Ява язык программирования, а C # версии языков программирования компактны, и Perst был реализован на смартфонах под управлением Android и телефон с операционной системой Виндоус (WP7) операционные системы.
История
Perst запущен в 2003 году в России. Он был разработан для достижения высокой производительности за счет тесной интеграции базы данных с языком программирования: Perst напрямую хранит данные в объектах языка. В 2006 году компания McObject LLC, базирующаяся в Иссакуа, штат Вашингтон, взяла на себя разработку Perst. Он по-прежнему предлагает бесплатные загрузки и добавлены варианты коммерческих лицензий.
Первоначально Perst был написан на Java и перенесен на C #. Первоначально разработанный для настольных и серверных программ, Perst также нашел применение в обеспечении управления базами данных для мобильных приложений, работающих на таких устройствах, как смартфоны. Эти мобильные устройства обычно имеют аппаратные ограничения с ограниченным объемом оперативной памяти и небольшим количеством доступных циклов ЦП, а также нестандартными (для систем баз данных) эксплуатационными требованиями (такими как поддержка Java ME, или же Silverlight в мобильной платформе Windows Phone 7).[1][2][3][4]
Версии
Доступные в настоящее время версии Perst - Perst для .СЕТЬ, Perst для Java и Perst Lite. Perst для Java и Perst Lite объединены в единый дистрибутив программного обеспечения.
Perst для .NET поддерживает версии C # 1.0 и 2.0 с тем же исходным кодом. Поддержка определенных функций C # 2.0 (таких как классы шаблонов) предоставляется во время компиляции. Он совместим как со стандартными, так и с компактными платформами .NET, а также с Silverlight и может работать как на Microsoft Windows Phone 7 (WP7), так и на Windows Embedded Compact (ранее Windows CE).
Perst для Java поддерживает J2SE / Версии J2EE 1.3 и 1.4, а также J2SE / J2EE версии 5. Он совместим со средой смартфонов Android.
Perst Lite - это реализация Perst для Java, которая работает на устройствах (например, смартфонах BlackBerry) на базе платформы мобильных устройств Java ME (J2ME). Оно имеет объем памяти примерно на 30 процентов меньше стандартного Perst.[5]
В деталях
Размер
Объем движка Perst составляет 5000 строк исходный код, и это время выполнения оперативная память (RAM) требуется от 30K до 300K.[6]]
Сделки
Perst сделки поддержать КИСЛОТА свойства (атомарность, последовательность, изолированность, долговечность) с автоматическим восстановлением.
Запрос
Perst предоставляет подмножество SQL для фильтрующих элементов класс контейнера. Для доступа к хранимым объектам Perst реализует специализированные классы коллекций, включая:
- B-дерево индексы
- R-дерево индексы
- База данных в памяти классы контейнера на основе Т-образные деревья
- k-d дерево индексы
- Основное дерево (Patricia trie) индексы
- Временные ряды класс для эффективной работы с небольшими объектами фиксированного размера, такими как котировки акций
- Специализированные версии коллекций для толстых индексов (индексы с множеством дубликатов) и битовых индексов (ключей с ограниченным числом возможных значений)[7]
Эволюция схемы
Чтобы упростить внесение изменений в существующий дизайн базы данных (схема базы данных ), Perst реализует «ленивую» эволюцию схемы базы данных. Когда экземпляр объекта загружается из базы данных, его дескриптор класса сравнивается с форматом класса в приложении. Если они не идентичны, и объект должен быть изменен, то объект конвертируется и сохраняется в новом формате. При «нетерпеливом» изменении формата схемы изменения сразу же охватили бы базу данных.
Дополнительные возможности
- Вывоз мусора
- Многопоточный
- Поддержка для Языковой интегрированный запрос (LINQ)[8]
- XML импорт Экспорт коммунальные услуги
- Мастер / раб репликация поддержка, с возможностью запуска только чтение запросы на подчиненных узлах
- Полнотекстовый поиск[9]
- Интеграция с AspectJ и JAssist аспектно-ориентированное программирование инструменты[10]
Примеры реализации
ProScout - это демонстрационный мидлет для использования Perst Lite в среде Java ME. Демонстрация представляет собой отдельное средство для заметок для спортивного рекрутера. Первоначально реализовано для ежевика, он также был развернут на Nokia S60.[11]
McObject предоставляет демонстрационное приложение CRM система с использованием Perst для .NET, включая базу данных контактов с полным текстовым поиском, которая работает в настольном браузере в Silverlight.[12] Энди Вигли из appamundi портировал это демонстрационное приложение на Windows Phone и описал проект в серии сообщений в блоге.[13]
Лицензирование
Пользователи могут распространять и / или изменять Perst в соответствии с условиями Стандартная общественная лицензия GNU (версия 2 или более поздняя), опубликованная Фонд свободного программного обеспечения. Для частных лиц или организаций, которые не могут или не хотят соблюдать GPL, McObject предоставляет коммерческую лицензию.
Рекомендации
- ^ См., Например, «Создание базы данных для Windows Phone 7 считается эпическим» от Брэндона Уотсона, директора Microsoft по взаимодействию с разработчиками для Windows Phone 7, в его сообщении в блоге. Запросы устройств Windows Phone 7, 17.06.2010.
- ^ Database Duo предоставляет хранилище приложений для Windows Phone 7, Регистр, 30.06.2010.
- ^ Встроенный механизм базы данных для приложений Silverlight, Блог об архитектуре и стратегии, MSDN.
- ^ Разработка объектно-ориентированной базы данных для встроенных устройств на базе J2ME. EE Times, 14.12.2006. В этой статье обсуждаются технические проблемы, которые необходимо было преодолеть в Java ME (J2ME), чтобы поддерживать ODBMS в этой среде.
- ^ Базы данных для Java ME, часть 2: не только JavaDB, но и Perst Lite, блог Терренса Барра о Java.Net. 07.12.2007 В архиве 2012-02-26 в Wayback Machine. Барр, проповедник Sun Microsystems по Java ME, в этом сообщении в блоге и в предыдущем. (Нужна база данных с вашим телефоном?, 05.09.20070 В архиве 2011-08-18 на Wayback Machine, описывает растущий спрос на управление данными в приложениях, которые работают на смартфонах на базе Java ME, и несколько доступных систем баз данных для удовлетворения этой потребности.
- ^ McObject выпускает Perst, встроенную базу данных с открытым исходным кодом для Java. Журнал разработчика Java, 09.02.2006
- ^ McObject выпускает тест Perst vs. SQLite для Android. Журнал доктора Добба, 1/2/2008
- ^ «Встроенная база данных добавляет поддержку LINQ». Архивировано из оригинал на 09.02.2013. Windows для устройств на eWeek, 9.06.2008
- ^ McObject выпустила Perst 4.0, новый нативный полнотекстовый поиск и многое другое для Android. В архиве 2011-05-20 на Wayback Machine Open Handset Magazine, 27.01.2009
- ^ Для дальнейшего обсуждения функций см. Спецификация встроенной базы данных Perst от McObject; также его Perst для Java: Введение и руководство и Perst для .NET: введение и руководство
- ^ Перенос мидлета Java ME между Blackberry и устройствами Nokia S40 и S60, http://eetimes.com/design/embedded/4007203/Porting-a-Java-ME-Midlet-Between-Blackberry-and-Nokia-S40-and-S60-Devices
- ^ Демонстрационное приложение встроенной базы данных Perst и Silverlight
- ^ Perst - база данных для Windows Phone 7 Silverlight
внешняя ссылка
- Официальный веб-сайт в McObject
- Perst - ProScout страницы на веб-сайте сообщества Java.Net Mobile & Embedded.