2017-02-24 20 views
0

私はそれがこの形式でJSONを処理する選択AzureのストリームAnalyticsを作成しようとしています:ストリーム解析 - >マスター - 詳細

{ 
"deviceid": "02060014440133F0", 
"receivedat": "2017-02-24T10:16:50.9081833", 
"messageid": "286eded6-dff1-4f6b-85be-ce4c3c050b69", 
"telemetryvalues": [ 
    { 
    "Name": "JUMPER1_2", 
    "value": "0", 
    "id": "9be40e7b-7589-4d88-af69-9a00bf71e203", 
    "telemetryid": "a0259ae9-de01-47fb-9c0c-01fc72c85621", 
    "scaledvalue": "0" 
    }, 
    { 
    "Name": "JUMPER1_2", 
    "value": "2", 
    "id": "837c4645-d13a-402f-9cf1-ac36b6bedef8", 
    "telemetryid": "a0259ae9-de01-47fb-9c0c-01fc72c85621", 
    "scaledvalue": "0,66" 
    }, 
.... 
} 

と二つのテーブル(マスター - ディテール)に挿入し

CREATE TABLE [dbo].[Telemetry](
    [Id] [uniqueidentifier] NOT NULL CONSTRAINT [DF_Telemetry_Id] DEFAULT (NEWSEQUENTIALID()) NOT NULL, 
    [DeviceId] [varchar](20) NULL, 
    [MessageId] [varchar](40) NULL, 
    [ReceivedAt] [datetimeoffset](7) NOT NULL, 
    [CreatedAt] [datetimeoffset](7) DEFAULT (sysutcdatetime()) NOT NULL 

CREATE TABLE [dbo].[TelemetryValues](
    [Id] UNIQUEIDENTIFIER CONSTRAINT [DF_TelemetryValue_Id] DEFAULT (NEWSEQUENTIALID()) NOT NULL, 
    [TelemetryId] VARCHAR(40), 
    [Name] VARCHAR(28), 
    [Value] VARCHAR(255) NOT NULL, 
    [ScaledValue] VARCHAR(255) NOT NULL, 
    [CreatedAt] [datetimeoffset](7) DEFAULT (sysutcdatetime()) NOT NULL 

私は2つのテーブルを作成しました3210

私のSAは非常に簡単です:

SELECT 
    * 
INTO 
    [TelemetryData] 
FROM [DeviceData] 

どこのデータとeventhubに私の 'テレメトリ' SQLテーブルと 'DeviceData' から 'TelemetryData' ポイント。私は私のテーブルに任意のデータを取得していないよしかし

.....私はSAを2つのテーブルに挿入することができ、または私が何か間違ったことをやっている場合は本当にわからないんだけど...

N.B.代わりにBLOBストレージにデータを格納しようとすると、データが入ってくるので、データの欠落が原因ではありません。

答えて

1

ASAジョブの複数の出力として複数のテーブルを作成できます。しかし、私はあなたのクエリは1つの出力(TelemetryData)にのみ書き込みを参照してください。

また、クエリのスキーマの結果とテーブルのスキーマが一致していないため、SQLテーブルにデータが書き込まれません。

など。 SELECT *の出力はdeviceid、receivedat、messageid、telemetrydataになります。

ただし、作成した表には異なる種類のスキーマがあります。

ブロブを使用するときは、ブロブが固定スキーマを想定していないため、ブロブを使用していました。しかし、SQLでは、スキーマと型は正確に一致する必要があります。 1 SELECTから2つのテーブル間の外国制約がないように、

おかげで、 JS - - 二つのテーブル(詳細マスター)に挿入することが可能であった場合Azureのストリーム解析

+0

は、質問が多かったです失敗します – smolesen

関連する問題