LINUX.ORG.RU

Осуществлено портирование Sqlite на C#/Mono

 , , , ,


0

0

Noah Hart осуществил порт Sqlite на C# путем переписывания оригинальной библиотеки строчка за строчкой. При этом производительность получилась несколько более низкой, чем у оригинального кода - порт примерно в 5 раз медленнее (это означает, что он способен обработать примерно 1.5 миллионов операций типа SELECT или 300 000 операций типа INSERT за секунду - очень достойные результаты).

На канале #mono @ irc.gnome.org уже идет обсуждение, как можно ещё улучшить производительность кода. Один из возможных вариантов - не использовать стиль C там, где стиль C# итак работает на хорошем уровне.

Потенциал этой библиотеки огромен. Она может использоваться для запуска серверов ASP.NET в режиме Medium Trust. Также она может использоваться и для написания приложений на основе Silverlight. Tim Anderson уже начал работу над улучшением производительности библиотеки при работе с Silverlight.

Ещё раз замечу: это не очередная «обёртка» для библиотеки Sqlite, не какой-то драйвер - это реализация оригинальной библиотеки Sqlite на языке C#.

Исходный код

FAQ

>>> Блог Мигеля де Иказы

★★★★

Проверено: hibou ()
Ответ на: комментарий от mikhalich

>но вопрос - свое то ПО нахрен на моно тащить?

У моно есть один очень и очень большой плюс - F#. Это очень и очень хорошая штука.

Macil ★★★★★
()
Ответ на: комментарий от r

> движение в пользу услуги on-demand pay-as-you-use. Софт которым пользователем хоть как-то владел превращается в SaaS с постоянным доением.

Угу.

cab ★★★★
()
Ответ на: комментарий от mikhalich

>"вот мы на линуксы ваши идем, а у нас быдло прога на дотнетах, переписывать нехочетсо (разраб повесился), а она будет работать?"

>"да, будет".

быдлопрограммы на дотнетах пишут так, что они на разных вантузах не работают, а ви говорите линакс.

timth ★☆
()
Ответ на: комментарий от timth

>что они на разных вантузах не работают, а ви говорите линакс.

Исправим на уровне CLI. Проэмулируем. Нам не впревой :)

Macil ★★★★★
()
Ответ на: комментарий от Macil

>Почему-то в случае с LFN для FAT32 никакой судья ничего не рассматривал. Почему же? Наверно потому, что дело просто до суда не доходило.

Правильно. SCO тоже скосил за линукс бабок с испугавшихся - а в суде слил. По патентам JPEG контора накосила 130M$ с испугавшихся - а в судах слила по всем статьям, все патенты были отменены. Qualcomm попробовал выступить в суде по вопросам H.264 - отгреб в ответ нефорсабельность своих патентов.

Так что у MS есть так же замечательны момент нарваться на групповой контриск, и слить свой капитал на востановление деловой репутации этих всех на которых он продаст. Новел с бимерами уже кружат как стервятники над SCO с судебными искам требуя ликвидации.

>Он наезжает на относительно мелкие компании, которые с одной стороны не могут себя сами защищтить, а с другой стороны, из-за используемой бизнес-модели не могут обратиться за помощью к FSF. PROFIT!!!


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

r ★★★★★
()
Ответ на: комментарий от r

дык давайте критичную совместимость с дотнетом сделаем, а прогресс будем делать свой, ведь если в технологии появится серьезная необходимость у кого то кроме г-д Мужик-2 и Р - тогда технология появится)

mikhalich ★★
()
Ответ на: комментарий от Voviandr

>будьте добры, обьясните что такое ШГ

"Шрифты - говно", кому-то нравится со сглаживанием, кому-то без. В некоторых открытых шрифтах русские буквы весьма корявы и отличаются по размеру от латинских

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от mikhalich

>дык давайте критичную совместимость с дотнетом сделаем, а прогресс будем делать свой

Ну так и надо. Mono должен стать лучшим .NET чем .NET.

r ★★★★★
()
Ответ на: комментарий от r

причем со своим прогрессом надо поаккуратнее, а то тут при переходе на "новую и прогрессевиную моно" потеря производительности в пять раз=)

mikhalich ★★
()
Ответ на: комментарий от mikhalich

> давайте критичную совместимость с дотнетом сделаем, а прогресс будем делать свой,

Так в єтом направлении, вреде, и идет движ

cab ★★★★
()
Ответ на: комментарий от mikhalich

Так первый релиз, же. Отрефакторят.

cab ★★★★
()
Ответ на: комментарий от MuZHiK-2

>>>Без привязки к железу? просто 1,5 млн селектов/сек в вакууме? нет.

> Не тупи. Это всго лишь пропускная способность либы, какая разница, какое там железо? Это как измерять графику шестеренками.

Вах! Какой же феерический идиот получается. Ну не верю я, что есть такие люди. Стопудово над нами издеваются. Это все происки злых врагов, что подрывают имидж Mono.

Spectr ★★★
()
Ответ на: комментарий от r

> И одновременно растет ощущение, что злодеем становиться...

хм, вот именно такими словами как-то и не думал. Хотя ведь, совсем недавно срач был, где почти до такого и договорились.

Пока что - в силу пятници и прочего - спорить не буду. Но запомню, как-нибудь выверну при случае, темка-то занятная, флеймопригодная.

grinn ★★
()
Ответ на: комментарий от MuZHiK-2

>И на русском языке комменты? Просто мне охота во время матча послушать сплетни про нашу команду и т.д. Было прибито к сильверлайту

Нет, не на русском. На аглицком. И это печально, да. Понимать-то я без проблем понимаю, причём дословно, но вот только комментаторы англоязычные не очень-то словоохотливы.

Но ты же понимаешь, что изначальный твой посыл "сильверлайт-то ого-го, масштабы набирает прямо-таки мировые, без него даже ЧМ было не посмотреть" свелось к простому "один из российских ретрансляторов вконец офонарел и не давал никаких вариантов, заставляя пользователей ставить этот новый плагин для этой непонятной технологии, про которую домохозяйки и слышать не слышали"?

А в мировом масштабе сильверлайт как не был никому нужен - так и остался. На оф. сайте ЧМ был выбор "вот тут вам флэш, а вот тут - по людски, нормальный видеопоток". А сильверлайта не было даже как варианта.

MYMUR ★★★★
()
Ответ на: комментарий от Optoed

>>есть мнение, что сильверлайт должен здохнуть вместе с другой говноподелкой - флешем.

>А как делать красивые и анимированные сайты?

Руками. Прямыми. Которыми всё делается "красиво и анимированно" и без флэша и сильверлайта.

MYMUR ★★★★
()
Ответ на: комментарий от vladdal

>Эпизод 4. Империя наносит ответный удар :)

Это был Эпизод 5 ;)

MYMUR ★★★★
()

Ну чтож, как говорится "прыгай в огонь, мартышка". Сегодня они пишут свободный софт под Mono и радуются, но завтра весь этот софт может отправиться на помойку, а авторы Mono -- в тюрьму :-) Ну или тоже на помойку :-)

sinister666 ★★
()
Ответ на: комментарий от mikhalich

>>вам прямой пример с фф предоставили.

фф сам по себе тормоз.

MuZHiK-2 ★★★★
() автор топика
Ответ на: комментарий от mikhalich

>>разве это плохо когда программа делает исключительно свою работу и никуда не лезет в крайности?

если ты посмотришь, в амароке давно свежих идей не было, в блоге у них пишут дай бог раз в месяц, а раньше там чуть ли не каждый день были идеи и обсуждение.

MuZHiK-2 ★★★★
() автор топика
Ответ на: комментарий от bobrik

>>мир перевернулся в моих глазах. либа на каком-то космическом уровне запрещает делать больше селектов?

Я говорю о теоретической способности либы принять n-e количество вызовов, другой вопрос успеет ли она обработать их.

MuZHiK-2 ★★★★
() автор топика
Ответ на: комментарий от HappySquirrel

>>Ты сам-то понял, что сказал? SELECT - выборка данных из базы. INSERT - вставка данных в базу. Что и куда там можно пропустить без данных и без диска?

Насколько я догадываюсь, они тупо тестили либу на прием потока селектов пока либа не сдохнет и не захлебнется в них. Грубо говоря, проверили только водопровод, а уж сорвет краны или нет - не проверяли.

MuZHiK-2 ★★★★
() автор топика
Ответ на: комментарий от pento

>>Ну они как бы и так видео тег сделали.

И толку от этого тега видео? Они тут же отказались от стандарта на кодек - типа грызитесь дальше сами. Круто.

MuZHiK-2 ★★★★
() автор топика
Ответ на: комментарий от MYMUR

>>Но ты же понимаешь, что изначальный твой посыл "сильверлайт-то ого-го, масштабы набирает прямо-таки мировые, без него даже ЧМ было не посмотреть" свелось к простому "один из российских ретрансляторов вконец офонарел и не давал никаких вариантов, заставляя пользователей ставить этот новый плагин для этой непонятной технологии, про которую домохозяйки и слышать не слышали"?

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

MuZHiK-2 ★★★★
() автор топика
Ответ на: комментарий от MuZHiK-2

Вот так и говори. В одном частном случае (в одной частной стране) тебя выручил мунлайт. Безо всяких далеко идущих выводов по поводу этой технологии.

MYMUR ★★★★
()
Ответ на: комментарий от EugenyN

> Да, хоть можно стало поиграть в Каратеку (на то время - феноменальная игра с криками такими еще натуральными, через спикер то...), а не на ДВК видеть что-то мутное, бейсик-вымученное, а-ля питон ползающее за своим хвостом. Спектрум и то рулил. Где там был саботер-ниндзя, на чем шел, уже и не помню...

> Мне так запомнилось.

Вам запомнилось совсем другое и из намного более поздней эпохи. ПЭВМ ЕС не имели НИКАКОГО отношения к ЕС ЭВМ, кроме того, что и первое, и второе было утащено у IBM. ДВК здесь тоже совершенно неудачный пример, это отечественная реализация архитектуры PDP-11.

А вот БЭСМ-6 - это была действительно отечественная оригинальная разработка. Только это всё было ещё на 10 лет раньше.

"Наибольшей победой Запада в холодной войне было то, что Советский Союз принял архитектуру ИБМ" (Э. Дейкстра)

hobbit ★★★★★
()
Ответ на: комментарий от MuZHiK-2

>> но вмнесто этого взяли (точнее - украли) "совместимую" ЕС ЭВМ (содранную с IBM/360)

> Скажу тебе по секрету, ее на самом деле они сами отдали под видом, что мы у них украли. О причинах такого подумай.

Если причина та, о которой я догадываюсь, то при правильной аналогии Mono надо беспощадно душить.

hobbit ★★★★★
()
Ответ на: комментарий от MuZHiK-2

>>мир перевернулся в моих глазах. либа на каком-то космическом уровне запрещает делать больше селектов?

>Я говорю о теоретической способности либы принять n-e количество вызовов, другой вопрос успеет ли она обработать их.

Однозначно космический уровень. Ей пофиг железо, главное n+1 не моги! И с момента "абстрактной теоретической возможности принять n вызовов в m единиц времени" поподробнее. Можно с аналогиями про водопровод :)) Что он, мол, неспособен принято какое-то фантастическое давление даже в теории.

kass
()
Ответ на: комментарий от MYMUR

>>Вот так и говори. В одном частном случае (в одной частной стране) тебя выручил мунлайт. Безо всяких далеко идущих выводов по поводу этой технологии.

Мне, как пользователю, до лампочки - лишь бы я посмотрел то, что хочу. Хоть на моно, хоть на флеше - я хочу получить удовольствие от просмотра, а не париться по этому поводу. И да, в отличие от флеша мунлайт опенсурс.

