Bancos relacionais (SQL)

Uma saída alternativa para evitar a multiplicação de colunas é realizar uma multiplicação de tabelas. Poderíamos, por exemplo, gerar uma tabela para cada processo, na qual as linhas seriam os andamentos e as colunas seriam os "valores" desse andamento: data, nome, complemento, órgão julgador, etc. Com isso, em vez de termos uma tabela com 7.000 linhas, teríamos 7.000 tabelas, uma alternativa que nos levaria para fora das tabelas de Excel e para dentro de bancos de dados mais complexos, capazes de integrar todas essas informações, interligando essas várias tabelas.

Bancos formados por uma ou mais tabelas são chamados de relacionais, sendo que um dos princípios dessa forma de organização é a de que cada informação pode ser acessada por meio de 3 elementos: nome da tabela (que é chamado de relação), linha e coluna. A linguagem mais comum para realizar esse tipo de organização é o SQL (Structured Query Language), que é uma linguagem voltada a fazer buscas (querries) em bancos com informações estruturadas (ou seja, organizadas em categorias definidas).

Um banco desse tipo poderia ter uma tabela de processos, com uma série de colunas que representam as variáveis e com linhas que contém os valores de cada processo particular. E poderia vincular cada um desses processos a uma tabela com os seus andamentos. E poderia vincular cada ministro (nos campos de relator, por exemplo) a uma tabela com informações sobre eles (como datas de nomeação, data de aposentadoria, período de exercício da presidência, etc.). Essa multiplicação de tabelas relacionadas entre si é uma funcionalidade que ultrapassa os limites em que o Excel consegue funcionar de maneira adequada.

Bancos não-relacionais (NoSQL)

Também é possível ultrapassar os limites dos bancos relacionais para os bancos não-relacionais, que organizam dados de outras formas. O Bigtable, por exemplo, é um sistema do Google que não usa múltiplas tabelas bidimensionais, mas um modelo tridimensional, em que há linhas, colunas e um terceiro eixo de tempo (timestamp), o que possibilita organizar, por exemplo, múltiplas versões dos mapas sobre uma região, que o Google armazena em seus servidores.

Outra forma de organizar dados é não focar em sua distribuição em tabelas, mas tratá-los como nós (nodes) que são unidos por ligações (links), o que faz sentido quando o que se busca mapear não são vários atributos de cada unidade, mas as relações entre elas. Isso ocorre no modelo de grafos (graphs), que é um tipo de organização que tem ganhado espaço na medida em que se buscam compreender as redes de relações que são formadas entre certas unidades: pessoas, grupos, artigos científicos, acórdãos, etc.

Grafo com 6 nós

Nesse modelo, a informação acerca de cada nó é gravada dentro dele, assim como informações sobre as suas ligações a outros nós. Esse tipo de organização pode ser usada para mapear, por exemplo, todas as ADIs, não como linhas de uma tabela, mas como nós de uma rede de relações. Esse é um tipo de organização de dados que vai exigir muitos recursos computacionais para identificar um nó específico pelo seu nome (já que não se pode simplesmente buscar o conteúdo em uma tabela específica), mas que exigirá menos recursos para mapear as relações entre os nós.

Esses tipos de organização dos dados podem facilitar certos tipos de análise (como análise de redes), mas nosso foco será na conversão dos dados em tabelas, pois essa forma de organização de dados é a mais simples e tipicamente oferece suporte para os objetivos de análise das pesquisas de dados em direito.