BR112012007316B1 - Método e sistemas para determinar a conectividade de rede - Google Patents

Método e sistemas para determinar a conectividade de rede Download PDF

Info

Publication number
BR112012007316B1
BR112012007316B1 BR112012007316-8A BR112012007316A BR112012007316B1 BR 112012007316 B1 BR112012007316 B1 BR 112012007316B1 BR 112012007316 A BR112012007316 A BR 112012007316A BR 112012007316 B1 BR112012007316 B1 BR 112012007316B1
Authority
BR
Brazil
Prior art keywords
node
connectivity
path
network
user
Prior art date
Application number
BR112012007316-8A
Other languages
English (en)
Other versions
BR112012007316A2 (pt
Inventor
Leo M. Chan
Evan V. Chrapko
Original Assignee
Evan V. Chrapko
Leo M. Chan
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Evan V. Chrapko, Leo M. Chan filed Critical Evan V. Chrapko
Publication of BR112012007316A2 publication Critical patent/BR112012007316A2/pt
Publication of BR112012007316B1 publication Critical patent/BR112012007316B1/pt

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/75Indicating network or usage conditions on the user display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/065Generation of reports related to network devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/124Shortest path evaluation using a combination of metrics
    • H04L67/22
    • H04L67/36

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Health & Medical Sciences (AREA)
  • Tourism & Hospitality (AREA)
  • Computing Systems (AREA)
  • Primary Health Care (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Transfer Between Computers (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

sistemas e métodos para analíticas de dados gráficos sociais para determinar conectividade dentro de uma comunidade. a presente invenção refere-se a sistemas e métodos para analíticas de dados gráficos sociais para determinar a conectividade entre os nós dentro de uma comunidade. um usuário pode atribuir valores de conectividade usuário a outros membros da comunidade, ou valores de conectividade podem ser autolaticamente coletaos ou atribuídos a partir de terceiros ou baseados na frequência das interações entre membros da comunidade. os valores de conectividade podem representar fatores como alinhamento, reputação, estado, e/ou influência dentro de um gráfico social de uma comunidade de rede, ou o grau de confiança. os caminhões que conectam um primeiro nó a um segundo no podem ser recuperados, e as analíticas de dados de gráficos sociais podem ser realizadas nos caminhos recuperados. por exemplo, um valor de conectividade de rede pode ser determinado a partir de todos ou de um subconjunto de todos os caminhos recuperados. um quadro computacional paralelo pode operar em conexões com um armazém de valores chave para efetuar algumas ou toras as computações relacionados às determinações de conectividade. os valores de conectividade de rede e/ou outros dados de gráficos sociais podem ser emitidos para processos e serviços de terceiros para uso em transações automáticas iniciando ou tomando decisões no mundo real baseado na rede automáticas.

Description

ANTECEDENTES DA INVENÇÃO
[0001] Esta invenção refere-se geralmente a redes de indivíduos e/ou de entidades e comunidades de rede e, mais particularmente, a sistemas e métodos para determinar classificações de confiabilidade ou conectividade dentro ou entre indivíduos e/ou entidades ou redes de indivíduos e/ou de entidades.
[0002] A conectividade, ou relacionamento, de um indivíduo ou entidade dentro de uma comunidade de rede pode ser usado para inferir atributos desse indivíduo ou entidade. Por exemplo, uma conectividade de indivíduo ou entidade dentro de uma comunidade de rede pode ser usada para determinar a identidade do indivíduo ou entidade (por exemplo, usada para tomar decisões sobre reivindicações de identidade e autenticação), a confiança ou reputação do indivíduo ou entidade, ou um membro associado, estado e/ou influência desse indivíduo ou entidade em uma comunidade particular ou subconjunto de uma comunidade particular.
[0003] Uma conectividade de indivíduo ou de entidade dentro de uma comunidade de rede, no entanto, é difícil de quantificar. Por exemplo, as comunidades de rede podem incluir centenas, milhares, milhões, bilhões ou mais membros. Cada membro pode possuir vários graus de informação de conectividade sobre si mesmo e possivelmente sobre outros membros da comunidade. Alguma desta informação pode ser altamente crível ou objetiva, enquanto outra informação pode ser menos crível ou objetiva. Além disso, a informação de conectividade a partir dos membros da comunidade pode vir de várias formas e em várias escalas, tornando difícil comparar de forma significativa uma "confiabilidade" ou "competência"do membro e informação de conectividade com outra "confiabilidade" ou "competência"do membro e informação de conectividade. Também, muitos indivíduos podem pertencer a múltiplas comunidades, complicando ainda a determinação de uma representação quantificável de confiança e conectividade dentro de uma comunidade de rede. Mesmo se uma representação de quantificação de uma conectividade de indivíduo for determinada, é muitas vezes difícil usar esta representação em uma forma significativa para tomar decisões do mundo real sobre o indivíduo (por exemplo, se ou não confiar no indivíduo).
[0004] Além disso, pode ser útil para estas decisões do mundo real ser tomadas prospectivamente (isto é, antes de um evento antecipado). Tal análise prospectiva pode ser difícil à medida que uma conectividade de indivíduo ou entidade dentro de uma comunidade de rede pode trocar rapidamente como as conexões entre o indivíduo ou entidade, e outros, na comunidade de rede podem trocar quantitativamente ou qualitativamente. Esta análise torna-se crescentemente complexa como se aplicada através de múltiplas comunidades.
SUMÁRIO DA INVENÇÃO
[0005] Em vista do descrito acima, sistemas e métodos são providos para determinar a conectividade entre os nós dentro de uma comunidade de rede e inferir atributos, tal como confiabilidade ou competência, a partir da conectividade. A conectividade pode ser determinada, pelo menos em parte, usando várias técnicas de normalização e travessia de gráficos descritas em mais detalhe abaixo.
[0006] Em uma modalidade, uma abordagem de contagem de caminhos pode ser usada onde o circuito de processamento é configurado para contar o número de caminhos entre um primeiro nó n1 e um segundo nó n2 dentro de uma comunidade de rede. Uma classificação de conectividade Rn1n2 pode então ser atribuída aos nós. A classificação de conectividade atribuída pode ser proporcional ao número de subcaminhos, ou relacionamentos, conectando os dois nós, dentre outras medidas possíveis. Ao usar o número de subcaminhos como uma medida, um caminho com um ou mais nós intermediários entre o primeiro nó n1 e o segundo nó n2 pode ser escalonado por um número apropriado (por exemplo, o número de nós intermediários) e este número escalonado pode ser usado para calcular a classificação de conectividade.
[0007] Em algumas modalidades, links ponderais são usados, além de, ou como uma alternativa, para a abordagem de contagem de subcaminhos. O circuito de processamento pode ser configurado para atribuir um peso do usuário relativo para cada caminho conectando um primeiro nó n1 e um segundo nó n2 dentro de uma comunidade de rede. Um valor de conectividade do usuário pode ser atribuído a cada link. Por exemplo, um usuário ou entidade associado com o nó n1 pode atribui valores de conectividade do usuário para todos os caminhos de saída do nó n1. Em algumas modalidades, os valores de conectividade atribuídos pelo usuário ou entidade podem ser indicativos dessa confiança no usuário ou entidade associada com o nó n2. Os valores de link atribuídos por um usuário particular ou entidade podem então ser comparados um com os outros para determinar um peso do usuário relativo para cada link.
[0008] O peso do usuário relativo para cada link pode ser determinado primeiramente computando a média de todos os valores de conectividade do usuário atribuídos por esse usuário (isto é, os valores out-link). Se ti é o valor de conectividade do usuário atribuído ao link i, então o peso do usuário relativo, wi, atribuído a esse link pode ser dado de acordo com:
Figure img0001
[0009] Para determinar o peso total de um caminho, em algumas modalidades, os pesos de todos os links ao longo do caminho podem ser multiplicados juntos. O peso do caminho total pode então ser dado de acordo com:
Figure img0002
[0010] O valor da conectividade para o caminho pode então ser definido como o valor de conectividade do usuário mínimo de todos os links no caminho multiplicados pelo peso do caminho total de acordo com:
Figure img0003
[0011] Para determinar os valores de conectividade do caminho, em algumas modalidades, um quadro computacional paralelo ou quadro computacional distribuído (ou ambos) pode ser usado. Por exemplo, em uma modalidade, um número de processadores de núcleo implementa um agrupamento Apache Hadoop ou Google MapReduce. Este agrupamento pode realizar alguma ou todas as computações distribuídas em conexão com a determinação de novos valores de link de caminho e os pesos do caminho.
[0012] O circuito de processamento pode identificar um nó trocado dentro de uma comunidade de rede. Por exemplo, um novo link de saída pode ser adicionado, um link pode ser removido, ou um valor de conectividade do usuário pode ter sido trocado. Em resposta à identificação de um nó trocado, em algumas modalidades, a circuito de processamento pode recomputar o link, o calinho e os valores de peso associados com algum ou todos os nós na comunidade de rede ou comunidades implicadas.
[0013] Em algumas modalidades, somente os valores associados com os nós afetados na comunidade de rede são recomputados após um nó trocado ser identificado. Se existe pelo menos um nó trocado na comunidade de rede, o nó ou nós trocados podem primeiramente sofrer um processo de preparo. O processo de preparo pode incluir a fase de "mapa" e a fase de "redução". Na fase de mapa do processo de preparo, o processo de preparo pode ser dividido em subprocessos menores que são então distribuídos em um núcleo no agrupamento de quadro computacional paralelo. Por exemplo, cada nó ou link troca (por exemplo, troca de traseira para out-link e troca de cabeçalho para in-link) pode ser mapeado em um núcleo diferente para computação paralela. Na fase de reduzir do processo de preparo, cada peso de out-link pode ser determinado de acordo com a equação (1). Cada um dos pesos de out-link pode então ser normalizado pela soma dos pesos de out-link (ou qualquer outro valor apropriado). A tabela de nós pode então ser atualizada para cada nó trocado, seus in-links e seus out-links.
[0014] Após o nó trocado ter sido preparado, os caminhos que originam de cada nó trocado podem ser calculados. Mais uma vez, uma fase "mapear" e "reduzir" deste processo podem ser definidas. Durante este processo, em algumas modalidades, uma primeira pesquisa profunda pode ser realizada do dígrafo de nós ou árvore de nós. Todos os nós ancestrais afetados podem então ser identificados e seus caminhos recalculados.
[0015] Em algumas modalidades, para melhorar o desempenho, os caminhos podem ser agrupados pelo último nó no caminho. Por exemplo, todos os caminhos terminando com o nó ni podem ser agrupados juntos, todos os caminhos terminando com o nó n2 podem ser agrupados juntos, e assim em diante. Estes grupos de caminhos podem então ser armazenados separadamente (por exemplo, em colunas diferentes de uma tabela de base de dados única). Em algumas modalidades, os grupos de caminhos podem ser armazenados nas colunas de um armazém de valor chave implementando um agrupamento HBase (ou qualquer outro sistema de base de dados de alto desempenho, comprimido, tal como uma tabela Big).
[0016] Em algumas modalidades, uma ou mais funções limiares pode ser definida. A função ou funções limiar pode ser usada para determinar o número máximo de links em um caminho que será analisado em uma determinação de conectividade ou computação de conectividade. Os fatores limiares também podem ser definidos para pesos de links mínimos, ou ambos. Os pesos que estão abaixo de um limiar definido pelo usuário ou definido pelo sistema podem ser ignorados em uma determinação de conectividade ou computação de conectividade, enquanto somente os pesos de magnitude suficiente podem ser considerados.
[0017] Em algumas modalidades, um valor de conectividade do usuário pode representar um grau de confiança entre um primeiro nó e um segundo nó. Em uma modalidade, o nó n1 pode atribuir um valor de conectividade de l1 a um link entre ele e o nó n2. O nó n2 também pode atribuir um valor de conectividade do usuário de l2 a um link reverso entre ele e o nó n1. Os valores de l1 e l2 podem ser pelo menos parcialmente indicações subjetivas da confiabilidade do indivíduo ou entidade associado com o nó conectado pelo link. Por exemplo, uma ou mais da reputação do indivíduo ou entidade, estado e/ou influência dentro da comunidade de rede (ou alguma outra comunidade), o alinhamento do indivíduo ou entidade com parceria de confiança (por exemplo, alinhamento político, social ou religioso), após negociações com o indivíduo ou entidade, e o caráter e integridade do indivíduo ou entidade (ou quaisquer outras considerações relevantes) podem ser usados para determinar um valor de conectividade de usuário parcialmente subjetivo de confiança. Um usuário (ou outro indivíduo autorizado pelo nó) pode então atribuir este valor a um link de saída conectando o nó ao indivíduo ou entidade. As medições objetivas (por exemplo, dados de agências de classificação de terceiros ou escritórios de crédito) também podem ser usadas, em algumas modalidades, para formar os valores de conectividade do usuário compósitos indicativos de confiança. Os tipos subjetivos, objetivos, ou ambos, de medidas podem ser automaticamente coletados ou manualmente introduzidos para análise.
[0018] Em algumas modalidades, um algoritmo de tomada de decisão pode acessar os valores de conectividade a fim de tomar decisões automáticas (por exemplo, decisões baseadas em rede automática, tais como solicitações de autenticação ou de identidade) em favor de um usuário. Os valores de conectividade podem adicionalmente ou alternativamente ser emitidos para os sistemas e processos externos localizados em terceiros. Os sistemas e processos externos podem ser configurados para iniciar automaticamente uma transação (ou tomar algum curso de ação particular), baseados, pelo menos em parte, nos valores de conectividade recebidos. Por exemplo, propaganda eletrônica ou online pode ser objetivada para os subgrupos de membros de uma comunidade de rede baseada, pelo menos em parte, nos valores de conectividade de rede.
[0019] Em algumas modalidades, um algoritmo de tomada de decisão pode acessar os valores de conectividade para tomar decisões prospectivamente (isto é, um evento antecipado como uma solicitação de crédito). Tais decisões podem ser feitas como a solicitação de um usuário, ou como parte de um processo automático (por exemplo, uma análise automática periódica do escritório de crédito de uma base de dados de informação do cliente). Esta análise prospectiva pode permitir o início de uma transação (ou tomada de alguma ação particular) em uma forma fluida e/ou dinâmica.
BREVE DESCRIÇÃO DOS DESENHOS
[0020] As características acima e outras da presente invenção, sua natureza e várias vantagens serão mais aparentes em consideração à seguinte descrição descrita, tomada em conjunto com os desenhos anexos, e em que:
[0021] a figura 1 é um diagrama de bloco ilustrativo de uma arquitetura de rede usada para suportar conectividade dentro de uma comunidade de rede de acordo com uma modalidade da invenção;
[0022] a figura 2 é outro diagrama de bloco ilustrativo de uma arquitetura de rede usada para suportar conectividade dentro de uma comunidade de rede de acordo com uma modalidade da invenção;
[0023] as figuras 3A e 3B mostram tabelas de dados ilustrativas para suportar determinações de conectividade dentro de uma comunidade de rede de acordo com uma modalidade da invenção;
[0024] as figuras 4A-4D mostram processos ilustrativos para suportar determinações de conectividade dentro de uma comunidade de rede de acordo com uma modalidade da invenção; e
[0025] a figura 5 mostra um processo ilustrativo para consultar todos os caminhos em um nó-alvo e computar um valor de conectividade de rede de acordo com uma modalidade da invenção.
DESCRIÇÃO DETALHADA
[0026] São providos sistemas e métodos para determinar a conectividade entre os nós em uma comunidade de rede. Como definido no presente documento, um "nó" pode incluir qualquer terminal de usuário, dispositivo de rede, computador, dispositivo móvel, ponto de acesso, ou qualquer outro dispositivo eletrônico. Em algumas modalidades, um nó também pode representar ser um humano individual, entidade (por exemplo, uma entidade legal, tal como uma companhia pública ou privada, corporação, companhia de responsabilidade limitada (LLC), sociedade, direito de propriedade único ou organização de caridade), conceito (por exemplo, um grupo de redes sociais), animal ou objeto inanimado (por exemplo, um carro, avião ou ferramenta). Como também definido no presente documento, uma "comunidade de rede" pode incluir uma coleção de nós e pode representar qualquer grupo de dispositivos, indivíduos ou entidades.
[0027] Por exemplo, todos ou alguns subconjuntos de usuários de um website de rede social ou serviço de rede social (ou qualquer outro tipo de website ou serviço, tal como uma comunidade de jogos online) podem compor uma comunidade de rede única. Como outro exemplo, todos os assinantes para novos grupos particulares ou lista de distribuição podem compor uma comunidade de rede única, onde cada assinante individual pode ser representado por um nó na comunidade de rede. Qualquer nó particular pode fazer parte em zero, um ou mais do que uma comunidade de rede, ou um nó pode ser banido de toda, ou de um subconjunto de comunidade. Para facilitar as adições, supressões e trocas de links de comunidades de rede, em algumas modalidades uma comunidade de rede pode ser representada por um gráfico dirigido, ou dígrafo, dígrafo ponderal, árvore ou qualquer outra estrutura de dados apropriada.
[0028] A figura 1 mostra a arquitetura de rede 100 usada para suportar a determinação de conectividade dentro de uma comunidade de rede. Um usuário pode utilizar um aplicativo de acesso 102 para o servidor de aplicativo de acesso 106 sobre redes de comunicações 104. Por exemplo, o aplicativo de acesso 102 pode incluir um navegador da webpadrão, o servidor de aplicativo 106 pode incluir um servidor da web, e a rede de comunicação pode incluir a Internet. O aplicativo de acesso 102 também pode incluir aplicativos de proprietários especificamente desenvolvidos para uma ou mais plataformas ou dispositivos. Por exemplo, o aplicativo de acesso 102 pode incluir uma ou mais instâncias de um aplicativo Apple iOS, Android, ou WebOS ou qualquer aplicativo apropriado para uso no aplicativo de acesso 106 sobre a rede de comunicações 104. Múltiplos usuários podem acessar o serviço de aplicativo de acesso 106 através de uma ou mais instâncias do aplicativo de acesso 102. Por exemplo, uma pluralidade de dispositivos móveis pode ter, cada um, uma instância de aplicativo de acesso 102 funcionando localmente nos dispositivos. Um ou mais usuários pode usar uma instância de aplicativo de acesso 102 para interagir com o servidor de aplicativo 106.
[0029] A rede de comunicação 104 pode incluir qualquer rede com fio ou sem fio, tal como Internet, WiMax, rede de celular de longa distância ou rede sem fio de área local. A rede de comunicação 104 também pode incluir redes de área pessoal, tal como Bluetooth e redes de infravermelho. As comunicações e as redes de comunicações 104 podem ser criptografadas ou de outro modo seguras usando qualquer protocolo de segurança ou de criptografia.
[0030] O servidor de aplicativo 106, que pode incluir qualquer servidor de rede ou servidor virtual, tal como um arquivo ou servidor da web, pode acessar as fontes de dados 108 localmente ou através de qualquer conexão de rede apropriada. O servidor de aplicativo 106 também pode incluir circuito de processamento (por exemplo, um ou mais microprocessadores), memória (por exemplo, RAM, ROM, e tipos híbridos de memória), dispositivos de armazenamento (por exemplo, discos rígidos, discos óticos e discos de fita). O circuito de processamento incluído no servidor de aplicativo 106 pode executar um processo do servidor para suportar as determinações de conectividade de rede da presente invenção, embora o aplicativo de acesso 102 execute um processo de cliente correspondente. O circuito de processamento incluído no servidor de aplicativo 106 também pode realizar qualquer um dos cálculos e computações descritos no presente documento em conexão com a determinação de conectividade de rede. Em algumas modalidades, um meio legível por computador com lógica de programa de computador gravada no mesmo é incluído dentro do servidor de aplicativo 106. A lógica de programa de computador pode determinar a conectividade entre dois ou mais nós em uma comunidade de rede e pode ou não emitir tal conectividade a uma tela de monitor ou dados.
[0031] Por exemplo, o servidor de aplicativo 106 pode acessar as fontes de dados 108 na Internet, um LAN privado seguro, ou qualquer outra rede de comunicação. As fontes de dados 108 podem incluir uma ou mais fontes de dados de terceiros, tais como dados de serviços de rede social de terceiros e escritórios de classificação de terceiros. Por exemplo, as fontes de dados 108 podem incluir o usuário e dados de relacionamento (por exemplo, dados de "amigos" ou "seguidores") a partir de um ou mais de Facebook, MySpace, openSocial, Friendster, Bebo, hi5, Orkut, PertSpot, Yahoo! 360, Linkedln, Twitter, Google Buzz, Really Simple Syndication readers ou qualquer outro website de rede social ou serviço de informação. As fontes de dados 108 também podem incluir armazéns de dados e bases de dados locais para aplicativo de servidor 106 contendo informação de relacionamento sobre usuários acessando o servidor de aplicativo 106 através do aplicativo de acesso 102 (por exemplo, bases de dados de endereços, registros legais, listas de passageiros de transporte, padrões de jogos, doações políticas e/ou de caridade, afiliações políticas, placa de licença de veículos ou números de identificação, códigos de produtos universais, artigos novos, listas de negócios, e afiliações em hospitais ou universidades).
[0032] O servidor de aplicativo 106 pode estar em comunicação com um ou mais do armazém de dados 110, armazém de valores chave 112, e quadro computacional paralelo 114. O armazém de dados 110, que pode incluir qualquer sistema de administração de bases de dados de relacionamentos (RDBMS), servidor de arquivos, ou sistema de armazenamento, pode armazenar informação com relação a uma ou mais comunidades de rede. Por exemplo, uma ou mais tabelas de dados 300 (figura 3A) podem armazenar informação de identidade sobre os usuários e entidades na comunidade de rede, uma identificação dos nós na comunidade de rede, link do usuário e pesos dos caminhos, ajustes de configuração de usuário, ajustes de configuração de sistema, e/ou qualquer outra informação apropriada. Pode haver um caso de armazém de dados 110 por comunidade de rede, ou o armazém de dados 110 pode armazenar informação com relação a um número plural de comunidades de rede. Por exemplo, o armazém de dados 110 pode incluir uma base de dados por comunidade de rede, ou uma base de dados pode armazenar informação sobre todas as comunidades de rede disponíveis (por exemplo, informação sobre uma comunidade de rede por tabela de base de dados).
[0033] O quadro computacional paralelo 114, que pode incluir qualquer quadro computacional paralelo ou distribuído ou agrupamento, pode ser configurado para dividir as funções computacionais em funções menores a serem realizadas simultaneamente, em um modo distribuído, ou ambos. Por exemplo, o quadro computacional paralelo 114 pode suportar aplicativos distribuídos intensivos dos dados de suporte implementando um paradigma computacional de mapear/reduzir onde os aplicativos podem ser divididos em uma pluralidade de fragmentos pequenos de trabalho, cada um dos quais pode ser executado ou re-executado em qualquer processador de núcleo em um agrupamento de núcleos. Um exemplo apropriado de quadro computacional paralelo 114 inclui um agrupamento Apache Hadoop.
[0034] quadro computacional paralelo 114 pode fazer interface com o armazém de valores chave 112, que também pode tomar a forma de um agrupamento de núcleos. O armazém de valores chave 112 pode reter conjuntos de pare de valores chave para uso com o paradigma computacional de mapear/reduzir implementado pelo quadro computacional paralelo 114. Por exemplo, o quadro computacional paralelo 114 pode expressar uma computação distribuída grande como uma sequência de operações distribuídas sobre os conjuntos de dados de pares de valores chave. As funções de mapear/reduzir definidas pelo usuário podem ser executadas através de uma pluralidade de nós no agrupamento. O processamento e as computações descritas no presente documento podem ser realizados, pelo menos em parte, por qualquer tipo de processador ou combinação de processadores. Por exemplo, vários tipos de processadores quantum e processadores quantum, baseados na luz), redes neurais artificiais, e semelhantes, podem ser usados para realizar massivamente o processamento e computação paralelos.
[0035] Em algumas modalidades, o quadro computacional paralelo 114 pode suportar duas fases distintas, uma fase de "mapa" e uma fase de "redução". A entrada para a computação pode incluir um conjunto de dados de pares de valores chave armazenados no armazém de valores chave 112. Na fase de mapa, o quadro computacional paralelo 114 pode particionar, ou dividir o conjunto de dados de entrada em um número maior de fragmentos e atribuir cada fragmento a uma tarefa de mapa. O quadro computacional paralelo 114 também pode distribuir as tarefas de mapa através do agrupamento de nós em que ele opera. Cada tarefa de mapa pode consumir pares de valores chave a partir de seu fragmento atribuído e produzir um conjunto de pares de valores chave intermediários. Para cada par de valores chave, a tarefa de mapa pode invocar uma função de mapear definida pelo usuário que transmite a entrada em um par de valores chave diferente. Após a fase de mapa, o quadro computacional paralelo 114 pode selecionar o conjunto de dados intermediários pela chave e produzir uma coleção de conjuntos de variáveis de modo que todos os valores associados com a chave particular aparecem juntos. O quadro computacional paralelo 114 também pode particionar a coleção de conjuntos de variáveis em um número de fragmentos igual ao número de tarefas de redução.
[0036] Na fase de redução, cada tarefa de reduzir pode consumir o fragmento de conjuntos de variáveis atribuído ao mesmo. Para cada um desses conjuntos de variáveis, a tarefa de reduzir pode invocar uma função de reduzir definida pelo usuário que transmite os conjuntos de variáveis em uma par de valores chave de saída. O quadro computacional paralelo 114 pode então distribuir as muitas tarefas de reduzir através do agrupamento de nós e prover o fragmento apropriado de dados intermediários para cada tarefa de reduzir.
[0037] As tarefas em cada fase podem ser executadas em um modo de tolerância a falhas, de modo que se um ou mais nós falha durante a computação, as tarefas atribuídas a estes nós que falharam podem ser redistribuídas através dos nós restantes. Este comportamento pode permitir o equilíbrio local e as tarefas que falharam ser re-executadas com baixa sobrecarga de tempo de execução.
[0038] O armazém de valores chave 112 pode implementar qualquer sistema de arquivo distribuído capaz de armazenar grandes arquivos confiavelmente. Por exemplo, o armazém de valores chave 112 pode implementar sistema de arquivo distribuído próprio de Handoop (DFS) ou uma base de dados distribuída orientada na coluna mais escalonável, tal como HBase. Tais sistemas de arquivo ou bases de dados podem incluir capacidades semelhantes a BigTable, tal como suporte para um número arbitrário de colunas da tabela.
[0039] Embora a figura 1, a fim de não supercomplicar o desenho, mostre somente uma instância única de aplicativo de acesso 102, rede de comunicação 104, servidor de aplicativo 106, fonte de dados 108, armazém de dados 110, armazém de valores chave 112 e quadro computacional paralelo 114, na estrutura de rede prática 100 pode incluir múltiplas instâncias de um ou mais dos componentes descritos acima. Além disso, o armazém de valores chave 112 e o quadro computacional paralelo 114 também podem ser removidos em algumas modalidades. Como mostrado na arquitetura de rede 200 da figura 2, as computações paralelas ou distribuídas realizadas pelo armazém de valores chave 112 e/ou quadro computacional paralelo 114 podem ser adicionalmente ou alternativamente efetuadas por um agrupamento de dispositivos móveis 202 em vez de núcleos estacionários. Em algumas modalidades, o agrupamento de dispositivos móveis 202, o armazém de valores chave 112 e o quadro computacional paralelo 114 estão todos presentes na arquitetura da rede. Certos processos de aplicação e computações podem ser realizados pelo agrupamento de dispositivos móveis 202 e certos outros processos de aplicação e computações podem ser realizados pelo armazém de valores chave 112 e quadro computacional paralelo 114. Além disso, em algumas modalidades, a rede de comunicação 104 por si mesma pode realizar alguns ou todos os processos de aplicação e computações. Por exemplo, roteadores especificamente configurados ou satélites podem incluir um circuito de processamento adaptado para realizar alguns ou todos os processos de aplicação e computações descritos no presente documento.
[0040] O agrupamento de dispositivos móveis 202 pode incluir um ou mais dispositivos móveis, tais como PDAs, telefones celulares, computadores móveis, ou qualquer outro dispositivo de computação móvel. O agrupamento de dispositivos móveis 202 também pode incluir qualquer aparelho elétrico (por exemplo, sistemas de áudio/vídeo, microondas, refrigeradores, processadores de alimentos) contendo um microprocessador (por exemplo, com tempo de processamento livre), armazenamento, ou ambos. O servidor de aplicativo 106 pode instruir os dispositivos com agrupamento de dispositivos móveis 202 para realizar computação, armazenamento, ou ambos, em um modo similar como pode ter sido distribuído para múltiplos núcleos fixos pelo quadro computacional paralelo 114 e o paradigma computacional de mapear/reduzir. Cada dispositivo no agrupamento de dispositivos móveis 202 pode realizar uma função computacional discreta, função de armazenamento, ou ambos. O servidor de aplicativo 106 pode combinar os resultados de cada função distribuída e retornar um resultado final da computação.
[0041] A figura 3A mostra as tabelas de dados ilustrativas 300 usadas para suportar a determinação de conectividade da presente invenção. Uma ou mais das tabelas 300 pode ser armazenada, por exemplo, em uma base de dados de relacionamento no armazém de dados 110 (figura 1). A tabela 302 pode armazenar uma identificação de todos os nós registrados na comunidade de rede. Um identificador unido pode ser atribuído a cada nó e armazenado na tabela 302. Além disso, um nome na cadeia pode ser associado com cada nó e armazenado na tabela 302. Como descrito acima, em algumas modalidades, os nós podem representar indivíduos ou entidades, caso em que o nome na corrente pode incluir o primeiro indivíduo ou pessoa e/ou o último nome, o apelido, o identificador ou o nome da entidade.
[0042] tabela 304 pode armazenar os valores de conectividade do usuário. Em algumas modalidades, os valores de conectividade do usuário podem ser atribuídos automaticamente pelo sistema (por exemplo, pelo servidor de aplicativo 106 (figura 1)). Ex o servidor de aplicativo 106 (figura 1) pode monitorar toda a interação eletrônica (por exemplo, comunicação eletrônica, transações eletrônicas, ou ambas) entre os membros de uma comunidade de rede. Em algumas modalidades, um valor de conectividade do usuário padrão (por exemplo, o valor I de link) pode ser atribuído inicialmente a todos os links na comunidade de rede. Após a interação eletrônica ser identificada entre dois ou mais nós na comunidade de rede, os valores de conectividade do usuário podem ser ajustados para cima ou para baixo dependendo do tipo de interação entre os nós e o resultado da interação Por exemplo, cada troca de e-mail simples entre dois nós pode aumentar ou diminuir automaticamente os valores de conectividade do usuário conectando estes dois nós por uma quantidade fixada. Interações mais complicadas (por exemplo, vendas ou questionamentos de produtos ou serviços) entre dois nós podem aumentar ou diminuir os valores de conectividade do usuário conectando estes dois nós pela mesma quantidade fixada maior. Em algumas modalidades, os valores de conectividade do usuário entre dois nós podem sempre ser aumentados a menos que um usuário ou nó indique que a interação foi desfavorável, não completada com sucesso, ou de outro modo adversa. Por exemplo, a transação não pode ter sido executada em tempo hábil ou uma troca de e-mail pode ter sido particularmente desagradável. As interações adversas podem diminuir automaticamente os valores de conectividade do usuário enquanto todas as outras interações podem aumentar os valores de conectividade do usuário (ou não terem nenhum efeito). Além disso, os valores de conectividade do usuário podem ser automaticamente coletados usando fontes externas. Por exemplo, fontes de dados com terceiros (tais como agências de classificação e escritórios de crédito) podem ser automaticamente interrogadas para informação de conectividade. Esta informação de conectividade pode incluir informação completamente objetiva, informação completamente subjetiva, informação compósita que é parcialmente objetiva e parcialmente subjetiva, qualquer outra informação de conectividade apropriada, ou qualquer combinação do acima descrito.
[0043] Em algumas modalidades, os valores de conectividade do usuário podem ser atribuídos manualmente pelos membros da comunidade de rede. Estes valores podem representar, por exemplo, o grau ou nível de confiança entre dois usuários ou nós ou uma avaliação de nó de outra competência de nó em algum empreendimento. Como descrito acima, os valores de conectividade do usuário podem incluir um componente subjetivo e um componente objetivo em algumas modalidades. O componente subjetivo pode incluir uma "classificação"de confiabilidade indicativa de quanta confiança um primeiro usuário ou nó encontra um segundo usuário, nó, comunidade ou subcomunidade. Esta classificação ou valor pode ser inteiramente subjetivo e baseado em interações entre os dois usuários, nós ou comunidades. Um valor de conectividade do usuário compósito incluindo componentes subjetivos e objetivos também pode ser usado. Por exemplo, informação de terceiros pode ser consultada para formar um componente objetivo baseado, por exemplo, no número de queixas do consumidor, classificação de crédito, fatores sócio-econômicos (por exemplo, idade, rendimento, afiliações políticas ou religiosas, e história criminal), ou número de citações/êxito na mídia ou em pesquisas de mecanismo de pesquisa. A informação de terceiros pode ser acessada usando a rede de comunicações 104 (figura 1). Por exemplo, uma base de dados do escritório de crédito o terceiros pode ser nomeada ou uma biografia pessoal e informação de fundo, incluindo informação de história criminal, pode ser acessada a partir de uma fonte de dados ou uma base de dados de terceiros (por exemplo, como parte das fontes de dados 108 (figura 1) ou uma fonte de dados separada) ou introduzida diretamente por um nó, usuário ou administrador de sistema.
[0044] A tabela 304 pode armazenar uma identificação de um cabeçalho de link, uma traseira de link e o valor de conectividade do usuário para o link. Os links podem ou não ser bidirecionais. Por exemplo, um valor de conectividade do usuário a partir do nó n1 para o nó n2 pode ser diferente (e completamente separado) do que o link a partir do nó n2 para o nó n1. Especialmente no contexto de confiança descrito acima, cada usuário pode atribuir seu próprio valor de conectividade a um link (isto é, dois usuários não precisam confiar um ao outro uma quantidade igual em algumas modalidades).
[0045] A tabela 306 pode armazenar um log de auditoria da tabela 304. A tabela 306 pode ser analisada para determinais que nós ou links foram trocados na comunidade de rede. Em algumas modalidades, uma ativação da base de dados é usada para inserir automaticamente um registro de auditoria na tabela 306 sempre que uma troca de dados na tabela 304 for detectada. Por exemplo, um novo link pode ser criado, um link pode ser removido, ou um valor de conectividade do usuário pode ser trocado. Este log de auditoria pode permitir decisões relacionadas aos valores de conectividade a ser feitos prospectivamente (isto é, antes de um evento antecipado). Tais decisões podem ser tomadas na solicitação de um usuário, ou como parte de um processo automático, tais como os processos descritos abaixo com respeito à figura 5. Esta análise prospectiva pode permitir a indicação de uma transação (ou tomada de alguma ação particular) em uma forma fluida e/ou dinâmica. Após essa troca ser detectada, a ativação pode criar automaticamente uma nova fileira na tabela 306. A tabela 306 pode armazenar uma identificação do nó trocado, e a identificação do cabeçalho de link trocado, traseira de link trocada, e o valor de conectividade do usuário a ser atribuído ao link trocado. A tabela 306 também pode armazenar um indicativo de carimbo de data/hora do tempo de troca e um código de operação. Em algumas modalidades, os códigos de operação podem incluir operações de "inserir", "atualizar" ou "deletar", correspondendo a se um link foi inserido, um valor de conectividade do usuário foi trocado, ou um link foi deletado, respectivamente. Outros códigos de operação podem ser usados em outras modalidades.
[0046] A figura 3B mostra uma estrutura de dados ilustrativa 310 usada para suportar a determinação de conectividade da presente invenção. Em algumas modalidades, a estrutura de dados 310 pode ser armazenada usando o armazém de valores chave 112 (figura 1), enquanto as tabelas 300 são armazenadas no armazém de dados 110 (figura 1). Como descrito acima, o armazém de valores chave 112 (figura 1) pode implementar um sistema de armazenamento HBase e incluir o suporte Big Table. Como um sistema de administração de base de dados de relacionamento tradicional, os dados mostrados na figura 3B podem ser armazenados nas tabelas. No entanto, o suporte Big Table pode permitir um número arbitrário de colunas em cada tabela, enquanto os sistemas de administração de base de dados de relacionamento tradicional podem requerer um número fixo de colunas.
[0047] A estrutura de dados 310 pode incluir uma tabela de nós 312. No exemplo mostrado na figura 3B, a tabela de nós 312 inclui várias colunas. A tabela de nós 312 pode incluir nova coluna de identificador 314, que pode armazenar números inteiros de 64 bits, 128 bits, 256 bits, 512 bits ou 1024 bits e pode ser usada para identificar unicamente cada fileira (por exemplo, cada nó) na tabela de nós 312. A coluna 316 pode incluir uma lista de todos os links de entrada para o nó atual. A coluna 318 pode incluir uma lista de todos os links de saída para o nó atual. A coluna 320 pode incluir uma lista de identificadores de nós à qual o nó atual está conectado. Um primeiro nó pode ser conectado a um segundo nó se os links de saída podem ser seguidos para alcançar o segundo nó. Por exemplo, para A -> B, A é conectado a B, mas B pode não estar conectado a A. Como descrito em mais detalhe abaixo, a coluna 320 pode ser usada durante a porção do processo 400 (figura 4A) mostrada na figura 4B. A tabela de nós 312 também pode incluir uma ou mais colunas de "bucket" 322. Estas colunas podem armazenar uma lista de caminhos que conectam o nó atual a um nó-alvo. Como descrito acima, os caminhos agrupando pelo último nó caminho (por exemplo, o nó-alvo) pode facilitar as computações de conectividade. Como mostrado na figura 3B, para facilitar a varredura, os nomes na coluna de bucket podem incluir o identificador de nó-alvo anexado à extremidade da coluna "bucket:".
[0048] As figuras 4A-4D mostram processos ilustrativos para determinar a conectividade dos nós dentro de uma comunidade de rede. A figura 4A mostra o processo 400 para atualizar um gráfico de conectividade (ou qualquer outra estrutura de dados apropriada) associado com uma comunidade de rede. Como descrito acima, em algumas modalidades, cada comunidade de rede está associada com seu próprio gráfico de conectividade, dígrafo, árvore, ou outra estrutura de dados apropriada. Em outras modalidades, uma pluralidade de comunidades de rede pode compartilhar um ou mais gráficos de conectividade (ou outra estrutura de dados).
[0049] Em algumas modalidades, o processo descrito com respeito às figuras 4A-4D podem ser executados para tomar decisões prospectivamente (isto é, antes de um evento antecipado). Tais decisões podem ser tomadas na solicitação de um usuário, ou como parte de um processo automático, tais como os processos descritos abaixo com respeito à figura 5. Esta análise prospectiva pode permitir o início de uma transação (ou tomada de alguma ação particular) em uma forma fluida e/ou dinâmica.
[0050] Na etapa 402, uma determinação é feita se pelo menos um nó foi trocado na comunidade de rede. Como descrito acima, um registro de auditoria pode ser inserido na tabela 306 (figura 3) após um nó ter trocado. Na análise da tabela 306 (figura 3), uma determinação pode ser feita (por exemplo, pelo servidor de aplicativo 106 da figura 1) de que um novo link foi adicionado, um link existente foi removido, ou um valor de conectividade do usuário foi trocado. Se, na etapa 404, é determinado que um nó seja trocado, então o processo 400 continua para a etapa 410 (mostrada na figura 4B) para preparar os nós trocados, para a etapa 412 (mostrada na figura 4C) para calcular os caminhos que originam dos nós trocados, para a etapa 414 (mostrada na figura 4D) para remover os caminhos que vão através de um nó trocado, e para a etapa 416 (mostrada na figura 4E) para calcular os caminhos que vão através de um nó trocado. Deve ser notado que mais do que uma etapa ou tarefa mostrada nas figuras 4B, 4C, 4D e 4E pode ser realizada em paralelo usando, por exemplo, um agrupamento de núcleos. Por exemplo, as múltiplas etapas ou tarefas mostradas na figura 4B podem ser executadas em paralelo ou em um modo distribuído, então as múltiplas etapas ou tarefas mostradas na figura 4C podem ser executadas em paralelo ou em um modo distribuído, então as múltiplas etapas ou tarefas mostradas na figura 4D podem ser executadas em paralelo ou em um modo distribuído, e então as múltiplas etapas ou tarefas mostradas na figura 4E podem ser executadas em paralelo ou em um modo distribuído. Deste modo, a latência total associada com o processo 400 pode ser reduzida.
[0051] Se uma troca de nó não é detectada na etapa 404, então o processo 400 entra em um modo de suspensão na etapa 406. Por exemplo, em algumas modalidades, um segmento de aplicativos ou processo pode checar continuamente para determinar se pelo menos um nó ou link foi trocado na comunidade de rede. Em outras modalidades, o segmento de aplicativos ou processo pode checar periodicamente os links e nós trocados a cada n segundos, onde né qualquer número positivo. Após os caminhos serem calculados, que vão através de um nó trocado na etapa 416, ou após um período de suspensão na etapa 406, o processo 400 pode determinar se ou não executar um loop na etapa 408. Por exemplo, se todos os nós trocados foram atualizados, então o processo 400 pode parar na etapa 418. Se, no entanto, existem mais ou links nós trocados para processar, então o processo 400 pode executar u, loop na etapa 408 e retornar à etapa 404.
[0052] Na prática, uma ou mais etapas mostrada no processo 400 pode ser combinada com outras etapas, realizada em qualquer ordem apropriada, realizada em paralelo (por exemplo, simultaneamente ou substancialmente simultaneamente), ou removida.
[0053] As figuras 4B-4E incluem, cada uma, processos com uma fase de "mapa" e fase de "redução". Como descrito acima, estas fases podem formar parte de um paradigma computacional de mapear/reduzir realizado pelo quadro computacional paralelo 114 (figura 1), armazém de valores chave 112 (figura 1), ou ambos. Como mostrado na figura 4B, a fim de preparar quaisquer nós trocados, a fase de mapa 420 pode incluir a determinação de se há mais quaisquer trocas de link na etapa 422, recuperar a próxima troca de link na etapa 440, mapear a traseira para trocar out-link BA etapa 442. E mapear o cabeçalho para a troca in-link na etapa 444.
[0054] Se não houver mais nenhuma troca de link na etapa 422, então, na fase de reduzir 424, uma determinação pode ser feita na etapa 426 de que não existem mais nós e trocas de link paro processar. Se assim, então o próximo nó e suas trocas de link podem ser recuperados na etapa 428. As trocas de link mais recentes podem ser preservadas na etapa 430, enquanto quaisquer trocas de links intermediários são substituídas por trocas mais recentes. Por exemplo, o armazém de carimbo de data/hora na tabela 306 (figura 3) pode ser usado para determinar o tempo de troca de link ou de nó. Na etapa 432, o valor de conectividade do usuário out-link médio pode ser calculado. Por exemplo, se o nó n1 tem oito out-links com valores de conectividade do usuário atribuídos, estes oito valores de conectividade do usuário podem ter a média calculada na etapa 432. Na tapa 434, cada peso de out-link pode ser calculado de acordo com a equação (1) acima. Todos os pesos de out-link podem então ser somados e usados para normalizar cada peso de out-link na etapa 436. Por exemplo, cada peso de out-link pode ser dividido pela soma de todos os pesos de out-link. Isto pode render um peso entre 0 e 1 para cada out-link. Na etapa 438, os buckets existentes para o nó trocado, in-links, e out-links podem ser salvos. Por exemplo, os buckets podem ser salvos no armazém de valores chave 112 (figura 1) ou armazém de dados 110 (figura 1). Se não houver mais nós e trocas de link para processar na etapa 426, o processo pode parar na etapa 446.
[0055] Como mostrado na figura 4C, a fim de calcular os caminhos que originam dos nós trocados, a fase de mapa 448 pode incluir a determinação de se existem mais quaisquer nós trocados na etapa 450, recuperar o próximo nó trocado na etapa 466, marcar os buckets existentes para supressão mapeando os nós trocados para o caminho NULL na etapa 468, caminhos de geração de modo repetitivo após os out-links na etapa 470, e se o caminho é um caminho qualificado, mapeando a traseira para o caminho. Os caminhos qualificados podem incluir os caminhos que satisfazem uma ou mais funções limiar pré-definidas. Por exemplo, uma função limiar pode especificar um peso de caminho mínimo. Os caminhos com pesos de caminho maiores do que o peso de caminho mínimo pode ser designado como caminhos qualificados.
[0056] Se não há mais nenhum nó trocado na etapa 450, então, na fase de redução 452, uma determinação pode ser feita na etapa 454 de que existem mais nós e caminhos para processar. Se assim, então o próximo nó e seus caminhos podem ser recuperados na etapa 456. Na etapa 458, os buckets podem ser criados agrupando os caminhos por seu cabeçalho. Se um bucket contém somente o caminho NULL na etapa 460, então a célula correspondente na tabela de nós pode ser deletada na etapa 462. Se o bucket contém mais do que o caminho NULL, então na etapa 464 o bucket é salvo para a célula correspondente na tabela de nós. Se não existe mais nenhum nó e caminho para processar na etapa 456, o processo para parar na etapa 474.
[0057] Como mostrado na figura 4D, a fim de remover os caminhos que vão através de um nó trocado, a fase de mapa 476 pode determinar se existem mais quaisquer nós trocados na etapa 478 e recuperar o próximo nó trocado na etapa 488. Na etapa 490, a coluna "bucket" na tabela de nós (por exemplo, coluna 322 da tabela de nós 312 (ambas da figura 3B)) correspondendo ao nó trocado pode ser escaneada. Por exemplo, como descrito acima, o identificador de nó-alvo pode ser anexado à extremidade do nome coluna "bucket:". Cada bucket pode incluir uma lista de caminhos que conectam o nó atual ao nó-alvo (por exemplo, o nó trocado). Na etapa 492, para cada nó compatível encontrado pelo escâner e os buckets antigos de nós trocados, o nó compatível pode ser adaptado a um (nó trocado, bucket antigo) par de supressões.
[0058] Se não houver mais nenhum nó trocado na etapa 478, então, na fase de redução 480, uma determinação pode ser feita na etapa 484 de que existem mais pares de nós e de supressão para processar. Se assim, então o próximo nó e seus pares de supressão podem ser recuperados na etapa 484. Na etapa 486, para cada par de supressões, quaisquer caminhos que vão através do nó trocado, no bucket antigo, podem ser suprimidos. Se não houver mais nós e pares de supressão para processar na etapa 482, o processo pode parar na etapa 494.
[0059] Como mostrado na figura 4E, a fim de calcular os caminhos que vão através de um nó trocado, a fase de mapa 456 pode incluir a determinação de se existem mais quaisquer nós trocados na etapa 498 e recuperar o próximo nó trocado na etapa 508. Na etapa 510, a coluna "bucket:" na tabela de nós (por exemplo, coluna 322 da tabela de nós 312 (ambos na figura 3B)) correspondendo ao nó troado pode ser escaneada. Na etapa 512, para cada nó compatível encontrado no escâner e nos caminhos de nós trocados, todos os caminhos no bucket escaneado podem ser unidos com todos os caminhos do bucket trocado. Na etapa 514, cada nó compatível pode ser mapeado para cada união qualificada.
[0060] Se não existe mais nenhum nó trocado na etapa 498, então, na fase de redução 500, uma determinação pode ser feita como na etapa 502 de que existem mais nós e caminhos para processar. Se assim, então o próximo nó e seus caminhos podem ser recuperados na etapa 504. Cada caminho pode então ser adicionado ao bucket de nós apropriado na etapa 506. Se não houver mais nenhum nó e caminhos para processar na etapa 502, o processo pode parar na etapa 516.
[0061] A figura 5 ilustra o processo 520 para suportar uma indagação do usuário para todos os caminhos a partir de um primeiro nó para um nó-alvo. Por exemplo, um primeiro nó (representando, por exemplo, um primeiro indivíduo ou entidade) pode querer saber o quanto conectado está o primeiro nó a algum segundo nó (representando, Por exemplo, um segundo indivíduo ou entidade) na comunidade de rede. No contexto de confiança descrito acima (e onde os valores de conectividade do usuário representam, por exemplo, valores de confiança do usuário pelo menos parcialmente subjetivos), esta indagação pode retornar uma indicação de quanto o primeiro nó pode confiar no segundo nó. Em geral, os mais caminhos conectando os dois nós podem render um valor de conectividade de rede (ou qtd de confiança da rede) maior (ou menos se, por exemplo, classificações adversas forem usadas).
[0062] Na etapa 522, a célula da tabela de nós onde o identificador de fileiras iguala o primeiro identificador de nós e a coluna iguala o identificador de nó-alvo anexado ao prefixo do nome na coluna "bucket:" Todos os caminhos podem ser lidos a partir de sua célula na etapa 524. Os pesos de caminho atribuídos aos caminhos lidos na etapa 524 podem então ser somados na etapa 526. Na etapa 528, os pesos de caminho podem ser normalizados dividindo cada peso de caminho pela soma computada dos pesos de caminho. Um valor de conectividade de rede pode então ser computado na etapa 530. Por exemplo, cada valor de conectividade do usuário do caminho pode ser multiplicado por seu peso de caminho normalizado. O valor de conectividade de rede podem então ser computados nas mesmas modalidades de acordo com
Figure img0004
[0063] em que tcaminho é o valor de conectividade do usuário para um caminho (determinado de acordo com a equação (3)) e wcaminho é o peso normalizado para esse caminho. O valor de conectividade de rede pode então ser mantido ou emitido (por exemplo, exibido em um dispositivo de monitor, emitido pelo circuito de processamento do servidor de aplicativo 106, e/ou armazenado no armazém de dados 110 (figura 1)). Além disso, um algoritmo de tomada de decisões pode acessar o valor de conectividade de rede a fim de tomar decisões automáticas (por exemplo, decisões baseadas na rede, tais como solicitações de autenticação ou de identidade) em favor do usuário. Os valores de conectividade de rede podem adicionalmente ou alternativamente ser emitidos para sistemas externos e processos localizados em terceiros. Os sistemas externos e processos podem ser configurados para iniciar automaticamente uma transação (ou tomar algum curso de ação particular) baseada, pelo menos em parte, os valores de conectividade de rede recebidos. O processo 510 pode parar na etapa 532.
[0064] Na prática, uma ou mais etapas mostradas no processo 520 pode ser combinada com outras etapas, realizadas em qualquer ordem apropriada, realizadas em paralelo (por exemplo, simultaneamente ou substancialmente simultaneamente), ou removidas. Além disso, como descrito acima, várias funções limiares podem ser usadas a fim de reduzir a complexidade computacional. Por exemplo, uma função limiar definindo o número máximo de links a atravessar pode ser definida. Os caminhos contendo mais do que o limiar especificado pela função limiar não podem ser considerados na determinação de conectividade da rede. Além disso, várias funções limiares com relação aos pesos de link e de caminho podem ser definidas. Os links e os caminhos abaixo do peso limiar especificado pela função limiar não podem ser considerados na determinação de conectividade da rede.
[0065] Embora o processo 520 descreva uma indagação do usuário única para todos os caminhos a partir de um primeiro nó para um nó-alvo, nas implementações atuais os grupos de nós podem iniciar uma indagação única para todos os caminhos a partir de cada nó no grupo para um nó-alvo particular. Por exemplo, os múltiplos membros de uma comunidade de rede podem todos iniciar uma indagação de grupo para um nó-alvo. O processo 520 pode retornar um valor de conectividade de rede individual para cada nó de interrogação no grupo ou um valor de conectividade de rede compósito único levando em conta todos os nós no grupo de interrogação. Por exemplo, os valores de conectividade de rede individual podem ter a média calculada para formar um valor compósito ou alguma média ponderal pode ser usada. Os pesos atribuídos a cada valor de conectividade de rede individual podem ser baseados, por exemplo, na antiguidade na comunidade (por exemplo, há quanto tempo cada nó é um membro na comunidade), classificação, ou estatura social. Além disso, em algumas modalidades, um usuário pode iniciar uma solicitação para valores de conectividade de rede para múltiplos nós- alvos em uma indagação única. Por exemplo, o nó << pode querer determinar os valores de conectividade de rede entre ele e múltiplos outros nós. Por exemplo, os múltiplos outros nós podem representar vários candidatos para iniciar uma transação particular com o nó << . Quando indagando a todos os valores de conectividade de rede em uma única, as computações podem ser distribuídas em um modo em paralelo a múltiplos núcleos de modo que algum ou todos os resultados são computados substancialmente simultaneamente.
[0066] Além disso, as indagações podem ser iniciadas em um número de modos. Por exemplo, um usuário representado por um nó da fonte) pode identificar outro usuário (representado por um nó-alvo) a fim de iniciar automaticamente o processo 520. Um usuário pode identificar o nó-alvo em qualquer modo apropriado, por exemplo, selecionando o nó-alvo a partir de um monitor visual, gráfico ou árvore introduzindo ou selecionando um nome do usuário, identificador, endereço de rede, endereço de e-mail, número de telefone, coordenadas geográficas, ou identificador único associado com o nó- alvo, ou falando um comando predeterminado (por exemplo, "interrogar o nó 1" ou "interrogar o grupo de nós 1, 5, 9" onde 1, 5, 9 representam identificadores de nós únicos). Após uma identificação do nó ou nós-alvo ser recebida, o processo 520 pode ser automaticamente executado. Os resultados do processo (por exemplo, os valores de conectividade de rede individuais ou compósitos) podem então ser enviados automaticamente para um ou mais serviços ou processos de terceiros como descrito acima.
[0067] Em uma modalidade, um usuário pode utilizar o aplicativo de acesso 102 para gerar uma indagação do usuário que é enviada para o servidor de aplicativo de acesso 106 através da rede de comunicações 104 (ver também a figura 1) e iniciar automaticamente o processo 520. Por exemplo, um usuário pode acessar um aplicativo Apple iOS, Android, ou WebOS ou qualquer aplicativo apropriado para uso no aplicativo de acesso 106 através da rede de comunicações 104. O aplicativo pode exibir uma lista pesquisável de dados de relacionamento relacionados a esse usuário (por exemplo, dados de "amigos" ou de "seguidores") a partir de um ou mais Facebook, MySpace, openSocial, Friendster, Bebo, hi5, Orkut, PerfSpot, Yahoo! 360, Linkedln, Twitter, Google Buzz, Really Simple Syndication readers ou qualquer outro website de rede social ou serviço de informação. Em algumas modalidades, um usuário pode pesquisar dados de relacionamento que não são prontamente listados - isto é, pesquisar o Facebook, Twitter, ou qualquer base de dados apropriada de informação para nós-alvo que não são exibidos na lista pesquisável de dados de relacionamento. Um usuário pode selecionar um nó-alvo como descrito acima (por exemplo, selecionar um item a partir da lista de nomes de usuários representando "amigo" ou "seguidor") para solicitar uma medida de o quanto conectado está o usuário ao nó-alvo. Usando os processos descritos com respeito às figuras 3 e 4A-D, esta indagação pode retornar uma indicação de quanto o usuário pode confiar no nó-alvo. A indicação retornada pode ser exibida ao usuário usando qualquer indicador apropriado. Em algumas modalidades, o indicador pode ser uma percentagem que indica o quanto confiável o nó-alvo é para o usuário.
[0068] Em algumas modalidades, um usuário pode utilizar o aplicativo de acesso 102 para prover atribuições manuais de indicações pelo menos parcialmente subjetivas de quanto confiável é o nó-alvo. Por exemplo, o usuário pode especificar que ele confia um nó- alvo selecionado (por exemplo, um "amigo" ou "seguidor" selecionado em um grau particular. O grau particular pode estar na forma de uma percentagem que representa a percepção do usuário de quando confiável é o nó-alvo. O usuário pode prover esta indicação antes, depois ou durante o processo 520 descrito acima. A indicação provida pelo usuário (por exemplo, as indicações pelo menos parcialmente subjetivas de confiabilidade) pode então ser automaticamente enviada a um ou mais serviços ou processos de terceiros como descrito acima. Em algumas modalidades, as indicações providas pelo usuário podem fazer com que um nó e/ou link troque em uma comunidade de rede. Esta troca pode causar uma determinação a ser feita de que pelo menos um nó e/ou link foi trocado na comunidade de rede, que por sua vez ativa vários processos como descrito com respeito às figuras 3 e 4A-4D.
[0069] Em algumas modalidades, uma abordagem de contagem de caminho pode ser usada, além de ou em lugar da abordagem de link ponderado descrita acima. O circuito de processamento (por exemplo, um servidor de aplicativo 106) pode ser configurado para contar o número de caminhos entre um primeiro nó << e um segundo nó dentro de uma comunidade de rede.
[0070] Em algumas modalidades, uma abordagem de contagem de caminhos pode ser usada além de ou em lugar da abordagem de link ponderal descrita acima. O circuito de processo (por exemplo, do servidor de aplicativo 106) pode ser configurado para contar o número de caminhos entre um primeiro nó «/ e um segundo nó dentro de uma comunidade de rede. Uma classificação de conectividade R>>i>>2 pode então ser atribuída aos nós. A classificação de conectividade atribuída pode ser proporcional ao número de caminhos, ou relacionamentos, conectando os dois nós. Um caminho com um ou mais nós intermediários entre o primeiro nó n e o segundo nó pode ser escalonado por um número apropriado (por exemplo, o número de nós intermediários) e este número escalonado pode ser usado para calcular a classificação de conectividade.
[0071] Cada equação apresentada acima deve ser construída como uma classe de equação de um tipo similar, com a equação atual apresentada sendo um exemplo representativo da classe. Por exemplo, as equações apresentadas acima incluem todas as versões matematicamente equivalentes destas equações, reduções, simplificações, normalizações e outras equações do mesmo grau.
[0072] As modalidades da invenção descritas acima são apresentadas para fins de ilustração e não de limitação. Os seguintes parágrafos numerados dão as modalidades adicionais da presente invenção.

Claims (17)

1. Método (520) para determinar a conectividade de rede entre um primeiro nó e um segundo nó conectado ao primeiro nó por pelo menos um caminho, caracterizado pelo fato de que o método compreende as etapas de: receber, em um dispositivo de usuário, uma solicitação de usuário para calcular a conectividade de rede entre o primeiro nó e o segundo nó dentro de uma comunidade de rede; transmitir uma indicação da solicitação do usuário a partir do dispositivo do usuário para um servidor remoto, em que a indicação da solicitação do usuário inclui informações suficientes para permitir ao servidor remoto identificar o primeiro nó e o segundo nó; receber do servidor remoto no dispositivo do usuário, uma indicação de conectividade de rede, em que a indicação de conectividade de rede é resultado de um processo que compreende: identificar (522) caminhos para o segundo nó a partir do primeiro nó dentro de uma comunidade de rede, em que cada caminho compreende um ou mais links e em que cada link recebe um valor de conectividade do usuário, o valor de conectividade do usuário representando um grau de confiança entre dois nós; identificar automaticamente, sem a entrada do usuário, os subprocessos necessários para produzir a indicação de conectividade de rede, em que a identificação dos subprocessos compreende: identificar uma pluralidade de links nos caminhos identificados; para cada link identificado, acessar uma estrutura de dados para identificar nós conectados ao link identificado; e para cada nó identificado, criando uma indicação de um subprocesso, em que o subprocesso compreende calcular um peso normalizado do link externo para cada link externo do nó identificado; distribuir as indicações dos subprocessos para uma pluralidade de processadores dispostos em um quadro computacional paralelo; receber, da pluralidade de processadores, os pesos de out- link normalizados calculados para os nós identificados; determinar um peso de caminho normalizado com base em uma pluralidade dos pesos de out-link normalizados calculados para cada um dos caminhos identificado; para cada caminho identificado, calcular um valor de conectividade de caminho, em que o cálculo do valor de conectividade de caminho compreende identificar um valor mínimo de conectividade atribuído a um link no caminho identificado; para cada caminho identificado, calcular um produto do peso normalizado do caminho para o caminho identificado e o valor de conectividade do caminho para o caminho identificado; e combinar os produtos calculados para produzir a indicação de conectividade de rede; e gerar para exibição no dispositivo do usuário, um indicador com base na indicação de conectividade da rede.
2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o processo que resulta na indicação de conectividade de rede compreende ainda acessar um valor limiar de link, em que os caminhos de identificação para o segundo nó a partir do primeiro nó dentro de uma comunidade de rede compreende identificar somente os caminhos que contêm menos links do que o valor limiar de links acessados.
3. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o processo que resulta na indicação de conectividade de rede compreende ainda acessar um valor limiar do peso de caminho, em que os caminhos de identificação para o segundo nó a partir do primeiro nó dentro de uma comunidade de rede compreende identificar somente os caminhos com o peso de caminho normalizado acima do valor limiar do peso de caminho acessado.
4. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que determinar um peso de caminho normalizado para cada caminho identificado compreende dividir o produto os pesos de link de cada link em um caminho identificado pela soma dos pesos de caminho de todos os caminhos identificados.
5. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o valor de conectividade do usuário representa pelo menos um de um valor de confiança do usuário subjetivo ou uma avaliação de competência.
6. Método, de acordo com a reivindicação 5, caracterizado pelo fato de que o processo que resulta na indicação de conectividade de rede compreende ainda: acessar dados de classificação de terceiros; e em que a indicação de conectividade de rede é baseada, pelo menos em parte, nos dados de classificações de terceiros.
7. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que os caminhos de identificação para o segundo nó a partir do primeiro nó dentro de uma comunidade de rede compreende acessar os dados de um serviço de rede social.
8. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que os caminhos de identificação do segundo nó a partir do primeiro nó dentro de uma comunidade de rede compreende recuperar uma identificação pré-armazenada dos caminhos do segundo nó a partir do primeiro nó a partir de uma tabela (302, 304, 306, 312) em uma base de dados.
9. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende ainda tomar automaticamente pelo menos uma decisão baseada em uma rede, pelo menos em parte, sobre a indicação de conectividade de rede.
10. Sistema (100, 200) para determinar a conectividade de rede entre um primeiro nó e um segundo nó conectado ao primeiro nó por pelo menos um caminho, caracterizado pelo fato de que o sistema compreende: um dispositivo de usuário compreendendo circuito de processamento, o qual é configurado para: receber uma solicitação de usuário para calcular a conectividade de rede entre o primeiro nó e o segundo nó dentro de uma comunidade de rede; transmitir uma indicação da solicitação do usuário para um servidor remoto, em que a indicação da solicitação do usuário inclui informações suficientes para permitir ao servidor remoto identificar o primeiro nó e o segundo nó; receber do servidor remoto, uma indicação de conectividade de rede, em que a indicação de conectividade de rede é determinada por: identificar caminhos para o segundo nó a partir do primeiro nó dentro de uma comunidade de rede, em que cada caminho compreende um ou mais links, e em que cada link é designado a um valor de conectividade de usuário, o valor de conectividade de usuário representando um grau de confiança entre dois nós; identificar automaticamente, sem a entrada do usuário, os subprocessos necessários para produzir a indicação de conectividade de rede, em que a identificação dos subprocessos compreende: identificar uma pluralidade de links nos caminhos identificados; para cada link identificado, acessar uma estrutura de dados para identificar nós conectados ao link identificado; e para cada nó identificado, criando uma indicação de um subprocesso, em que o subprocesso compreende calcular um peso normalizado do link externo para cada link externo do nó identificado; distribuir as indicações dos subprocessos para uma pluralidade de processadores dispostos em um quadro computacional paralelo; receber, da pluralidade de processadores, os pesos de out- link normalizados calculados para os nós identificados; determinar um peso de caminho normalizado com base em uma pluralidade dos pesos de out-link normalizados calculados para cada um dos caminhos identificado; para cada caminho identificado, calcular um valor de conectividade de caminho, em que o cálculo do valor de conectividade de caminho compreende identificar um valor mínimo de conectividade atribuído a um link no caminho identificado; para cada caminho identificado, calcular um produto do peso normalizado do caminho para o caminho identificado e o valor de conectividade do caminho para o caminho identificado; e combinar os produtos calculados para produzir a indicação de conectividade de rede; e gerar para exibição no dispositivo do usuário, um indicador com base na indicação de conectividade da rede.
11. Sistema, de acordo com a reivindicação 10, caracterizado pelo fato de que o processo que resulta na indicação de conectividade de rede ainda compreende acessar um valor limiar de link, em que identificar os caminhos para o segundo nó a partir do primeiro nó dentro de uma comunidade de rede compreende identificar somente os caminhos que contêm menos links do que o valor limiar de links acessados.
12. Sistema, de acordo com a reivindicação 10, caracterizado pelo fato de que o processo que resulta na indicação de conectividade de rede ainda compreende acessar um valor limiar do peso de caminho, em que identificar os caminhos para o segundo nó a partir do primeiro nó dentro de uma comunidade de rede compreende identificar somente os caminhos com um peso de caminho normalizado acima do valor limiar do peso de caminho.
13. Sistema, de acordo com a reivindicação 10, caracterizado pelo fato de que determinar um peso de caminho normalizado para cada caminho identificado compreende dividir o produto dos pesos de link de cada link em um caminho identificado pela soma dos pesos de caminho de todos os caminhos identificados.
14. Sistema, de acordo com a reivindicação 10, caracterizado pelo fato de que o valor de conectividade do usuário representa pelo menos um de um valor de confiança do usuário subjetivo ou uma avaliação de competência.
15. Sistema, de acordo com a reivindicação 14, caracterizado pelo fato de que o processo que resulta na indicação de conectividade de rede ainda compreende: acessar dados de classificação de terceiros; e em que a indicação de conectividade de rede é baseada, pelo menos em parte, nos dados de classificações de terceiros.
16. Sistema, de acordo com a reivindicação 10, caracterizado pelo fato de que identificar os caminhos para o segundo nó a partir do primeiro nó dentro de uma comunidade de rede compreende recuperar uma identificação pré-armazenada dos caminhos para o segundo nó a partir do primeiro nó de uma tabela (302, 304, 306, 312) em uma base de dados.
17. Sistema, de acordo com a reivindicação 11, caracterizado pelo fato de que o circuito de controle é ainda configurado para tomar automaticamente pelo menos uma decisão baseada na rede baseada, pelo menos em parte, na indicação de conectividade de rede.
BR112012007316-8A 2009-09-30 2010-09-30 Método e sistemas para determinar a conectividade de rede BR112012007316B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US24734309P 2009-09-30 2009-09-30
US61/247,343 2009-09-30
PCT/CA2010/001531 WO2011038491A1 (en) 2009-09-30 2010-09-30 Systems and methods for social graph data analytics to determine connectivity within a community

Publications (2)

Publication Number Publication Date
BR112012007316A2 BR112012007316A2 (pt) 2016-04-19
BR112012007316B1 true BR112012007316B1 (pt) 2021-09-28

Family

ID=43825460

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112012007316-8A BR112012007316B1 (pt) 2009-09-30 2010-09-30 Método e sistemas para determinar a conectividade de rede

Country Status (9)

Country Link
US (7) US9171338B2 (pt)
EP (1) EP2484054A4 (pt)
JP (3) JP5735969B2 (pt)
CN (3) CN106097107B (pt)
BR (1) BR112012007316B1 (pt)
CA (1) CA2775899C (pt)
IL (2) IL218813A (pt)
MX (1) MX2012003721A (pt)
WO (1) WO2011038491A1 (pt)

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011038491A1 (en) 2009-09-30 2011-04-07 Evan V Chrapko Systems and methods for social graph data analytics to determine connectivity within a community
US20110099164A1 (en) 2009-10-23 2011-04-28 Haim Zvi Melman Apparatus and method for search and retrieval of documents and advertising targeting
US20170358027A1 (en) * 2010-01-14 2017-12-14 Www.Trustscience.Com Inc. Scoring trustworthiness, competence, and/or compatibility of any entity for activities including recruiting or hiring decisions, composing a team, insurance underwriting, credit decisions, or shortening or improving sales cycles
US9264329B2 (en) 2010-03-05 2016-02-16 Evan V Chrapko Calculating trust scores based on social graph statistics
WO2011134086A1 (en) 2010-04-30 2011-11-03 Evan V Chrapko Systems and methods for conducting reliable assessments with connectivity information
US8949270B2 (en) * 2011-03-10 2015-02-03 Salesforce.Com, Inc. Methods and systems for processing social media data
US9369285B2 (en) 2011-04-28 2016-06-14 Qualcomm Incorporated Social network based PKI authentication
US20130061288A1 (en) * 2011-09-06 2013-03-07 Invit Information Services Ltda Method for controlling trust and confidentiality in daily transactions of the digital environment
US10803513B1 (en) * 2011-09-16 2020-10-13 Credit Sesame, Inc. Financial responsibility indicator system and method
US20130129075A1 (en) * 2011-11-22 2013-05-23 Incontact, Inc. Systems and methods of using social media in contact handling systems
CN103139280A (zh) * 2011-11-24 2013-06-05 北京千橡网景科技发展有限公司 在sns社区中获得好友动态的方法和系统
US10311106B2 (en) 2011-12-28 2019-06-04 Www.Trustscience.Com Inc. Social graph visualization and user interface
EP2618274A1 (en) * 2012-01-18 2013-07-24 Alcatel Lucent Method for providing a set of services of a first subset of a social network to a user of a second subset of said social network
US9047643B2 (en) * 2012-03-19 2015-06-02 Alcatel Lucent Method of extending web service application programming interfaces using query languages
US9015073B2 (en) 2012-06-06 2015-04-21 Addepar, Inc. Controlled creation of reports from table views
US9087361B2 (en) * 2012-06-06 2015-07-21 Addepar, Inc. Graph traversal for generating table views
US9576020B1 (en) * 2012-10-18 2017-02-21 Proofpoint, Inc. Methods, systems, and computer program products for storing graph-oriented data on a column-oriented database
US9245312B2 (en) * 2012-11-14 2016-01-26 Facebook, Inc. Image panning and zooming effect
US9083757B2 (en) * 2012-11-21 2015-07-14 Telefonaktiebolaget L M Ericsson LLP Multi-objective server placement determination
US9105062B2 (en) 2012-12-13 2015-08-11 Addepar, Inc. Transaction effects
US10397363B2 (en) 2013-03-27 2019-08-27 Facebook, Inc. Scoring user characteristics
US9524505B2 (en) * 2013-04-01 2016-12-20 International Business Machines Corporation End-to-end effective citizen engagement via advanced analytics and sensor-based personal assistant capability (EECEASPA)
US9342854B2 (en) * 2013-05-08 2016-05-17 Yahoo! Inc. Identifying communities within a social network based on information propagation data
US9721307B2 (en) * 2013-06-20 2017-08-01 Linkedin Corporation Identifying entities based on free text in member records
US20150134402A1 (en) * 2013-11-11 2015-05-14 Yahoo! Inc. System and method for network-oblivious community detection
CN103631901B (zh) * 2013-11-20 2017-01-18 清华大学 一种基于用户信任网络最大生成树的谣言控制方法
CN103678531B (zh) * 2013-12-02 2017-02-08 三星电子(中国)研发中心 好友推荐方法和装置
CN104915879B (zh) * 2014-03-10 2019-08-13 华为技术有限公司 基于金融数据的社会关系挖掘的方法及装置
GB2524073A (en) * 2014-03-14 2015-09-16 Ibm Communication method and system for accessing media data
US10572488B2 (en) 2014-06-13 2020-02-25 Koverse, Inc. System and method for data organization, optimization and analytics
US9424333B1 (en) 2014-09-05 2016-08-23 Addepar, Inc. Systems and user interfaces for dynamic and interactive report generation and editing based on automatic traversal of complex data structures
US9244899B1 (en) 2014-10-03 2016-01-26 Addepar, Inc. Systems and user interfaces for dynamic and interactive table generation and editing based on automatic traversal of complex data structures including time varying attributes
US9218502B1 (en) 2014-10-17 2015-12-22 Addepar, Inc. System and architecture for electronic permissions and security policies for resources in a data system
US9578043B2 (en) * 2015-03-20 2017-02-21 Ashif Mawji Calculating a trust score
WO2016154419A1 (en) 2015-03-25 2016-09-29 Equifax, Inc. Detecting synthetic online entities
US11625651B1 (en) 2015-07-22 2023-04-11 Amazon Technologies, Inc. Repository of customizable itineraries for travel planning
US10643292B1 (en) 2015-07-22 2020-05-05 Amazon Technologies, Inc. Trust-based social graph for travel planning
US11443390B1 (en) 2015-11-06 2022-09-13 Addepar, Inc. Systems and user interfaces for dynamic and interactive table generation and editing based on automatic traversal of complex data structures and incorporation of metadata mapped to the complex data structures
US10732810B1 (en) 2015-11-06 2020-08-04 Addepar, Inc. Systems and user interfaces for dynamic and interactive table generation and editing based on automatic traversal of complex data structures including summary data such as time series data
US10372807B1 (en) 2015-11-11 2019-08-06 Addepar, Inc. Systems and user interfaces for dynamic and interactive table generation and editing based on automatic traversal of complex data structures in a distributed system architecture
US20170180308A1 (en) * 2015-12-18 2017-06-22 Bluedata Software, Inc. Allocation of port addresses in a large-scale processing environment
US20170235792A1 (en) * 2016-02-17 2017-08-17 Www.Trustscience.Com Inc. Searching for entities based on trust score and geography
US9438619B1 (en) 2016-02-29 2016-09-06 Leo M. Chan Crowdsourcing of trustworthiness indicators
US9679254B1 (en) 2016-02-29 2017-06-13 Www.Trustscience.Com Inc. Extrapolating trends in trust scores
US9721296B1 (en) 2016-03-24 2017-08-01 Www.Trustscience.Com Inc. Learning an entity's trust model and risk tolerance to calculate a risk score
TWI814707B (zh) * 2016-08-14 2023-09-11 加拿大商Www信託科技公司 有助於金融交易之方法和系統
US10356075B2 (en) * 2017-03-15 2019-07-16 International Business Machines Corporation Automated verification of chains of credentials
US10180969B2 (en) 2017-03-22 2019-01-15 Www.Trustscience.Com Inc. Entity resolution and identity management in big, noisy, and/or unstructured data
US10762068B2 (en) * 2018-04-04 2020-09-01 Sap Se Virtual columns to expose row specific details for query execution in column store databases
CN110377535B (zh) * 2018-04-13 2020-11-06 北京忆芯科技有限公司 分布式kv存储系统
US10673722B2 (en) * 2018-11-06 2020-06-02 Uber Technologies, Inc. Search result suggestions based on dynamic network latency classification
EP3987448A1 (en) * 2019-06-18 2022-04-27 Qualcomm Incorporated Optimizing machine learning model performance
US11729077B2 (en) 2019-11-29 2023-08-15 Amazon Technologies, Inc. Configuration and management of scalable global private networks
US11533231B2 (en) 2019-11-29 2022-12-20 Amazon Technologies, Inc. Configuration and management of scalable global private networks
US11336528B2 (en) 2019-11-29 2022-05-17 Amazon Technologies, Inc. Configuration and management of scalable global private networks
US10999169B1 (en) * 2019-11-29 2021-05-04 Amazon Technologies, Inc. Configuration and management of scalable global private networks
WO2021184367A1 (zh) * 2020-03-20 2021-09-23 清华大学 基于度分布生成模型的社交网络图生成方法
US20230245789A1 (en) 2020-06-18 2023-08-03 Nec Corporation Method and device for adaptively displaying at least one potential subject and a target subject
CN112380267B (zh) * 2020-10-21 2022-08-05 山东大学 一种基于隐私图的社区发现方法
US20220303280A1 (en) * 2021-03-19 2022-09-22 Seagate Technology Llc Monitoring trust levels of nodes in a computer network

Family Cites Families (266)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1992022972A1 (fr) 1991-06-19 1992-12-23 Fujitsu Limited Systeme de transfert d'informations de discrimination d'itineraires de paquets
US6108308A (en) 1996-09-17 2000-08-22 International Business Machines Corporation System and method for dynamic video routing
US5860605A (en) 1996-10-11 1999-01-19 Johannes Petrus Andreas Josephus Van Der Zanden Method and device for synchronously making material collide
JP3436871B2 (ja) 1997-10-23 2003-08-18 株式会社東芝 通信資源管理方法及びノード装置
SG77163A1 (en) 1998-03-06 2000-12-19 John Francis Chong A method of implementing an acyclic directed graph structure using a relational database
US6509898B2 (en) 1998-04-17 2003-01-21 Xerox Corporation Usage based methods of traversing and displaying generalized graph structures
US6751729B1 (en) 1998-07-24 2004-06-15 Spatial Adventures, Inc. Automated operation and security system for virtual private networks
US6356902B1 (en) 1998-07-28 2002-03-12 Matsushita Electric Industrial Co., Ltd. Method and system for storage and retrieval of multimedia objects
US6286007B1 (en) 1998-10-13 2001-09-04 International Business Machines Corporation Method and system for efficiently storing and viewing data in a database
US6823299B1 (en) 1999-07-09 2004-11-23 Autodesk, Inc. Modeling objects, systems, and simulations by establishing relationships in an event-driven graph in a computer implemented graphics system
US6446048B1 (en) 1999-09-03 2002-09-03 Intuit, Inc. Web-based entry of financial transaction information and subsequent download of such information
US7086085B1 (en) 2000-04-11 2006-08-01 Bruce E Brown Variable trust levels for authentication
JP2001298453A (ja) 2000-04-14 2001-10-26 Fuji Xerox Co Ltd ネットワーク表示装置
US7123620B1 (en) 2000-04-25 2006-10-17 Cisco Technology, Inc. Apparatus and method for scalable and dynamic traffic engineering in a data communication network
JP2002123649A (ja) 2000-10-13 2002-04-26 Nippon Telegr & Teleph Corp <Ntt> 信用調査装置、信用調査方法及び信用調査装置における信用調査プログラムを記録した記録媒体
US7306909B2 (en) 2000-10-30 2007-12-11 Monsanto Technology Llc Canola event pv-bngt04(rt73) and compositions and methods for detection thereof
US6738777B2 (en) 2000-12-20 2004-05-18 Microsoft Corporation Chaining actions for a directed graph
US6708308B2 (en) 2001-01-10 2004-03-16 International Business Machines Corporation Soft output viterbi algorithm (SOVA) with error filters
US7130908B1 (en) 2001-03-13 2006-10-31 Intelsat Ltd. Forward cache management between edge nodes in a satellite based content delivery system
US7002927B2 (en) 2001-08-01 2006-02-21 International Business Machines Corporation Self-scaling network
US6912549B2 (en) 2001-09-05 2005-06-28 Siemens Medical Solutions Health Services Corporation System for processing and consolidating records
US7130262B1 (en) * 2002-01-16 2006-10-31 At & T Corp. Method and apparatus for providing alternative link weights for failed network paths
JP3792166B2 (ja) 2002-02-27 2006-07-05 株式会社リコー インターネットファクシミリ装置
US20030172291A1 (en) 2002-03-08 2003-09-11 Paul Judge Systems and methods for automated whitelisting in monitored communications
US7069483B2 (en) 2002-05-13 2006-06-27 Kiyon, Inc. System and method for identifying nodes in a wireless mesh network
US20080015916A1 (en) 2002-05-22 2008-01-17 International Business Machines Corporation Using configurable programmatic rules for automatically changing a trust status of candidates contained in a private business registry
US7633867B2 (en) * 2002-06-10 2009-12-15 Alcatel-Lucent Usa Inc. Capacity allocation for networks having path length routing constraints
US7069259B2 (en) 2002-06-28 2006-06-27 Microsoft Corporation Multi-attribute specification of preferences about people, priorities and privacy for guiding messaging and communications
US8237714B1 (en) 2002-07-02 2012-08-07 James Burke Layered and vectored graphical user interface to a knowledge and relationship rich data source
US7539697B1 (en) 2002-08-08 2009-05-26 Spoke Software Creation and maintenance of social relationship network graphs
US7139837B1 (en) 2002-10-04 2006-11-21 Ipolicy Networks, Inc. Rule engine
US7225118B2 (en) 2002-10-31 2007-05-29 Hewlett-Packard Development Company, L.P. Global data placement
US20040122803A1 (en) * 2002-12-19 2004-06-24 Dom Byron E. Detect and qualify relationships between people and find the best path through the resulting social network
JP4068473B2 (ja) 2003-02-19 2008-03-26 株式会社東芝 ストレージ装置、分担範囲決定方法及びプログラム
US8386301B2 (en) 2003-03-03 2013-02-26 Arjuna Indraeswaran Rajasingham Professional collaboration networks
US7603291B2 (en) 2003-03-14 2009-10-13 Sap Aktiengesellschaft Multi-modal sales applications
US20040181518A1 (en) 2003-03-14 2004-09-16 Mayo Bryan Edward System and method for an OLAP engine having dynamic disaggregation
MXPA04007406A (es) 2003-05-17 2005-02-17 Microsoft Corp Mecanismo para evaluar riesgos de seguridad.
US20040239674A1 (en) 2003-06-02 2004-12-02 Microsoft Corporation Modeling graphs as XML information sets and describing graphs with XML schema
US7822631B1 (en) 2003-08-22 2010-10-26 Amazon Technologies, Inc. Assessing content based on assessed trust in users
ES2306830T3 (es) 2003-08-28 2008-11-16 NOKIA SIEMENS NETWORKS GMBH &amp; CO. KG Procedimiento de transmision de paquetes de datos a traves de una red.
US7668665B2 (en) 2003-09-22 2010-02-23 Advanced Structure Monitoring, Inc. Methods of networking interrogation devices for structural conditions
JP2005135071A (ja) * 2003-10-29 2005-05-26 Hewlett-Packard Development Co Lp 商品購入における信頼値の算出方法及び装置
JP2005149202A (ja) 2003-11-17 2005-06-09 Nippon Telegr & Teleph Corp <Ntt> コミュニティ形成システム、コミュニティ形成方法、プログラム、及び記録媒体
US7249129B2 (en) 2003-12-29 2007-07-24 The Generations Network, Inc. Correlating genealogy records systems and methods
US20050243736A1 (en) 2004-04-19 2005-11-03 International Business Machines Corporation System, method, and service for finding an optimal collection of paths among a plurality of paths between two nodes in a complex network
US7856449B1 (en) 2004-05-12 2010-12-21 Cisco Technology, Inc. Methods and apparatus for determining social relevance in near constant time
US7426557B2 (en) * 2004-05-14 2008-09-16 International Business Machines Corporation System, method, and service for inducing a pattern of communication among various parties
US8010458B2 (en) 2004-05-26 2011-08-30 Facebook, Inc. System and method for managing information flow between members of an online social network
JP2005339281A (ja) 2004-05-27 2005-12-08 Ntt Communications Kk 信用度算出装置、信用度算出方法、及びそのプログラム
US7805407B1 (en) 2004-06-16 2010-09-28 Oracle America, Inc. System and method for dynamic configuration of replicated database servers
US8621215B1 (en) 2004-06-30 2013-12-31 Google Inc. Methods and systems for creating monetary accounts for members in a social network
US8302164B2 (en) * 2004-07-22 2012-10-30 Facebook, Inc. Authorization and authentication based on an individual's social network
US8010460B2 (en) 2004-09-02 2011-08-30 Linkedin Corporation Method and system for reputation evaluation of online users in a social networking scheme
US8392590B2 (en) 2004-09-10 2013-03-05 Cavium, Inc. Deterministic finite automata (DFA) processing
US20130097184A1 (en) 2004-09-15 2013-04-18 Yahoo! Inc. Automatic updating of trust networks in recommender systems
JP4543871B2 (ja) * 2004-10-15 2010-09-15 富士ゼロックス株式会社 情報処理システム及び情報処理方法、並びにコンピュータ・プログラム
JP2008519332A (ja) 2004-10-28 2008-06-05 ヤフー! インコーポレイテッド 信頼ネットワークを含むユーザ判断を一体化したサーチシステム及び方法
WO2006047879A1 (en) 2004-11-04 2006-05-11 Topeer Corporation System and method for creating a secure trusted social network
US7733804B2 (en) 2004-11-29 2010-06-08 Signacert, Inc. Method and apparatus to establish routes based on the trust scores of routers within an IP routing domain
US7272719B2 (en) 2004-11-29 2007-09-18 Signacert, Inc. Method to control access between network endpoints based on trust scores calculated from information system component analysis
US8266676B2 (en) 2004-11-29 2012-09-11 Harris Corporation Method to verify the integrity of components on a trusted platform using integrity database services
US8121886B2 (en) 2004-12-03 2012-02-21 Ryma Technology Solutions Inc. Confidence based selection for survey sampling
EP1856640A2 (en) 2005-03-02 2007-11-21 Markmonitor, Inc. Trust evaluation systems and methods
KR100690021B1 (ko) * 2005-03-15 2007-03-08 엔에이치엔(주) 다면적인 관계 설정을 촉진하기 위한 온라인상 휴먼네트워크 관리 시스템 및 방법
JP2006260099A (ja) 2005-03-16 2006-09-28 Fuji Xerox Co Ltd ユーザ間関係算出装置および方法
US7743254B2 (en) 2005-03-23 2010-06-22 Microsoft Corporation Visualization of trust in an address bar
US20060248573A1 (en) 2005-04-28 2006-11-02 Content Guard Holdings, Inc. System and method for developing and using trusted policy based on a social model
US7958120B2 (en) 2005-05-10 2011-06-07 Netseer, Inc. Method and apparatus for distributed community finding
JP2007004411A (ja) * 2005-06-23 2007-01-11 Hewlett-Packard Development Co Lp 複数の信頼ネットワークグラフの統合装置・方法
US20060290697A1 (en) 2005-06-24 2006-12-28 Tom Sawyer Software System for arranging a plurality of relational nodes into graphical layout form
WO2007002820A2 (en) 2005-06-28 2007-01-04 Yahoo! Inc. Search engine with augmented relevance ranking by community participation
US9167053B2 (en) 2005-09-29 2015-10-20 Ipass Inc. Advanced network characterization
WO2007085903A2 (en) 2005-10-07 2007-08-02 Sap Ag Enterprise integrity content generation and utilization
US20070087819A1 (en) 2005-10-14 2007-04-19 Leviathan Entertainment, Llc Financial institutions and instruments in a virtual environment
US20070136086A1 (en) 2005-10-17 2007-06-14 Luerssen Brian T System and method for providing location-based information to a mobile device
JP2007140843A (ja) 2005-11-17 2007-06-07 Fuji Xerox Co Ltd リンク関係表示装置、リンク関係表示装置の制御方法及びプログラム
WO2007062885A1 (en) 2005-11-29 2007-06-07 International Business Machines Corporation Method and system for extracting and visualizing graph-structured relations from unstructured text
EP1969555A4 (en) * 2005-12-16 2013-03-13 John Stannard Davis ASSESSMENT SYSTEM BASED ON TRUST
US20070162761A1 (en) 2005-12-23 2007-07-12 Davis Bruce L Methods and Systems to Help Detect Identity Fraud
US7877353B2 (en) 2006-03-13 2011-01-25 Ebay Inc. Peer-to-peer trading platform with relative reputation-based item search and buddy rating
JP5087850B2 (ja) * 2006-03-14 2012-12-05 富士通株式会社 サービス仲介方法、サービス仲介装置及びサービス仲介システム
US7865551B2 (en) 2006-05-05 2011-01-04 Sony Online Entertainment Llc Determining influential/popular participants in a communication network
US8018471B2 (en) 2006-05-15 2011-09-13 Microsoft Corporation Visual component/clause merging
US7961189B2 (en) 2006-05-16 2011-06-14 Sony Corporation Displaying artists related to an artist of interest
US8261078B2 (en) * 2006-06-09 2012-09-04 Telefonaktiebolaget Lm Ericsson (Publ) Access to services in a telecommunications network
US7458049B1 (en) 2006-06-12 2008-11-25 Magma Design Automation, Inc. Aggregate sensitivity for statistical static timing analysis
US20080005096A1 (en) 2006-06-29 2008-01-03 Yahoo! Inc. Monetization of characteristic values predicted using network-based social ties
US7685192B1 (en) 2006-06-30 2010-03-23 Amazon Technologies, Inc. Method and system for displaying interest space user communities
US7596597B2 (en) 2006-08-31 2009-09-29 Microsoft Corporation Recommending contacts in a social network
US20080133391A1 (en) 2006-09-05 2008-06-05 Kerry Ivan Kurian User interface for sociofinancial systems and methods
US8190610B2 (en) 2006-10-05 2012-05-29 Yahoo! Inc. MapReduce for distributed database processing
US8566252B2 (en) 2006-10-17 2013-10-22 Benjamin L. Harding Method and system for evaluating trustworthiness
US7706265B2 (en) 2006-10-30 2010-04-27 Telefonaktiebolaget L M Ericsson (Publ) Decentralized node, access edge node, and access node for aggregating data traffic over an access domain, and method thereof
US20080104225A1 (en) 2006-11-01 2008-05-01 Microsoft Corporation Visualization application for mining of social networks
JP5020610B2 (ja) 2006-11-24 2012-09-05 株式会社日立ソリューションズ 社会ネットワーク解析処理装置
US7886334B1 (en) 2006-12-11 2011-02-08 Qurio Holdings, Inc. System and method for social network trust assessment
WO2008089364A1 (en) 2007-01-17 2008-07-24 Weidner David P Multi-level path mapping for street grid and non-street grid entities
US10007895B2 (en) 2007-01-30 2018-06-26 Jonathan Brian Vanasco System and method for indexing, correlating, managing, referencing and syndicating identities and relationships across systems
WO2008120267A1 (ja) 2007-03-28 2008-10-09 Fujitsu Limited エッジノード冗長システム
US8838478B2 (en) 2007-05-11 2014-09-16 Sony Corporation Targeted advertising in mobile devices
GB2440015B (en) * 2007-05-18 2008-07-09 Cvon Innovations Ltd Allocation system and method
US7685141B2 (en) 2007-06-06 2010-03-23 Yahoo! Inc. Connection sub-graphs in entity relationship graphs
US20110206673A1 (en) 2007-06-27 2011-08-25 Liu Dongxu Polypeptides and polynucleotides for artemin and related ligands, and methods of use thereof
JP2009025871A (ja) * 2007-07-17 2009-02-05 Hewlett-Packard Development Co Lp アクセス制限装置およびその方法。
US8874572B1 (en) * 2007-07-31 2014-10-28 Megree, Inc. Method and computer program product for operating a social networking site
DE602007002633D1 (de) 2007-08-08 2009-11-12 Sap Ag Verfahren und System zur Durchführung eines Abgleichs unauffindbarer Geheimnisse
US20110135648A1 (en) 2007-08-08 2011-06-09 Biogen Idec Ma Inc. Anti-neublastin antibodies and uses thereof
US8725673B2 (en) * 2007-08-22 2014-05-13 Linkedin Corporation Evaluating an item based on user reputation information
KR101391599B1 (ko) 2007-09-05 2014-05-09 삼성전자주식회사 컨텐트에서의 등장 인물간의 관계에 대한 정보 생성 방법및 그 장치
US8255975B2 (en) 2007-09-05 2012-08-28 Intel Corporation Method and apparatus for a community-based trust
US7917574B2 (en) * 2007-10-01 2011-03-29 Accenture Global Services Limited Infrastructure for parallel programming of clusters of machines
US9536256B2 (en) 2007-10-08 2017-01-03 First Data Corporation Systems and methods for stored-value exchange within social networking environments
US8214883B2 (en) 2007-10-22 2012-07-03 Microsoft Corporation Using social networks while respecting access control lists
JP2009146253A (ja) * 2007-12-17 2009-07-02 Sony Corp 情報処理装置、情報処理方法、およびプログラム
US20090198562A1 (en) 2008-01-31 2009-08-06 Guenter Wiesinger Generating social graph using market data
US20120095955A1 (en) * 2008-03-06 2012-04-19 Arun Darlie Koshy Facilitating relationships and information transactions
US8606721B1 (en) 2008-03-11 2013-12-10 Amazon Technologies, Inc. Implicit social graph edge strengths
US20090276233A1 (en) 2008-05-05 2009-11-05 Brimhall Jeffrey L Computerized credibility scoring
US20090327054A1 (en) 2008-06-27 2009-12-31 Microsoft Corporation Personal reputation system based on social networking
US8108536B1 (en) 2008-06-30 2012-01-31 Symantec Corporation Systems and methods for determining the trustworthiness of a server in a streaming environment
US7930255B2 (en) 2008-07-02 2011-04-19 International Business Machines Corporation Social profile assessment
US8364605B2 (en) 2008-07-13 2013-01-29 Tros Interactive Ltd. Calculating connectivity, social proximity and trust level between web user
US8943549B2 (en) 2008-08-12 2015-01-27 First Data Corporation Methods and systems for online fraud protection
US8010602B2 (en) * 2008-08-28 2011-08-30 Microsoft Corporation Leveraging communications to identify social network friends
US20100076987A1 (en) 2008-09-10 2010-03-25 Benjamin Schreiner Trust Profile Aggregation from Various Trust Record Sources
WO2010048172A1 (en) 2008-10-20 2010-04-29 Cascaad Srl Social graph based recommender
US8108933B2 (en) 2008-10-21 2012-01-31 Lookout, Inc. System and method for attack and malware prevention
US20100106557A1 (en) 2008-10-24 2010-04-29 Novell, Inc. System and method for monitoring reputation changes
US7974983B2 (en) 2008-11-13 2011-07-05 Buzzient, Inc. Website network and advertisement analysis using analytic measurement of online social media content
CN101393566A (zh) * 2008-11-17 2009-03-25 北京交通大学 基于网络结构用户行为模式的信息跟踪与检测方法及系统
JP5640015B2 (ja) 2008-12-01 2014-12-10 トプシー ラブズ インコーポレイテッド 計算された評判又は影響度スコアに基づくランキング及び選択エンティティ
CN102246174B (zh) 2008-12-12 2014-11-12 皇家飞利浦电子股份有限公司 用于在采用异构信任模型的分布式和自治保健环境中改进记录链接的自动决断再利用
US9740753B2 (en) 2008-12-18 2017-08-22 International Business Machines Corporation Using spheres-of-influence to characterize network relationships
US20100169137A1 (en) 2008-12-31 2010-07-01 Ebay Inc. Methods and systems to analyze data using a graph
US8065433B2 (en) 2009-01-09 2011-11-22 Microsoft Corporation Hybrid butterfly cube architecture for modular data centers
US8170958B1 (en) 2009-01-29 2012-05-01 Intuit Inc. Internet reputation manager
US8539359B2 (en) 2009-02-11 2013-09-17 Jeffrey A. Rapaport Social network driven indexing system for instantly clustering people with concurrent focus on same topic into on-topic chat rooms and/or for generating on-topic search results tailored to user preferences regarding topic
US20100217525A1 (en) 2009-02-25 2010-08-26 King Simon P System and Method for Delivering Sponsored Landmark and Location Labels
US8689172B2 (en) 2009-03-24 2014-04-01 International Business Machines Corporation Mining sequential patterns in weighted directed graphs
US9817872B2 (en) 2009-03-26 2017-11-14 International Business Machines Corporation Method and apparatus for social trust networks on messaging platforms
US8234688B2 (en) 2009-04-03 2012-07-31 International Business Machines Corporation Managing privacy settings for a social network
US8306973B2 (en) 2009-04-06 2012-11-06 Google Inc. Method for generating location targeted, keyword-triggered, ads and generating user recallable layer-based ads
US20100262610A1 (en) 2009-04-09 2010-10-14 International Business Machines Corporation Identifying Subject Matter Experts
US10257016B2 (en) 2009-06-08 2019-04-09 Wsou Investments, Llc Virtual leased line address resolution protocol cache for customer edge internet protocol addresses
US8583571B2 (en) 2009-07-30 2013-11-12 Marchex, Inc. Facility for reconciliation of business records using genetic algorithms
CA2675701A1 (en) 2009-08-27 2009-11-05 Ibm Canada Limited - Ibm Canada Limitee Trust assertion using hierarchical weights
WO2011038491A1 (en) 2009-09-30 2011-04-07 Evan V Chrapko Systems and methods for social graph data analytics to determine connectivity within a community
US20110099164A1 (en) 2009-10-23 2011-04-28 Haim Zvi Melman Apparatus and method for search and retrieval of documents and advertising targeting
US8239364B2 (en) 2009-12-08 2012-08-07 Facebook, Inc. Search and retrieval of objects in a social networking system
US8443366B1 (en) 2009-12-11 2013-05-14 Salesforce.Com, Inc. Techniques for establishing a parallel processing framework for a multi-tenant on-demand database system
US8484154B2 (en) 2009-12-14 2013-07-09 Intel Corporation Methods and systems to traverse graph-based networks
US20110173344A1 (en) 2010-01-12 2011-07-14 Mihaly Attila System and method of reducing intranet traffic on bottleneck links in a telecommunications network
US20130173457A1 (en) 2010-01-14 2013-07-04 Evan V. Chrapko Systems and methods for conducting more reliable financial transactions, credit decisions, and security assessments
CN102136114A (zh) 2010-01-21 2011-07-27 维鹏信息技术(上海)有限公司 一种通过优惠券终端获取优惠券的控制方法以及相应系统
US8195883B2 (en) 2010-01-27 2012-06-05 Oracle America, Inc. Resource sharing to reduce implementation costs in a multicore processor
US20110184983A1 (en) 2010-01-28 2011-07-28 Her Majesty The Queen In Right Of Canada As Represented By The Minister Method and system for extracting and characterizing relationships between entities mentioned in documents
US8930383B2 (en) 2010-01-29 2015-01-06 The Dun & Bradstreet Corporation System and method for aggregation and association of professional affiliation data with commercial data content
EP2534632B1 (en) 2010-02-08 2017-01-18 Facebook, Inc. Communicating information in a social network system about activities from another domain
US9264329B2 (en) 2010-03-05 2016-02-16 Evan V Chrapko Calculating trust scores based on social graph statistics
CN101902459B (zh) 2010-03-18 2013-01-30 中国科学院计算技术研究所 应用p4p的p2p网络中的节点信任选择方法及其系统
WO2011116528A1 (en) 2010-03-26 2011-09-29 Nokia Corporation Method and apparatus for providing a trust level to access a resource
US8812585B2 (en) 2010-03-29 2014-08-19 Google Inc. Trusted maps: updating map locations using trust-based social graphs
WO2011127206A2 (en) 2010-04-06 2011-10-13 Right90, Inc. Trust rating metric for future event prediction of an outcome
CN101841539A (zh) 2010-04-16 2010-09-22 工业和信息化部电信传输研究所 一种基于信任度的网格资源分配方法、装置及系统
US8918418B2 (en) 2010-04-19 2014-12-23 Facebook, Inc. Default structured search queries on online social networks
US8180804B1 (en) 2010-04-19 2012-05-15 Facebook, Inc. Dynamically generating recommendations based on social graph information
US8244848B1 (en) 2010-04-19 2012-08-14 Facebook, Inc. Integrated social network environment
US8572129B1 (en) 2010-04-19 2013-10-29 Facebook, Inc. Automatically generating nodes and edges in an integrated social graph
US9530166B2 (en) 2010-04-21 2016-12-27 Facebook, Inc. Social graph that includes web pages outside of a social networking system
WO2011134086A1 (en) 2010-04-30 2011-11-03 Evan V Chrapko Systems and methods for conducting reliable assessments with connectivity information
US9990429B2 (en) 2010-05-14 2018-06-05 Microsoft Technology Licensing, Llc Automated social networking graph mining and visualization
CA2704866A1 (en) 2010-05-19 2011-11-19 Vendasta Technologies Inc. Unifying social graphs across multiple social networks
US20110295626A1 (en) 2010-05-28 2011-12-01 Microsoft Corporation Influence assessment in social networks
US20110314557A1 (en) 2010-06-16 2011-12-22 Adknowledge, Inc. Click Fraud Control Method and System
US8489641B1 (en) 2010-07-08 2013-07-16 Google Inc. Displaying layers of search results on a map
US8150844B2 (en) 2010-08-18 2012-04-03 Facebook, Inc. Location ranking using social graph information
US8832093B2 (en) 2010-08-18 2014-09-09 Facebook, Inc. Dynamic place visibility in geo-social networking system
US20140172708A1 (en) 2010-09-16 2014-06-19 Evan V Chrapko Systems and methods for providing virtual currencies
US8560605B1 (en) * 2010-10-21 2013-10-15 Google Inc. Social affinity on the web
TWI447584B (zh) 2010-11-01 2014-08-01 Inst Information Industry 多人共享之網路儲存服務系統與方法
JP2012146377A (ja) 2011-01-14 2012-08-02 Elpida Memory Inc 半導体装置
US20120197758A1 (en) 2011-01-27 2012-08-02 Ebay Inc. Computation of user reputation based on transaction graph
US9147273B1 (en) * 2011-02-16 2015-09-29 Hrl Laboratories, Llc System and method for modeling and analyzing data via hierarchical random graphs
GB2488373A (en) 2011-02-28 2012-08-29 Hsbc Holdings Plc Database ranks results based on reputational scores
CN102685661A (zh) 2011-03-15 2012-09-19 芯讯通无线科技(上海)有限公司 服务信息搜索装置、移动终端及搜索服务信息的方法
US9202200B2 (en) 2011-04-27 2015-12-01 Credibility Corp. Indices for credibility trending, monitoring, and lead generation
US20120282884A1 (en) 2011-05-05 2012-11-08 Nicholas Sun System and method for the emergency voice and image e-mail transmitter device
US20120290427A1 (en) * 2011-05-09 2012-11-15 Respect Network Corporation Apparatus and Method for Managing a Trust Network
US8667012B2 (en) 2011-06-09 2014-03-04 Salesforce.Com, Inc. Methods and systems for using distributed memory and set operations to process social networks
TW201250611A (en) 2011-06-14 2012-12-16 Pushme Co Ltd Message delivery system with consumer attributes collecting mechanism and transaction history recording mechanism and communication system using same
US8751621B2 (en) 2011-06-16 2014-06-10 Radiumone, Inc. Building a social graph based on links received and selected by receiving users of the open web
CN102855572B (zh) 2011-07-01 2016-03-09 北京亚投科技有限责任公司 移动交互式点餐定位服务系统和方法
US8965848B2 (en) 2011-08-24 2015-02-24 International Business Machines Corporation Entity resolution based on relationships to a common entity
WO2013026095A1 (en) 2011-08-25 2013-02-28 Matsumoto Yashimasa Social rating system
US9171336B2 (en) * 2011-08-29 2015-10-27 Bank Of America Corporation Cumulative connectedness
US10096033B2 (en) 2011-09-15 2018-10-09 Stephan HEATH System and method for providing educational related social/geo/promo link promotional data sets for end user display of interactive ad links, promotions and sale of products, goods, and/or services integrated with 3D spatial geomapping, company and local information for selected worldwide locations and social networking
US11151617B2 (en) 2012-03-09 2021-10-19 Nara Logics, Inc. Systems and methods for providing recommendations based on collaborative and/or content-based nodal interrelationships
US8601025B1 (en) 2011-09-28 2013-12-03 Emc Corporation Techniques using a bidirectional graph for reporting to clients
US8977611B2 (en) 2011-10-18 2015-03-10 Facebook, Inc. Ranking objects by social relevance
US20130110732A1 (en) 2011-10-27 2013-05-02 NetOrbis Social Media Private Limited System and method for evaluating trustworthiness of users in a social network
WO2013063474A1 (en) 2011-10-28 2013-05-02 Scargo, Inc. Security policy deployment and enforcement system for the detection and control of polymorphic and targeted malware
KR101986312B1 (ko) 2011-11-04 2019-06-05 주식회사 케이티 신뢰관계 형성 방법 및 이를 위한 내장 uⅰcc
US8832790B1 (en) 2011-12-19 2014-09-09 Emc Corporation Fraud detection in adaptive authentication systems
US10311106B2 (en) 2011-12-28 2019-06-04 Www.Trustscience.Com Inc. Social graph visualization and user interface
US9390243B2 (en) 2012-02-28 2016-07-12 Disney Enterprises, Inc. Dynamic trust score for evaluating ongoing online relationships
US9971993B2 (en) * 2012-03-26 2018-05-15 Microsoft Technology Licensing, Llc Leveraging a social graph for use with electronic messaging
US20130290226A1 (en) 2012-04-05 2013-10-31 Maynard Dokken System and method for social graph and graph assets valuation and monetization
US9961021B2 (en) 2012-04-19 2018-05-01 Cisco Technology, Inc. Enabling applications in a multi-transport stack environment
US20130291098A1 (en) 2012-04-30 2013-10-31 Seong Taek Chung Determining trust between parties for conducting business transactions
WO2013173790A1 (en) 2012-05-17 2013-11-21 Luvocracy Inc. Trust graphs
CN103456233A (zh) 2012-05-28 2013-12-18 腾讯科技(深圳)有限公司 一种基于电子地图查找兴趣点的方法和系统
CN103593764A (zh) 2012-08-14 2014-02-19 崔名宇 一种基于android手机的服务及位置信息收集系统
US20140081652A1 (en) 2012-09-14 2014-03-20 Risk Management Solutions Llc Automated Healthcare Risk Management System Utilizing Real-time Predictive Models, Risk Adjusted Provider Cost Index, Edit Analytics, Strategy Management, Managed Learning Environment, Contact Management, Forensic GUI, Case Management And Reporting System For Preventing And Detecting Healthcare Fraud, Abuse, Waste And Errors
US20140089189A1 (en) 2012-09-27 2014-03-27 S. Rao Vasireddy System, method, and apparatus to evaluate transaction security risk
US9208460B2 (en) 2012-10-19 2015-12-08 Lexisnexis, A Division Of Reed Elsevier Inc. System and methods to facilitate analytics with a tagged corpus
US9106681B2 (en) 2012-12-17 2015-08-11 Hewlett-Packard Development Company, L.P. Reputation of network address
CN103095728B (zh) 2013-02-07 2016-04-27 重庆大学 一种基于行为数据融合的网络安全评分系统和方法
US20140278730A1 (en) 2013-03-14 2014-09-18 Memorial Healthcare System Vendor management system and method for vendor risk profile and risk relationship generation
US20140280095A1 (en) 2013-03-15 2014-09-18 Nevada Funding Group Inc. Systems, methods and apparatus for rating and filtering online content
US11232447B2 (en) 2013-03-15 2022-01-25 Allowify Llc System and method for enhanced transaction authorization
US10296625B2 (en) 2013-03-16 2019-05-21 Fadi Victor Micaelian Computerized system and method for identifying relationships
US20140279352A1 (en) 2013-03-18 2014-09-18 Stuart Schaefer System and methods of providing a fungible consumer services marketplace
US9613341B2 (en) 2013-03-21 2017-04-04 Infosys Limited Calculating trust score on web based platform
US9350805B2 (en) 2013-04-09 2016-05-24 Martin Hamilton Allocation of crowdsourced resources
US20140317003A1 (en) 2013-04-18 2014-10-23 Netspective Communications Llc System and method for facilitating crowdsourced credentialing and accreditation
US9319419B2 (en) 2013-09-26 2016-04-19 Wave Systems Corp. Device identification scoring
US9785696B1 (en) 2013-10-04 2017-10-10 Google Inc. Automatic discovery of new entities using graph reconciliation
GB2519545A (en) 2013-10-24 2015-04-29 Ibm Determining a quality parameter for a verification environment
US20150121456A1 (en) 2013-10-25 2015-04-30 International Business Machines Corporation Exploiting trust level lifecycle events for master data to publish security events updating identity management
US9154491B1 (en) 2013-11-15 2015-10-06 Google Inc. Trust modeling
US9143503B2 (en) 2013-12-10 2015-09-22 Dell Products, L.P. Managing trust relationships
US20150169142A1 (en) 2013-12-16 2015-06-18 Co Everywhere, Inc. User interface for providing geographically delineated content
US9460215B2 (en) 2013-12-19 2016-10-04 Facebook, Inc. Ranking recommended search queries on online social networks
US20160342679A1 (en) 2014-01-16 2016-11-24 Shanghai Fusion Management Software Co., Ltd. Recommendation method and recommendation system applied to social network
US10445699B2 (en) 2014-01-30 2019-10-15 Mentor Graphics Corporation Social electronic design automation
US20150242856A1 (en) 2014-02-21 2015-08-27 International Business Machines Corporation System and Method for Identifying Procurement Fraud/Risk
US9560076B2 (en) 2014-03-19 2017-01-31 Verizon Patent And Licensing Inc. Secure trust-scored distributed multimedia collaboration session
US9947060B2 (en) 2014-06-03 2018-04-17 Excalibur Ip, Llc Information matching and match validation
US20150359039A1 (en) 2014-06-06 2015-12-10 Umbrellium LTD. System for facilitating searching in the internet of things
US9846896B2 (en) 2014-06-22 2017-12-19 Netspective Communications Llc Aggregation of rating indicators
US20160004741A1 (en) 2014-07-01 2016-01-07 Encompass Corporation Pty Ltd. Method and apparatus for managing corporate data
US9501791B2 (en) 2014-07-18 2016-11-22 Mark V. Dziuk Online marketplace with seller financing
US20160035046A1 (en) 2014-07-31 2016-02-04 Linkedln Corporation Influencer score
US9398467B2 (en) 2014-09-05 2016-07-19 Verizon Patent And Licensing Inc. System and method for providing extension of network coverage
US20160171531A1 (en) 2014-12-11 2016-06-16 Connectivity, Inc. Systems and Methods for Generating Advertising Targeting Data Using Customer Profiles Generated from Customer Data Aggregated from Multiple Information Sources
US9430498B2 (en) 2014-12-13 2016-08-30 Velvet Ropes, Inc. Methods and systems for generating a digital celebrity map tour guide
CN104504043A (zh) 2014-12-16 2015-04-08 新余兴邦信息产业有限公司 一种基于智能终端的搜索优质商家的方法及装置
US10672390B2 (en) 2014-12-22 2020-06-02 Rovi Guides, Inc. Systems and methods for improving speech recognition performance by generating combined interpretations
US11328307B2 (en) 2015-02-24 2022-05-10 OpSec Online, Ltd. Brand abuse monitoring system with infringement detection engine and graphical user interface
US9578043B2 (en) 2015-03-20 2017-02-21 Ashif Mawji Calculating a trust score
CN104954492B (zh) 2015-06-30 2019-02-15 百度在线网络技术(北京)有限公司 即时通讯方法、分发服务器、用户终端及即时通讯系统
US20170024749A1 (en) 2015-07-23 2017-01-26 Concert7 System and method for determining targeted paths based on influence analytics
US9602674B1 (en) 2015-07-29 2017-03-21 Mark43, Inc. De-duping identities using network analysis and behavioral comparisons
US20170083820A1 (en) 2015-09-21 2017-03-23 International Business Machines Corporation Posterior probabilistic model for bucketing records
US11443390B1 (en) 2015-11-06 2022-09-13 Addepar, Inc. Systems and user interfaces for dynamic and interactive table generation and editing based on automatic traversal of complex data structures and incorporation of metadata mapped to the complex data structures
US10732810B1 (en) 2015-11-06 2020-08-04 Addepar, Inc. Systems and user interfaces for dynamic and interactive table generation and editing based on automatic traversal of complex data structures including summary data such as time series data
US10268976B2 (en) 2016-02-17 2019-04-23 SecurityScorecard, Inc. Non-intrusive techniques for discovering and using organizational relationships
US9438619B1 (en) 2016-02-29 2016-09-06 Leo M. Chan Crowdsourcing of trustworthiness indicators
US9679254B1 (en) 2016-02-29 2017-06-13 Www.Trustscience.Com Inc. Extrapolating trends in trust scores
US9721296B1 (en) 2016-03-24 2017-08-01 Www.Trustscience.Com Inc. Learning an entity's trust model and risk tolerance to calculate a risk score
US10585893B2 (en) 2016-03-30 2020-03-10 International Business Machines Corporation Data processing
US20170293696A1 (en) 2016-04-11 2017-10-12 Google Inc. Related entity discovery
CA3035100A1 (en) 2016-09-02 2018-03-08 FutureVault Inc. Systems and methods for sharing documents
KR102019860B1 (ko) 2018-05-24 2019-09-09 주식회사 한컴위드 사용자의 네트워크 활동 정보에 기초한 신용 평가 등급 산출 장치 및 그 동작 방법
US10977626B2 (en) 2018-06-14 2021-04-13 Capital One Services, Llc Semi-private blockchain virtual currency exchange systems

Also Published As

Publication number Publication date
US11323347B2 (en) 2022-05-03
EP2484054A1 (en) 2012-08-08
US20190057458A1 (en) 2019-02-21
JP6261665B2 (ja) 2018-01-17
US11968105B2 (en) 2024-04-23
CN106097107B (zh) 2020-10-16
CN102668457A (zh) 2012-09-12
CA2775899C (en) 2021-07-27
US9747650B2 (en) 2017-08-29
US9460475B2 (en) 2016-10-04
JP2015164055A (ja) 2015-09-10
US20120182882A1 (en) 2012-07-19
IL218813A (en) 2016-07-31
IL218813A0 (en) 2012-06-28
JP2016197431A (ja) 2016-11-24
WO2011038491A1 (en) 2011-04-07
US20210258236A1 (en) 2021-08-19
US20220239574A1 (en) 2022-07-28
BR112012007316A2 (pt) 2016-04-19
CA2775899A1 (en) 2011-04-07
JP5965511B2 (ja) 2016-08-03
CN106097107A (zh) 2016-11-09
CN106101202B (zh) 2019-09-24
EP2484054A4 (en) 2014-11-05
IL246744A (en) 2017-03-30
JP2013506204A (ja) 2013-02-21
CN102668457B (zh) 2016-07-06
US9171338B2 (en) 2015-10-27
US20170337641A1 (en) 2017-11-23
JP5735969B2 (ja) 2015-06-17
US20140258160A1 (en) 2014-09-11
MX2012003721A (es) 2012-06-28
CN106101202A (zh) 2016-11-09
US20160371795A1 (en) 2016-12-22
US10127618B2 (en) 2018-11-13

Similar Documents

Publication Publication Date Title
US11323347B2 (en) Systems and methods for social graph data analytics to determine connectivity within a community
US11985037B2 (en) Systems and methods for conducting more reliable assessments with connectivity statistics
US11665072B2 (en) Parallel computational framework and application server for determining path connectivity
US9922134B2 (en) Assessing and scoring people, businesses, places, things, and brands

Legal Events

Date Code Title Description
B15K Others concerning applications: alteration of classification

Ipc: G06Q 50/00 (2012.01), G06Q 30/02 (2012.01), H04L 1

B15K Others concerning applications: alteration of classification

Ipc: H04L 12/26 (2006.01), H04L 12/721 (2013.01), H04L

B06F Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]
B06U Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette]
B15K Others concerning applications: alteration of classification

Free format text: AS CLASSIFICACOES ANTERIORES ERAM: H04L 12/26 , H04L 12/721 , H04L 29/08 , G06Q 50/00 , G06Q 30/02

Ipc: H04L 12/721 (2013.01), G06Q 30/02 (2012.01), H04L

B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 30/09/2010, OBSERVADAS AS CONDICOES LEGAIS. PATENTE CONCEDIDA CONFORME ADI 5.529/DF, QUE DETERMINA A ALTERACAO DO PRAZO DE CONCESSAO.