The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Реализация Sqlite на C#. Графический интерфейс для SQLite

08.08.2009 22:13

Miguel de Icaza объявил о доступности варианта библиотеки Sqlite, переписанной полностью на языке C#, что позволяет использовать данную БД в Silverlight приложениях или на ASP.NET серверах, работающих в режиме средней степени доверия. Тесты показали, что Sqlite на C# позволил выполнить 1.5 миллиона select и 300 тыс. insert операций в секунду, что примерно в 5 раз медленней оригинальной реализации на языке Си.

Кроме того, можно отметить, что Антон Васильев представил графический интерфейс для управления базами SQLite - sqlitegui, созданный на базе заброшенного проекта rsqlitegui.

  1. Главная ссылка к новости (http://tirania.org/blog/archiv...)
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/22942-sqlite
Ключевые слова: sqlite, database
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (44) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 00:31, 09/08/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    О как замечательно! Буквально намедни на сон грядущий задумался, а есть ли биндинг sqlite для .NET... А тут такая замечательная новость :)
     
     
  • 2.39, znnnna (?), 13:14, 11/08/2009 [^] [^^] [^^^] [ответить]  
  • –3 +/
    http://www.radiopark.ru  


     

  • 1.2, Knuckles (ok), 02:18, 09/08/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    >что примерно в 5 раз медленней оригинальной реализации на языке Си

    Что-то не пойму. Этому надо радоваться что ли? Нельзя было сделать биндинги к сишной библиотеке?

     
     
  • 2.3, vitek (??), 07:06, 09/08/2009 [^] [^^] [^^^] [ответить]  
  • +2 +/
    тут ключевая фраза:
    >что позволяет использовать данную БД в Silverlight приложениях или на ASP.NET серверах, работающих в режиме средней степени доверия.

    есстествено, что споры о производительности (c# быстрее c и т.д.) забыты и тут не уместны. :-D

    ps:
    мне вот интересно, в новостях про моно специально не указывается лицензия подобных продуктов или тут не принято?

     
     
  • 3.4, Любо (?), 10:47, 09/08/2009 [^] [^^] [^^^] [ответить]  
  • +3 +/
    >тут ключевая фраза:
    >что позволяет использовать данную БД в Silverlight приложениях или на ASP.NET серверах, работающих в режиме средней степени доверия.

    Т.е. я правильно понял, что подрубить нешарпованное ("в Silverlight приложениях или на ASP.NET серверах, работающих в режиме средней степени доверия") НЕЛЬЗЯ???

     
     
  • 4.6, vitek (??), 11:19, 09/08/2009 [^] [^^] [^^^] [ответить]  
  • +1 +/
    фиг его знает что/кто у них там на доверии... я просто новость прочитал.
     
  • 3.13, Аноним (-), 19:23, 09/08/2009 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Полно Вам! Кому интересно - сходит по ссылки и сам убедится, что лицензия _действительно_ свободная :)
     
     
  • 4.17, vitek (??), 22:08, 09/08/2009 [^] [^^] [^^^] [ответить]  
  • +3 +/
    >Полно Вам! Кому интересно - сходит по ссылки и сам убедится, что
    >лицензия _действительно_ свободная :)

    э нет. порядок должен быть.
    во всех новостях пишут, а тут "Полно Вам!".

     
     
  • 5.28, Аноним (-), 00:19, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • –3 +/
    >>Полно Вам! Кому интересно - сходит по ссылки и сам убедится, что
    >>лицензия _действительно_ свободная :)
    >
    >э нет. порядок должен быть.
    >во всех новостях пишут, а тут "Полно Вам!".

    Стоит ли на такой фигне заморачиваться?

     
     
  • 6.30, vitek (??), 01:11, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >>>Полно Вам! Кому интересно - сходит по ссылки и сам убедится, что
    >>>лицензия _действительно_ свободная :)
    >>
    >>э нет. порядок должен быть.
    >>во всех новостях пишут, а тут "Полно Вам!".
    >
    >Стоит ли на такой фигне заморачиваться?

    на опеннет? думаю да.
    вот был бы мононет... другое дело

     
  • 2.10, Аноним (-), 14:37, 09/08/2009 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >>что примерно в 5 раз медленней оригинальной реализации на языке Си
    >
    >Что-то не пойму. Этому надо радоваться что ли? Нельзя было сделать биндинги
    >к сишной библиотеке?

    Нет конечно. Сишную библиотеку низя подписывать цифровой подписью. clr библиотеку можно.

     
     
  • 3.21, User294 (ok), 00:00, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Ах вот оно что.Свобода, значит... а рут ауторити подписывающая сертификаты аффтарам там случайно не MS?А то с драйверами вон так сделали - в итоге если MS не нравится некий драйвер, им говно вопрос его выпилить и запретить.И ничего с этим не поделаешь - в иерархии сертификатов они сверху.

    И, кстати, нативные дллы подписанные подписями я своими глазами видел. Что за пиндеж что их нельзя подписывать?

     
     
  • 4.44, Аноним (-), 14:43, 17/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    При чем здесь свобода. Вы будете грузить себе на компьютер неподписанный код с какого-либо сайта? Я лично нет. При чем здесь MS, когда подписывает Verisign, и MS здесь никаким боком не стояло. И как вы представляете себе запуск нативной dll на power pc?

    А, дайте догадаюсь, это у вас личная фанатичная неприязнь к ms, да такая что вы тратите свое личное время чтобы пукать на форума. ну ну.

     

  • 1.5, Дмитрий Ю. Карпов (?), 11:10, 09/08/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    > Sqlite на C# ... примерно в 5 раз медленней оригинальной реализации на языке Си.

    Я догадывался, что C# хуже, чем Си; но никогда не думал, что настолько хуже. Интересно, почему это? Связано ли это с компилянием в псевдо-ассемблер?

     
     
  • 2.9, Аноним (-), 14:37, 09/08/2009 [^] [^^] [^^^] [ответить]  
  • –5 +/
    Нет, это связано с тем что возраст этой библиотеки еще пеленочный. За пару лет производительность подтянут. Как подтянут и jit :)
     
     
  • 3.11, Alexey (??), 16:29, 09/08/2009 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Странно, это уже 3 по счету библиотека, которая мне встречалась, переписанная с C на C#, но при этом у всех разница с исходной реализацией в 3-5 раз. Так что думаю скорость принципиально не улучшится.
     
     
  • 4.22, User294 (ok), 00:06, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Так что думаю скорость принципиально не улучшится.

    Логично.А вы думали что не-нативный код и куча параноидальных проверок - нахаляву?Вот воткнут при генережке кода вагон параноидальных проверок в глубоком цикле.И тормознется он раз в пять.Потому что большую часть цикла составят проверки.А то что данные можно было заранее проверить и в цикле это не гонять - такие среды разумеется не знают.В сях это может знать програмер но в моно\яве и подобных VM средах считается что програмер - дебил и от него надо защищаться.С ножом к горлу по возможности.Вообще, некоторые очень любят наносить пользу и причинять добро...

     
     
  • 5.40, Karbofos (??), 14:27, 11/08/2009 [^] [^^] [^^^] [ответить]  
  • +2 +/
    самое интересное, что .NET или Java программеры умалчивают, или просто не знают, на каких концептах базируются эти языки/платформы программирования, из-за чего программы только теоретически, или в инкубаторских условиях могут по скорости выполнения приближаться к Си и плюсам. в реальной жизни - сливают по полной программе.
     
     
  • 6.41, User294 (ok), 19:48, 12/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    > умалчивают, или просто не знают, на каких концептах базируются эти
    > языки/платформы программирования,

    Скорее второе.Достаточно посмотреть на тех кто на этом пишет...

     
  • 2.14, ONIX (ok), 19:26, 09/08/2009 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Конечно медленнее, если в С# даже базовые типы (int/float и тп) выступают классами то что говорить о более громоздких вещах... А реализация работы со строками на мой взгляд ужасна (класс String), при изменении одного символа в объекте происходит переразпредиление памяти (создается новая строка, а старая удаляется). ИМХО, слишком уж избыточный язык... Хотели сделать язык без Сишных костылей, а добавили новых =).
     
     
  • 3.16, Аноним (-), 20:57, 09/08/2009 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Конечно медленнее, если в С# даже базовые типы (int/float и тп) выступают классами

    Ну и в каком месте они классы? Формально - это структуры в терминах дотнета, отличие их от классов (опять же, в терминах дотнета) в том, что последнии как правило создаются в куче, в то время как структуры выделяются на стеке. То, что они инкапсулируют некоторые методы - воспринимайте как конструкцию языка, в остальном это типичные базовые типы, от которых нельзя даже унаследовать свой собственный. Это ограничение сделано как раз по ссображениям производительности.


    > А реализация работы со строками на мой взгляд ужасна (класс String), при изменении одного символа в объекте происходит переразпредиление памяти (создается новая строка, а старая удаляется).

    Опять глупости вследствие Вашей безграмотности. Когда нужна эффективная работа со строками - используют StringBuilder. Совершенно нормальный подход для скриптового языков.

     
     
  • 4.18, vitek (??), 22:10, 09/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Ну и в каком месте они классы? Формально - это структуры в терминах дотнета

    а чем структура от класса отличается?

     
     
  • 5.19, ONIX (ok), 23:20, 09/08/2009 [^] [^^] [^^^] [ответить]  
  • +2 +/
    В структуре свойства и методы по умолчанию со спецификатором public, а в классе privat. Но в шарпе это их не единственное отличие... С C# знаком не долго (3-4 мес.), но после С/С++ на нем писать очень не приятно)))) (Возможно дело привычки)
     
     
  • 6.26, vitek (??), 00:17, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >В структуре свойства и методы по умолчанию со спецификатором public

    эти детали не влиябт на размер в памяти... ну и скорость работы соотвественно

     
  • 5.20, Аноним (-), 23:20, 09/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Говорю же, структура создается на стеке. (Хм... интересно, а Nullable-структуры тоже создаются на стеке) Класс имеет ссылочный тип и создается в куче.
     
     
  • 6.27, vitek (??), 00:18, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Говорю же, структура создается на стеке. (Хм... интересно, а Nullable-структуры тоже создаются на стеке) Класс имеет ссылочный тип и создается в куче.

    правда что ли?
    какой ужас.

     
     
  • 7.29, Аноним (-), 01:09, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • –2 +/
    >правда что ли?
    >какой ужас.

    Не пойму Вас, а что ужасного?

     
     
  • 8.31, vitek (??), 01:17, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +1 +/
    пруфлинк на то, что структуры создаются в стеке можно ... текст свёрнут, показать
     
     
  • 9.32, Аноним (-), 01:55, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Jeffrey Richter CLR via C , Second Edition Primitive, Reference, and Value Ty... текст свёрнут, показать
     
     
  • 10.33, vitek (??), 02:19, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +2 +/
    предлагаете преобрести по сходной цене -D так не серьёзно тем более поговарив... текст свёрнут, показать
     
     
  • 11.35, vitek (??), 03:18, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +2 +/
    а сам нашёл http gazette linux ru net lg85 ortiz html действительно ужас ви... текст свёрнут, показать
     
     
  • 12.36, Аноним (-), 03:37, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Дело в том, что куча непростая, а управляемая Я даже боюсь представить, чего ... текст свёрнут, показать
     
  • 12.37, Аноним (-), 03:44, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Но я так и не понял, что в этом ужасного Никого ведь не смущает что в Си структ... текст свёрнут, показать
     
     
  • 13.38, vitek (??), 12:30, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    видимо то, что в таких услових отставание в 5 раз - не так много ... текст свёрнут, показать
     
  • 13.42, User294 (ok), 14:27, 13/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Ужасно имхо то что сишный компилер может дли int тупо выделить регистры проца, е... текст свёрнут, показать
     
     
  • 14.43, Aesthetus Animus (?), 22:22, 14/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Работу JIT-компилятора хорошо представляете Если нет - то не надо делать предва... текст свёрнут, показать
     
  • 2.45, andr.mobi (??), 14:53, 17/09/2009 [^] [^^] [^^^] [ответить]  
  • +/
    > Я догадывался, что C# хуже, чем Си; но никогда не думал, что настолько хуже. Интересно, почему это? Связано ли это с компилянием в псевдо-ассемблер?

    Однозначно. плюс ещё "инженеры", какие они у майкрософта? (бу-га-га) Очень просто можно сравнить: пишешь цикл в 10 тыс. printf на Сях и например на перле. time вам всё покажет. Это при том, что перловый printf ничего особо не делает - прямо вызывает одноимённую Сишную функцию.

    Даже мегаоптимальная реализация виртуальной машины Inferno Dis от создателей UNIX работает примерно на 30% медленнее нативного Си по их собственной оценке. Подобное отставание, кстати, было и у первого Си от ассемблерного кода, что бурно обсуждалось в начале 70-х. У ядра ОС на Си было много противников, машины то были медленные. А сейчас Линус против микроядерности, хотя плата за неё (написаную сопливыми студентами) не превышает 10%, что является очевидной (и очередной) глупостью этого попсового идола молодёжи.

    Ну а 30% - это небольшая плата за 100% переносимость исполняемого кода в распределённой системе. А в 5 раз - это ни в какие ворота не лезет. Завязывайте народ работать на маздайных технологиях - пусть они маздай.

     

  • 1.7, vitek (??), 11:23, 09/08/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Антон Васильев представил графический интерфейс для управления базами SQLite - sqlitegui

    а под 64 бита сборки нету.
    зы:
    а вообще бы новость отдельно надо. ну никаким боком к моно, а скажут ... а скажут что их было четверо. :-D

     
     
  • 2.25, User294 (ok), 00:13, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >а вообще бы новость отдельно надо.

    +1. SQLite мне интересен, я его использую, так что гуй для него тоже потенциально полезная мне приблуда.А вот дотнеты и ASP я бы хотел видеть только в страшных снах - на кой перец валить все в одну кучу?...

     

  • 1.8, mma (?), 13:39, 09/08/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    есть же sqlite manager  в виде дополнения к фаерфоксу. Пока лучше графический интерфейсов не придумали
     
     
  • 2.24, User294 (ok), 00:11, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >есть же sqlite manager  в виде дополнения к фаерфоксу. Пока лучше
    >графический интерфейсов не придумали

    Есть вагон графических интерфейсов к sqlite.Достаточно у пакетного манагера спросить... :)

     

  • 1.12, Vital (??), 17:16, 09/08/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    а разве при инсертах основные издержки будут не на дисковых операциях? О_О
     
     
  • 2.34, vitek (??), 02:22, 10/08/2009 [^] [^^] [^^^] [ответить]  
  • +/
    а Вы думаете данные пишутся на диск в синхронном режиме?
    да и по статистике 95% всего, что происходит с субд - это селекты. даже в oltp.
     

  • 1.15, Юниксоид (??), 20:32, 09/08/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Раньше я думал, что фраза "переписать под моно" - это шутка. Оказывается, это суровая реальность.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру