Linha 15: Linha 15:
<br>
<br>
* 04. (Gabriel Cezar) Os documentos dentro das coleções podem coexistir com a estrutura do documento diferente entre os documentos ?
* 04. (Gabriel Cezar) Os documentos dentro das coleções podem coexistir com a estrutura do documento diferente entre os documentos ?
**
** Sim, é possível ter valores com atributos diferentes entre si.
<br>
<br>


Linha 62: Linha 62:


* 17. (Professor)  Tem exemplo de dados em um BD NoSQL?
* 17. (Professor)  Tem exemplo de dados em um BD NoSQL?
**
** Nesse exemplo a seguir eu criei uma coleção food com um documento fruits utilizando o mongodb.
<code>
{
"_id" : ObjectId("60c672b4c75f680755b1d396"),
"name" : "apple",
"origin" : "usa",
"price" : 5
}
{
"_id" : ObjectId("60c672b4c75f680755b1d397"),
"name" : "orange",
"origin" : "italy",
"price" : 3
}
{
"_id" : ObjectId("60c672b4c75f680755b1d398"),
"name" : "mango",
"origin" : "malaysia",
"price" : 3
}
{
"_id" : ObjectId("60c67300c75f680755b1d399"),
"name" : "apple",
"origin" : "usa",
"price" : 5
}
{
"_id" : ObjectId("60c67300c75f680755b1d39a"),
"name" : "orange",
"origin" : "italy",
"price" : 3
}
{
"_id" : ObjectId("60c67300c75f680755b1d39b"),
"name" : "mango",
"origin" : "malaysia",
"price" : 3,
"color" : "red"
}
</code>
<br>
<br>



Edição das 21h09min de 13 de junho de 2021