MuZHiK-2 ★★★★
() автор топика
Ответ на: комментарий от hobbit

>>Если причина та, о которой я догадываюсь, то при правильной аналогии Mono надо беспощадно душить.

Там причина простая была - отдать-то ее они отдали, а вот софт и ось под нее - конечно же, нет. И пока наши годами осиливали софт под эту архитектуру, она уже устарела. А опомнились мы поздно - своего ничего не было, а то что было - уже не годилось. Там целые РАН трудились над этим.

MuZHiK-2 ★★★★
() автор топика
Ответ на: комментарий от kass

>>Можно с аналогиями про водопровод :)) Что он, мол, неспособен принято какое-то фантастическое давление даже в теории.

ОК. Пусть водопровод - это вход для потока селектов. Краны - это уже доступ непосредственно к базе на винте. Сперва ты льешь в трубу небольшой напор воды - все нормально, открыл кран - налил ведро, закрыл. Но потом поток начинаешь усиливать - и в конце выдаешь на полное давление, чтобы в водопроводе заклепки скрипели - заметь, водопровод выдерживает. Но стоит открыть кран - и твое подставленное ведро снесет. Может, вместе с краном.

MuZHiK-2 ★★★★
() автор топика
Ответ на: комментарий от MuZHiK-2

ты сферический идиот, вот что я их этого понял. теоретическая пропускная способность трубы равна пропускной способности её сечения, т.е. бесконечна. если я буду херачить со скоростью света воду, то водопроводу класть будет, вода даже стенок может не касаться. какой нахер кран?

разве что всё объясняется монорастичностью твоего водопровода и краника мигеля

bobrik
()
Ответ на: комментарий от bobrik

>>теоретическая пропускная способность трубы равна пропускной способности её сечения

я про _водопровод_ говорил. палата рядом, успокойтесь, пациент.

MuZHiK-2 ★★★★
() автор топика
Ответ на: комментарий от MuZHiK-2

Таак! Стоп, раз-два! С аналогиями определись.

>>мир перевернулся в моих глазах. либа на каком-то космическом уровне запрещает делать больше селектов?

> Я говорю о теоретической способности либы принять n-e количество вызовов, другой вопрос успеет ли она обработать их.

> Насколько я догадываюсь, они тупо тестили либу на прием потока селектов пока либа не сдохнет и не захлебнется в них. Грубо говоря, проверили только водопровод, а уж сорвет краны или нет - не проверяли.

Ещё раз, пользуясь водопроводной тематикой, кто мешает мне туда (в водопровод, который либа) закачать сколько я захочу? У меня вообще водопровод кю-гамма-плазмоиновый. И краны стоят такие, что с альфа-центавры их покупать прилетают.

И откуда взялось "Я говорю о теоретической способности либы принять n-e количество вызовов"??

kass
()
Ответ на: комментарий от kass

>>кто мешает мне туда (в водопровод, который либа) закачать сколько я захочу?

Ты в курсе, что при определенном давлении труба лопнет? Поэтому у тебя есть некоторое ограничение на давление.

>>У меня вообще водопровод кю-гамма-плазмоиновый. И краны стоят такие, что с альфа-центавры их покупать прилетают.

Это утопия. Тогда ты получишь 1.5 млн. селектов.

>>И откуда взялось "Я говорю о теоретической способности либы принять n-e количество вызовов"??

Ну у всего есть свои пределы и границы.

MuZHiK-2 ★★★★
() автор топика
Ответ на: комментарий от MuZHiK-2

> Ты в курсе, что при определенном давлении труба лопнет

давлению откуда взяться? получил запрос - выдал результат _без задержки_. или моно запрещает на программном уровне уменьшать задержку до железного ограничения? тогда впечь

bobrik
()
Ответ на: комментарий от MuZHiK-2

Ага, таки мы приходим к пониманию!

>>У меня вообще водопровод кю-гамма-плазмоиновый. И краны стоят такие, что с альфа-центавры их покупать прилетают.

>Это утопия. Тогда ты получишь 1.5 млн. селектов.

Я получу куда более неприличное число селектов.

>>И откуда взялось "Я говорю о теоретической способности либы принять n-e количество вызовов"??

>Ну у всего есть свои пределы и границы.

Поэтому мы говорим не о "теоретической способности" сферических коней в абстрактном вакууме, а о том, что на процессоре таком-то, с хранением базы в памяти такого-то типа теоретически достижима такая-то скорость обработки таких-то запросов и такая-то скорость вынимания данных из памяти.

Реально достигаются скорости такие-то и такие-то.

При этом, в равных условиях, оригинальная библиотека даёт такие-то и такие-то результаты.

kass
()
Ответ на: комментарий от hobbit

> Вам запомнилось совсем другое и из намного более поздней эпохи. > ... > и первое, и второе было утащено у IBM > "Наибольшей победой Запада в холодной войне было то, что Советский Союз принял архитектуру ИБМ" (Э. Дейкстра)

А как Вам смотрится на все это - с точки зрения текущей позиции России, "к вопросу"?

Стоит ли отгораживаться от всего мира, и плохо ли что Япония после 2-ой мировой войны - накупила "иностранных" патентов и быстро поднялась и выбилась в лидеры?

Оригинальных разработок у нас было много. Особенно в плане станков, а не продукции для людей.

Все это спорные вопросы, с учетом что что действительно было важно для страны, но и на сколько стоило отгораживаться от мира, и не фигня ли застой при Брежневе, и не фигня ли американская модель, дообамная, построения демократии с позиции силы, все это оффтоп, но лично я уверен - вопросы очень спорные.

EugenyN
()
Ответ на: комментарий от MuZHiK-2

> Насколько я догадываюсь, они тупо тестили либу на прием потока селектов пока либа не сдохнет и не захлебнется в них. Грубо говоря, проверили только водопровод, а уж сорвет краны или нет - не проверяли.

Ага, теперь я понимаю твою идею. Ты считаешь, что оно асинхронное? Ну, вообще-то оригинальный SQLite - синхронный, да и в тексте сообщения про асинхронность ничего нет. А потом - какой смысл в измерении скорости укладки строк в память? Или через 300K INSERT тупо кончилась память? А как тогда быть с упоминанием, что оригинальный SQLite - в 5 раз быстрее?

Я должен повторить вопрос - что курил автор сообщения?

HappySquirrel
()
Ответ на: комментарий от ebonent

>а как же крики о педерастии и об анальном рабстве?
А зачем вы на ЛОРе этим делитесь?
Сходите к психологу и он вас успокоит.

grim ★★☆☆
()

Noah Hart враг народа

Siado ★★★★★
()
Ответ на: комментарий от EugenyN

> Стоит ли отгораживаться от всего мира

Во-первых, никогда не надо отождествлять пусть даже крупнейшего производителя со "всем миром". Ему только это и надо. И за счёт этого винда, кстати, и продолжает лидировать - потому, что её отождествляют с "нормальной системой". Чистой воды психология.

Во вторых, развивать и продвигать СВОЮ архитектуру и "отгораживаться от всего мира" - это разные вещи. Тот, кто их отождествляет, всегда будет плестись в хвосте. Можно, напротив, предложить свою архитектуру миру.

А у России с "текущей позицией" сильные проблемы. Боюсь, что её просто нет. Какие-то шараханья и лозугни. То, вроде, решили ставить на свободное ПО, но палец о палец не ударили, чтобы подкрепить свои заявления.

hobbit ★★★★★
()
Ответ на: комментарий от hobbit

>> Стоит ли отгораживаться от всего мира

> Во-первых, никогда не надо отождествлять пусть даже крупнейшего производителя со "всем миром". Ему только это и надо.

Да я не о том. Страны ЕС не конфликтуют между собой, во всяком случае не на таком уровне.

> Тот, кто их отождествляет, всегда будет плестись в хвосте. Можно, напротив, предложить свою архитектуру миру.

