2016-06-02 7 views
2

Ich kopiere Daten aus einer Azure SQL-DB mithilfe einer Abfrage in Blob. HierVerwenden von SqlReaderQuery in der Datenpipeline

ist das Skript der Aktivität:

{ 
    "type": "Copy", 
    "typeProperties": { 
     "source": { 
      "type": "SqlSource", 
      "sqlReaderQuery": "select distinct a.*, b.Name from [dbo].[Transactxxxxxxx] a join dbo.Anxxxxx b on a.[Clixxxxx] = b.[Fixxxxxx] where b.Name = 'associations'" 
     }, 
     "sink": { 
      "type": "BlobSink", 
      "writeBatchSize": 0, 
      "writeBatchTimeout": "00:00:00" 
     } 
    }, 
    "inputs": [ 
     { 
      "name": "Txnsxxxxxxxxxxx" 
     } 
    ], 
    "outputs": [ 
     { 
      "name": "Txnxxxxxxxxxxxx" 
     } 
    ], 
    "policy": { 
     "timeout": "01:00:00", 
     "concurrency": 1, 
     "retry": 3 
    }, 
    "scheduler": { 
     "frequency": "Hour", 
     "interval": 1 
    }, 
    "name": "Copyxxxxxxxxxx" 
} 

Die Aktivität scheint zu funktionieren aber es stellen Sie keine Datei in der Spüle.

Der Datensatz verweist auf den richtigen Container.

Antwort

1

Mit den von Ihnen bereitgestellten Informationen habe ich erfolgreiche Laufprotokolle in unserem Service gefunden. Ich habe festgestellt, dass das Ziel-Blob wie "experimentinput/Inxxx_To_xx_Associations.csv/Inxxx_To_xx.csv" angegeben ist. Der BLOB-Name ist statisch, und mehrere Slice-Läufe überschreiben dieselbe BLOB-Datei. Sie könnten die Eigenschaft partitionBy nutzen, um einen dynamischen BLOB-Namen zu erhalten. Weitere Informationen finden Sie in diesem Artikel: https://azure.microsoft.com/en-us/documentation/articles/data-factory-azure-blob-connector/#azure-blob-dataset-type-properties.