Database
 sql >> Base de Dados >  >> RDS >> Database

Bases de dados relacionais vs não relacionais - Parte 3


Na primeira e segunda parte desta série de blogs, vimos algumas diferenças básicas entre a escalabilidade de bancos de dados relacionais e não relacionais. Neste post, mostrarei como usar esses bancos de dados corretamente e também falarei sobre algumas empresas conhecidas que usam esses bancos de dados.

Banco de dados relacional


Na primeira parte desta série de blogs, falei sobre as propriedades do ACID. Essas propriedades são importantes para manter uma integração transacional rígida. Existem alguns setores como bancos, varejo, etc., onde cada transação requer propriedades ACID. Nas transações bancárias, se uma conta for creditada, outra deverá ser debitada. A atualização parcial nunca é permitida, pois afetará a integridade dos dados — Oracle, SQL Server, MySQL e outros RDBMS são usados ​​neste cenário.

Banco de dados não relacional (BD NoSQL)


Na primeira parte desta série de blogs, também falei sobre as propriedades BASE. Isso é importante para manter os dados consistentes em todos os nós em um banco de dados. Qualquer informação que não exija integridade de dados estrita pode ser armazenada em um banco de dados NoSQL. Por exemplo, o conteúdo de um sistema de mecanismo de pesquisa pode ser armazenado em um banco de dados não relacional, pois é fácil recuperar informações rapidamente. Um bom exemplo de sistema de busca é o Google. O Google geralmente armazena suas páginas da Web em cache em uma camada da Web que é atualizada periodicamente. Esses bancos de dados podem armazenar terabytes de dados históricos (digamos, transações de cartão de crédito de um banco, nos últimos 5 anos) em um ambiente distribuído. É fácil analisar e minerar dados em um banco de dados NoSQL usando o software de armazenamento de dados SQL-Like HIVE. Os bancos de dados NoSQL podem ser usados ​​para armazenar grandes volumes de dados não estruturados e também são adequados para análise de texto.

Listei algumas das principais organizações que usam esses bancos de dados:

Bancos de dados relacionais


SQL Server:LG Electronics, MySpace, Hilton Hotels.

ORACLE:British Telecom, MasterCard, Reliance Ltd.

MySQL:Facebook, Twitter, LinkedIn. O Facebook usa o MySQL para armazenar a interação do usuário, como atualizações de status, compartilhamentos, curtidas etc.

Bancos de dados não relacionais

CouchBase:LinkedIn, AdAction.

Cassandra:Facebook, Twitter, Digg.

MongoDB:LinkedIn, Pearson.

Neo4j:Cisco, eBay, etc.

Como você viu, empresas como Facebook, Twitter e LinkedIn usam bancos de dados relacionais e não relacionais, com base em seus requisitos.

Agora, deixe-me voltar à primeira parte desta série e responder às seguintes perguntas:

Os bancos de dados relacionais são capazes de lidar com big data?

Os bancos de dados relacionais são escaláveis?

Os bancos de dados relacionais são adequados para os requisitos de dados da era moderna? Como análise em tempo real, lidando com dados não estruturados?

A resposta para todas essas perguntas é um veemente “SIM”. Os bancos de dados relacionais não estão desaparecendo neste mundo social. Com base na natureza e complexidade do conjunto de dados, o banco de dados correto deve ser usado. Os bancos de dados relacionais e não relacionais têm suas próprias vantagens e desvantagens. A configuração correta do ambiente pode fazer uso de bancos de dados relacionais e não relacionais de maneira adequada, como o Facebook, Twitter e LinkedIn fizeram.