Visão geral de feeds de dados (PowerPivot para SharePoint)
Um feed de dados fornece um fluxo de dados sob demanda de uma fonte de dados online para um aplicativo cliente. No SQL Server 2008 R2 Analysis Services, você pode usar feeds de dados para enviar por push dados XML do Atom de qualquer origem para uma fonte de dados do PowerPivot.
Como os feeds de dados se baseiam em padrões publicados, é possível usá-los de modos que vão além da função específica que os feeds executam em relação às fontes de dados do PowerPivot. A ampla aplicação da tecnologia de feed de dados está além do escopo deste tópico, mas você pode seguir os links no final para ler sobre os padrões e as tecnologias de serviço de dados que descrevem o uso de feeds do Atom.
Clique em um link na seguinte lista para saber mais sobre o recurso de feed de dados que ofereça suporte para fontes de dados do PowerPivot:
Definição de um feed de dados
Definição de um serviço de dados Atom
Sobre documentos do serviço de dados (arquivo .atomsvc)
Processando um documento de serviço de dados
Autenticando uma operação de importação de feed de dados
Lendo um feed de dados no aplicativo cliente PowerPivot
Sobre o padrão Atom
Saiba mais sobre serviços de dados e feeds de dados
Definição de um feed de dados
Um feed de dados é uma carga de dados XML do Atom 1.0 gerada por um serviço Web, serviço de dados ou aplicativo da Web que ofereça suporte para o padrão Atom. Um feed de dados tem uma estrutura tabular XML consistente, que não é alterada com o tempo, e dados variáveis que podem ser diferentes cada vez que o feed é gerado. Um serviço ou aplicativo fornece o feed mediante solicitação, recuperando dados de fontes de dados arbitrárias e depois publicando-os em tempo real para aplicativos cliente ou usuários que os solicitarem.
Como um recurso do Analysis Services, os feeds de dados proporcionam aos especialistas em dados uma ferramenta útil para a criação de dados organizacionais prontamente disponíveis para fontes de dados do PowerPivot. Se houver fontes de dados corporativas que não possam ser acessadas facilmente por meio do provedor de dados cliente, ou se os dados forem acessados por meio de consultas complexas que você prefira ocultar, crie um serviço de dados Atom com base na fonte de dados que expõe dados em um formato de feed. Vários produtos e tecnologias estão disponíveis para ajudá-lo a expor dados corporativos como um aplicativo REST ou serviço de dados Atom, incluindo o Microsoft ADO.NET Framework e a tecnologia WCF (Windows Communication Foundation).
Além das soluções personalizadas que você cria internamente, os usuários podem acessar feeds de dados de aplicativos que têm suporte para o formato de feed como um recurso interno. Há suporte para feeds de dados em componentes do SQL Server 2008 R2 e em vários produtos do Microsoft Office 2010.
Definição de um serviço de dados Atom
Antes de usar um feed de dados, você deve ter uma fonte de dados online, às vezes denominada serviço de dados, que gera o feed. O serviço de dados é qualquer ponto de extremidade HTTP endereçável por URL que forneça os dados e organize-os em uma estrutura de dados XML que esteja em conformidade com o formato de conexão do Atom.
Para fins de importação de feeds de dados para uma fonte de dados do PowerPivot, o serviço de dados pode ser ADO.NET, um serviço Web, um aplicativo REST ou até mesmo uma URL para um documento estático que contenha dados XML em um formato do Atom.
A funcionalidade de serviço de dados também pode ser embutida nos aplicativos. Esses aplicativos fornecem feeds de dados prontos para uso por meio da publicação ou da exportação de estruturas de dados como feeds de dados. Exemplos de produtos da Microsoft que podem gerar feeds de dados:
Microsoft SharePoint 2010. Uma lista do SharePoint que pode exportar sua estrutura e seu conteúdo como feed de dados.
Um SQL Server 2008 R2 Reporting Services. O Reporting Services inclui a capacidade interna para transmitir regiões de dados em um relatório como feeds de dados do Atom 1.0. Para obter mais informações, consulte Como usar feeds de dados (PowerPivot para SharePoint).
Sobre documentos do serviço de dados (arquivo .atomsvc)
Um documento de serviço de dados especifica uma conexão com um ou mais feeds de dados. No mínimo, essa é uma URL simples para o serviço de dados que produz um feed, mas também pode ser uma URL complexa que inclui parâmetros de seleção e filtragem.
Nos componentes do SQL Server 2008 R2 Analysis Services, um documento de serviço de dados também especifica o nome de uma tabela que será criada em uma fonte de dados do PowerPivot quando um feed de dados for importado. É necessário especificar uma tabela de destino nos documentos de serviço de dados que são processados pelo aplicativo cliente PowerPivot. O nome da tabela define o local dos dados em uma fonte de dados do PowerPivot após a importação do feed.
Você poderá criar documentos de serviço de dados manualmente se conhecer a sintaxe XML, mas, em geral, eles são criados dinamicamente por aplicativos que geram feeds. Os componentes do Reporting Services e do servidor do SharePoint criarão documentos de serviço de dados internamente como parte da geração do feed. Se o aplicativo cliente PowerPivot for detectado no computador quando um documento de serviço de dados for gerado automaticamente na memória, esse aplicativo cliente será iniciado de modo automático e importará imediatamente o feed para uma fonte de dados PowerPivot nova ou aberta. Se um aplicativo cliente local não estiver disponível para importar os dados, o operador de informações receberá uma solicitação para salvar o documento de serviço de dados (.atomsvc) no sistema de arquivos para processar o feed depois.
A ilustração a seguir mostra como as solicitações de um feed de dados são resolvidas. Nesse caso, o aplicativo que fornece o feed é um relatório do Reporting Services. Quando um usuário exportar um relatório como feed de dados, o feed aparecerá em um controle de tabela em uma fonte de dados PowerPivot ou o usuário receberá uma solicitação para salvar um arquivo de documento de serviço de dados (.atomsvc) no sistema de arquivos. Se o aplicativo cliente PowerPivot não estiver instalado no computador, a única opção disponível será salvar o arquivo.
Observação |
---|
Um tipo de mídia da internet (às vezes chamado de tipo MIME) é definido para arquivos .atomsvc. No servidor, o IIS 7.0 é configurado para permitir .atomsvc e application\atomsvc+xml. Em uma estação de trabalho cliente, o tipo de MIME é associado à extensão de arquivo .atomsvc e ao PowerPivot para Excel. O PowerPivot para Excel será iniciado automaticamente quando um arquivo .atomsvc for aberto no computador local. |
Criando um arquivo de documento de serviço de dados (.atomsvc) em um site do SharePoint
Os administradores de site do SharePoint podem criar arquivos .atomsvc em uma biblioteca do SharePoint para ajudar a tornar feeds de dados disponíveis para usuários do aplicativo cliente PowerPivot. À medida que os desenvolvedores e os especialistas em dados criam aplicativos da Web e serviços de dados que produzem feeds, eles precisam de um modo para tornar esses feeds disponíveis para operadores de informações. A criação de um documento de serviço de dados em uma biblioteca do SharePoint é uma forma de tornar os feeds disponíveis na sua organização.
Em um site do SharePoint, qualquer usuário que tenha permissões de Colaboração pode criar documentos de serviço de dados em uma biblioteca de feeds de dados. Uma biblioteca de feeds de dados adiciona suporte para um tipo de conteúdo de documento de serviço de dados. Esse tipo de conteúdo fornece a base para a criação e a edição de um documento de serviço de dados. Como o documento é armazenado em uma biblioteca, também é possível excluir e proteger documentos de serviço de dados para controlar a disponibilidade de um feed para os usuários na sua organização. Para acessar um documento de serviço de dados em uma biblioteca, um operador de informações especifica a URL do SharePoint para o item em uma biblioteca de feed de dados.
Processando um documento de serviço de dados
Aplicativos cliente, como o PowerPivot para Excel, podem processar um documento de serviço de dados sob demanda para consumir um feed de dados para uso imediato no aplicativo. Quando o documento de serviço é processado, uma solicitação de dados é enviada para a URL de serviço no documento. Para o PowerPivot para Excel, o carregamento de um documento de serviço de dados pelo seu caminho do SharePoint inicia uma sequência de eventos que adiciona novos dados em uma fonte de dados do PowerPivot.
O diagrama a seguir ilustra o modo como os feeds de dados são solicitados, publicados e importados para uma pasta de trabalho do PowerPivot.
Etapa um. O aplicativo cliente PowerPivot emite uma solicitação HTTP para carregar um documento de serviço de dados de uma biblioteca do SharePoint. A solicitação é originada a partir do Assistente para Importação de Dados no aplicativo cliente. O usuário especifica um caminho do SharePoint para um documento de serviço de dados. Dentro do documento, há um ponteiro para uma ou mais URLs de serviços de dados que fornecem um ou mais feeds de dados.
Etapa dois. O aplicativo cliente PowerPivot lê o documento de serviço de dados. Em um único documento de serviço de dados, pode haver qualquer combinação de serviços de dados ou aplicativos da Web que publiquem dados agregados do Atom em um site externo. Cada entrada no documento representa um único feed, que é especificado pelas informações de conexão com um serviço de dados ou aplicativo que o fornece. Conforme mostrado na ilustração, um único documento de serviço de dados pode conter vários feeds que são gerados a partir de origens diferentes. Cada serviço ou aplicativo pode ser acessado por meio de seu ponto de extremidade HTTP, anonimamente ou com o uso do contexto de segurança do usuário que inicia a operação de importação.
Etapa três. O aplicativo cliente PowerPivot envia uma solicitação HTTP a cada serviço ou aplicativo referenciado no documento de serviço de dados. O aplicativo cliente emite uma solicitação HTTP GET com base na URL do feed.
Etapa quatro. O serviço de dados ou aplicativo gera um feed. A estrutura do feed é determinada pelo serviço ou aplicativo que o fornece. Um feed pode ser uma representação XML de uma tabela ou exibição de banco de dados, ou pode agregar dados de tabelas ou exibições diferentes, com base em uma URL complexa no documento de serviço de dados.
Etapa cinco. O aplicativo cliente PowerPivot conclui a importação criando uma tabela separada para cada feed. O nome da tabela que é criada se baseia em um nome de tabela localizado no documento de serviço de dados. Cada entrada de feed de dados em um documento de serviço de dados é associada ao nome da tabela que contém os dados após a importação da conclusão. Embora os feeds de dados sejam gerados assincronamente, os feeds são adicionados a tabelas em uma operação única. O Assistente de Importação espera até que cada feed seja retornado, antes de adicionar os dados à fonte de dados do PowerPivot.
Autenticando uma operação de importação de feed de dados
Quando o aplicativo cliente PowerPivot faz solicitações HTTP para as URLs de feeds de dados no documento de serviço de dados, as solicitações são autenticadas na extremidade de recebimento pelo serviço de dados ou aplicativo que produz o feed.
Autenticando feeds de dados de um relatório do Reporting Services ou lista do SharePoint
Os feeds de dados que você obtém de operações de exportação do Reporting Services ou de uma lista do SharePoint sempre são criados sob a identidade de segurança do Windows do usuário atual. Somente a segurança integrada do Windows tem suporte para feeds de dados que transportam dados desses aplicativos para o aplicativo cliente do PowerPivot.
Você não pode especificar a autenticação Básica, nem o acesso anônimo. As propriedades para definir o tipo de autenticação não estão disponíveis em transferências de dados de aplicativo-para-aplicativo.
Se o usuário atual tiver um contexto de segurança que não seja de entidade de segurança do Windows (ou seja, se o usuário conectado ao Reporting Services usa autenticação de formulários, ou o usuário conectado a um aplicativo da Web do SharePoint usa a autenticação de formulários ou uma entidade de segurança não Windows), esse usuário não poderá exportar um relatório ou lista como feed de dados.
Autenticando feeds de dados do aplicativo cliente PowerPivot
Para operações de importação de feeds de dados especificadas por meio do assistente para Importação de Dados no aplicativo cliente PowerPivot, você pode especificar o tipo de autenticação na caixa de diálogo Propriedades Avançadas.
Há suporte para três esquemas de autenticação na solicitação HTTP:
Segurança integrada do Windows (Negociação)
Autenticação Básica em texto não criptografado
Acesso anônimo
Esses esquemas têm suporte no .NET Managed Provider para feeds do Atom, que o aplicativo cliente do PowerPivot usa para importar os feeds.
Por padrão, o provedor emite a conexão sob a identidade de segurança do Windows do usuário que está importando os dados. No entanto, um usuário pode definir propriedades avançadas no provedor para especificar uma ID de Usuário e uma senha. Nesse caso, a solicitação de conexão é enviada com o uso da autenticação Básica, e o nome do usuário e a senha são enviados em texto não criptografado para o servidor remoto. Por razões de segurança, somente faça isso se a conexão estiver sobre um canal criptografado.
Não há suporte explícito para o acesso anônimo, mas você poderá se conectar como usuário anônimo se deixar as propriedades ID do Usuário e Senha definidas como nulas, e se definir a propriedade Segurança Integrada como false.
Lendo um feed de dados no aplicativo cliente PowerPivot
Um leitor de dados pega cada feed de dados que você importa e converte-o em um objeto ou estrutura que o aplicativo entende. O PowerPivot para Excel usado por criar e exibir fontes de dados do PowerPivot inclui um leitor de dados interno. O leitor de dados cria um controle de tabela para cada estrutura tabular no feed de dados.
Relacionando feeds em uma fonte de dados do PowerPivot
Quando você importar vários feeds em uma única operação, o aplicativo cliente PowerPivot procurará dados relacionados entre os feeds. Por exemplo, se um documento de serviço de dados especifica uma série de feeds que retornam dados tabulares do mesmo banco de dados relacional, o aplicativo cliente PowerPivot geralmente pode reconstruir as relações de tabela nos dados importados. De modo semelhante, se vários feeds forem gerados a partir de um único relatório do Reporting Services, as relações entre regiões de dados no relatório serão refletidas nos dados importados.
Para recriar as relações que existem nos dados originais, os feeds devem ser originados a partir de uma origem comum que fornece uma estrutura para relacionar os dados que eles contêm. O aplicativo cliente PowerPivot não estabelecerá automaticamente relações para tabelas não relacionadas na origem, mesmo que elas compartilhem os mesmos dados e atributos de coluna. No entanto, quando dados e atributos de coluna são mantidos em comum, você pode criar relações manualmente e de modo fácil.
Sobre o padrão Atom
O padrão Atom 1.0 descreve um par de especificações para publicação e estruturação de uma carga de dados XML:
A RFC5023 especifica o Protocolo de Publicação do Atom, que descreve a descoberta de serviço e o modo como são construídos caminhos para um objeto de dados. Um arquivo de documento de serviço de dados (.atomsvc) criado por você em um site do SharePoint está em conformidade com a definição de documento de serviço que esse protocolo descreve.
A RFC4287 especifica o Formato de Agregação do Atom, que especifica como um leitor de dados do lado do cliente interpreta e apresenta os dados em um aplicativo. O PowerPivot para Excel inclui um leitor de dados inserido que dá suporte para esse formato. Serviços de dados que fornecem os dados reais devem implementar esse protocolo.
O formato XML inclui elementos necessários e opcionais que definem a estrutura geral, com provisões para conteúdo personalizado que compõe a maior parte da carga.
Se estiver familiarizado com RSS feeds, talvez você esteja imaginando no que os feeds do Atom são parecidos. Um feed de dados que esteja em conformidade com o padrão Atom é semelhante a um RSS feed porque ambos publicam dados agregados sob demanda. O Atom é diferente do RSS porque fornece uma especificação adicional para dados XML bem formados. Isso é necessário para importar o tipo de dados corporativos bem-estruturados que talvez você queira usar em soluções de business intelligence. Por isso, o Atom (e não o RSS) é o padrão com suporte para feeds usado nas fontes de dados do PowerPivot.
Saiba mais sobre serviços de dados e feeds de dados
Os seguintes links fornecem informações úteis e instruções práticas para usar o ADO.NET Data Services:
Overview: ADO.NET Data Services
Usando os serviços de dados do ADO.NET
Início rápido do serviço de dados (estrutura dos serviços de dados do ADO.NET)
Estes dois links conectam você aos documentos de protocolo do Atom no site do IETF: