Banco de Dados - Sistemas Gerenciadores de Bancos de Dados no Mercado

13.7k views3359 WordsCopy TextShare
UNIVESP
univesp.br Eixo de Computação - COM300 Univesp - Universidade Virtual do Estado de São Paulo Profes...
Video Transcript:
[Música] Olá pessoal sou o professor Eduardo Santarém hoje nós vamos dar continuidade na nossa disciplina de banco de dados nós vamos falar especificamente sobre sistema gerenciadores de bancos de dados no mercado acho importante falar isso para vocês importante a gente discutir sobre esse tema porque às vezes numa disciplina de banco de dados a gente trata muito da parte de implementação da parte teórica conceitual mas a gente acaba discutindo um pouco né A Escolha desse banco de dados por que isso deve acontecer quais os bancos de dados que a gente tem no mercado Então essa é
uma aula que eu acho muito importante dentro do contexto dessa disciplina para que a gente possa projetar o banco que vai usar como que a gente faz esse tipo de escolha como que isso acontece efetivamente no dia a dia de uma pessoa que tá trabalhando com banco de dados sistema gerenciadores de banco de dados no mercado a gente já abordou né o conceito de sistema gerenciador de banco de dados que é um pacote de soluções que envolve além do próprio banco a gestão de acesso a persistência manipulação ferramenta de backup entre outros então quando a
gente pensa num pacote né num sistema gerenciador vem essas várias ferramentas Então não vem só a parte de armazenamento especificamente Mas vem um conjunto de funcionalidades que é muito importante e nos ajuda enquanto a gente é um um projetista ou um gestor de banco de dados essas ferramentas essas funcionalidades nos ajudam muito no dia a dia então e e a escolha muitas vezes não passa só por isso né ou olhar pro banco de dados não passa só por mas passa por várias outras coisas vamos dar uma olhada aqui agora né nesse ranking eu queria mostrar
um ranking para vocês que é um Market share aí né o uso né como que se distribui o uso de banco de dados como que é é é um ranking de banco de dados para vocês terem ideia de como que isso tá hoje em dia no mercado não se atentem muito né a esse ranking específico a gente tem muitos H uma infinidade de rankings né eu gosto muito desse é um ranking que eu sempre olho para saber como é que tá o mercado de banco de dados saber o que as pessoas estão usando mais saber
o que tá crescendo o que tá aumentando o que tá diminuindo Então vale a pena a fonte é essa daqui ó quem quiser olhar né esse e é DB engines.com barn bar rank para poder olhar sempre atualizado isso aqui é eh foi feito em Maio de 2021 Então essa é a situação atual de maio de 2021 e eles vão fazendo mês a mês né Então olha só para compreender um pouquinho Como que funciona esse ranking aqui a gente vai ver que o banco de dados que tá em primeiro lugar em termos de uso é o
banco de dados Oracle né então se vamos perceber que em Maio de 2021 ele era aliás em Maio de 2021 ele é o primeiro em abril de 2021 Ele também era o primeiro e lá em Maio de 2020 um ano atrás ele também era o primeiro ou seja a Oracle o banco Oracle continua mantendo aí né o seu primeiro lugar nesse ranking aí de banco de dados mais utilizado é um banco de dados or aqui eu falo sobre o modelo o modelo principal dele é um banco de dados relacional que é o eh o o
o o tipo principal que a gente tem aqui no nosso ranking mas não são só modelos banc de dados relacionais e aqui ele mostra a pontuação então o score em Maio de 2021 né o banco de dados Oracle 1269 pontos perdeu quatro em relação a maio de 2020 ele perdeu 75 e o banco de dados mykel que é o que tá em em segundo né 1236 pontos aqui em maio ele ganhou 15 pontos em relação a abril de 2000 2021 e perdeu 46 pontos em relação a maio de 2020 então é como que vai acontecendo
aí para ele montar esse ranking então vocês vão perceber aqui que eu trouxe os 10 primeiros colocados desse ranking mas que a gente tem 370 bancos de dados diferentes colocados nesse ranking tá 370 trazendo só os 10 primeiros eles vão que a lista é Oracle MySQL Microsoft skl server post SQL mongodb IBM db2 Heads elastic search scite Microsoft access então esses são os 10 primeiros bancos que compõem esse ranking aqui bom você vai me perguntar mas de onde que surgiu esse Banco esse ranking né como que se monta esse ranking então aqui que que compõe
esse ranking como que eles fazem essa pontuação como que eles vão avaliando Então olha só vamos olhar essa tabelinha aqui número de mensões em websites Google e Bing então Eles olham lá para esses dois websites Google e Bing e vê a quantidade de mensões que ele tem desses dois bancos desses desses bancos de dados e eles pegam essa quantidade de mensões tiram e fazem a relação para poder pontuar Eles olham também interesse no sistema Google Trends Google Trends aquele aquele sistema de tendências lá que tem das palavras que mais aparecem que mais são citadas na
web do modo geral Esse é o Google é um mais um dos das variáveis que ele que eles usam outra coisa é a frequência de discussão em listas relevantes como o stack overflow e dbi Tech Exchange essas duas listas são as principais listas para desenvolvedores se vocês não conhecem essa lista conheçam entrem nessas é muito importante é lá muitas das resoluções de banco de dados que vocês vão encontrar quando tiverem problemas para para implementar alguma coisa vão encontrar nessas listas é muito importante participar dessas listas então que quees vê a frequência de de de de
discussão desses temas nessas duas listas e montam o ranking quer dizer quanto mais tá tendo e discussão sobre esses temas nesse nessas L quer dizer que esses bancos estão sendo mais utilizados número de ofertas de emprego no inded e no sle hire que são dois sites de contratação de pessoas então eles pegam o número de ofertas de emprego nesses bancos de dados e contam também como variável tá o número de perfis profissionais que os sistemas são mencionados no Linkedin então quant que esses bancos de dados são listados lá nos perfis profissionais das pessoas pessoas no
Linkedin e o número de menções da rede social Twitter então eles pegam esse conjunto de elementos Tá para montar esse banco de dados ah essa é a melhor maneira de fazer não sei se é a melhor maneira Mas essa é a maneira que esse ranking específico traga e outros rankings tratam outras maneiras mas os resultados vocês vão ver que são muito parecidos Mas é interessante a gente saber de onde que surge e esse ranking bom dos bancos de dados que a gente viu na lista dos 10 né sete deles são listados primariamente como bancos de
dados relacionais vamos ver que alguns né tem mais são multi e e eh São multiformatos mas aqui 10 deles são são sete são tratados como relacionais Oracle mais k esql server post db2 eslite e aess são sete bancos são tratados como relacionais o mongo de B é um banco de documentos o Reds é um banco de chave valor e o l search É um mecanismo de busca então são os 10 bancos de dados que compõem sete relacionais e os outros três un de documento chave valor e mecanismo de busca oito deles são de modelos múltiplos
Então eu tinha falado né nosos relacionais Principalmente eles também hoje em dia operam com modelos diferentes além do relacional ele opera com outros tipos de modelo Então se a gente for olhar um por um e dá para D para entrar nesse ranking eu sugiro que vocês façam isso né entra nesse ranking e olha lá especificamente cada um você vão perceber lá dentro que a gente tem eh os bancos são relacionais de documentos bancos de grafo banco espacial RDF time series enfim a gente tem vários modelos e alguns bancos tem três qu cinco modelos que eles
conseguem trabalhar então para uma especificidade Às vezes a gente acha Ah o banco de o banco Oracle é só um banco relacional não ele é multidoc ele é multi sistem multi tipo L então vocês podem olhar vocês vão ver que eles são bancos múltiplos vários deles são bancos múltiplos bom Uma Breve abordagem sobre os mais utilizados eu queria falar um pouquinho para vocês aqui né sobre esses bancos mais utilizados oracon my Kell post e sk e e o skl ser porque é bem provável né que no dia de hoje para trabalhar com um sistema implementação
de banco de dados vocês trabalhem com um desses bancos Eles são muito utilizados mesmo no mercado mas muito utilizados e é importante a gente dar uma olhada nos detalhes desses produtos é claro a gente vai abordar nessa disciplina no final mongo Debi que é um que é um banco de documentos que é um banco no SQL mas hoje em dia os bancos ainda no esql eles ainda TM uma uma fatia muito específica de mercado para um trabalho muito específico grande parte dos dos projetos de banco de dados vão tratar desses quatro outros estão relacionados que
são banc de dados relacionais bom então eh eh como eu tava dizendo né com o contexto de Big Data tratamento específico vocês vão acabar encontrando né banco de dados chave e valor documento tal mas ainda são usos restritos a gente vai falar disso um pouco mais paraa frente na disciplina quando falar de mongo de bi bom especificamente do Oracle né o Oracle é o nosso primeiro analista né É É o primeiro do ranking então é uma das Ferramentas mais usadas no mundo né ela é considerada muito robusta quando você tem normalmente um projeto que envolve
orac você sabe que ai você tá tratando do banco de dados muito bom muito confiável muito robusto e que é muito utilizado por sistemas grandes né a principal virtude Delia é a confiabilidade né quem compra e usa um sistema orac sabe que tá comprando uma coisa boa sabe que pode confiar naquilo lá que nunca vai ter problema a empresa né é a própria Oracle que é a dona do banco de dados Oracle o Oracle existe desde 1980 então a gente já tá aí com mais de 30 anos de Oracle né o site é oracle.com bar
Database é o site onde a gente encontra lá o site da Oracle a gente tem uma licença comercial então o banco Oracle é pago e não é barato tá o banco o banco dados Oracle é caro e ele tem uma versão Express para você que tá querendo experimentar testar e trabalhar com com desenvolvimentos pequenos né Principalmente para desenvolvimento a versão Express ela funciona exatamente igual a a versão principal a versão enterprise mas se você for colocar uma versão enterprise sabe que é uma versão paga e não é barata ele é multiplataforma ele serve com várias
plataformas AX Linux Mac Solares Windows enfim e ele suporta o SQL bom o banco de dados MySQL né então é o primeiro banco banco de dados Open sece que eu tô trazendo aqui agora né ele foi comprado ele foi desenvolvido pela mais kab foi comprado pela sanc depois foi comprada pela Oracle então a mesma Oracle que é dona do banco Oracle é banca é dona também do e MySQL entretanto Esse é um banco Open sece uma das grandes Sacadas do MySQL aí pessoal foi que na época que começou que o PHP estourou Eles criaram uma
maneira de criar muitos modelos e e projetinhos tal de PHP com mais que então exp virou uma uma mania né projetos de PHP com my Kell então no aparecimento da ferramenta PHP o my Kell veio nessa mesma onda e explodiu em termos de uso então ele existe desde 1995 o site tá aí colocado e é uma ferramenta Open sece quer dizer o a a a o código tá aberto do MySQL ele também é multiplataforma funciona em free BSD funciona em Linux funciona no SX funciona em Solares funciona Windows e ele suporta é SQL é um
banco muito legal banco que nós vamos usar aqui na nossa disciplina o skl server né foi um dos primeiros bancos de dados do mercado Então por muito tempo ele ficou restrito a plataforma Windows e ele sempre prezou por uma interface amigável então o banco tá diz que ele serve como todo tudo que tem no Windows né sempre presou por ter uma plataforma muito mais amigável muito mais fácil de trabalhar os outros bancos passaram a ter uma plataforma mais amigável de um tempo para cá mas o skl server sempre foi assim e é um produto da
Microsoft então a Microsoft sempre tenta trazer produtos que tem interfaces amigáveis ele existe desde 1989 Esse é o site dele e ele assim como Oracle também tem uma licença comercial hoje em dia pessoal a hora que o esl server eles disputam um mercado que é o mercado do banco de dados pago né E eles disputam quase que pau a pau lá porque funcionam é muito bem são robustos tal o grande detalhe do SQL server é que por muito tempo ele só funcionou no Windows por muito tempo agora a gente tem versões para Linux mas mesmo
assim sim Quem opta por usar o skl server normalmente está relacionado ao Windows e a gente tem também o postgre o post pessoal é muito robusto é um banco de dados ótimo sensacional muito utilizado em Sistemas com muitos registros e um dos primeiros open source a implementar o tf8 Né que é o nosso sistema de codificação lá internacional ele é uma das principais ferramentas além de ser um banco de dados ele é uma principais ferramentas né de um modo geral é é open source do mundo assim ele é uma um exemplo de de de ferramenta
Open sece e o responsável é o postgre Global develop group que é desde 1989 e ele também é multiplataforma então funciona no freebsd no hpu no hpu X no Linux no Windows na no Unix você tem ele em várias plataformas e ele também é SQL Esse é um banco de dados sensacional pessoal Open sece eu eu sempre digo que ele funciona muito parecido com o Oracle é é uma ferramenta muito boa de se utilizar como que eu escolho tá então a a escolha né o processo de escolher não é um não é simples então compreender
a variedade de critérios que pode ter Impacto eu sempre digo é importante você olhar para isso né e saber como que você vai escolher um banco de dados por exemplo um Open sce ou um pago Qual que é a relação é só não pagar não às vezes um banco de dados quando você precisa quando você tem uma equipe pequena né E você precisa ter uma ter um suporte no banco de dados é bom você contratar um banco de dados que é pago porque você vai ter ajuda do suporte ou então Você tem uma equipe que
tá específica que conhece muito o banco de dados que que não tem licenciamento né que você não precisa pagar que é um Open sece então você pode escolher por esse Então essa escolha esses critérios Então passa por open source passa por escolha de plataforma né Ah eu tenho o servidor Wind eu tenho servidor Linux eu tenho servidor de Unix então que tipo de banco eu vou escolher pela implementação em code Ah eu quero colocar na nuvem Será que a a Plata o sistema que eu vou escolher na nuvem Dá para colocar esse sistema esse sistema
pode ficar né eu consigo implementar ele na nuvem ess é um critério também de escolha restrições com conectores e linguagens Ah eu quero escolher eu vou eu uso a programação a linguagem x ou uso uma ferramenta tal precisa conectar no banco de dados Será que eu tenho conector nesse banco de dados para conectar com essa ferramenta para conectar com essa linguagem de programação essa é uma característica importante para saber como escolher né escolhei Por modelo relacional objeto gráfic qual o tipo de uso que eu vou fazer né espacial quando vou trabalhar com com com com
imagens aí de satélite esse tipo de coisa então é outro critério e tecnologias né eu preciso ter transação eu preciso ter Trigger eu preciso ter Story proceder eu preciso ter map map reduce né então são tecnologias que esses produtos dispõem alguns sim outros não são variados Então se tem alguma tecnologia dessa que eu preciso eu preciso escolher o banco que disponha dessa tecnologia o que que muda baseado na escolha né como os bancos de dados são todos parecidos pessoal é muito importante né a hora que eu faço essa escolha saber o que que vai acontecer
de um modo geral é importante saber que os relacionais por exemplo há um esql padrão que funciona em todos mas é muito importante que vocês saibam que vão ter funções específicas até dentro do SQL por exemplo que funciona para uma e não funciona para outro então tem que tomar muito cuidado na hora de escolher porque por exemplo se você vai implementar muitas coisas que são muito específicas de um banco Será que eu vou precisar mudar esse esse projeto Vou precisar mudar o banco mais paraa frente tem que tomar cuidado com essas especificidades que que são
de cada um desses bancos tomar cuidado como usar saber exatamente como usar se você tem pretensão de usar de trocar o banco mais pra frente ou não o mesmo serve para outros recursos do sistema gerenciador de um modo geral saber o que é específico e o que é geral entre eles e outra coisa é saber as ferramentas específicas né Nativa ou não para cada produto né O que que um produto implementa junto com ele o que que eu tenho de terceiros que pode me ajudar a conectar nesse banco ou tarefas que eu posso executar nesse
banco são coisas que mudam quando eu escolho um banco de dados Então a gente tem várias características aí que são importantes na escolha de um banco de dados que são relacionados ao meu contexto ao meu projeto à minha equipe ao meu time ao meu a a a empresa que eu trabalho a empresa que eu tô prestando serviço é assim que funciona a escolha é muito importante que você faça uma escolha Clara sabendo qual escolha que você tá fazendo bom nessa disciplina de banco de dados pessoal a gente vai escolher né implementar a gente vai tratar
tudo do modo muito geral né esqu é padrão tudo padrão mas em alguns momentos vão perceber que eu vou falar bastante de mysc e vou dar exemplos de mycell Por quê vocês tem uma outra disciplina e algumas outras disciplinas projeto integrador por exemplo que escolheram o banco de dados mql para poder implementar a coisa então eu vou dar algumas dicas nessa disciplina de como que você faz as coisas em MySQL porque acho que vai ser importante para vocês implementarem isso fisicamente então Observe que toda implementação é baseada em conceitos básicos que vimos nas primeiras duas
semanas mas a escolha do produto também é muito importante que você vai fazer baseado no produto é muito importante bom Espero que tenham gostado dessa aula né de falar um pouquinho sobre B olhem o ranking sempre pensem muito bem a respeito de que cada um dos produtos oferece vejo vocês na próxima aula pessoal até mais [Música]
Copyright © 2024. Made with ♥ in London by YTScribe.com