Quais são os prós e contras dos sistemas db mgt relacionais open source versus proprietary?

1

Estou à procura de generalidades de alto nível. Por exemplo:

COST:
- vantagem de custo de aquisição de software - > Código aberto | - Manutenção - > ...

DESEMPENHO:
- Conforme definido por XYZ - > ...
- Conforme definido pelo ABC - > ...

Etc.

Obrigado!

    
por JDelage 07.07.2009 / 14:34

6 respostas

4

Primeiro, você precisa saber quais recursos do DBMS você deseja e quão bem os sistemas fazem isso. Por exemplo:

  • O MySQL é rápido para certos tipos de aplicativos, portanto, você pode atender a um alto volume de transações em um hardware modesto

  • O SQL Server vem com um bom conjunto de ferramentas de relatórios, portanto, talvez você não precise comprar ferramentas de terceiros para isso. No entanto, ele só é executado no Windows.

  • O Oracle tem uma JVM embutida no servidor (você realmente deseja pagar por licenciamento Oracle por CPU para executar um aplicativo java?), tem um bom suporte para grandes bancos de dados através de um bom particionamento de tabelas, índices de bitmap e uma variedade de recursos que facilitam os aplicativos de data warehouse.

  • Vários sistemas de banco de dados podem ou não suportar o protocolo XA para transações distribuídas

  • O Postgres tem um índice espacial e suporte para extensões e procedimentos armazenados em vários idiomas.

  • O Teradata tem uma arquitetura de nada compartilhado sem gargalos centrais, de modo que ele pode ser dimensionado para um conjunto de dados arbitrariamente grande.

  • Vários dialetos SQL suportados por sistemas diferentes têm conjuntos de recursos maiores ou menores ou pontos strongs específicos.

Uma vez que você saiba quais das várias plataformas DBMS proprietárias ou de código aberto podem suportar sua aplicação e quão bem elas fazem isso, você pode decidir qual delas deseja usar.

Todas as plataformas de DBMS de código aberto têm ofertas de suporte confiáveis disponíveis por meio do fornecedor ou de terceiros. Escusado será dizer que estas ofertas de suporte são comerciais, pelo que não são gratuitas. Se você realmente não precisa do suporte do fornecedor, pode ver um sistema de código aberto como gratuito, mas essa será uma situação incomum. Há um caso de particular interesse, discutido abaixo.

Os sistemas de código aberto também desdobram o suporte das ofertas de suporte de terceiros com credibilidade do fornecedor estão disponíveis para a maioria, se não para todos os principais produtos DBMS de código aberto.

Várias plataformas DBMS permitem que extensões sejam desenvolvidas - na verdade, esta tecnologia foi pioneira no Postgres by Stonebreaker et. al. e foi o principal impulsionador para o desenvolvimento desse sistema. Plataformas diferentes têm maior ou menor suporte para isso -

  • O Oracle e o SQL Server têm suporte limitado.

  • O Postgres tem amplo suporte para extensão em todo o sistema.

  • O Informix Online tem suporte para extensões conhecidas como 'blades' derivadas da Illustra (que era em si uma versão comercializada do Postgres).

  • O MySQL possui uma arquitetura de plug-in que suporta mecanismos de armazenamento de terceiros.

Se você tiver esse requisito específico, poderá descobrir que os sistemas de código aberto oferecem mais flexibilidade. Por exemplo, existem vários produtos de data warehousing baseados em versões modificadas do Postgres.

Assim, código-fonte aberto versus proprietário não é uma escolha entre livre (como na cerveja) e pago, mas sim uma questão de características, custo, confiança nas opções de suporte e controle.

    
por 07.07.2009 / 15:39
2

Custos reais

  • Licença
  • Manutenção
  • Suporte

Custos de conhecimento

  • Você consegue / contratar pessoas familiarizadas com ele ou precisará de treinamento
  • Você tem as habilidades de DBA / desenvolvedor já em casa

É compatível com suas plataformas / infraestrutura

Conjuntos de velocidade / desempenho / recursos

Disponibilidade de ferramentas (DBA e Dev)

-

Além disso, com uma versão comercial, você pode facilmente dizer 'XXXX está em falta', mas se você usar uma versão de código aberto, geralmente não há ninguém que possa responsabilizar por problemas (assim o dinheiro pára com você) - Se isso é uma consideração, -)

    
por 07.07.2009 / 14:43
0

Aqui está a principal vantagem do software de código aberto:

Liberdade: O software que vem com seu código-fonte e uma licença permitindo que você faça modificações para seu próprio uso, dá a você a capacidade de pagar a alguém que você gostaria de "suportar" esse software. Não há um "fabricante" por trás do software que possa fazer com que a versão que você está usando "seja obsoleta" e forçá-lo a uma "atualização" ou "sem suporte". Você pode optar por usar o software indefinidamente.

Com o software de "código fechado", o embargo do "fabricante" à disponibilidade do código-fonte significa que você não pode escolher a parte que suporta o software com base em seus próprios critérios (melhor preço, melhores habilidades, etc.) mas você é forçado a escolher apenas o "fabricante", independentemente de seu compromisso de "apoiar" suas necessidades com relação ao software.

    
por 07.07.2009 / 14:43
0

Acho que a maior pergunta que você precisa fazer é "Posso obter um contrato de suporte?". E sim, há pessoas que oferecem suporte a software de código aberto.

    
por 07.07.2009 / 14:47
0

Assim sendo, muitas vezes há um mau suporte técnico de fornecedores comerciais em comparação ao suporte oferecido pela comunidade de código aberto.

    
por 07.07.2009 / 14:48
0

Acho que as vantagens são baseadas em sua equipe. Se eles puderem apoiá-lo e atender às suas necessidades (como mencionado no primeiro post acima), então você deve considerá-lo. Se você não tem pessoal, não o use.

O custo das pessoas, especialmente se tiverem que aprender a plataforma ou alterar o código, supera de longe qualquer custo de licenciamento ou economia. Vá com o que você pode apoiar / construir.

    
por 07.07.2009 / 16:49