Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Guilherme_90

[Resolvido] Uso de Framework e Banco de Dados

Recommended Posts

A grosso modo, "estereótipo" é uma imagem pré-concebida (um pré-conceito ou preconceito) sobre algo do qual uma pessoa não compreentende por falta de conhecimento ou ignorância mesmo.

Eu estou nos dois casos, além de não compreender, é ignorância minha. Mas não é por que eu quero ser ignorante de informação, acontece que as pessoas geralmente só preocuram ou vão aprender algo quando realmente precisam. No meu caso, não estou dizendo que não quero usar MySQL, pelo contrário, eu QUERO usá-lo, porém eu preciso pesquisar e ter certeza de que ele não irá me deixar na mão, não por que estou duvidando de sua capacidade, mas como eu só desenvolve algo pequeno, então acaba surgindo uma dúvida, que é relativamente normal de qualquer ser humano, vem as perguntas como:

 

Será que esse SGBD aguenta?

Será que devo aprender outro para esta aplicação?

Quais sistemas de grande porte usam?

 

Entre outras, isso é um planejamento de software. Só estou tentando minimizar as chances de dar erros futuros.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Será que esse SGBD aguenta?

Será que devo aprender outro para esta aplicação?

Quais sistemas de grande porte usam?

 

Já lhe disseram que sim... Até o Google usa em partes o MySQL. Não é à toa que uma boa porcentagem das aplicações por aí utilizam esse SGBD. Se fosse ruim, empresas sérias não o utilizariam. Muitos tem o mesmo conceito sobre o PHP, que se trata de linguagem para amadores que não sabem como é programar no modo hard, utilizando expansões em macros do C. Novamente, o carro-chefe da desmistificação disso é o Facebook, uma empresa multibilionária, que tem no PHP sua principal linguagem.

 

Se PHP e MySQL fossem coisas de amador, se não aguentassem o tranco, não seriam utilizadas pelas grandes empresas. Quem espalha por aí esse tipo de DESinformação precisa realmente pensar e estudar antes de falar besteiras.

 

Sabe a diferença do Oracle para o MySQL??? Porque uma base de dados Oracle DB tem um valor absurdamente alto (para a realidade de pequenas e médias empresas), enquanto o MySQL é de graça (mesmo ambos sendo da Oracle)??? Simplesmente porque a Oracle fornece total suporte, consultorias, treinamentos, etc. para o seu SGBD homônimo, ao passo que para o MySQL, o desenvolvedor tem que se virar. Você não paga pela base de dados, paga pela babá.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora me surgiu outra dúvida. Imaginamos um sistema de acessos simultaneos, certo?

Neste caso, eu tenho que tratar as transações?

 

Exemplificado a coisa, um sistema mediano / grande com várias pessoas fazendo operações nele, qual é a forma mais correta de evitar dados errados / duplicados ou qualquer problema que possa de certa forma, prejudica-lo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Entendo a sua preocupação isso é muito valioso, mas não precisa se procupar no momento.

Você pode colocar isso em pauta no projeto, mas sem preocupações em criar soluções para algo que sequer existe.

 

Apenas acompanhe a demanda e conseguirá adaptar-se conforme as necessidades.

Obviamente cuide para não construir uma base estrutural que dificulte adaptaões e expansão principalmente.

 

Reforçando o post #22 sob o contexto do #21

 

Entendi que você não possui experiência com alto volume de dados com o MySQL, por isso está preocupado. Então o problema não é o MySQL, é quem o opera, .. é quem gerencia, conforme comentei num post anterior.

Quer dizer, se você não possui experiência com outros bancos como o Oracle por exemplo, cairá na mesma situação do MySQL, porque o Oracle é muito mais complexo.

Se mal administrado se torna pior ainda porque é super pesado.

 

O MySQL possui duas versões. A versão "community" que é distribuído livremente e a versão Enterprise que é o mesma versão do community com a diferença de que você terá todo o suporte necessário da Oracle, empresa que detém os direitos do MySQL.

Enfim, não há com o que se preocupar. Se o seu negócio crescer a ponto de precisar de algo tão complexo, significa que você estará com um capital financeiro suficiente para bancar a expansão estrutural e provavelmente você nem terá mais tempo de mexer em nenhum linha de código..

 

