Пост-ГРЭС по сравнению с [закрытым] Firebird

Попытайтесь создать scriptfile как отдельную команду:

Command myCommand = new Command(scriptfile);

затем можно добавить, что параметры с

CommandParameter testParam = new CommandParameter("key","value");
myCommand.Parameters.Add(testParam);

и наконец

pipeline.Commands.Add(myCommand);
<час>

Вот являются полным, отредактированным кодом:

RunspaceConfiguration runspaceConfiguration = RunspaceConfiguration.Create();

Runspace runspace = RunspaceFactory.CreateRunspace(runspaceConfiguration);
runspace.Open();

RunspaceInvoke scriptInvoker = new RunspaceInvoke(runspace);

Pipeline pipeline = runspace.CreatePipeline();

//Here's how you add a new script with arguments
Command myCommand = new Command(scriptfile);
CommandParameter testParam = new CommandParameter("key","value");
myCommand.Parameters.Add(testParam);

pipeline.Commands.Add(myCommand);

// Execute PowerShell script
results = pipeline.Invoke();
24
задан Mariuz 22 February 2013 в 14:39
поделиться

8 ответов

Насколько мне известно, каждое «Нет» в столбце Postgres на указанной вами странице по-прежнему является «Нет», хотя базы данных только для чтения можно эффективно использовать, предоставляя только права выбора для всех таблиц в базе данных. Однако, начиная с версии 8.2, появилось много новых функций. Некоторые из 8.4 :

  1. Оконные функции
  2. Общие табличные выражения и рекурсивные запросы
  3. Параметры по умолчанию и вариативные параметры для функций
  4. Параллельное восстановление
  5. Разрешения на столбцы
  6. Локаль для базы данных настройки

... и некоторые из 8.3 :

  1. Полнотекстовый поиск интегрирован в основную систему базы данных
  2. Поддержка стандарта SQL / XML,
3
ответ дан 28 November 2019 в 22:34
поделиться

Я могу прокомментировать Firebird. С момента первого сравнения изменилось следующее:

Доступна ли многопоточная архитектура? Да (суперсервер)

На самом деле, классический сервер является предпочтительным типом сервера для масштабируемости. Начиная с Firebird 2.5 существует также архитектура под названием SuperClassic. Я написал небольшой пост о различиях: SuperServer, ClassicServer или SuperClassic?

Хранит информацию о транзакциях в том же файл как данные? Да (красным)

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

Временные таблицы? Нет

Доступно в Firebird 2.1. Примечания к выпуску

Богатые встроенные функции? Нет

Firebird 2.1 также улучшил это. Примечания к выпуску

Несколько методов аутентификации (т. Е. LDAP) Нет

Хотя нет поддержки LDAP, Firebird 2.1 позволяет аутентификацию Windows. Примечания к выпуску

Создавать пользовательские типы? Нет

Я не уверен, что здесь имеет в виду автор, но у Firebird всегда были домены.

Требовать резервное копирование / восстановление для сжатия? да (красным)

Спорный. Пространство базы данных используется повторно. Мне трудно представить необходимость сокращения базы данных в производственной среде.

Использовать в запросах регулярные выражения POSIX? Нет

Firebird 2.5 поддерживает регулярные выражения. Примечания к выпуску

Мониторинг базы данных? Нет

Да, Firebird 2.1 поддерживает мониторинг баз данных через системные таблицы. Firebird 2.5 добавляет поддержку средств трассировки.
Я знаю по крайней мере один отличный инструмент для мониторинга баз данных Firebird . ;)

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

Firebird 2.5 может запрашивать удаленные базы данных. Примечания к выпуску

11
ответ дан 28 November 2019 в 22:34
поделиться

Я давно работаю с Firebird и рекомендую НЕ использовать его каким-либо образом. У них много фундаментальных проблем, которых нет у Postgres. Чтобы не сказать много, просто скажу, что у них все еще нет команды «изменить вид». Чтобы изменить представление, вы должны отбросить и воссоздать его и все зависящие от него представления. Это одно из многих недостатков FB. Сравнивать эти движки БД вообще некорректно. У меня было много случаев, когда база данных Firebird была повреждена даже без потери питания, с обычными рабочими нагрузками и так далее. Если вы все еще решаете, не используйте Firebird! Если вы уже выбрали FB, вы вспомните мои слова через некоторое время :)

18
ответ дан 28 November 2019 в 22:34
поделиться

Еще одно недавнее сравнение (2008 г.):

3
ответ дан 28 November 2019 в 22:34
поделиться

Возможно резервное копирование на основе файловой системы
Да (почтмейстер должен быть остановлен)

неверно. Начиная с 8.1 (если я правильно помню) можно активировать архивирование WAL, а затем создавать резервные копии на основе файловой системы, не завершая ничего. Для получения дополнительной информации ищите PITR (восстановление на определенный момент времени) в документации

1
ответ дан 28 November 2019 в 22:34
поделиться

Важным моментом является развертывание:

  • Firebird плохо работает с ext3 в Linux, вам следует использовать XFS или что-то подобное.
  • Насколько я знаю, PostgreSQL все еще не работает. не работает на серверах Windows.
1
ответ дан 28 November 2019 в 22:34
поделиться

Тем, кто использует Firebird, я бы посоветовал прочитать Примечания к выпуску Firebird 2.1 , чтобы понять проблему повреждения базы данных по сравнению с более старой версией Firebird версии, работающие в Linux.

Короче говоря, это связано с ошибкой в ​​Linux. Для старых версий Firebirds обходной путь - смонтировать затронутую файловую систему с опцией sync . Проблема исправлена ​​в FB2.1.

1
ответ дан 28 November 2019 в 22:34
поделиться

Вы должны выбрать такую ​​технологию, как РСУБД, не (только) для сравнения списка функций, но и при ответе на такие вопросы:

  • достаточно ли она надежна для ваших нужд?
  • соответствует ли она всем вашим потребностям?
  • каковы перспективы / поддержка / разработка / документация?

Для меня FB не лучший выбор. Могу указать две истории:

  • Я написал ограничение на таблицу. Пользователи добавляют в таблицу несколько строк. Через некоторое время пользователь пытается добавить еще одну строку, но FB жалуется на ограничение. Что случилось? Эта новая строка определенно находится под ограничением. Проблема в последней строке, которая была добавлена ​​перед ней! Эта строка была добавлена ​​некоторое время назад, она была неправильной, и пока она находится в БД, и кто знает, сколько неправильных данных сейчас в БД. Очень плохой. FB неправильно реализует ограничения.
  • Я написал хранимую процедуру (SP). FB сохранил его в БД, FB может запустить его, и он работает - выберите данные, как ожидалось. Ни одного предупреждения. Тогда резервное копирование выполняется без ошибок. И только при восстановлении FB жалуется, что что-то не так с SP и ... что ... у вас сейчас нет восстанавливаемой резервной копии.

Я могу указать еще два или три, но этого мне достаточно, чтобы сказать: нет, FB - не мой выбор, это не СУБД, это игрушка.

И у них плохая документация. Фактически, в каждом выпуске нет реальных ссылок. Когда люди спрашивают на форумах: каков полный список функций в версии XX? Стандартный ответ: возьмите список из последнего официального выпуска Interbase и добавьте (удалите) функции из «примечаний к выпуску» всех последующих выпусков.

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

29
ответ дан 28 November 2019 в 22:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: