Estudo comparativo entre o NoSQL e as bases de dados relacionais - Almeida, Rodrigo Manuel de Jesus (2017)
Com o aparecimento do modelo relacional de E.F.Codd, em 1970, a forma de gerir a informação numa base de dados tornou-se inovadora. Migrou-se de sistemas hierárquicos que eram baseados em ficheiros para uma base de dados relacional com tabelas que contêm os registos da informação. Esta mudança facilitou em muito a gestão da informação, o que contribuiu para que as empresas escolhessem este modelo que, consequentemente, as ajudou a conseguir melhores resultados. No entanto, E.F.Codd não conseguiu prever que com a inexorável passagem do tempo fosse preciso armazenar grandes dimensões de informação, para além da imensa quantidade de pedidos feitos às bases de dados. Esta evolução deu-se devido à propagação da internet que veio conectar todas as pessoas, de toda a parte do mundo, que possuem um computador. Desta forma, quanto mais pessoas se conectam, mais informação circula, e essa mesma informação tem de ser guardada e gerida da forma mais eficiente possível. Chegou-se à conclusão que uma base de dados relacional não satisfaz as exigências mínimas no que diz respeito a conseguir gerir grandes quantidades de informação produzida e, assim, foi preciso encontrar uma solução. Essa solução foi o NoSQL, que mais não são do que bases de dados não relacionais e mais flexíveis. Nesta dissertação vai ser feita uma breve introdução à base de dados relacionais, incluindo uma análise da sua evolução, assim como também às suas limitações perante os problemas que existem atualmente. No entanto, o foco principal foi o NoSQL, onde se explorou todas as vertentes possíveis, desde as suas características, como por exemplo o facto de utilizarem um modelo de dados flexível e isso ser mais apetecível para quem não precisa de ter regras aquando do ato de guardar informação. Vão ser, igualmente, abordadas as várias arquiteturas de implementação desde tipo de base de dados, tal como demostrar os vários tipos de modelos de dados que podem existir. Por fim, vão ser realizados testes para verificar qual é a base de dados mais eficiente nas operações que vão ser testadas. Nestes testes, vai ser calculado o tempo de cada operação em cada base de dados de modo a fazer-se uma comparação para se tirar uma ilação.