Prévia do material em texto
TECNOLOGIA DA INFORMAÇÃO Banco de Dados NoSQL Livro Eletrônico 2 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão Sumário apresentação .....................................................................................................................................................................3 Banco de Dados NoSQL ................................................................................................................................................4 Propriedade BaSe (Basically available, Soft state, eventually consistency) ...........................5 Teorema caP (ou Teorema de Brewer) ................................................................................................................6 Principais características dos Bancos de Dados NoSQL .........................................................................7 Técnicas para implementação de funcionalidades do NoSQL .............................................................11 Principais modelos de Banco de Dados NoSQL ...........................................................................................15 modelo NoSQL chave-Valor (Key-Value) .........................................................................................................15 modelo NoSQL orientado a Documentos ........................................................................................................16 modelo orientado a colunas (ou colunar) ......................................................................................................17 modelo NoSQL orientado a grafos ......................................................................................................................19 resumo ............................................................................................................................................................................... 22 Questões comentadas na aula ............................................................................................................................. 28 Questões de concurso ...............................................................................................................................................29 gabarito ..............................................................................................................................................................................35 gabarito comentado ...................................................................................................................................................36 referências .......................................................................................................................................................................52 O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 3 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão ApresentAção Olá, querido(a) amigo(a)! O momento perfeito não “surge”. Ele é construído. Construa o seu. Você tem suas próprias dificuldades, problemas, vitórias e soluções. Continue firme e, em breve, estará colhendo os frutos da vitória. Rumo então à aula sobre Banco de Dados NoSQL! No universo do Big Data, os bancos de dados NoSQL ganham cada vez mais espaço e as diferenças entre Bancos de Dados Relacionais e Bancos de Dados NoSQL serão determinantes para a definição da melhor tecnologia para os projetos de Big Data. Força nos estudos! Grande abraço, O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 4 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão BaNco De DaDoS NoSQL Os bancos de dados do tipo NoSQL (abreviação de Not Only SQL) são uma nova abordagem para armazenamento e gerenciamento de dados, que difere do modelo relacional (ARMBRUST, 2021). O modelo relacional armazena os dados em tabelas, sendo que cada tabela é dividida em linhas (tuplas) e colunas. Tais tabelas podem ou não se relacionar umas com as outras, formando relações (ARMBRUST, 2021). Obs.: � Banco de dados -> Coleção de relações. � Uma relação -> é uma tabela. � Um único registro -> será chamado de linha (tupla). � Um atributo -> será chamado de coluna. � Domínio -> Tipos de valores que podem aparecer em uma coluna. A base do modelo relacional é a seguinte: “Tabelas que se relacionam com outras tabelas, para possibilitar a organização e recuperação de dados”, conforme destacado por Armbrust (2021). Figura. Tabelas (ARMBRUST, 2021). Figura. Principais SGBD’s – Bancos de Dados Relacionais (PEREIRA, 2016) O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 5 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão Entretanto, esse tipo de organização de banco de dados pode ser limitado a determinadas situações, como por exemplo, quando necessário trabalhar com grande volume de dados ao mesmo tempo que precisa de maior escalabilidade e performance em sistemas de tempo real. Assim, com o objetivo de melhorar o desempenho dos bancos de dados tradicionais surgiram os bancos de dados NoSQL, com o intuito de criar um novo paradigma voltado a atender características como melhorar funções de disponibilidade, performance e escalabilidade. NoSQL não significa “no SQL” (não ao SQL), mas sim “not only SQL (não só SQL). Assim, esse tipo de estrutura de dados visa possibilitar o alto armazenamento através de velocidade e grande disponibilidade. Obs.: � Os bancos de dados não relacionais (NoSQL) não utilizam o esquema tradicional de tabela de linhas e colunas; em vez disso, eles usam um modelo de armazenamento otimizado para desempenho escalável e modelos de dados sem esquema (CESPE/2018). propriedAde BAse (BAsicAlly AvAilABle, soft stAte, eventuAlly consistency) O NoSQL (Not Only Structured Query Language) é um termo genérico para uma classe definida de bancos de dados não relacionais, que têm uma propriedade chamada BASE (Basically Available, Soft state, Eventually consistency – Basicamente disponível, estado leve, eventualmente consistente), que distribui os dados em diferentes repositórios tornando-os sempre disponíveis, não se preocupa com a consistência de uma transação, delegando essa função para a aplicação, porém sempre garante a consistência dos dados em algum momento futuro à transação. O BASE pode ser explicado em contraste com outra filosofia de design – Atomicidade, Consistência, Isolamento, Durabilidade (ACID). O modelo ACID promove consistência sobre disponibilidade, enquanto o BASE promove disponibilidade sobre consistência. Vamos relembrar as propriedades das transações, chamadas Propriedades ACID. • Atomicidade • Consistência • Isolamento. • Durabilidade O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 6 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformaçãoPatrícia Quintão A atomicidade visa garantir que uma transação é uma unidade atômica de processamento (indivisível). Logo, a transação será executada em sua totalidade, com todas as suas operações finalizadas e refletidas no BD, ou não será executada de modo algum, e nenhuma das suas operações são refletidas no BD. Na consistência, a execução completa da transação deverá levar o banco de dados de um estado consistente para outro estado consistente, onde um estado consistente do banco de dados satisfaz as restrições especificadas no esquema, bem como quaisquer outras restrições que devam controlar o banco de dados. O isolamento determina que uma transação deve ser executada como se estivesse isolada das demais. Cada transação assume que está sendo executada sozinha no sistema. O sistema garante que os resultados intermediários da transação permaneçam escondidos de outras transações executando concorrentemente. Finalmente, a durabilidade busca assegurar que as mudanças aplicadas no banco de dados por uma transação efetivada devem persistir no banco de dados. Estas mudanças não devem ser perdidas em razão de uma falha. É importante lembrar destes conceitos pois eles são sempre pedidos em provas… DICA Bancos do tipo NoSQL são mais flexíveis, sendo compatíveis com um grupo de premissas que “compete” com as propriedades ACID (Atomicidade, Consistência, Isolamento e Durabilidade), dos SGBDs (Sistemas Gerenciadores de Banco de Dados) tradicionais: a BASE (Basically Available, Soft state, Eventually consistency – Basicamente disponível, estado leve, eventualmente consistente). teoremA cAp (ou teoremA de Brewer) IBM (2019) faz uma análise mais profunda sobre as três características do sistema distribuído ao qual o teorema CAP (Consistency, Availability e Partition tolerence) se refere. Vejamos a seguir. Obs.: � O Teorema CAP é aplicado aos bancos de dados não relacionais. Segundo esse teorema, em um sistema distribuído, em um dado momento, só é possível garantir duas destas três propriedades, que seriam consistência, disponibilidade e tolerância à partição. a) Consistência (Consistency) Permite que todos os clientes veem os mesmos dados ao mesmo tempo, não importa em qual nó eles se conectem. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 7 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão Para que isso aconteça, sempre que os dados forem gravados em um nó, ele deve ser instantaneamente encaminhado ou replicado para todos os outros nós do sistema antes que a gravação seja considerada “bem-sucedida”. b) Disponibilidade (Availability) Qualquer cliente que fizer uma solicitação de dados obterá uma resposta, mesmo que um ou mais nós estejam desativados. Dessa forma, todos os nós em funcionamento no sistema distribuído retornam uma resposta válida para qualquer solicitação, sem exceção. c) Tolerância de partição (Partition Tolerence) A partição é uma quebra de comunicações dentro de um sistema distribuído, uma conexão perdida ou temporariamente lenta entre dois nós. Tolerância de partição significa que o cluster deve continuar a funcionar mesmo de ocorrer uma ou mais falhas de comunicação entre os nós no sistema. IBM (2019) cita que, atualmente, bancos de dados NoSQL são classificados com base nas duas características do Teorema CAP que oferecem: Banco de dados CP Entrega consistência e tolerância de partição em detrimento da disponibilidade. Quando uma partição ocorre entre dois nós quaisquer, o sistema deverá desativar o nó não consistente (ou seja, torná-lo indisponível) até que a partição seja resolvida. Banco de dados AP Entrega disponibilidade e tolerância de partição em detrimento da consistência. Quando ocorre uma partição, todos os nós permanecem disponíveis, exceto aqueles na extremidade errada de uma partição podem retornar uma versão mais antiga de dados do que outros. Quando a partição é resolvida, os bancos de dados AP geralmente ressincronizam os nós para corrigir todas as inconsistências no sistema. Banco de dados CA Entrega consistência e disponibilidade em todos os nós. Porém, isso não é possível se houver uma partição entre dois nós quaisquer no sistema, no entanto, e, portanto, não poderá entregar tolerância a falhas. principAis cArActerísticAs dos BAncos de dAdos nosQl Entre as principais características dos bancos de dados NoSQL merecem destaque: • Ausência de esquema (Schema-free) ou esquema flexível As tecnologias NoSQL foram desenvolvidas para suportar aplicações que manipulam grandes volumes de dados, e que necessitam de um modelo de dados mais flexível, sem esquema fixo (schemaless). Aplicações para redes sociais, e-commerce e IoT são alguns tipos de aplicações que se beneficiam de tecnologias NoSQL por possuírem tal esquema de dados dinâmico (ARMBRUST, 2021). A seguir, tem-se um exemplo de dados de um e-commerce, em que há benefícios ao se utilizar um modelo de dados schemaless (ARMBRUST, 2021): O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 8 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão Figura. Exemplo modelo de dados schemaless (ARMBRUST, 2021) Aqui temos outra característica notável em bancos de dados NoSQL, que é a ausência parcial ou total de esquema que define a estrutura de dados. É justamente essa ausência de esquema que facilita uma alta escalabilidade e alta disponibilidade, mas em contrapartida não há a garantia de integridade dos dados, fato este que não ocorre no Modelo Relacional (DEVMEDIA, 2020). • Escalabilidade horizontal Uma importante característica sobre os bancos NoSQL, é que eles foram projetados para serem executados em clusters de computadores favorecendo a escalabilidade horizontal, na qual o modelo relacional é incompatível (ARMBRUST, 2021). Vamos contextualizar melhor a escalabilidade, para melhor entendimento. ARMBRUST (2021) cita que uma das vantagens em se utilizar a Computação em Nuvem, está ligado a escalabilidade dos recursos (ajustar o sistema à capacidade desejada). O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br https://pt.wikipedia.org/wiki/Cluster 9 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão Figura. Escalabilidade (QUINTÃO, 2023) Assim, na medida em que o volume de dados cresce, aumenta-se a necessidade de escalabilidade e melhoria do desempenho. Dentre todas as possibilidades para esta solução, a escalabilidade horizontal se torna a mais viável, porém requer diversas threads ou que processos de uma tarefa sejam criados e distribuídos. • Os bancos de dados NoSQL são altamente distribuídos, não necessitam de hardware sofisticado, e fornecem suporte transacional mínimo ou nenhum. • Flexibilidade na manipulação de dados não estruturados. • Melhor desempenho e custos reduzidos. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br10 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão • API simples (rápida e flexível) para acesso. Em banco de dados NoSQL o foco não está no armazenamento dos dados e sim em como recuperar estes dados de forma eficiente (DEVMEDIA, 2020). • Outra característica particular de bancos NoSQL é que nem sempre a consistência dos dados é mantida. • Esta característica tem embasamento no teorema CAP (Consistency, Availability e Partition tolerence) que afirma que em um dado momento só é possível garantir duas destas três propriedades, que seriam Consistência, Disponibilidade e tolerância à partição. No mundo real, normalmente estas duas últimas são privilegiadas. Como consequência disto, as propriedades do ACID não são respeitadas simultaneamente, ao contrário disto, temos outro conjunto de projetos denominado BASE (Basicamente disponível, Estado leve e consistente em momento indeterminado). Assim, é necessário haver um planejamento para que o sistema possa tolerar inconsistências temporárias com o objetivo de priorizar a disponibilidade (DEVMEDIA, 2020). • Bancos de Dados NoSQL são ideais para aplicações de Big Data. • Bancos de Dados NoSQL oferecem suporte nativo à replicação: esta é outra forma de prover a escalabilidade, pois, no momento em que permitimos a replicação de forma nativa o tempo gasto para recuperar informações é reduzido. Para que se tenha a replicação, existem duas abordagens principais: Figura. Suporte à Replicação (Abordagens Master-Slave e Multi-Master) Obs.: � Diferentes problemas são resolvidos por diferentes tecnologias. E isso se aplica também quando falamos de banco de dados. Diferentes bancos de dados para diferentes tipos de dados. Essa afirmação é muitas vezes chamada de Persistência Poliglota (ARMBRUST, 2021). O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 11 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão técnicAs pArA implementAção de funcionAlidAdes do nosQl Entre as técnicas utilizadas para a implementação de funcionalidades do NoSQL estão (DEVMEDIA, 2020): Figura. Técnicas para Implementação de Funcionalidades NoSQL Quando Utilizar SGBDs Relacionais e NoSQL (Soluções para Big Data)? Pereira (2016) destaca que SGBDs Relacionais e NoSQL são excelentes soluções em gerenciamento de dados e ambos são usados para manter o armazenamento e recuperação de dados de forma otimizada. É difícil dizer qual tecnologia é melhor e como sempre, o que vai determinar a sua escolha é o tipo de dados que você tem em mãos e a natureza da sua aplicação. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 12 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão A seguir, três comparativos que podem ajudá-lo(a) na escolha: Use Bancos de Dados Relacionais quando... Use NoSQL quando... Suas aplicações forem centralizadas (ERP, CRM). Suas aplicações forem descentralizadas (Web, Mobile, BigBig DataData, IoT) Alta disponibilidade moderada for necessária. Quando a disponibilidade tiver que ser contínua, sem interrupção. Dados gerados em velocidade moderada. Dados gerados em alta velocidade (sensores). Dados forem gerados a partir de poucas fontes. Dados forem gerados a partir de múltiplas fontes. Dados forem estruturados. Dados forem semiestruturados ou não estruturados. Transações complexas. Transações simples. For necessário manter moderado volume de dados. For necessário manter alto volume de dados. Figura. Banco de dados Relacional vs. NoSQL (PEREIRA, 2016). Use Bancos de Dados Relacionais quando... Use NoSQL quando... Dados são armazenados com base no modelo relacional. Dados são armazenados em clusters de computadores. Utilizam JOINs, tornando-os uma boa escolha para aplicações que envolvem a gestão de várias operações (PEREIRA, 2016). A utilização de JOINs é limitada. Possuem esquema fixo (tipos de dados sobre colunas). Possuem esquema dinâmico, muitas vezes referenciado como schemaless. Suportam escala vertical. Suportam escala horizontal. Compatível com propriedades ACID. Alguns bancos NoSQL suportam transações ACID. A manipulação dos dados é via linguagem SQL. A manipulação dos dados é via APIs próprias da tecnologia ou através de um subconjunto limitado da linguagem SQL. Figura. Banco de dados Relacional vs. NoSQL (ARMBRUST, 2021). A tabela seguinte, extraída de Devmedia (2014), apresenta uma análise comparativa do modelo de dados relacional e o modelo de dados NoSQL. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 13 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão Modelo de Dados Relacional Modelo de Dados NoSQL E sc al o n am en to Possível, mas complexo. Devido à natureza estruturada do modelo, a adição de forma dinâmica e transparente de novos nós no grid não é realizada de modo natural. Uma das principais vantagens desse modelo. Por não possuir nenhum tipo de esquema predefinido, o modelo possui maior flexibilidade o que favorece a inclusão transparente de outros elementos. C o n si st ên ci a Ponto mais forte do modelo relacional. As regras de consistência presentes propiciam um maior grau de rigor quanto à consistência das informações. Realizada de modo eventual no modelo: só garante que, se nenhuma atualização for realizada sobre o item de dados, todos os acessos a esse item devolverão o último valor atualizado. D is p o n ib ili d ad e Dada a dificuldade de se conseguir trabalhar de forma eficiente com a distribuição dos dados, esse modelo pode não suportar a demanda muito grande de informações do banco. Outro fator fundamental do sucesso desse modelo. O alto grau de distribuição dos dados propicia que um maior número de solicitações aos dados seja atendida por parte do sistema e que o sistema fique menos tempo não disponível. Tabela. Análise Comparativa Modelo Relacional x NoSQL. Fonte: Devmedia (2014) Pereira (2016) destacou que, durante inúmeras décadas, os bancos de dados relacionais atenderam o seu propósito e ainda o fazem muito bem, mas com o surgimento do Big Data e desta imensa quantidade de dados de diferentes categorias, gerados em diferentes velocidades e volumes, novos modelos de gestão de dados começaram a surgir. Isto levou ao crescimento de soluções NoSQL (PEREIRA, 2016). Com NoSQL, dados não estruturados podem ser armazenados em vários nós de processamento e não requerem schemas fixos, geralmente evitam operações de join e, normalmente, funcionam bem com escalonamento horizontal (PEREIRA, 2016). Se tiver aplicações que lidam com uma grande quantidade de consultas complexas, transações de banco de dados e análise de dados de rotina, provavelmente será utilizado um banco de dados relacional (PEREIRA, 2016). E se a aplicação tiver como foco principal a execução de muitas transações, é importante que essas transações sejam processadas de forma confiável. Este é o lugar em que ACID (o conjunto de propriedades que garante que as transações de banco de dados sejam processados de forma confiável) realmenteimporta e a integridade referencial entra em jogo (PEREIRA, 2016). NoSQL abrange uma grande variedade de diferentes tecnologias de banco de dados que foram criados em resposta às demandas apresentadas na construção de aplicações modernas (PEREIRA, 2016). Alguns exemplos citados por Pereira (2016): O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br https://blog.dsacademy.com.br/2016/big-data-fundamentos/ 14 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão • Cada vez mais, os desenvolvedores trabalham com aplicativos que criam grandes volumes de novos tipos de dados e que mudam rapidamente, sejam estes dados estruturados, semiestruturados ou não estruturados (PEREIRA, 2016). • Em um passado não muito distante, o ciclo de desenvolvimento de aplicações era de 12 a 18 meses. Agora pequenas equipes trabalham com metodologias ágeis de desenvolvimento, interagindo de forma rápida e liberando código a cada semana ou duas, algumas até mesmo várias vezes por dia (PEREIRA, 2016). • Aplicações que antes serviam a um público finito agora são entregues como serviços que devem estar sempre online, acessíveis a partir de vários dispositivos diferentes e disponíveis em todo o mundo para milhões de usuários (PEREIRA, 2016). • As organizações estão redimensionando suas arquiteturas e cada vez mais utilizam software de código aberto, servidores commodities (como no caso do Hadoop) e computação em nuvem, em vez de grandes servidores monolíticos e infraestrutura de armazenamento (PEREIRA, 2016). Obs.: � Hadoop: plataforma open source desenvolvida especialmente para processamento e análise de grandes volumes de dados, sejam eles estruturados ou não estruturados. Estamos vivenciando uma transformação na forma como se coleta, armazena e analisa os dados e esta transformação, requer novas tecnologias. Exatamente daí surgiram as necessidades que tem levado ao crescimento de bancos de dados NoSQL (PEREIRA, 2016). As figuras seguintes destacam uma linha de tempo nas quais são citados os principais modelos de dados: Figura. Modelo de Dados NoSQL (Fonte: https://www.devmedia.com.br/ repositorio-de-dados-relacional-ou-nosql/27500) O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br https://www.devmedia.com.br/repositorio-de-dados-relacional-ou-nosql/27500 https://www.devmedia.com.br/repositorio-de-dados-relacional-ou-nosql/27500 15 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão principAis modelos de BAnco de dAdos nosQl A seguir, destacamos os principais modelos de gerenciamento de dados NoSQL. Existem quatro grandes categorias mais utilizadas: Figura. Tipos de Banco de Dados NoSQL (ARMBRUST, 2021). modelo nosQl chAve-vAlor (Key-vAlue) Key/Value Store é o tipo de banco de dados NoSQL mais simples, cujo conceito é uma chave e um valor para essa chave. No entanto, ele é o que aguenta maior carga de dados e possui a maior escalabilidade. (MACHADO, 2018, p.79) Figura. Estrutura de um banco de dados orientado a chave-valor. Fonte: Livro Big Data: Técnicas e tecnologias para extração de valor dos dados”, por Rosangela Marquesone O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 16 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão Sistemas distribuídos nessa categoria, também conhecidos como tabelas de hash distribuídas, armazenam objetos indexados por chaves e possibilitam a busca por esses objetos a partir de suas chaves. Em banco de dados Nosql, mais especificamente o modelo chave/valor, o conceito de consistência é aplicável apenas às operações em uma única chave, já que essas operações são a obtenção, a gravação ou a exclusão em uma única chave. Casos de uso: sessão de usuário em aplicações Web, carrinho de compras (ARMBRUST, 2021). São exemplos de bancos de dados que utilizam esse padrão Chave-Valor (Key-Value): Azure Table Storage, Berkeley DB, DynamoDB GenieDB, HamsterDB, Memcached DB, Project Voldemort, Redis, Riak, Oracle NoSQL Database. modelo nosQl orientAdo A documentos Muito similar a implementação chave-valor (Key/Value), porém aqui, o banco de dados conhece o valor (documento) no qual a chave faz referência. O banco de dados NoSQL entende o valor armazenado, permitindo realizar interações sobre ele (ARMBRUST, 2021). Os documentos dos bancos dessa categoria são coleções de atributos e valores, nas quais um atributo pode ser multivalorado. Figura. Exemplo de documento. Fonte: Lóscio e Oliveira (2011) Em geral, os bancos de dados orientados a documentos não possuem esquema, ou seja, os documentos armazenados não precisam possuir estrutura em comum. Os dados nos campos de um documento podem ser codificados de várias maneiras, incluindo XML, YAML, JSON, BSON ou até mesmo armazenados como texto sem formatação. Casos de uso: catálogo de produtos, blog posts, aplicativos de comércio eletrônico (ARMBRUST, 2021). Alguns bancos que utilizam esse padrão são: MongoDB, CouchDB (Apache), o Oracle NoSQL Database, o Lotus Notes, OrientDB, Terrastore e RavenDB. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 17 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão 001. (CEBRASPE (CESPE)/ATIVIDADES DE REGULAÇÃO (ANP)/NOVAS ATRIBUIÇÕES IV/2022) No que se refere aos conceitos de bancos NoSQL e armazenamento orientado a objeto (object store), julgue o item a seguir. Nos sistemas orientados a documentos NoSQL, como o MongoDB, os novos documentos devem ter elementos de dados que já existem em documentos atuais da coleção. Nos sistemas orientados a documentos, como o MongoDB, um documento corresponde a um objeto com um identificador único composto de um conjunto de campos (linha), como por exemplo, strings, listas, documentos aninhados. Não possui um esquema definido (schema free), embora exista alguma estrutura nesse tipo de modelo. Assim, os novos documentos não necessitam ter elementos de dados que já existem em documentos atuais da coleção. Errado. modelo orientAdo A colunAs (ou colunAr) O armazenamento colunar é similar a uma tabela, em que cada linha pode ter uma ou mais colunas. O número de colunas por linha pode variar. Um armazenamento de dados de colunas ou de família de colunas organiza os dados em colunas e linhas. Figura. Exemplo de modelo baseado em colunas. Fonte: Lóscio e Oliveira (2011) É possível pensar em um armazenamento de dados de família de colunas como dados contidos em tabela com linhas e colunas, mas as colunas são divididas em grupos conhecidos como famílias de colunas. Cada família de colunas contém um conjunto de colunas que estão logicamente relacionadas e geralmente são recuperadas ou manipuladas como uma unidade. Outros dados acessados separadamente podem ser armazenados em famílias de colunas separadas. O conteúdo deste livro eletrônicoé licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 18 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão Os bancos de dados de famílias de colunas são mais interessantes para processamento analítico online (OLAP – On-Line Analytical Processing, ou Processamento Analítico On-line). Veja a seguir um quadro muito interessante para o seu aprendizado. OLAP (On-line Analytical Processing) OLTP (On-line Transaction Processing) Foco Foco no nível estratégico da organização. Visa a ANÁLISE empresarial e tomada de decisão. Foco no nível operacional da organização. Visa a execução operacional do negócio. Operação Típica Análise. Atualização. Performance Otimização para a leitura e geração de análises e relatórios gerenciais. Alta velocidade na manipulação de dados operacionais, porém ineficiente para geração de análises gerenciais. Estrutura dos dados Os dados estão estruturados na modelagem multidimensional. Os dados normalmente possuem alto nível de sumarização. Os dados são normalmente estruturados em um modelo relacional normalizado, otimizado para a utilização transacional. Os dados possuem alto nível de detalhes. Armazenamento Feito em estruturas de Data Warehouse com otimização no desempenho em grandes volumes de dados. É comum o armazenamento maior de dados para OLAP, em relação a OLTP, com a finalidade de se manter histórico para análise. Feito em sistemas convencionais de Banco de Dados através dos sistemas de informações da organização. Abrangência Utilizado pelos gestores e analistas para a tomada de decisão. Utilizado por técnicos e analistas. Engloba também vários usuários da organização. OLAP (On-line Analytical Processing) OLTP (On-line Transaction Processing) Frequência de atualização A atualização das informações é feita no processo de carga dos dados. Frequência baixa, podendo ser diária, semanal, mensal ou anual (ou critério específico). Atualização dos dados é feita no momento da transação. Frequência muito alta de atualizações. Volatilidade Dados históricos e não voláteis. Os dados não sofrem alterações, salvo necessidades específicas (por motivos de erros ou inconsistências de informações). Dados voláteis, passíveis de modificação e exclusão. Tela Definida pelo usuário Imutável Nível de Dados Altamente sumarizado Atomizado Idade dos Dados Histórico, atual, projetado Presente Recuperação Muitos Registros Poucos Registros Tabela. OLTP x OLAP. Fonte: Elias (2014), adaptada pela autora. Bigtable é uma implementação da Google dessa categoria de bancos de dados. Além do BigTable, outros bancos que usam essa tecnologia são: HBase (Apache); HyperTable; Cassandra (Apache), conforme Machado (2018, p.79). Também pode-se citar como exemplo o Amazon SimpleDB. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 19 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão modelo nosQl orientAdo A GrAfos Semelhante ao modelo relacional, aqui é mais explícito o relacionamento entre os dados. Muito útil para dados que estejam bastante interligados, pois a estrutura de um grafo expõe naturalmente os relacionamentos entre os objetos (ARMBRUST, 2021). Diferentemente de outros tipos de bancos de dados NoSQL, esse está diretamente relacionado a um modelo de dados estabelecido, o modelo de grafos. A ideia desse modelo é representar os dados e(ou) o esquema dos dados como grafos dirigidos, ou como estruturas que generalizem a noção de grafos. O modelo de grafos é mais interessante que outros quando informações sobre a interconectividade ou a topologia dos dados são mais importantes ou tão importantes quanto os dados propriamente ditos. Os modelos de bancos de dados NoSQL Orientados a Grafos são bancos de dados em que cada par de nós pode estar ligado por mais de uma aresta. Por essa característica é chamado também de multigrafo rotulado e direcionado. O modelo orientado a grafos possui três componentes básicos: • os nós (são os vértices do grafo), • os relacionamentos (são as arestas) e • as propriedades (ou atributos) dos nós e relacionamentos. Obs.: � O modelo é formado basicamente por nós (chamados de vértices dos grafos), relacionamentos (ou arestas) e propriedades (que representam os atributos). Dentre suas principais características, é possível citar sua ótima performance possibilitando um bom desempenho nas aplicações. Um exemplo da utilidade desse tipo de banco é resolver perguntas como: “Com quais pessoas e por quanto tempo um cliente falou nos últimos 7 dias?” Casos de uso: o seu uso varia de aplicações para redes sociais (em que há muita interligação de likes ou pessoas), bioinformática, software de recomendação, etc. (ARMBRUST, 2021). Alguns bancos que utilizam esse padrão: Neo4J, Infinite Graph, InforGrid, AllegroGraph, Virtuoso e HyperGraphDB. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br https://pt.wikipedia.org/wiki/Teoria_dos_grafos 20 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão Figura. Grafo ilustrando relacionamentos entre duas pessoas. Fonte: https://www.devmedia.com.br/ analisando-o-big-data-na-teoria-e-na-pratica/30129 Banco de dados de grafos são suportados por linguagens de consulta, como por exemplo a Gremlin (linguagem específica de domínio para percorrer grafos). Essa linguagem pode percorrer todos os bancos de dados de grafos que implementem grafos de propriedades no padrão Blueprints (oferece um conjunto comum de interfaces que permitem que os desenvolvedores conectem a sua implementação back end ao banco de dados de grafo). 002. (UFMT/IF-MT/PROFESSOR – ENGENHARIA DE COMPUTAÇÃO/2015) Sobre os bancos de dados NoSQL, assinale a afirmativa correta. A coluna da esquerda apresenta tipos de modelos de dados relacionados com Banco de Dados NoSQL e a da direita, suas propriedades. Numere a coluna da direita de acordo com a da esquerda. 1 – Chave-Valor 2 – Documento 3 – Grafo 4 – Coluna ( ) � O conteúdo do dado é organizado em codificações semelhantes à YAML. ( ) � Tem enfoque principal no relacionamento entre os dados, com valores sendo armazenados em nós e suas ligações. ( ) � Para cada identificador único tem-se associado um valor que pode ser de qualquer tipo. ( ) � Organizado em tabelas com foco nos campos das tuplas. Assinale a sequência correta. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br https://www.devmedia.com.br/analisando-o-big-data-na-teoria-e-na-pratica/30129 https://www.devmedia.com.br/analisando-o-big-data-na-teoria-e-na-pratica/30129 21 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão a) 2, 3, 1, 4 b) 3, 1, 4, 2 c) 1, 4, 2, 3 d) 4, 2, 3, 1 Vamos à sequência correta, que destaca os tipos de bancos NoSQL adequados ao contexto: 2 – Documento O conteúdo do dado é organizado em codificações semelhantesà YAML. 3 – Grafo Tem enfoque principal no relacionamento entre os dados, com valores sendo armazenados em nós e suas ligações. 1 – Chave-Valor Para cada identificador único tem-se associado um valor que pode ser de qualquer tipo. 4 – Coluna Organizado em tabelas com foco nos campos das tuplas. Conforme visto, a sequência correta é a listada na letra A. Letra a. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 22 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão reSUmo O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 23 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 24 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 25 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão Os bancos NoSQL usam diversos modelos de dados, como: chave/valor simples, colunares, documentos, gráficos e armazenamento de pares chave-valor na memória (CESPE/2018). Use Bancos de Dados Relacionais quando... Use NoSQL quando... Suas aplicações forem centralizadas (ERP, CRM). Suas aplicações forem descentralizadas (Web, Mobile, Big Data, IoT) Alta disponibilidade moderada for necessária. Quando a disponibilidade tiver que ser contínua, sem interrupção. Dados gerados em velocidade moderada. Dados gerados em alta velocidade (sensores). Dados forem gerados a partir de poucas fontes. Dados forem gerados a partir de múltiplas fontes. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 26 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão Use Bancos de Dados Relacionais quando... Use NoSQL quando... Dados forem estruturados. Dados forem semiestruturados ou não estruturados. Transações complexas. Transações simples. For necessário manter moderado volume de dados. For necessário manter alto volume de dados. Figura. Banco de dados Relacional vs. NoSQL (PEREIRA, 2016). Figura. Principais Modelos de Dados NoSQL O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 27 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão Exemplos de Bancos de Dados NoSQL: Apache Cassandra Originalmente criado pelo Facebook, no qual os dados são identificados por meio de uma chave. É um projeto de sistema de banco de dados distribuído, altamente escalável, que foi desenvolvido na plataforma Java. Reúne a arquitetura do Dynamo da Amazon e o modelo de dados do BigTable da Google. Teve seu código-fonte aberto à comunidade em 2008. Atualmente é mantido por desenvolvedores da fundação Apache e colaboradores de outras empresas. MongoDB É um banco de dados orientado a documentos, escalável, de alto desempenho e código aberto escrito em C++. Apache CouchDB É um banco de dados orientado a documentos de código fonte aberto escrito em linguagem Erlang. Foi desenvolvido e mantido pela fundação Apache e busca replicação e escalabilidade horizontal. DynamoDB Desenvolvido pela Amazon em 2007, foi criado para oferecer armazenamento de valores- chaves de dados de alta disponibilidade, permitindo atualizações para sobreviver a falhar de servidor e rede. Redis Um banco de dados NoSQL capaz de armazenar dados no formato chave-valor. BigTable Criado pelo Google e usado pelo GFS (Google File System) para gerenciar petabytes de informações, o BigTable é um sistema de armazenamento de dados distribuído que é estruturado como uma enorme tabela. Atualmente esse projeto é utilizado em diversas aplicações do Google, principalmente naquelas que demandam alta capacidade de armazenamento e baixa latência de rede, como o processo de indexação de web sites e os produtos: Google Earth, Maps, Adwords, Analytics, Adsense, Youtube e Gmail. HBase É um banco de dados open source semelhante ao BigTable, que utiliza o Hadoop. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 28 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão QUeSTÕeS comeNTaDaS Na aULa 001. (CEBRASPE (CESPE)/ATIVIDADES DE REGULAÇÃO (ANP)/NOVAS ATRIBUIÇÕES IV/2022) No que se refere aos conceitos de bancos NoSQL e armazenamento orientado a objeto (object store), julgue o item a seguir. Nos sistemas orientados a documentos NoSQL, como o MongoDB, os novos documentos devem ter elementos de dados que já existem em documentos atuais da coleção. 002. (UFMT/IF-MT/PROFESSOR – ENGENHARIA DE COMPUTAÇÃO/2015) Sobre os bancos de dados NoSQL, assinale a afirmativa correta. A coluna da esquerda apresenta tipos de modelos de dados relacionados com Banco de Dados NoSQL e a da direita, suas propriedades. Numere a coluna da direita de acordo com a da esquerda. 1 – Chave-Valor 2 – Documento 3 – Grafo 4 – Coluna ( ) � O conteúdo do dado é organizado em codificações semelhantes à YAML. ( ) � Tem enfoque principal no relacionamento entre os dados, com valores sendo armazenados em nós e suas ligações. ( ) � Para cada identificador único tem-se associado um valor que pode ser de qualquer tipo. ( ) � Organizado em tabelas com foco nos campos das tuplas. Assinale a sequência correta. a) 2, 3, 1, 4 b) 3, 1, 4, 2 c) 1, 4, 2, 3 d) 4, 2, 3, 1 O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 29 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão QUeSTÕeS De coNcUrSo 003. (CESGRANRIO/BANCO DO BRASIL – AGENTE DE TECNOLOGIA/2021) Um banco comercial deseja obter um tipo de banco de dados NoSQL que trate os dados extraídos de redes sociais, de modo a formar uma coleção (collection) interconectada. Nessa coleção(collection), os dados são organizados em vértices ou objetos (O) e em relacionamentos, que são relações (R) ou arestas. Nesse modelo de banco de dados NoSQL, os dados seriam apresentados da seguinte forma: O banco de dados NoSQL que representa essa situação deve ter uma estrutura do tipo a) Distribuided Hashing b) Consistent Hashing c) Document Oriented d) Graph Oriented e) Vector Clock 004. (INSTITUTO AOCP/CGE-MS/AUDITOR DO ESTADO – TECNOLOGIA DA INFORMAÇÃO/2022) Considerando os bancos de dados NoSQL, um depósito de chave-valor significa a) uma tabela hash simples, utilizada principalmente quando todo o acesso ao banco de dados é feito por meio da chave primária. b) uma plataforma especializada e de uso único para criar e manipular grafos. c) um modelo de banco de dados projetado para armazenar, recuperar e gerenciar informações orientadas a documentos. d) o armazenamento de dados em chaves mapeadas para valores, sendo que estes são agrupados em diversas famílias de colunas, como um mapa. e) uma coleção de comandos que podem ser executados de uma só vez, como em uma função 005. (IBFC/ESPECIALISTA DE FOMENTO (AFEAM)/INFRAESTRUTURA DE TI/2022) Quanto aos tipos de Bancos de Dados (DB), analise as afirmativas a seguir e assinale a alternativa correta. (1) O MySQL e o Oracle, baseados em tabelas, não são considerados DB relacionais. (2) O banco de dados NoSQL refere-se tipicamente a um banco de dados não relacional. a) As afirmativas (1) e (2) são verdadeiras b) A afirmativa (1) é verdadeira, e a (2) é falsa c) A afirmativa (2) é verdadeira, e a (1) é falsa d) As afirmativas (1) e (2) são falsas O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 30 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão 006. (INSTITUTO AOCP/FUNPRESP-JUD/ANALISTA DE TECNOLOGIA DA INFORMAÇÃO/ DESENVOLVIMENTO DE SISTEMAS/2021) Referente a bancos de dados relacionais e NoSQL, julgue o seguinte item. Em banco de dados Nosql, mais especificamente o modelo chave/valor, o conceito de consistência é aplicável apenas às operações em uma única chave, já que essas operações são a obtenção, a gravação ou a exclusão em uma única chave. 007. (CESPE (CEBRASPE)/SEFAZ-AL/AUDITOR FISCAL DE FINANÇAS E CONTROLE DE ARRECADAÇÃO DA FAZENDA ESTADUAL/2021) Julgue o próximo item, a respeito de POSTGRESQL, bancos de dados não relacionais e técnicas para pré-processamento de dados. Sistemas NOSQL com fundamento em documentos possuem um modelo de dados simples embasado no acesso rápido pela palavra; os resultados estão relacionados à informação e podem ser encontrados percorrendo-se os textos usando-se expressões regulares. 008. (INSTITUTO AOCP/ANALISTA (FUNPRESP-JUD)/TECNOLOGIA E INFORMAÇÃO/ DESENVOLVIMENTO DE SISTEMAS/2021) Referente a bancos de dados relacionais e NoSQL, julgue o seguinte item. Banco de dados de grafos são suportados por linguagens de consulta, como a Gremlin, linguagem específica de domínio para percorrer grafos. Essa linguagem pode percorrer todos os bancos de dados de grafos que implementem grafos de propriedades no padrão Blueprints. 009. (CCV-UFC/UFC/TÉCNICO DE TECNOLOGIA DA INFORMAÇÃO/DESENVOLVIMENTO DE SISTEMAS/2019) Sobre os bancos de dados NoSQL, assinale a afirmativa correta. a) Bancos de dados NoSQL não podem ser indexados. b) Bancos de dados NoSQL são considerados banco de dados relacionais. c) Nos bancos de dados NoSQL devem ser definidos um esquema de dados fixo antes de qualquer operação. d) São exemplos de bancos de dados NoSQL: MongoDB, Firebird, DynamoDB, SQLite, Microsoft Access e Azure Table Storage. e) Os bancos de dados NoSQL usam diversos modelos para acessar e gerenciar dados, como documento, gráfico, chave-valor, em memória e, pesquisa. 010. (CESPE/SLU-DF/ANALISTA DE GESTÃO DE RESÍDUOS SÓLIDOS – INFORMÁTICA/2019) No que se refere a banco de dados relacional (SQL) e não relacional (NoSQL) e ao framework JPA, julgue o item subsecutivo. Para uma empresa que necessite implantar uma base de dados altamente escalável, com grande desempenho e cujo esquema de dados seja flexível, de modo que suporte constantes mudanças de campos e valores armazenados, a melhor opção é uma base de dados NoSQL. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 31 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão 011. (CPPS/UNESPAR/TÉCNICO EM INFORMÁTICA/2018) O termo NoSQL é utilizado para descrever bancos de dados não relacionais de alto desempenho e que usam diversos modelos de dados, incluindo documentos, gráficos, chave-valor e colunas. Selecione entre os SGBD´s relacionados abaixo aquele que possui tais características: a) MariaDB b) SQLite c) MongoDB d) MySQL e) PostgreSQL 012. (CESPE/TCE-PB/AUDITOR DE CONTAS PÚBLICAS – DEMAIS ÁREAS/2018) Com referência a big data, assinale a opção correta. a) A definição mais ampla de big data restringe o termo a duas partes — o volume absoluto e a velocidade —, o que facilita a extração das informações e dos insights de negócios. b) O sistema de arquivos distribuído Hadoop implementa o algoritmo Dijkstra modificado para busca irrestrita de dados em árvores aglomeradas em clusters com criptografia. c) Em big data, o sistema de arquivos HDFS é usado para armazenar arquivos muito grandes de forma distribuída, tendo como princípio o write-many, read-once. d) Para armazenar e recuperar grande volume de dados, o big data utiliza bancos SQL nativos, que são bancos de dados que podem estar configurados em quatro tipos diferentes de armazenamentos: valor chave, colunar, gráfico ou documento. e) O MapReduce é considerado um modelo de programação que permite o processamento de dados massivos em um algoritmo paralelo e distribuído. 013. (FCC/SEFAZ-SC/AUDITOR-FISCAL DA RECEITA ESTADUAL – TECNOLOGIA DA INFORMAÇÃO (PROVA 3)/2018) Como não existe um modelo de armazenamento de dados único adequado para atender a todos os cenários e necessidades das aplicações de Big Data, em complemento ao modelo relacional, foram criados quatro novos tipos de armazenamento NoSQL (Not only SQL). Dentre esses, aqueles que modelam os dados usando o formato de linhas e colunas são APENAS os tipos de bancos de dados orientados a colunas, a) chave-valor e grafos. b) chave-valor e documentos. c) documentos e grafos. d) chave-valor. e) grafos. 014. (CESPE/POLÍCIA FEDERAL/PERITO CRIMINAL FEDERAL – ÁREA 3/2018) Acerca de banco de dados, julgue o item seguinte. NoSQL são bancos de dados que não aceitam expressões SQL e devem ser armazenados na nuvem. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 32 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão 015. (FGV/IBGE/ANALISTA CENSITÁRIO/ANÁLISE DE SISTEMAS/DESENVOLVIMENTO DE APLICAÇÕES – WEB MOBILE/2017) Bancos de Dados NoSQL podem armazenar dados em diversos formatos não relacionais, como documentos compostos por pares de campo-e-valor (field- and-value), conforme a estrutura exemplificada a seguir. O Banco de Dados NoSQL utilizado para armazenar documentos compostos por pares campo-e-valor, no formato BSON (JSON-like), é o: a) OpenLink Virtuoso; b) Neo4j;c) Apache HBase; d) MongoDB; e) Titan. 016. (FGV/IBGE/ANALISTA CENSITÁRIO/ANÁLISE DE SISTEMAS – DESENVOLVIMENTO DE APLICAÇÕES – WEB MOBILE/2017) Observe a figura a seguir que ilustra relações entre colegas e seus interesses. O tipo de Banco de Dados NoSQL, não relacional, que armazena tais informações, utilizando estruturas de vértices e arestas, com propriedades associadas, é o: a) Colunar; b) Documento; c) Grafo; d) Chave-valor; e) Tabular. 017. (CESPE/TCE-PA/AUDITOR DE CONTROLE EXTERNO – ÁREA INFORMÁTICA – ANALISTA DE SEGURANÇA/2016) Acerca de segurança de banco de dados e de desenvolvimento de software, julgue o item subsecutivo. Os bancos de dados NoSQL são imunes a ataques de injeção SQL. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 33 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão 018. (FGV/IBGE/ANALISTA/ANÁLISE DE SISTEMAS/DESENVOLVIMENTO DE APLICAÇÕES – WEB MOBILE/2016) Considere as seguintes características de um projeto de banco de dados. I. O modelo de dados é conhecido a priori e é estável; II – A integridade dos dados deve ser rigorosamente mantida; III – Velocidade e escalabilidade são preponderantes. Dessas características, o emprego de bancos de dados NoSQL é favorecido somente por: a) I; b) I e II; c) II; d) II e III; e) III. 019. (CESPE/FUNPRESP-JUD/ANALISTA – TECNOLOGIA DA INFORMAÇÃO/2016) A respeito de banco de dados, julgue o próximo item. Os bancos de dados NoSQL não permitem a atualização de seus dados, por serem orientados a documentos e(ou) coleções. 020. (CESPE/TJ-SE/ANALISTA JUDICIÁRIO – BANCO DE DADOS/2014) Acerca de bancos de dados semiestruturados e bancos de dados NOSQL, julgue os itens subsecutivos. Bancos de dados NOSQL orientados a documentos são apropriados para o armazenamento de dados semiestruturados. 021. (CESPE/FUNPRESP-EXE/ESPECIALISTA – TECNOLOGIA DA INFORMAÇÃO/2016) Com relação à forma como os dados são armazenados e manipulados no desenvolvimento de aplicações, julgue o item a seguir. Em um banco de dados NoSQL do tipo grafo, cada arco é definido por um identificador único e expresso como um par chave/valor. 022. (CESPE/TJ-DFT/ANALISTA JUDICIÁRIO – SUPORTE EM TECNOLOGIA DA INFORMAÇÃO/2015) A respeito de tipos de bancos de dados, julgue o item que se segue. Sistemas de bancos de dados classificados como NoSQL permitem a inserção de dados sem que haja um esquema predefinido. 023. (FGV/TJ-BA/TÉCNICO JUDICIÁRIO/TECNOLOGIA DA INFORMAÇÃO/2015) Analise as afirmativas a respeito da classe de gerenciadores de bancos de dados, surgida em anos recentes, conhecida como NoSQL. I – Mesmo sem suportar tabelas relacionais, baseiam-se em esquemas de dados previamente definidos; II – Suas estruturas não permitem o uso de linguagens do tipo do SQL para recuperação de dados; III – Garantem operações com as propriedades conhecidas pela sigla ACID; IV – Privilegiam a rapidez de acesso e a disponibilidade dos dados em detrimento das regras de consistência das transações. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 34 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão O número de afirmativas corretas é: a) uma; b) duas; c) três; d) quatro; e) cinco. 024. (CESPE/TJ-SE/ANALISTA JUDICIÁRIO – BANCO DE DADOS/2014) Acerca de bancos de dados semiestruturados e bancos de dados NOSQL, julgue os itens subsecutivos. Devido à escalabilidade esperada para os bancos de dados NOSQL, a implementação desses bancos utiliza modelos de armazenamento de dados totalmente distintos dos utilizados em sistemas relacionais. 025. (CESPE/CNJ/ANALISTA JUDICIÁRIO/ANÁLISE DE SISTEMAS/2013) No que se refere ao desenvolvimento web de alto desempenho, julgue os itens subsequentes. Uma característica de bancos de dados NoSQL é o suporte à replicação de dados. Entre as abordagens utilizadas para replicação, inclui-se a mestre-escravo. 026. (CEBRASPE (CESPE)/ATIVIDADES DE REGULAÇÃO (ANP)/NOVAS ATRIBUIÇÕES IV/2022) No que se refere aos conceitos de bancos NoSQL e armazenamento orientado a objeto (object store), julgue o item a seguir. O armazenamento orientado a objeto se caracteriza por guardar as informações em estrutura de dados na memória de código aberto usando cache e agentes de mensagens com o mecanismo de streaming. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 35 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão gaBariTo 1. E 2. a 3. d 4. a 5. c 6. C 7. E 8. C 9. e 10. C 11. c 12. e 13. b 14. E 15. d 16. c 17. E 18. e 19. E 20. C 21. E 22. C 23. a 24. E 25. C 26. E O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 36 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão gaBariTo comeNTaDo 003. (CESGRANRIO/BANCO DO BRASIL – AGENTE DE TECNOLOGIA/2021) Um banco comercial deseja obter um tipo de banco de dados NoSQL que trate os dados extraídos de redes sociais, de modo a formar uma coleção (collection) interconectada. Nessa coleção (collection), os dados são organizados em vértices ou objetos (O) e em relacionamentos, que são relações (R) ou arestas. Nesse modelo de banco de dados NoSQL, os dados seriam apresentados da seguinte forma: O banco de dados NoSQL que representa essa situação deve ter uma estrutura do tipo a) Distribuided Hashing b) Consistent Hashing c) Document Oriented d) Graph Oriented e) Vector Clock O Modelo NoSQL Orientado a Grafos (Graph Oriented) é muito útil para dados que estejam bastante interligados, pois a estrutura de um grafo expõe naturalmente os relacionamentos entre os objetos (ARMBRUST, 2021). A ideia desse modelo é representar os dados e(ou) o esquema dos dados como grafos dirigidos, ou como estruturas que generalizem a noção de grafos. O modelo orientado a grafos possui três componentes básicos: • os nós (são os vértices do grafo), • os relacionamentos (são as arestas) e • as propriedades (ou atributos) dos nós e relacionamentos. Obs.: � O modelo é formado basicamente por nós (chamados de vértices dos grafos), relacionamentos (ou arestas) e propriedades (que representam os atributos). Dentre suas principais características, é possível citar sua ótima performance possibilitando um bom desempenho nas aplicações. Casos de uso: o seu uso varia de aplicações para redes sociais (em que há muita interligação de likes ou pessoas), bioinformática, software de recomendação, etc. (ARMBRUST, 2021). Letra d. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br https://pt.wikipedia.org/wiki/Teoria_dos_grafos 37 de 55www.grancursosonline.com.brBanco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão 004. (INSTITUTO AOCP/CGE-MS/AUDITOR DO ESTADO – TECNOLOGIA DA INFORMAÇÃO/2022) Considerando os bancos de dados NoSQL, um depósito de chave-valor significa a) uma tabela hash simples, utilizada principalmente quando todo o acesso ao banco de dados é feito por meio da chave primária. b) uma plataforma especializada e de uso único para criar e manipular grafos. c) um modelo de banco de dados projetado para armazenar, recuperar e gerenciar informações orientadas a documentos. d) o armazenamento de dados em chaves mapeadas para valores, sendo que estes são agrupados em diversas famílias de colunas, como um mapa. e) uma coleção de comandos que podem ser executados de uma só vez, como em uma função Considerando os bancos de dados NoSQL, um depósito de chave-valor significa uma tabela hash simples, utilizada principalmente quando todo o acesso ao banco de dados é feito por meio da chave primária. Figura. Estrutura de um banco de dados orientado a chave-valor. Fonte: Livro Big Data: Técnicas e tecnologias para extração de valor dos dados”, por Rosangela Marquesone Sistemas distribuídos nessa categoria, também conhecidos como tabelas de hash distribuídas, armazenam objetos indexados por chaves e possibilitam a busca por esses objetos a partir de suas chaves. Casos de uso: sessão de usuário em aplicações Web, carrinho de compras (ARMBRUST, 2021). Letra a. 005. (IBFC/ESPECIALISTA DE FOMENTO (AFEAM)/INFRAESTRUTURA DE TI/2022) Quanto aos tipos de Bancos de Dados (DB), analise as afirmativas a seguir e assinale a alternativa correta. (1) O MySQL e o Oracle, baseados em tabelas, não são considerados DB relacionais. (2) O banco de dados NoSQL refere-se tipicamente a um banco de dados não relacional. a) As afirmativas (1) e (2) são verdadeiras b) A afirmativa (1) é verdadeira, e a (2) é falsa c) A afirmativa (2) é verdadeira, e a (1) é falsa d) As afirmativas (1) e (2) são falsas O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 38 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão O uso dos bancos de dados relacionais para armazenar os dados empresariais é um paradigma já bem consolidado. Mas, o grande volume de dados gerado por aplicações na internet e os requisitos diferenciados destas aplicações, têm exigido o surgimento de novos paradigmas e tecnologias, como os bancos de dados NoSQL (Not Only SQL). I – Errada. O MySQL é provavelmente o Sistema Gerenciador de Banco de Dados (SGBD) mais popular da atualidade. Criado na década de 90, esse importante SGBD pertence atualmente à Oracle Corporation. Parte do seu sucesso se deve pela facilidade de integração com o PHP, uma linguagem de programação bastante difundida. O MySQL e o Oracle, baseados em tabelas, são considerados Bancos de Dados (DB) relacionais. II – Certa. O banco de dados NoSQL (Not Only SQL) refere-se tipicamente a um banco de dados não relacional. O termo geralmente é aplicado a alguns bancos de dados não relacionais recentes, como o Cassandra, o Mongo, o Neo4J, o Riak, etc. A tabela seguinte, extraída de ARMBRUST (2021), apresenta uma análise comparativa do modelo de dados relacional e o modelo de dados NoSQL. Figura. Banco de dados Relacional vs. NoSQL (ARMBRUST, 2021). Conforme visto, a afirmativa (2) é verdadeira, e a (1) é falsa. A letra C é a resposta! Letra c. 006. (INSTITUTO AOCP/FUNPRESP-JUD/ANALISTA DE TECNOLOGIA DA INFORMAÇÃO/ DESENVOLVIMENTO DE SISTEMAS/2021) Referente a bancos de dados relacionais e NoSQL, julgue o seguinte item. Em banco de dados Nosql, mais especificamente o modelo chave/valor, o conceito de consistência é aplicável apenas às operações em uma única chave, já que essas operações são a obtenção, a gravação ou a exclusão em uma única chave. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 39 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão Conforme Sadalage e Fowler (2019), a consistência no banco de dados NoSQL é aplicável apenas para operações em uma única chave, uma vez que essas operações são obter, gravar ou excluir em uma única chave. Gravar através de modelos otimistas pode ser executado, mas geralmente é muito caro para implementar, pois uma mudança no valor não pode ser determinada pelo armazenamento de dados.... Como as operações são limitadas a uma chave por vez, não há como operar várias chaves ao mesmo tempo. Se for preciso operar com várias chaves, será necessário lidar com isso do lado do cliente... Certo. 007. (CESPE (CEBRASPE)/SEFAZ-AL/AUDITOR FISCAL DE FINANÇAS E CONTROLE DE ARRECADAÇÃO DA FAZENDA ESTADUAL/2021) Julgue o próximo item, a respeito de POSTGRESQL, bancos de dados não relacionais e técnicas para pré-processamento de dados. Sistemas NOSQL com fundamento em documentos possuem um modelo de dados simples embasado no acesso rápido pela palavra; os resultados estão relacionados à informação e podem ser encontrados percorrendo-se os textos usando-se expressões regulares. Os sistemas NOSQL com fundamento em documentos não fazem uso dessas expressões regulares, sendo utilizado o conceito de chave. Após esse acesso, é possível efetuar consultas em partes do documento. Errado. 008. (INSTITUTO AOCP/ANALISTA (FUNPRESP-JUD)/TECNOLOGIA E INFORMAÇÃO/ DESENVOLVIMENTO DE SISTEMAS/2021) Referente a bancos de dados relacionais e NoSQL, julgue o seguinte item. Banco de dados de grafos são suportados por linguagens de consulta, como a Gremlin, linguagem específica de domínio para percorrer grafos. Essa linguagem pode percorrer todos os bancos de dados de grafos que implementem grafos de propriedades no padrão Blueprints. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 40 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão Sadalage e Fowler (2019) destacaram que os bancos de dados de grafos são suportados por linguagens de consulta como Gremlin – uma ferramenta de “travessia”, que utiliza em seu motor de pesquisas algoritmos de busca em profundidade e em largura, e trabalha tanto em bancos de dados baseados em OLTP quanto para processadores baseados em OLAP. Blueprints oferece um conjunto de interfaces que permitem que os desenvolvedores conectem a sua implementação back-end ao banco de dados de grafo. Além disso, o software escrito no Blueprints trabalha com todos os bancos de dados de grafos habilitados para a interface. Certo. 009. (CCV-UFC/UFC/TÉCNICO DE TECNOLOGIA DA INFORMAÇÃO/DESENVOLVIMENTO DE SISTEMAS/2019) Sobre os bancos de dados NoSQL, assinale a afirmativa correta. a) Bancos de dados NoSQL não podem ser indexados. b) Bancos de dados NoSQL são considerados banco de dados relacionais. c) Nos bancos de dados NoSQL devem ser definidos um esquema de dados fixo antes de qualquer operação. d) São exemplos de bancos de dados NoSQL: MongoDB, Firebird, DynamoDB, SQLite, Microsoft Access e Azure Table Storage. e) Os bancos de dados NoSQL usam diversos modelos para acessar e gerenciar dados, como documento, gráfico, chave-valor, em memória e, pesquisa. Vamos aos itens: a) Errada. Os bancos de dados NoSQL podemser indexados. b) Errada. Banco de dados NoSQL é um termo genérico que representa os bancos de dados não relacionais. c) Errada. Nos bancos de dados NoSQL há ausência de esquema ou um esquema flexível. d) Errada. São exemplos de bancos de dados NoSQL: MongoDB, DynamoDB e Azure Table Storage. Firebird, SQLite e Microsoft Access não são bancos de dados NoSQL. e) Certa. Os bancos de dados NoSQL usam diversos modelos para acessar e gerenciar dados, como documento, gráfico, chave-valor, em memória e pesquisa. Existem quatro grandes categorias mais utilizadas: O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 41 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão Figura. Tipos de Banco de Dados NoSQL (ARMBRUST, 2021). Letra e. 010. (CESPE/SLU-DF/ANALISTA DE GESTÃO DE RESÍDUOS SÓLIDOS – INFORMÁTICA/2019) No que se refere a banco de dados relacional (SQL) e não relacional (NoSQL) e ao framework JPA, julgue o item subsecutivo. Para uma empresa que necessite implantar uma base de dados altamente escalável, com grande desempenho e cujo esquema de dados seja flexível, de modo que suporte constantes mudanças de campos e valores armazenados, a melhor opção é uma base de dados NoSQL. Figura. Escalabilidade (QUINTÃO, 2022) Certo. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 42 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão 011. (CPPS/UNESPAR/TÉCNICO EM INFORMÁTICA/2018) O termo NoSQL é utilizado para descrever bancos de dados não relacionais de alto desempenho e que usam diversos modelos de dados, incluindo documentos, gráficos, chave-valor e colunas. Selecione entre os SGBD´s relacionados abaixo aquele que possui tais características: a) MariaDB b) SQLite c) MongoDB d) MySQL e) PostgreSQL Dentre as opções, somente o MongoDB é considerado NoSQL, pertencente ao modelo orientado a documentos, em que o banco de dados conhece o valor (documento) no qual a chave faz referência. O banco de dados NoSQL entende o valor armazenado, permitindo realizar interações sobre ele (ARMBRUST, 2021). Os demais bancos de dados apresentados são relacionais. Letra c. 012. (CESPE/TCE-PB/AUDITOR DE CONTAS PÚBLICAS – DEMAIS ÁREAS/2018) Com referência a big data, assinale a opção correta. a) A definição mais ampla de big data restringe o termo a duas partes — o volume absoluto e a velocidade —, o que facilita a extração das informações e dos insights de negócios. b) O sistema de arquivos distribuído Hadoop implementa o algoritmo Dijkstra modificado para busca irrestrita de dados em árvores aglomeradas em clusters com criptografia. c) Em big data, o sistema de arquivos HDFS é usado para armazenar arquivos muito grandes de forma distribuída, tendo como princípio o write-many, read-once. d) Para armazenar e recuperar grande volume de dados, o big data utiliza bancos SQL nativos, que são bancos de dados que podem estar configurados em quatro tipos diferentes de armazenamentos: valor chave, colunar, gráfico ou documento. e) O MapReduce é considerado um modelo de programação que permite o processamento de dados massivos em um algoritmo paralelo e distribuído. Veja mais: https://www.devmedia.com.br/hadoop-mapreduce-introducao-a-big-data/30034 a) Errada. Big Data não se refere apenas aos dados, mas também às soluções tecnológicas criadas para lidar com esses dados em quantidade, variedade e velocidade bastante significativos. Para analisar a viabilidade de implementação do Big Data em uma organização, citava-se inicialmente as três dimensões (conhecidas como 3V´s), que são: Volume, Variedade e Velocidade. A literatura destacou em seguida o 4 V (incluindo a Veracidade); depois o 5V (incluindo Veracidade e Valor); atualmente, a IBM cita 7 dimensões (Volume, Variedade, Velocidade, Veracidade, Valor, Governança, Pessoas) a serem consideradas ao avaliar a viabilidade de uma solução de Big Data. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br https://www.devmedia.com.br/hadoop-mapreduce-introducao-a-big-data/30034 43 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão b) Errada. Hadoop é um sistema de armazenamento compartilhado, distribuído e altamente confiável para processamento de grandes volumes de dados através de clusters de computadores. Em outras palavras, Hadoop é um framework que facilita o funcionamento de diversos computadores, com o objetivo de analisar grandes volumes de dados. Não se pode afirmar que a busca ocorrerá de maneira irrestrita, principalmente se os dados estiverem criptografados (protegidos). A proteção pode restringir o acesso ao conteúdo dos dados. O projeto Apache hadoop é composto de 3 módulos principais: • Hadoop Distributed File System (HDFS) • Hadoop Yarn • Hadoop MapReduce c) Errada. O HDFS é um sistema de arquivos criado para armazenar arquivos muito grandes de forma distribuída. • O conceito sobre o qual o HDFS foi construído é o chamado write-once, read-many-times, ou seja, escreva uma vez, leia muitas vezes. • Esse tipo de construção é essencial para o Hadoop, uma vez que os dados serão processados inúmeras vezes, dependendo da aplicação, embora, normalmente, sejam escritos apenas uma vez. d) Errada. O conceito de NoSQL é geralmente associado ao Big Data. “Bancos de dados NoSQL usam diversos modelos de dados, incluindo documentos, gráficos e chave-valor e colunares. Big Data pode utilizar bases de dados não relativas a modelos relacionais. <Fonte: https://www.devmedia.com.br/introducao-aos-bancos-de-dados-nosql/26044> e) Certa. MapReduce é um modelo de programação e framework introduzido pelo Google para suportar computações paralelas em grandes coleções de dados em clusters de computadores. Agora MapReduce é considerado um novo modelo computacional distribuído, inspirado pelas funções map e reduce usadas comumente em programação funcional. Letra e. 013. (FCC/SEFAZ-SC/AUDITOR-FISCAL DA RECEITA ESTADUAL – TECNOLOGIA DA INFORMAÇÃO (PROVA 3)/2018) Como não existe um modelo de armazenamento de dados único adequado para atender a todos os cenários e necessidades das aplicações de Big Data, em complemento ao modelo relacional, foram criados quatro novos tipos de armazenamento NoSQL (Not only SQL). Dentre esses, aqueles que modelam os dados usando o formato de linhas e colunas são APENAS os tipos de bancos de dados orientados a colunas, a) chave-valor e grafos. b) chave-valor e documentos. c) documentos e grafos. d) chave-valor. e) grafos. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br https://www.devmedia.com.br/introducao-aos-bancos-de-dados-nosql/26044 44 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão A seguir, destacamos os principais modelos de gerenciamento de dados NoSQL. Existem quatro grandes categorias mais utilizadas: Figura. Tipos deBanco de Dados NoSQL (ARMBRUST, 2021). Dentre esses, aqueles que modelam os dados usando o formato de linhas e colunas são APENAS os tipos de bancos de dados orientados a colunas, chave-valor e documentos. O único que difere é o modelo orientado a grafos, que possui três componentes básicos: • os nós (são os vértices do grafo), • os relacionamentos (são as arestas) e • as propriedades (ou atributos) dos nós e relacionamentos. Letra b. 014. (CESPE/POLÍCIA FEDERAL/PERITO CRIMINAL FEDERAL – ÁREA 3/2018) Acerca de banco de dados, julgue o item seguinte. NoSQL são bancos de dados que não aceitam expressões SQL e devem ser armazenados na nuvem. NoSQL significa “not only SQL (não só SQL), e, então, sua estrutura permitem o uso de linguagens do tipo do SQL para recuperação de dados. Também podem ser armazenados em ambiente de computação em nuvem. Errado. 015. (FGV/IBGE/ANALISTA CENSITÁRIO/ANÁLISE DE SISTEMAS/DESENVOLVIMENTO DE APLICAÇÕES – WEB MOBILE/2017) Bancos de Dados NoSQL podem armazenar dados em diversos formatos não relacionais, como documentos compostos por pares de campo-e- valor (field-and-value), conforme a estrutura exemplificada a seguir. O Banco de Dados NoSQL utilizado para armazenar documentos compostos por pares campo-e-valor, no formato BSON (JSON-like), é o: O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 45 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão a) OpenLink Virtuoso; b) Neo4j; c) Apache HBase; d) MongoDB; e) Titan. Pela figura seguinte já vimos que o MongoDB é orientado a documentos (resposta da questão!). São orientados a grafos: Neo4j; Titan. Apache HBase é orientado a colunas. OpenLink Virtuoso é um servidor universal, um híbrido de Servidor de Aplicações Web e Sistema de Gerenciamento de Banco de Dados Objeto-Relacional (ORDBMS). Letra d. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 46 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão 016. (FGV/IBGE/ANALISTA CENSITÁRIO/ANÁLISE DE SISTEMAS – DESENVOLVIMENTO DE APLICAÇÕES – WEB MOBILE/2017) Observe a figura a seguir que ilustra relações entre colegas e seus interesses. O tipo de Banco de Dados NoSQL, não relacional, que armazena tais informações, utilizando estruturas de vértices e arestas, com propriedades associadas, é o: a) Colunar; b) Documento; c) Grafo; d) Chave-valor; e) Tabular. O tipo de Banco de Dados NoSQL, não relacional, que armazena tais informações, utilizando estruturas de vértices e arestas, com propriedades associadas é o GRAFO. Obs.: � É formado basicamente por nós (chamados de vértices dos grafos), relacionamentos (ou arestas) e propriedades (que representam os atributos). Dentre suas principais características, é possível citar sua ótima performance possibilitando um bom desempenho nas aplicações. Letra c. 017. (CESPE/TCE-PA/AUDITOR DE CONTROLE EXTERNO – ÁREA INFORMÁTICA – ANALISTA DE SEGURANÇA/2016) Acerca de segurança de banco de dados e de desenvolvimento de software, julgue o item subsecutivo. Os bancos de dados NoSQL são imunes a ataques de injeção SQL. Conforme destaca Microsoft, o ataque de injeção SQL é caracterizado por: um ataque no qual um código mal-intencionado é inserido em cadeias de caracteres que são passadas posteriormente para uma instância do SQL Server para análise e execução. Qualquer procedimento que construa instruções SQL deve ser verificado quanto a vulnerabilidades de injeção porque o SQL Server executará todas as consultas sintaticamente válidas que receber. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 47 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão Como expressões SQL podem ser aceitas nesse tipo de banco de dados NoSQL, esses bancos de dados não são imunes a ataques de injeção SQL. Referência: https://learn.microsoft.com/pt-br/previous-versions/sql/sql-server-2008-r2/ ms161953(v=sql.105)?redirectedfrom=MSDN. Errado. 018. (FGV/IBGE/ANALISTA/ANÁLISE DE SISTEMAS/DESENVOLVIMENTO DE APLICAÇÕES – WEB MOBILE/2016) Considere as seguintes características de um projeto de banco de dados. I. O modelo de dados é conhecido a priori e é estável; II – A integridade dos dados deve ser rigorosamente mantida; III – Velocidade e escalabilidade são preponderantes. Dessas características, o emprego de bancos de dados NoSQL é favorecido somente por: a) I; b) I e II; c) II; d) II e III; e) III. I – Errada. Uma característica notável em bancos de dados não relacionais (NoSQL) é a ausência parcial ou total de esquema que define a estrutura de dados. II – Errada. Nem sempre a integridade de dados será mantida. III – Certa. Os bancos de dados não relacionais (NoSQL) não utilizam o esquema tradicional de tabela de linhas e colunas; em vez disso, eles usam um modelo de armazenamento otimizado para desempenho escalável e modelos de dados sem esquema. Letra e. 019. (CESPE/FUNPRESP-JUD/ANALISTA – TECNOLOGIA DA INFORMAÇÃO/2016) A respeito de banco de dados, julgue o próximo item. Os bancos de dados NoSQL não permitem a atualização de seus dados, por serem orientados a documentos e(ou) coleções. Os bancos de dados NoSQL possibilitam a atualização de seus dados. Errado. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br https://learn.microsoft.com/pt-br/previous-versions/sql/sql-server-2008-r2/ms161953(v=sql.105)?redirectedfrom=MSDN https://learn.microsoft.com/pt-br/previous-versions/sql/sql-server-2008-r2/ms161953(v=sql.105)?redirectedfrom=MSDN 48 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão 020. (CESPE/TJ-SE/ANALISTA JUDICIÁRIO – BANCO DE DADOS/2014) Acerca de bancos de dados semiestruturados e bancos de dados NOSQL, julgue os itens subsecutivos. Bancos de dados NOSQL orientados a documentos são apropriados para o armazenamento de dados semiestruturados. Dados semiestruturados são aqueles que já foram parcialmente processados. Como o nome pode indicar, são dados que contêm parte de sua estrutura rígida e outra parte não rígida. Possuem uma representação estrutural heterogênea, não sendo nem completamente não estruturados e nem estritamente tipados. Por exemplo, olhando-se uma página comum da web, os dados são apresentados em um formato pré-organizado para transmitir alguma informação. Tecnologias NoSQL foram desenvolvidas para suportar aplicações que manipulam grandes volumes de dados variados, complexos e/ou semiestruturados. Certo. 021. (CESPE/FUNPRESP-EXE/ESPECIALISTA – TECNOLOGIA DA INFORMAÇÃO/2016) Com relação à forma como os dados são armazenados e manipulados no desenvolvimento de aplicações, julgue o item a seguir. Em um banco de dados NoSQL do tipo grafo, cada arco é definido por um identificador único e expresso como um par chave/valor. O modelo orientado a grafos é formado basicamente por nós (chamados devértices dos grafos), relacionamentos (ou arestas) e propriedades (que representam os atributos). Não utiliza, portanto, pares de chave/valor. Errado. 022. (CESPE/TJ-DFT/ANALISTA JUDICIÁRIO – SUPORTE EM TECNOLOGIA DA INFORMAÇÃO/2015) A respeito de tipos de bancos de dados, julgue o item que se segue. Sistemas de bancos de dados classificados como NoSQL permitem a inserção de dados sem que haja um esquema predefinido. Entre as principais características dos bancos de dados NoSQL merecem destaque a que se refere à ausência de esquema (Schema-free) ou esquema flexível. É justamente essa ausência de esquema que facilita uma alta escalabilidade e alta disponibilidade, mas em contrapartida não há a garantia de integridade dos dados, fato este que não ocorre no Modelo Relacional (DEVMEDIA, 2020). Certo. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 49 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão 023. (FGV/TJ-BA/TÉCNICO JUDICIÁRIO/TECNOLOGIA DA INFORMAÇÃO/2015) Analise as afirmativas a respeito da classe de gerenciadores de bancos de dados, surgida em anos recentes, conhecida como NoSQL. I – Mesmo sem suportar tabelas relacionais, baseiam-se em esquemas de dados previamente definidos; II – Suas estruturas não permitem o uso de linguagens do tipo do SQL para recuperação de dados; III – Garantem operações com as propriedades conhecidas pela sigla ACID; IV – Privilegiam a rapidez de acesso e a disponibilidade dos dados em detrimento das regras de consistência das transações. O número de afirmativas corretas é: a) uma; b) duas; c) três; d) quatro; e) cinco. F I – Mesmo sem suportar tabelas relacionais, baseiam-se em esquemas de dados previamente definidos. Entre as principais características dos bancos de dados NoSQL merecem destaque a que se refere à ausência de esquema (Schema-free) ou esquema flexível. F II – Suas estruturas não permitem o uso de linguagens do tipo do SQL para recuperação de dados. Suas estruturas permitem o uso de linguagens do tipo do SQL para recuperação de dados. F III – Garantem operações com as propriedades conhecidas pela sigla ACID. Não garantem operações com as propriedades conhecidas pela sigla ACID. V IV – Privilegiam a rapidez de acesso e a disponibilidade dos dados em detrimento das regras de consistência das transações. O número de afirmativas corretas é: uma. Letra a. 024. (CESPE/TJ-SE/ANALISTA JUDICIÁRIO – BANCO DE DADOS/2014) Acerca de bancos de dados semiestruturados e bancos de dados NOSQL, julgue os itens subsecutivos. Devido à escalabilidade esperada para os bancos de dados NOSQL, a implementação desses bancos utiliza modelos de armazenamento de dados totalmente distintos dos utilizados em sistemas relacionais. Quanto ao modelo dos bancos de dados NoSQL, existem quatro principais categorias: • Chave-valor (key-value); • Banco de Dados Orientado a Documento; O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 50 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão • Orientado a Coluna (column family); e • Orientado a Grafos. O modelo NoSQL de colunas se assemelha à estrutura relacional, o que tornou a assertiva errada. Errado. 025. (CESPE/CNJ/ANALISTA JUDICIÁRIO/ANÁLISE DE SISTEMAS/2013) No que se refere ao desenvolvimento web de alto desempenho, julgue os itens subsequentes. Uma característica de bancos de dados NoSQL é o suporte à replicação de dados. Entre as abordagens utilizadas para replicação, inclui-se a mestre-escravo. Os Bancos de Dados NoSQL oferecem suporte nativo à replicação: esta é outra forma de prover a escalabilidade, pois, no momento em que permitimos a replicação de forma nativa o tempo gasto para recuperar informações é reduzido. Para que se tenha a replicação, existem duas abordagens principais: Figura. Suporte à Replicação (Abordagens Master-Slave e Multi-Master) Conforme visto, entre as abordagens utilizadas para replicação, inclui-se a mestre-escravo. Certo. 026. (CEBRASPE (CESPE)/ATIVIDADES DE REGULAÇÃO (ANP)/NOVAS ATRIBUIÇÕES IV/2022) No que se refere aos conceitos de bancos NoSQL e armazenamento orientado a objeto (object store), julgue o item a seguir. O armazenamento orientado a objeto se caracteriza por guardar as informações em estrutura de dados na memória de código aberto usando cache e agentes de mensagens com o mecanismo de streaming. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 51 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão O armazenamento em cache, que pode ser implementado através de diversas aplicações de código aberto (Como por exemplo: o Memcached e o Redis), possui estrutura de dados flexível e baixa latência de acesso aos dados. Permite, portanto, guardar as informações em estrutura de dados na memória de código aberto usando cache e agentes de mensagens com o mecanismo de streaming. Obs.: � O armazenamento orientado a objeto se caracteriza por possibilitar a criação de tipos de dados complexos e o uso de herança. Errado. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br 52 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão referÊNciaS ALECRIM, E. O que é big data? 2013. Disponível em: <http://www.infowester.com/big-data.php>. Acesso em: 05 jul. 2020. ARMBRUST, D. Introdução ao Oracle NoSQL Database Cloud. 2021. Disponível em: <https://blogs. oracle.com/lad-cloud-experts-pt/post/introducao-ao-oracle-nosql-database-cloud-parte-1>. >. Acesso em: 10 out. 2022. BIG DATA BUSINESS. Big Data Analytics: você sabe o que é? Disponível em: <http://www.big- databusiness.com.br/voce-sabe-o-que-e-big-data-analytics/> Acesso em: 10 mar. 2019. ________________. Tipos de análise de Big Data: você conhece todos os 4? Disponível em: <http:// www.bigdatabusiness.com.br/conheca-os-4-tipos-de-analises-de-big-data-analytics/>. Acesso em: 10 mar. 2019. CATTELL, R. Scalable SQL and NoSQL data stores, ACM SIGMOD Record, v.39 n.4, 2010. DEVMEDIA. Banco de dados NoSQL: Um novo paradigma. Revista SQL Magazine 102. Disponível em: <https://www.devmedia.com.br/banco-de-dados-nosql-um-novo-paradigma-revista-sql-ma- gazine-102/25918>. Acesso em: 10 out. 2022. ELIAS, D. As Melhores Ferramentas do Mercado para Business Intelligence. 2014. Disponível em: <http://corporate.canaltech.com.br/noticia/business-intelligence/As-melhores-ferramen- tas-do-mercado-para-Business-Intelligence/>. Acesso em: 20 set. 2020. FERNANDES, A. A.; DE ABREU, V. F. Implantando a Governança de TI: Da estratégia à Gestão de Processos e Serviços. Brasport, 2014. GARTNER. Gartner IT Glossary. Disponível em: <https://www.gartner.com/en/information-tech- nology/glossary/big-data> Acesso em: 15 nov. 2012. GEORGE G., HAAS, M. & PENTLAND A., Big Data and Management. Academy of Management Journal, 2014, Vol. 57, No.2, 321–326. Disponível em: http://dx.doi.org/10.5465/amj.2014.4002 Acesso em: 25 abr. 2014. GITHUB. Greemlin. 2016. Disponível em: <https://github.com/tinkerpop/gremlin/wiki>. Acesso em: 10 out. 2022. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br https://www.devmedia.com.br/banco-de-dados-nosql-um-novo-paradigma-revista-sql-magazine-102/25918 https://www.devmedia.com.br/banco-de-dados-nosql-um-novo-paradigma-revista-sql-magazine-102/25918 https://github.com/tinkerpop/gremlin/wiki 53 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão ______. Blueprints. 2016. Disponível em: <https://github.com/tinkerpop/blueprints/wiki>. Acesso em: 10 out. 2022. GOLDMAN, A. et al. Apache Hadoop: conceitos teóricos e práticos, evolução e novas possibi- lidades. XXXI Jornadas de atualizaçoes em informatica, p. 88-136, 2012. HANSON, J. Uma Introdução ao Hadoop Distributed File System. Disponível em: <https://www. ibm.com/developerworks/br/library/wa-introhdfs/index.html> Acesso em: 19 mar. 2018. HOSTINGDATA. List of NoSql Database Management Systems. 2020. em: <https://hostingdata. co.uk/nosql-database/>. Acesso em: 10 out. 2022. IBM. Como saber se uma solução de big data é ideal para sua organização. Disponível em: < https://www.ibm.com/developerworks/br/library/bd-archpatterns2/index.html> Acesso em: 25 dez. 2017. ____. Teorema CAP. 2019. Disponível em: < https://www.ibm.com/br-pt/cloud/learn/cap-theo- rem>. Acesso em: 10 out. 2022. LÓSCIO, B. F.; OLIVEIRA, HR de; PONTES, JC de S. NoSQL no desenvolvimento de aplicações Web colaborativas. VIII Simpósio Brasileiro de Sistemas Colaborativos, v. 10, n. 1, p. 11, 2011. MAÇADA, A. C. G.; Vivian Passos Canary. A Tomada de decisão no contexto do Big Data: Estudo de caso único. 2014. Disponível em: <http://www.anpad.org.br/admin/pdf/2014_EnANPAD_ ADI1088.pdf>. MACHADO, F. N. R. Big Data. São Paulo: Saraiva, 2018. E-book. McAFEE, A.; BRYNJOLFSSON, E. Big Data: The Management Revolution. Harvard Business Review, October, 2012. p. 1-9. MACHADO, Henrique. Hadoop MapReduce: Introdução a Big Data. Disponível em: <https://www. devmedia.com.br/hadoop-mapreduce-introducao-a-big-data/30034>. Acesso em: 25 abr. 2018. MAFRA, S. Big data: tendências e oportunidades. 2013. Disponível em: <http://pt.slideshare. net/RioInfo2009/big-data-tendncias-e-oportunidades-palestrante-srgio-mafra>. Acesso em: 05 jul. 2020. MYSORE, D., KHUPAT, S., JAIN, S. Entendendo as camadas de arquitetura de uma solução de big data. 2014. Disponível em: <http://www.ibm.com/developerworks/br/library/bd-archpatter- ns3/>.Acesso em: 10 jul. 2020. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br https://github.com/tinkerpop/blueprints/wiki http://www.anpad.org.br/admin/pdf/2014_EnANPAD_ADI1088.pdf http://www.anpad.org.br/admin/pdf/2014_EnANPAD_ADI1088.pdf http://pt.slideshare.net/RioInfo2009/big-data-tendncias-e-oportunidades-palestrante-srgio-mafra http://pt.slideshare.net/RioInfo2009/big-data-tendncias-e-oportunidades-palestrante-srgio-mafra 54 de 55www.grancursosonline.com.br Banco de Dados NoSQL TecNoLogia Da iNformação Patrícia Quintão _________. Entendendo padrões atômicos e compostos de soluções de big data. 2014. Disponível em: <http://www.ibm.com/developerworks/br/library/bd-archpatterns4/>.Acesso em: 10 jul. 2020. PENTEADO, R. RM et al. Um Estudo Sobre Bancos de Dados em Grafos Nativos. X ERBD-Escola Regional de Banco de Dados, 2014. PEREIRA, T. Quando utilizar RDBMS ou NoSQL? 2016. Disponível em: <https://blog.dsacademy. com.br/quando-utilizar-rdbms-ou-nosql/>. Acesso em: jan. 2023. QUINTÃO, P. L. Tecnologia da Informação para Concursos. 2023. RAVENDB. NoSQL Document Database. Disponível em: <https://ravendb.net/>. Acesso em: out. 2022. SADALAGE, P. J.; FOWLER, M. NoSQL Essencial: Um Guia Conciso para o Mundo Emergente da Persistência Poliglota. Novatec Editora, 2019. SIEWERT, Sam B. Big data in the cloud: data velocity, volume, variety veracity. IBM developer- sWorks. July 2013. THIENGO, V. NoSQL Essencial – Um Guia Conciso para o Mundo Emergente da Persistência Poliglota. Disponível em: < https://www.thiengo.com.br/nosql-essencial-um-guia-conciso-para- -o-mundo-emergente-da-persistencia-poliglota>. Acesso em: 10 out. 2022. TURBAM, E. et al. Business Intelligence: um Enfoque Gerencial para a Inteligência do Negócio. Bookman, 2009. WEBER, K.et. al.. 2009. One size does not fit all—a contingency approach to data governance. Journal of Data and Information Quality, Volume 1, Issue 1, Article 4, June 2009, 27 p. WIKERSON, L. De que maneira o Big Data melhora nossa vida diária? 2015. Disponível em: <http://www.tecmundo.com.br/tecnologia-da-informacao/80027-maneira-big-data-melhora- -nossa-vida-diaria-infografico.htm>. Acesso em: 04 jul. 2020. O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.grancursosonline.com.br https://www.grancursosonline.com.br https://ravendb.net/ http://www.tecmundo.com.br/tecnologia-da-informacao/80027-maneira-big-data-melhora-nossa-vida-diaria-infografico.htm http://www.tecmundo.com.br/tecnologia-da-informacao/80027-maneira-big-data-melhora-nossa-vida-diaria-infografico.htm Patrícia Quintão Mestre em Engenharia de Sistemas e computação pela COPPE/UFRJ, Especialista em Gerência de Informática e Bacharel em Informática pela UFV. Atualmente é professora no Gran Cursos Online; Analista Legislativo (Área de Governança de TI), na Assembleia Legislativa de MG; Escritora e Personal & Professional Coach. Atua como professora de Cursinhos e Faculdades, na área de Tecnologia da Informação, desde 2008. É membro: da Sociedade Brasileira de Coaching, do PMI, da ISACA, da Comissão de Estudo de Técnicas de Segurança (CE-21:027.00) da ABNT, responsável pela elaboração das normas brasileiras sobre gestão da Segurança da Informação. Autora dos livros: Informática FCC - Questões comentadas e organizadas por assunto, 3ª. edição e 1001 questões comentadas de informática (Cespe/UnB), 2ª. edição, pela Editora Gen/Método. Foi aprovada nos seguintes concursos: Analista Legislativo, na especialidade de Administração de Rede, na Assembleia Legislativa do Estado de MG; Professora titular do Departamento de Ciência da Computação do Instituto Federal de Educação, Ciência e Tecnologia; Professora substituta do DCC da UFJF; Analista de TI/Suporte, PRODABEL; Analista do Ministério Público MG; Analista de Sistemas, DATAPREV, Segurança da Informação; Analista de Sistemas, INFRAERO; Analista - TIC, PRODEMGE; Analista de Sistemas, Prefeitura de Juiz de Fora; Analista de Sistemas, SERPRO; Analista Judiciário (Informática), TRF 2ª Região RJ/ES, etc. @coachpatriciaquintao /profapatriciaquintao @plquintao t.me/coachpatriciaquintao O conteúdo deste livro eletrônico é licenciado para GABRIEL COTURE SILVA - 08353788969, vedada, por quaisquer meios e a qualquer título, a sua reprodução, cópia, divulgação ou distribuição, sujeitando-se aos infratores à responsabilização civil e criminal. https://www.instagram.com/coachpatriciaquintao/?hl=pt-br https://www.youtube.com/channel/UC-3-wE0RVk_F3ejyYhTSQfw https://twitter.com/plquintao https://t.me/coachpatriciaq Apresentação Banco de Dados NoSQL Propriedade BASE (Basically Available, Soft state,Eventually Consistency) Teorema CAP (ou Teorema de Brewer) Principais Características dos Bancos de Dados NoSQL Técnicas para Implementação de Funcionalidades do NoSQL Principais Modelos de Banco de Dados NoSQL Modelo NoSQL Chave-Valor (Key-Value) Modelo NoSQL Orientado a Documentos Modelo Orientado a Colunas (ou Colunar) Modelo NoSQL Orientado a Grafos Resumo Questões Comentadas na Aula Questões de Concurso Gabarito Gabarito Comentado Referências AVALIAR 5: Página 55: