No contexto do desenvolvimento web, quem cria bancos de dados? Apesar de toda uma série de informações associando o desenvolvedor da web de back-end ao processamento no servidor, modelagem de dados e similares, o aspecto de design do banco de dados da equação parece estar misteriosamente ausente.
Não estou falando sobre quem configura o banco de dados físico, estou me referindo a quem cria o modelo lógico do banco de dados, realiza entrevistas com usuários para obter informações sobre quais campos são necessários, quais são essas especificações de campo e etc. .
Percebi que o design ( PROPER ) de um banco de dados não é uma tarefa fácil (estou lendo este pager 672) e poderia facilmente ser uma profissão inteira. No entanto, pesquisar na Internet de alto a baixo levou a resultados surpreendentemente pequenos para quem deve lidar com essa tarefa no contexto do desenvolvedor da Web.
fonte
what those field specifications are
, se o seu projeto tiver uma especificação, você poderá identificar seu modelo.Respostas:
Sua pergunta não é apenas pertinente aos aplicativos da web, mas a todos os tipos de aplicativos que usam um back-end de banco de dados.
Em minha experiência
Conclusão:
ATUALIZAR:
Existem 3 tipos de DBAs:
A maioria dos DBAs são DBAs de produção, o que é bom, pois são eles que recuperam bancos de dados perdidos de matrizes de disco com falha nas primeiras horas da noite. Mas eles não participam ativamente do processo de design.
fonte
Depende de qual é o banco de dados usado.
Em muitos aplicativos (aplicativos da web ou não), o banco de dados está intimamente ligado a esse aplicativo porque serve como armazenamento persistente para ele. Em seguida, o banco de dados conceitualmente faz parte do aplicativo e é projetado em conjunto (e você presume que nenhum outro programa acessaria ou atualizaria significativamente esse banco de dados). BTW, a persistência pode ser alcançada por outros meios que não um banco de dados, por exemplo, arquivos de texto simples, arquivos binários (principalmente arquivos indexados à GDBM ), repositórios git (ou outros VCS), diretórios ou árvores de arquivos, árvores de arquivos, partições de disco bruto, hardware dedicado (por exemplo, flash), sistemas de arquivos remotos, ponto de verificaçãotécnicas. Para bancos de dados projetados para e com um aplicativo, você deve se preocupar com padrões comuns de recuperação e atualização e projetar o esquema do banco de dados (e indexação!) Com eles em mente.
Em algumas situações, o banco de dados é, por si só, um ativo importante e independente, e é projetado a priori para ser usado por várias aplicações diferentes (e até futuras). Em seguida, ele deve ser projetado de forma independente (e com muito mais cuidado).
Em particular, alguns aplicativos da web são apenas interfaces da web para bancos de dados existentes.
Em muitos casos (pense em algum wiki como um exemplo), os dados são mais importantes e mais valiosos do que os aplicativos que os utilizam. Você pode se preocupar em como torná-lo à prova do futuro e ser capaz de evoluí-lo facilmente (por exemplo, usando ou definindo formatos textuais e versáteis - de preferência padronizados e documentados - para fazer backup e restaurá-lo).
Leia também sobre NoSQL , bancos de dados orientados a documentos , bancos de dados de chave-valor , gestão do conhecimento , representação de conhecimento , ontologias , sistemas especialistas , as regras de negócios se aproxima , ERP , CMS . Talvez considere usar REDIS , MongoDB , etc.
fonte