Eu trabalho com MySQL, SQL SERVER, Oracle, POSTGRE, mas sempre escolho o MySQL como preferencial. Conheço esses 4 principais SGDBs, todos são excelentes se forem bem administrados. SQL Server as vezes acho até melhor que Oracle em certos casos, mas enfim, não tem como dizer qual é melhor.. cada um tem sua peculiaridade.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Neste caso, eu tenho que tratar as transações?

Você vai utilizar transações se, E SOMENTE SE, precisar executar várias operações sobre o banco de dados como se fosse uma só. Normalmente, você só precisa de transações em operações que se utilizam de escrita, já que para a leitura, não tem problema nenhum várias threads o fazerem ao mesmo tempo.

O exemplo clássico de transação é a operação de transferência em um caixa eletrônico de banco, na qual você precisa subtrair o saldo de uma conta e adicioná-lo na outra. Tudo isso deve ser uma operação atômica para evitar erros. Se uma parte do processo falha, todo o processo deve falhar.

 

Se está tão preocupado assim, talvez seja a hora de investir em alguns cursos avançados de administração de bases de dados SQL. Eu não sou nenhum especialista em banco de dados e até hoje nunca tive problemas, apesar de já ter lidado com um volume considerável de dados em alguns projetos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agradeço demais a ajuda de vocês, eu não sou ainda um desenvolver muito experiente, e gosto de pedir ajudas, isso faz parte em qualquer inicio de profissão.

 

hinom

Concordo, acho que estou me preocupando demais antes mesmo de iniciar o projeto, e agora vejo que é só saber administrar a base de dados, e outras pessoas com quem conversei me disseram praticamente a mesma coisa, entre outras vantagens.

 

Henrique Barcelos

Então no meu caso, acredito que não vou precisar trabalhar com transações na base de dados. Eu gosto muito de Banco de Dados, e pretendo sim investir tempo somente nisso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Administrar a base de dados, e outras pessoas com quem conversei me disseram praticamente a mesma coisa, entre outras vantagens.

 

Bem verdade.

Se você administra/usa um banco de dados de forma errada, você consequentemente terá problemas.

 

Quanto ao volume de dados, tem um sistema que eu desenvolvi e está em pleno funcionamento hoje em dia, que em suma, movimenta cerca de milhões de dados, se for contar mensalmente, chega a um número bem grande e não tenho problemas quanto a delays em consultas, inserções e ... qualquer outra coisa do tipo.

 

Uma das queries usadas chega a cerca de 35 linhas e não dá problema algum, muito pelo contrário, entrega a informação extremamente rápida, isso porque, o banco está bem feito, os índices aplicados nos lugares corretos e usados de forma correta.

 

- Faltou mencionar o Twitter, eles também usam MySQL, na verdade, teve até uma re-escrita do source feita por eles em C Pure

:seta: https://github.com/twitter/mysql, vendo o código fonte do MySQL, consegui extrair várias informações e entender a fundo o funcionamento de algumas partes que me interessavam.

 

Abraços,

Boa Sorte !

Compartilhar este post


Link para o post
Compartilhar em outros sites

Andrey Knupp

Agora lhe pergunto: Na modelagem do banco, como eu vou saber se ele estará bem estruturado? E o que faz tornar uma consulta mais eficaz?

 

- Faltou mencionar o Twitter, eles também usam MySQL, na verdade, teve até uma re-escrita do source feita por eles em C Pure

:seta: https://github.com/twitter/mysql, vendo o código fonte do MySQL, consegui extrair várias informações e entender a fundo o funcionamento de algumas partes que me interessavam.

O que houve para eles fazerem uma re-escrita do fonte? Fiquei extremamente curioso! :unsure:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Andrey Knupp

Agora lhe pergunto: Na modelagem do banco, como eu vou saber se ele estará bem estruturado? E o que faz tornar uma consulta mais eficaz?

Olha cara, isso é muito relativo, muito mesmo, tem que pensar no que será armazenado, como será, em N aspectos antes de firmar na consulta, em relação a consulta eficaz, cara, uma tabela bem indexada e modelada, ajuda bem.

 

O que houve para eles fazerem uma re-escrita do fonte? Fiquei extremamente curioso! :unsure:

 

Adaptar a algum padrão deles, ou melhorar alguma coisa ... N casos para isso, trabalhar com algum sistema interno deles, etc.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.