Um sistema de gerenciamento de banco de dados (DBMS) é um software que interage com usuários finais, aplicativos e o próprio banco de dados para capturar e analisar dados. Seus recursos principais giram em torno do armazenamento, recuperação, modificação e exclusão de dados com eficiência. Vamos dividir seus recursos:
Recursos e recursos de chave: *
Definição de dados: Isso envolve definir a estrutura do banco de dados, incluindo a criação, modificação e exclusão de tabelas, índices e outros objetos de banco de dados. Isso geralmente é feito usando um idioma de definição de dados (DDL), como os comandos `Create Table`,` alter tabela 'do SQL e `Drop Table`.
*
Manipulação de dados: Isso se concentra no acesso e modificação de dados no banco de dados. Isso é feito principalmente usando uma linguagem de manipulação de dados (DML), como os comandos `select`,` insert`, `update` e` delete` da SQL.
*
Controle de dados: Isso envolve o gerenciamento de acesso ao banco de dados, garantindo a integridade e a segurança dos dados. Isso inclui recursos como:
*
Controle de acesso: Definindo as permissões e funções do usuário para restringir o acesso a dados ou operações específicas.
*
Controle de simultaneidade: Gerenciando vários usuários acessando e modificando o banco de dados simultaneamente para evitar a corrupção de dados. Isso geralmente usa técnicas como bloqueio.
*
Gerenciamento de transações: Garantindo a consistência dos dados agrupando várias operações de banco de dados em transações, que são totalmente comprometidas ou completamente revertidas se ocorrer um erro.
*
backup e recuperação: Mecanismos para criar backups do banco de dados e restaurá -lo em caso de falha.
*
Segurança de dados: Protegendo o banco de dados contra acesso, modificação ou exclusão não autorizada. Isso envolve recursos como criptografia, listas de controle de acesso e auditoria.
*
Integridade dos dados: Mantendo a precisão e a consistência dos dados. Isso inclui a aplicação de restrições (como chaves primárias e chaves estrangeiras) e regras de validação de dados.
*
Administração de dados: Ferramentas e utilitários para gerenciar o banco de dados, incluindo o desempenho do monitoramento, otimizar consultas e gerenciar o espaço de armazenamento.
*
Processamento e otimização da consulta: Executando com eficiência consultas em relação ao banco de dados. Isso envolve otimizar os planos de execução da consulta para minimizar o tempo e os recursos necessários.
Defina funções em DBMs (usando SQL como exemplo): As funções definidas (também conhecidas como funções agregadas) operam em um conjunto de valores e retornam um único valor. Eles são essenciais para resumir dados. As funções conjuntas comuns incluem:
*
count (): Retorna o número de linhas em um grupo. `Selecione a contagem (*) dos funcionários;`
*
sum (): Retorna a soma dos valores em uma coluna numérica. `Selecione soma (salário) dos funcionários;`
*
avg (): Retorna a média dos valores em uma coluna numérica. `Selecione AVG (salário) dos funcionários;`
*
min (): Retorna o valor mínimo em uma coluna. `Selecione min (idade) dos funcionários;`
*
max (): Retorna o valor máximo em uma coluna. `Selecione Max (salário) dos funcionários;`
*
mediana (): (Não é o SQL padrão, mas muitos DBMSs fornecem isso) retorna o valor médio.
*
mode (): (Não é o SQL padrão, mas muitos DBMSs fornecem isso) retorna o valor mais frequente.
Exemplos de software DBMS: *
DBMs relacionais: *
mysql: Fonte aberta, amplamente usada para aplicativos da Web.
*
postgreSQL: A fonte aberta, conhecida por sua robustez e recursos avançados.
* Banco de dados
Oracle: Comercial, um DBMs poderoso e escalável frequentemente usado em ambientes corporativos.
*
Microsoft SQL Server: Comercial, popular para aplicativos baseados no Windows.
*
ibm db2: Comercial, um DBMS robusto frequentemente usado em ambientes de mainframe.
*
NOSQL DBMS (não relacional): *
mongodb: Banco de dados de documentos, popular para esquema flexível e escalabilidade.
*
Cassandra: Loja de coluna ampla, excelente para lidar com grandes volumes de dados com alta disponibilidade.
*
redis: Armazenamento de estrutura de dados na memória, usado para cache e aplicativos em tempo real.
Os recursos específicos e as funções definidas disponíveis variam dependendo dos DBMs escolhidos. No entanto, os conceitos principais permanecem consistentes em diferentes sistemas. A escolha do DBMS depende das necessidades específicas do aplicativo, incluindo volume de dados, complexidade, requisitos de escalabilidade e orçamento.