Да, конечно, у нас медведи по улицам ходят, в каждой избе по самовару и матрешке. Догоним и перегоним, забросаем весь мир матрешками и медведями на парашютах.

> А у России с "текущей позицией" сильные проблемы. Боюсь, что её просто нет. Какие-то шараханья и лозугни.

Медленный и постепенный процесс к нормальному гражданскому обществу. С соответствующими институтами и механизмами, чтобы не только на одном диктате все было. А быстро тут и не надо.

> То, вроде, решили ставить на свободное ПО, но палец о палец не ударили, чтобы подкрепить свои заявления.

Все можно рассматривать как процесс. Устаканится ли в итоге, или нет - зависит от многих факторов. Значит не все решено.

EugenyN
()
Ответ на: комментарий от EugenyN

Вот когда например одному человеку объяснишь что-то, немного непривычное для него (мир без виндовз в России, в данном случае) - обычно выслушав непривычное - человек должен еще подумать, а как тогда что будет, как ему адаптироваться к такому миру.

И за это нельзя упрекать, во всяком случае до такой степени.

EugenyN
()
Ответ на: комментарий от EugenyN

Что было бы, если бы 90% десктопов в мире было на Линуксе - тоже точно не известно. Возможно было бы около миллиона различных дистрибутивов Линукса.

Принять сухой закон, руководствуясь благими намерениями - это мы можем. Потом разгребать - так на одного потом все и свалят. А жить как потом всем, с миллионом дистрибутивов, и не будет ли клановых войн, и не будет ли еще чего?..

EugenyN
()

не хочу показаться неоригинальным, но закопайте уже этот моно и все поделки для него :(

Skim
()
Ответ на: комментарий от EugenyN

>Стоит ли отгораживаться от всего мира, и плохо ли что Япония после 2-ой мировой войны - накупила "иностранных" патентов и быстро поднялась и выбилась в лидеры?

Дык, ты ты в курсе, чем сейчас японцы занимаются? Робатов камстролят с ЧСВ oNT, которым впадло даже с премьер-министрами за руку здороваться! ето тебе не сильверлайтная жувачка для быдла.

grinn ★★
()
Ответ на: комментарий от grinn

> /*я тебе такой селект напишу -- Ъ-Мега-Ынтарпрайз_Оракел раком станет минут на несколько. */ ... /*Алсо, есть мнение, что сильверлайт должен здохнуть вместе с другой говноподелкой - флешем*/ ... */ето тебе не сильверлайтная жувачка для быдла*/.

Скажи, добрый человек, а ты хоть одно написал Enterprise/Flash/Flex/SL/DHTML-приложение?

:)

EugenyN
()
Ответ на: комментарий от Skim

>не хочу показаться неоригинальным, но закопайте уже этот моно и все поделки для него :(

Зачем закапывать то, что переманит на Linux разрабов с конкурирующей платформы, и даже если моно так плох, то ведь всегда хорошие идеи , написанные на mono, можно переписать на понравившейся вам язык. А утверждать что все программисты на C# быдло а на C++ гении, все равно, что утверждать что все рускоговорящее население быдло, а аглицко говорящее гении! Дело то не в языке и не в платформе, а в том, чтобы привлечь внимание как можно больше разрабов к Linux и к философии откытого кода! Так уж сложилось, что агрессивная политика майкрософ подсаживания на свои технологии, как на иглу, неплохо работает. П.С. Я отнюдь не любитель Си шарп(хотя у меня есть реализованные на нем проекты, конечно же коммерческие)

nameless
()
Ответ на: комментарий от nameless

> Я отнюдь не любитель Си шарп(хотя у меня есть реализованные на нем проекты, конечно же коммерческие)

Оффтоп, а что предпочитаете? Лично я так много изучаю и интересно мнение людей, на что более кто нацеливается.

Можно просто перечислить, что более Вам интересно, в пару строк (дабы не очень лично меня упрекнули, что на разные темы).

Любознательный я. :) Заранее спасибо.

EugenyN
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.