Eloquera I

краткое описание / немного истории / установка / режимы работы базы: service, inmemory, desktop / восстановление базы

Краткое описание базы

База данных Eloquera с самого начала была написана для хранения объектов  на основе .Net Framework, что сделало возможным попытаться вобрать в себя все лучшее от объектных и реляционных баз данных одновременно, преодолев многие их различия. Теоретически Eloquera может работать с любыми объектами из семейства .Net Framework, однако на практике работа проверялась пока только с C#. Главная ориентированность разработчиков на enterprise сегмент, а не на embedded решения.

Отличительные особенности Eloquera весьма внушительны и постоянно пополняются, вот их примерный список:

  • Сохраняет C# объекты (любые объекты любого языка на .Net платформе) без необходимости реализации специальных интерфейсов и адаптеров.
  • Сохраняет Dynamic объекты с любыми полями\свойствами и может сопоставить их объектам любого типа.
  • Язык запросов максимально приближен к SQL, при этом не требуется наличие какой либо реляционной SQL базы.
  • Поддержка LINQ.
  • Возвращает объекты в том виде, в котором они были сохранены (включая перечислимые типы)
  • Поддержка параметров в виде списков и массивов. В свою очередь массивы могут быть многомерными – синтаксис запросов остается неизменным.
  • Поддержка функций и выражений в запросах и конструкции ORDER BY.
  • Стандартный и расширенный ORDER BY.
  • Регулярные выражения в запросах.
  • Индексация и оптимизация запросов.
  • Пакетная вставка и обновление данных.
  • Поддержка шаблонных объектов.
  • Восстановление Read-only полей и свойств.
  • Учет классов наследников в запросах. Select ParentClass вернет и ParentClass и ChildClass.
  • Возможность построения запросов относительно указанного типа. Select ONLY ParentClass вернет только ParentClass без ChildClass.
  • Поддерживается частичный возврат объектов. Например, если вам требуется класс ForumTopic, тогда можно не подтягивать все ссылки на ForumMessages.
  • Можно указать глубину объекта для возврата в запросе.
  • Клиент-серверная архитектура.
  • Возможность одновременной работы с несколькими пользователями. Запросы выполняются одновременно и независимо.
  • Аутентификация через Windows аккаунты или через механизмы Eloquera.
  • Поддержка х86 и х64.
  • Уникальные идентификаторы для каждого объекта – отлично подходит для работы в системах не хранящих состояние и ASP.NET.
  • Поддержка культур. Например WHERE dates BETWEEN[‘en-US’] @d1 and @d2 будет интерпретировано в US формате, даже если текущий язык системы русский.
  • Нестрогий поиск c использованием конструкции ALMOST.
  • Хранимые процедуры.