Patent BR-112013031948-A2 (BR)
Title: enriquecimento de respostas de consulta de banco de dados com o uso de dados de fontes de dados externos
Inventor: BICE ANTHONY NINO
IPC: G06F15/16
Filed: 2012-06-05
Abstract: relatório descritivo da patente de invenção para "enriquecimento de respostas de consulta de banco de dados com o uso de dados de fontes de dados externos". antecedentes a operação de aplicativo de software depende do uso de recurso de computação eficaz. portanto, o suporte de armazenamento de dados e o processamento de mecanismos são necessários para facilitar uma experiência de usuário positiva. tais aplicativos de software incluem aplicativos de banco de dados que acessam um banco de dados interno da empresa que compreende registros de dados estruturados (por exemplo, dados de tabela). os aplicativos de banco de dados são construídos em uma plataforma de desenvolvimento para um sistema de gerenciamento de banco de dados. quando um usuário comunica uma consulta de banco de dados, um aplicativo de banco de dados acessa o banco de dados interno e (normalmente) fornece uma resposta que compreende dados de tabela que correspondem à consulta de banco de dados. adicionalmente aos dados internos, os usuários algumas vezes desejam acessar dados de uma fonte ou fontes de dados externos, tal como para visualizar tais dados juntamente com os dados de banco de dados interno recuperados. a fim de fazê-lo, um aplicativo (provedor de fonte de dados) precisa ser desenvolvido que entenda como comunicar-se com cada fonte externa, por exemplo, seu modelo de autenticação, protocolos de comunicação (cadeias de conexão) e/ou quaisquer outras informações, tais como requisitos de faturamento. o desenvolvimento de tal aplicativo está além da capacidade e/ou consome muito tempo para um autor de consulta típico que em geral apenas quer analisar os dados. sumário este sumário é fornecido para introduzir uma seleção de conceitos representativos de forma simplificada que são descritos adicionalmente abaixo na descrição detalhada. este sumário não pretende identificar os recursos principais ou recursos essenciais da matéria reivindicada, nem pretende ser usado de qualquer forma que possa limitar o escopo da matéria reivindicada. em suma, vários aspectos da matéria descrita no presente documento são direcionados a manter um mecanismo de tradução que permite que os dados recuperados de consultas de banco de dados interno sejam enriquecidos com dados de fontes de dados externos, com o uso de comandos de consulta diretos. em um aspecto, o mecanismo de tradução facilita a recuperação de dados externos devido ao fato de que provedores separados não precisam ser fontes de dados externos diferentes. não há necessidade por um autor de consulta ou desenvolvedor de aplicativo para lidar com como as consultas de banco de dados são autenticadas, como os dados de tabela são importados das fontes de dados externos ou como um usuário é cobrado para acesso, por exemplo. em outro aspecto, um servidor de enriquecimento usa o mecanismo de tradução para combinar um banco de dados interno com dados de tabela de um ou mais bancos de dados externos. devido ao fato de o banco de dados interno pode incluir dados não públicos (isto é, privados), o servidor de enriquecimento possibilita um aumento contínuo dos dados não públicos com várias informações públicas. em um aspecto, o servidor de enriquecimento extrai parâmetros da consulta de banco de dados da qual uma entidade é identificada. a entidade inclui um agrupamento de tipos de dados como componentes cujos valores são solicitados por um usuário. os parâmetros também incluem valores que são suados como critérios de busca ou similares para selecionar dados das fontes de dados externos. com o uso desses parâmetros, o mecanismo de tradução inicia chamadas de função nativa apropriada de um protocolo para solicitar dados das fontes de dados externos. breve descrição dos desenhos a presente invenção é ilustrada a título de exemplo e não é limitada nas figuras anexas em que numerais de referência similares indicam elementos similares e em que: a figura 1 é um diagrama de bloco que ilustra um sistema exemplificativo para enriquecer as respostas de consulta de banco de dados com o uso de dados de fontes de dados externos. a figura 2 é um fluxograma que ilustra as etapas para enriquecer as respostas de consulta de banco de dados com o uso de dados de fontes de dados externos de acordo com uma implantação de exemplo. a figura 3 é um fluxograma que ilustra as etapas para usar um diretório para comunicar solicitações para várias informações a uma fonte de dados externos de acordo com uma implantação de exemplo. a figura 4 é um fluxograma que ilustra as etapas para converter os dados de fontes de dados externos em uma resposta de consulta de banco de dados enriquecida de acordo com uma implantação de exemplo. a figura 5 é um fluxograma que ilustra as etapas para construir um diretório para traduzir uma consulta de banco de dados em solicitações nativas para uma fonte de dados externos de acordo com uma implantação de exemplo. a figura 6 é um fluxograma que ilustra as etapas para mapear os componentes de entidade para as fontes de dados externos de acordo com uma implantação de exemplo. a figura 7 é um diagrama de bloco que representa ambientes conectados em rede não limitantes exemplificativos em que várias modalidades descritas no presente documento podem ser implantadas. a figura 8 é um diagrama de bloco que representa um sistema de computação ou ambiente de operação não limitante exemplificativo em que um ou mais aspectos de várias modalidades descritas no presente documento podem ser implantados. descrição detalhada vários aspectos da tecnologia descrita no presente documento são em geral direcionados ao enriquecimento de respostas de consulta de banco de dados com o uso de dados que são extraídos de fontes de dados externos. uma consulta de banco de dados inclui um ou mais parâmetros que especificam um ou mais critérios para selecionar dados das fontes de dados externos. um parâmetro exemplificativo inclui um identificador de entidade (por exemplo, um nome) de um grupo de tipos de dados. cada tipo de dados pode incluir um ou mais outros tipos de dados. outros parâmetros exemplificativos incluem um ou mais valores para um ou mais tipos de dados do grupo de tipos de dados. alguns outros parâmetros exemplificativos podem ser parâmetros contextuais que limitam os valores retornados pela fonte de dados externos em um tempo e/ou localização particular, por exemplo. devido ao fato de que as respostas enriquecidas à consulta de banco de dados incluem dados de tabela, o grupo de tipos de dados define uma ou mais colunas, enquanto o um ou mais valores definem uma ou mais fileiras. em uma implantação exemplificativa, os dados de coluna dentro de cada fileira dos dados de tabela correspondem ao um ou mais valores. em uma implantação exemplificativa, a consulta de banco de dados pretende enriquecer dados da companhia com várias informações exemplificadas como informações financeiras, tal como preços de ações, estatística de empregados, relatórios de lucros, valores de capitalização de mercado ("capitalizações de mercado"), preços de barra de notícias da bolsa recentes e/ou similares. uma ou mais fontes de dados externos, tais como mídia de notícias financeiras, mercados de ações, mecanismos de busca e/ou similares, fornecem as várias informações financeiras para o um ou mais nomes de companhia em resposta a chamadas de função nativa ou consultas ("solicitações") que solicitam tais dados. os tipos de dados que definem porções das várias informações financeiras constituem uma entidade. portanto, a consulta de banco de dados inclui um nome de entidade e um ou mais nomes de companhia como parâmetros. uma entidade exemplificativa inclui diversos componentes (isto é, tipos de dados), incluindo componentes que representam um número de empregados, uma capitalização de mercado e um preço de ação. muitos outros componentes podem estar incluídos na entidade, por exemplo, funcionários da companhia, vendas brutas, estado de incorporação, anos de existência e assim por diante. a fim de acessar dados de uma fonte externa, um mecanismo de tradução fornece um ou mais parâmetros exemplificativos, incluindo qualquer um dos componentes de entidade (por exemplo, identificados em uma consulta de usuário) e instrui um software de conectividade executado em uma fonte de dados externos apropriada para executar uma função nativa. consequentemente, o software de conectividade retorna valores do número de empregados, a capitalização de mercado e/ou o preço de ação, por exemplo, se esses foram especificados. a título de exemplo, considera-se uma empresa com uma tabela de "companhias" nomeada c, que contém fileiras de nomes de companhia com uma coluna de dados de código postal (entre provavelmente muitas outras colunas) para várias fileiras de companhias. considera-se que o banco de dados interno não inclui dados de barra de notícias da bolsa ou o número de empregados para cada companhia, mas que tais informações estão disponíveis a partir de fontes externas. para visualizar os dados formatados como nome, código postal, barra de notícias e número de empregados, até então um aplicativo personalizado (provedor) era necessário para mesclar os resultados de consulta interna com dados de fontes externas. com o enriquecimento de dados, um usuário precisa apenas especificar a entidade predefinida (por exemplo, "companhiafinanceira") que inclui os componentes apropriados, tal como barra de notícias, número de empregados, capitalização de mercado e assim por diante, e submeter uma consulta apropriada: selecionar nome, código postal, barra de notícias, número de empregado das companhias c enriquecer em companhiafinanceira (c.nome) a primeira linha especifica as colunas de dados para recuperação, das quais o nome e o código postal estão disponíveis a partir do banco de dados interno da empresa, enquanto a barra de notícias e número de empregados estão disponíveis a partir de uma fonte (ou fontes) externa a segunda linha indica a tabela para enriquecimento. a terceira linha