Как стать автором
Обновить

Eloquera — объектная база с SQL

Время на прочтение2 мин
Количество просмотров663
После нескольких попыток написать об Eloquera что-то связное и при этом короткое, я решил опубликовать некоторые вопросы и ответы на них — заодно

Q1: Первым делом, что такое Eloquera? С чем ее едят? Как это вообще выглядит?

A1: Eloquera — объектно-реляционная база данных с поддержкой SQL. Едят ее с .NET, в частности, с C#. Теоретически, одна должна работать с любым языком .NET, но мы проверяли только с C# и VB.NET.

А выглядит это так:

// Соединяемся к базе
DB db = new DB("server=localhost;user=sys;password=pwd;options=none;");

// Создаем наш подопытный объект
Book book = new Book() { Price = 12.99, Title = "Learn CSV in 365 days" };

// Пишем объект в базу
db.Insert(new Book());

// Получаем наши объекты из базы
var books = db.ExecuteQuery("SELECT Book WHERE Price < 15 AND Title CONTAINS 'learn'");

// И распечатаем их в красивом черном окошке
foreach(Book ibook in books)
Console.WriteLine("{0} - ${1}", ibook.Title, ibook.Price);



Q2: Что в ней особенного? Почему, например, не db4o?

A2: По сравнению с существующими объектными базами, Eloquera — быстрая, даже очень, особенно если сравнивать базы в миллионы объектов и десятки и сотни типов. Но этого мало. Она содержит такие вещи, как регулярные выражения в SQL, а также оператор ALMOST. А по сравнению с db4o, Eloquera не имеет ограничений в размере базы, умеет индексировать поля и свойства классов, поддерживает SQL, и она быстрее.

Q3: А могу я скачать Eloquera и попробовать?

A3: Сейчас мы работаем над Eloquera, и выпустили Eloquera Lite — клиент/серверную версию с поддержкой простых объектов и без транзакций. Несмотря на отсутствие транзакций в Eloquera Lite, сервер поддерживает работу множества пользователей и позволяет выполнять одновременно несколько запросов.

Q4: Это правда, что Eloquera использует SQL для запросов?

A4: Да, так получилось. Разработчики Eloquera, в том числе и я, оказались людьми консервативными, и не поняли всю прелесть объектно-ориентированных способов запрашивать данные короткими кусками кода по 30 строк. Поэтому мы решили, что SQL — это очень удобно и практично, хоть и не слишком концептуально для объектной базы. Ну что ж, значит, у нас получился не концепт, а практический продукт. А еще можно попробовать SQL для Eloquera можно узнать, попрактиковавшись онлайн!

Q5: Как долго учиться работе с Eloquera?

A5: В зависимости от скорости вашего чтения — от 20 секунд до минуты.

Q6: Кстати, у вас есть JOIN'ы в базе?

A6: Eloquera Lite пока не поддерживает различные объекты в одном запросе. Но мы работаем над полной версией, которая будет поддерживать вложенные объекты. А вас, коллеги, мы хотели бы спросить: что лучше — вложенные объекты или JOIN'ы? Пишите в комментариях своё мнение и мы обсудим все ваши предложения.
Теги:
Хабы:
Всего голосов 21: ↑21 и ↓0+21
Комментарии17

Публикации

Ближайшие события