Каковы преимущества VistaDB - PullRequest
12 голосов
/ 11 сентября 2008

За последние годы я видел ссылки на VistaDB и с такими инструментами, как SQLite, Firebird, MS SQL et. и др. У меня никогда не было причин для этого.

Каковы преимущества оплаты VistaDB по сравнению с использованием другой технологии? Вещи, о которых я думал:
1. Поддержка Compact Framework. SQLite + MSSQL поддерживают CF.
2. Нужен путь миграции к «более надежной» системе. Firebird + MSSQL.
3. Нужны более продвинутые функции, такие как триггеры. Firebird + MSSQL

Ответы [ 4 ]

24 голосов
/ 21 сентября 2008

Время выполнения клиента VistaDB бесплатное. Время выполнения никогда не истечет в 3 часа ночи, как вы сказали. Только инструменты разработчика лицензируются таким образом. Вам нужна 1 лицензия на разработчика, просто. Мы даже предлагаем действительно недорогую версию Lite без инструментов Visual Studio.

Некоторые другие преимущества

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

Доступ к реестру не требуется - Большинству других в базах данных proc требуется доступ к реестру для поиска родительских элементов управления или разрешений. VistaDB делает только то, что вам говорят, и даже будет работать в Medium Trust.

Развертывание XCopy для среды выполнения и вашей базы данных (один файл). Вы можете скопировать свое приложение, среду выполнения и базу данных и запустить их. Ничего не нужно устанавливать или настраивать на компьютере, никаких специальных привилегий не требуется (мы можем работать в Medium Trust или выше).

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

Триггеры CLR / Procs CLR - Вы можете написать код CLR и использовать их в качестве триггеров или сохраненных процедур. Мы только недавно внесли изменения, чтобы упростить поддержку единой сборки CLR, которая может работать как в VistaDB, так и в SQL Server 2005/2008.

T-SQL Procs - VistaDB T-SQL Procs совместимы с SQL Server 2005/2008. Любая процедура, которая работает в нашем движке, будет выполняться в SQL Server. Это не значит, что все, что там работает, портирует нас. Мы являемся подмножеством функций в SQL Server. Но мы также являемся единственным способом запуска T-SQL Procs без SQL Server (SQL CE не может этого сделать).

Лично я считаю, что одна из самых больших функций - это возможность позже перейти на SQL Server. Все типы VistaDB, синтаксис и CLR Procs, T-SQL Procs и т. Д. Будут работать на SQL Server. (Вы не можете взять все от SQL Server до VistaDB, хотя это подмножество)

32/64-битное развертывание - VistaDB - это развертывание в одной сборке, которое запускается как 32, так и 64-битным без изменений SQL CE требует двух разных сред выполнения в зависимости от ОС и вообще не может работать под IIS. Access не имеет 64-разрядной среды выполнения, а самая последняя 32-разрядная среда выполнения может быть развернута только через MSI. 32-разрядная версия Windows имеет среду выполнения, а 64-разрядная - нет.

Реляционная целостность - VistaDB также фактически применяет ваши ограничения и внешние ключи. Вы можете конкретное каскадное обновление и удаление операций. Человек, который сказал, что мы похожи на SQLITE, ошибается в этом отношении. Они анализируют ограничения, но не применяют их.

РЕДАКТИРОВАТЬ: У них есть поддержка FK сейчас в SQLite. Но они не скомпилированы по умолчанию и не используют тот же синтаксис, что и SQL Server.

Среднее доверие - Возможность работы на веб-сервере со средним уровнем доверия - это еще одна функция, о которой многие не будут беспокоиться, но это большая проблема. Многие сторонние элементы управления не могут работать даже в Medium Trust. Мы можем запустить весь движок в Medium Trust из-за нашей приверженности к 100% управляемому коду и минимуму необходимых разрешений.

- Полное раскрытие информации - Я владелец VistaDB, поэтому я могу быть предвзятым. :)

5 голосов
/ 25 марта 2009

Для меня наиболее интересной особенностью VistaDB является то, что она может работать в среде Medium Trust. Это делает его идеальным решением для создания небольших и средних веб-сайтов .NET, которые можно развернуть на сервере путем копирования и вставки (развертывание x-copy).

И почти все провайдеры виртуального хостинга Windows (например, GoDaddy) не позволяют запускать ваши сайты в режиме полного доверия. И также не будет устанавливать для вас какие-либо сторонние двоичные файлы в GAC, такие как System.Data.SQLite.dll, если вы хотите использовать SQLite, например.

5 голосов
/ 11 сентября 2008

Ну, главное, это чистый управляемый код - чего бы это ни стоило; он работает не только на типичных компьютерах с Windows, работающих под управлением .NET, но и везде, где вы используете Compact Framework, и даже работает на Mono . Вот несколько примечательных пунктов на их домашней странице:

  • Маленький <1 МБ, действительно встроенный ZeroClick </li>
  • Microsoft SQL Server 2005 совместимые типы данных и синтаксис T-SQL
  • Ни один из ограничений SQL CE
  • Однопользовательский, многопользовательский локальный или с использованием общей сети.
  • Частично доверенный хостинг - не проблема.
  • Бесплатное распространение - развертывание SQL Server с одним ЦП обходится дороже, чем лицензия VistaDB для сайта!

Стоит отметить, что компания Роба Говарда, Telligent , использует ее в качестве базы данных по умолчанию для своего нового программного обеспечения CMS: " Graffiti ".

Я играл с этим тут и там, но пока что ничего против него не построил.

0 голосов
/ 11 сентября 2008

Я раньше не видел VistaDB, он выглядит довольно круто.

Обновление: Получил комментарий от кого-то из VistaDB - его модель обновления предназначена только для получения новых версий. Ваши старые не перестанут работать, если срок действия вашей лицензии истечет, и это полезно знать.

Сохранение первоначального поста здесь, как ИМХО, о предупреждении об истечении срока действия лицензий на ПО все еще стоит подумать, даже если с самой VistaDB все в порядке.


Это определенно кажется «более функциональным», чем SQLite, но я не вижу там ничего, чтобы оправдать стоимость. Сайт, кажется, указывает, что вы можете купить одну лицензию за 279 долларов, но это подразумевает, что это всего лишь 1 год подписки. Придется ли вам платить еще 279 долларов в следующем году, чтобы ваш сайт не упал?

Если это так, не забывайте учитывать в «стоимости», сколько неудобств это будет, когда вы получите звонок в 3 часа ночи (закон Мёрфи, это всегда 3 часа ночи) от ваших паникующих клиентов, потому что срок их лицензии VistaDB истек: - (

У меня был такой опыт лично с некоторым устаревшим программным обеспечением, и это никогда не было хорошо. Вы можете отправлять своим клиентам электронные письма и сообщения и мигать всем их экраном, мигающим красным цветом с надписью «ВАМ НУЖНО ПОЛУЧИТЬ НОВУЮ ЛИЦЕНЗИЮ ПЕРЕД СЛЕДУЮЩЕЙ НЕДЕЛЕЙ», и они все равно никогда не сделают этого, и вы все равно почувствуете боль в 3 часа ночи, когда это произойдет. истекают.

...