Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
 Выбор встроенной(Embedded) базы  [new]
Alex Kler
Member

Откуда:
Сообщений: 11
Всем привет. Не нашёл ответа на вопрос с моими условиями, потому создаю новую тему.
Нужно определиться с выбором. Основные требования к базе:
  • Компактное хранение данных(размер критичен)
  • Быстродействие
  • Поддержка MS VS 2010 и при этом .Net FrameWork 2
    Приложение будет на C#
    Файл базы будет забираться клиентским приложением с хоста.
    В перспективе будет также схема совместного доступа к базе через сервис.
    Остановился на нескольких базах, не могу определиться кто лучше.
    FireBird, SQLite, Advantage Database Server (ADS), EffiProz

    EffiProz интересен тем что заточен под C# и быстрее(по крайней мере если верить данным с их сайта) SQLite. Но он рассчитан под .Net 3.5 И на сколько он компактен неизвестно.
    В пользу FireBird выступает то, что база "донор"(источник информации) крутиться на Yaffil, но я опять таки не знаю насколько "прожорлива" в смысле размеров эта база.

    Может кто-нить знает место, где есть сравнение баз по компактности хранения данных.
    Был бы очень признателен.
  • 2 июл 11, 03:25    [10910600]     Ответить | Цитировать Сообщить модератору
     Re: Выбор встроенной(Embedded) базы  [new]
    Sergey Orlov
    Member

    Откуда: СПб
    Сообщений: 4508
    SQL Anywhere server...
    2 июл 11, 12:27    [10911101]     Ответить | Цитировать Сообщить модератору
     Re: Выбор встроенной(Embedded) базы  [new]
    компактное
    Guest
    Про компактное хранение это явно не про Firebird
    2 июл 11, 15:38    [10911521]     Ответить | Цитировать Сообщить модератору
     Re: Выбор встроенной(Embedded) базы  [new]
    Dimitry Sibiryakov
    Member

    Откуда:
    Сообщений: 54791

    Ага, это про FVMAS с его девятью уровнями сжатия.

    Posted via ActualForum NNTP Server 1.4

    2 июл 11, 19:25    [10911814]     Ответить | Цитировать Сообщить модератору
     Re: Выбор встроенной(Embedded) базы  [new]
    Таблоид
    Member

    Откуда:
    Сообщений: 9456
    Блог
    компактное
    Про компактное хранение это явно не про Firebird
    и конечно же, вы сравнивали и готовы привести сюда результаты, да ? ;-)
    2 июл 11, 23:51    [10912518]     Ответить | Цитировать Сообщить модератору
     Re: Выбор встроенной(Embedded) базы  [new]
    Alex Kler
    Member

    Откуда:
    Сообщений: 11
    Sergey Orlov
    SQL Anywhere server...

    Просветите неразумного SQL Anywhere и ADS это 2-е большие разницы? Контора вроде как одна - Sybase. Просто SQL Anywhere платная, а ADS - free.
    3 июл 11, 00:59    [10912799]     Ответить | Цитировать Сообщить модератору
     Re: Выбор встроенной(Embedded) базы  [new]
    Alex Kler
    Member

    Откуда:
    Сообщений: 11
    Dimitry Sibiryakov
    Ага, это про FVMAS с его девятью уровнями сжатия.

    Блин, я думал что-то пропустил, какой-то новый бренд.
    Нашёл на форуме тему - посмеялся. Жалко нет времени все 600 страниц читать.
    3 июл 11, 01:30    [10912940]     Ответить | Цитировать Сообщить модератору
     Re: Выбор встроенной(Embedded) базы  [new]
    Alex Kler
    Member

    Откуда:
    Сообщений: 11
    Таблоид
    компактное
    Про компактное хранение это явно не про Firebird
    и конечно же, вы сравнивали и готовы привести сюда результаты, да ? ;-)


    Эх результаты тестирования...
    Да результаты тестирования это лучшее, что мне могли бы предложить...
    3 июл 11, 01:35    [10912960]     Ответить | Цитировать Сообщить модератору
     Re: Выбор встроенной(Embedded) базы  [new]
    Таблоид
    Member

    Откуда:
    Сообщений: 9456
    Блог
    Alex Kler
    результаты тестирования это лучшее, что мне могли бы предложить...
    Нормальный тест можно написать, только зная задачу, с которой далее работать.
    Если просто ткнуть "пальцем в небо", то создайте базу с нуля, в ней create table t(s varchar(50)) и натолкайте в неё 1 млн строк (да хотя бы GUID). Найдите размер файла и запишите его размер.
    Вот что получилось для FB 2.5:
    +
    Скрипт для ФБ:
    recreate table t(s varchar(50));
    commit;
    execute block as
    declare n int = 1000000;
    begin
      while (n>0) do
        insert into t values( uuid_to_char(gen_uuid()) )
        returning :n-1 into n;
    end;
    commit;
    Результат команды dir (для базы с размером страницы = 8192 байта - самый распространённый на сегодня; для 4096 байт будет меньше):
    03.07.2011  00:53           84 303 872 TEST3.FDB

    Поскольку ФБ выделяет пространство под записи с запасом, это не означает, что на 1 строку 36 байт длиной расходуется 84 байта.
    Если попросить его дать детальную инфу по этой базе (gstat -r), то получаем:

    gstat -r test3.fdb
    Analyzing database pages ...
    T (129)
    Primary pointer page: 155, Index root page: 156
    Average record length: 42.99, total records: 1000000
    Average version length: 0.00, total versions: 0, max versions: 0
    Data pages: 10102, data page slots: 10102, average fill: 73%

    Если далее выполнить backup и restore с ключиком -use_ (запрещает создание резервного пространства, т.е. восстанавливает "плотно"), получите .fdb размером ~60 Mb (61505536 байт), но Average record length останется прежней, 43 байта. При длине ВСЕХ строк в таблице = 36 байт :-)
    3 июл 11, 02:45    [10913155]     Ответить | Цитировать Сообщить модератору
     Re: Выбор встроенной(Embedded) базы  [new]
    Alex Kler
    Member

    Откуда:
    Сообщений: 11
    Таблоид,

    Спасибо за информацию приму к сведению.
    4 июл 11, 18:39    [10920426]     Ответить | Цитировать Сообщить модератору
     Re: Выбор встроенной(Embedded) базы  [new]
    Alex Kler
    Member

    Откуда:
    Сообщений: 11
    Очень интересно узнать поподробней про EffiProz. Кто-нить щупал это чудо? Какие впечатления?

    Про SQLite что-то молчат. Нет поклонников?
    4 июл 11, 18:42    [10920436]     Ответить | Цитировать Сообщить модератору
     Re: Выбор встроенной(Embedded) базы  [new]
    Их мало
    Guest
    Alex Kler
    Очень интересно узнать поподробней про EffiProz. Кто-нить щупал это чудо? Какие впечатления?

    Про SQLite что-то молчат. Нет поклонников?

    Их мало и они все в своей ветке попрятались.
    4 июл 11, 23:52    [10921343]     Ответить | Цитировать Сообщить модератору
     Re: Выбор встроенной(Embedded) базы  [new]
    АнатоЛой
    Member

    Откуда: Киев, Украина
    Сообщений: 2897
    Блог
    Alex Kler, использовали SQLite. Нам не особо требовательно было - но и претензий к нему не было. А ещё сегодня обнаружил его у себя на Garmin Nuvi.
    5 июл 11, 00:48    [10921525]     Ответить | Цитировать Сообщить модератору
     Re: Выбор встроенной(Embedded) базы  [new]
    Alex Kler
    Member

    Откуда:
    Сообщений: 11
    АнатоЛой
    Alex Kler, использовали SQLite. Нам не особо требовательно было - но и претензий к нему не было. А ещё сегодня обнаружил его у себя на Garmin Nuvi.

    Ну обнаружить его много где можно. Я первый раз его у mozilla увидел. :)
    Если у Вас остался функционал можете создать базу похожую на ту как это сделали здесь 10913155 и написать что по размерам файла вышло?
    Был бы очень благодарен.
    6 июл 11, 02:11    [10929198]     Ответить | Цитировать Сообщить модератору
     Re: Выбор встроенной(Embedded) базы  [new]
    чччД
    Guest
    Alex Kler
    ...
    Файл базы будет забираться клиентским приложением с хоста.
    В перспективе будет также схема совместного доступа к базе через сервис.

    Страшно...
    Может, сразу "совместный доступ"?
    10 июл 11, 00:57    [10951740]     Ответить | Цитировать Сообщить модератору
     Re: Выбор встроенной(Embedded) базы  [new]
    MBG
    Guest
    Alex Kler
    Про SQLite что-то молчат. Нет поклонников?


    В соответствующей ветке есть и тесты и примеры проектов.
    10 июл 11, 01:46    [10951825]     Ответить | Цитировать Сообщить модератору
     Re: Выбор встроенной(Embedded) базы  [new]
    Alex Kler
    Member

    Откуда:
    Сообщений: 11
    чччД
    Alex Kler
    ...
    Файл базы будет забираться клиентским приложением с хоста.
    В перспективе будет также схема совместного доступа к базе через сервис.

    Страшно...
    Может, сразу "совместный доступ"?

    Сразу совместный доступ не выйдет. Приложение будет переписываться вместо старого и на первое время должна быть совместимость, кроме того, у некоторых клиентов инет настолько ужасен, что онлайн им будет тяжело работать. Собственно это основная причина требования к размеру файла БД.
    11 июл 11, 14:40    [10955918]     Ответить | Цитировать Сообщить модератору
     Re: Выбор встроенной(Embedded) базы  [new]
    Dimitry Sibiryakov
    Member

    Откуда:
    Сообщений: 54791

    Alex Kler
    Собственно это основная причина требования к размеру файла БД.

    Бред какой... Забирать только пакеты обновлений не позволят кривые руки разработчика?

    Posted via ActualForum NNTP Server 1.4

    11 июл 11, 15:11    [10956150]     Ответить | Цитировать Сообщить модератору
    Все форумы / Сравнение СУБД Ответить