Dúvidas


  • 01. (Matheus Faria) Quando devo utilizar sql e quando usar nosql, oque define a escolha final?
    • Quando o projeto for sendo desenvolvido e não se sabe bem a estrutura dos dados na base de dados, os bancos NoSQL é bem recomendados pois é bem escalável horizontalmente. A flexibilidade nos valores também é uma vantagem dos bancos, atualizar tipos de valores em bancos relacional devem ser atualizados com bastante cuidado, já em bancos NoSQL são feitos de forma mais fácil.


  • 02. (Igor Augusto) O NewSQL é "melhor" que o NoSQL? Ele possui vantagens sobre o SQL e o NoSQL?
    • O NewSQL surge como uma solução "meio de campo" para a diferença entre SQL e NoSQL, além de ser um banco de dados livre de esquemas ele pode ter um esquema fixo. É uma boa solução que surge, porém o NewSQL ainda esta no começo e tem pouco material e recurso feito pela comunidade.


  • 03. (Flávio Peçanha) Como é utilizado o sql nos app, no caso de um app de recarga de passagem de ônibus verificação de saldo?
    • O sql (Standard Query Language) seria a linguagem utilizada para trabalhar com banco de dados. No app citado acima, seria utilizado para salvar, atualizar e deletar informações utilizadas no app, como dados do usuário, informações sobre saldo.


  • 04. (Gabriel Cezar) Os documentos dentro das coleções podem coexistir com a estrutura do documento diferente entre os documentos ?
    • Sim, é possível ter valores com atributos diferentes entre si.


  • 05. (Paulo Giovany) noSQL pode sempre substituir o SQL ou depende de cada caso?
    • Depende do caso. Se a estrutura da informação ainda não esta bem definida, o banco NoSQL pode auxiliar no desenvolvimento rápido de um MVP. Existem outras aplicações que bancos NoSQL é mais indicado como por exemplo: Big Data, redes sociais


  • 06. (Professor) Dev FE precisa entender sobre BD?
    • É interessante ter um conhecimento básico para conseguir utilizar os recursos mais simples de um banco de dados, muitas vezes para comparar o valor retornado de uma API ou pra testar algum cenário específico e com isso atualizando alguma informação direta no banco de dados.
  • 07. (Professor) O que é um hash?
    • Hash é uma sequência de bits gerada por algorítimo, onde se pega uma grande informação e transforma em outra pequena, de mais fácil acesso e busca.


  • 08. (Professor) Quando você acha que é interessante utilizar o noSQL?
    • Quando a estrutura do banco de dados não é muito conhecida ou em algumas soluções como Big Data, redes sociais entre outras, acredito que NoSQL seja mais interessante de se utilizar.


  • 09. (Professor) Quando tiver que lidar com arquivos do tipo áudio, texto, vídeo, é utilizar SQL ou noSQL para estes tipos de arquivos?
    • As duas soluções tem seus recursos para salvar arquivos. Vai depender mesmo sobre os recursos gastos, se utilizar um banco em cloud e adicionar muitos arquivos, poderá aumentar o valor pago bem rápido.


  • 11. (Professor) O que é MVP? Por que o NoSQL é interessante para isso?
    • MVP (Minimum Viable Product) ou Produto de mínimo valor é quando se tem interesse em ver a viabilidade de uma ideia ou projeto, com recursos mais reduzidos. Usan NoSQL se torna mais fácil a criação de um banco de dados sem muitas configurações e necessidades de um especialista, sem dizer que os dados poderão mudar os tipos conforme o projeto ganha corpo, e nisso o NoSQL lida melhor que bancos SQL.


  • 12. (Professor) O que é escalabilidade horizontal?
    • A possibilidade de criação de muitas colunas em um determinado registro no banco de dados.


  • 13. (Professor) O que é indexação? De um exemplo?
    • Indexação é uma técnica utilizada para melhorar o acesso a uma determinada informação, semelhante ao que ocorre a um livro, onde o índice faz referência a um tópico de um conteúdo contido em um livro. Um exemplo de indexação que ocorre é com os sites e buscadores (Google, Bing), onde depois de se disponibilizar um site na internet os robôs dos buscadores começaram a buscar informações dentro da página para se indexar as buscas por termos utilizadas pelos usuários.


  • 14. (Professor) O que é indexação? De um exemplo?
    • Indexação é uma técnica utilizada para melhorar o acesso a uma determinada informação, semelhante ao que ocorre a um livro, onde o índice faz referência a um tópico de um conteúdo contido em um livro. Um exemplo de indexação que ocorre é com os sites e buscadores (Google, Bing), onde depois de se disponibilizar um site na internet os robôs dos buscadores começaram a buscar informações dentro da página para se indexar as buscas por termos utilizadas pelos usuários.


  • 15. (Professor) O que é JSON?
    • O JSON (Javascript object notation) é um padrão utilizado para a troca de informação entre sistemas. Tem sua estrutura uma chave relacionada a um valor.


  • 16. (Professor) Dê um exemplo de transação no NoSQL e no SQL. Existem problemas em cada uma das tecnologias?
    • Transações são formas de manter o banco de dados integro, garantindo que a execução de uma ação no banco de dados (insert, delete ou update) só seja persistida no banco de dados quando a ação tiver ocorrido com sucesso.


  • 17. (Professor) Tem exemplo de dados em um BD NoSQL?
    • Nesse exemplo a seguir eu criei uma coleção food com um documento fruits utilizando o mongodb.

{ "_id" : ObjectId("60c672b4c75f680755b1d396"), "name" : "apple", "origin" : "usa", "price" : 5 } { "_id" : ObjectId("60c672b4c75f680755b1d397"), "name" : "orange", "origin" : "italy", "price" : 3 } { "_id" : ObjectId("60c672b4c75f680755b1d398"), "name" : "mango", "origin" : "malaysia", "price" : 3 } { "_id" : ObjectId("60c67300c75f680755b1d399"), "name" : "apple", "origin" : "usa", "price" : 5 } { "_id" : ObjectId("60c67300c75f680755b1d39a"), "name" : "orange", "origin" : "italy", "price" : 3 } { "_id" : ObjectId("60c67300c75f680755b1d39b"), "name" : "mango", "origin" : "malaysia", "price" : 3, "color" : "red" }

  • 18. (Professor) Conhece alguma desvantagem do NoSQL?