Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
BI Data Platform (SQL Server) Support Team 山崎実久
Azure Stream Analytics のジョブを実行中、SQL Database への出力が行われず、以下のようにデータ型変換の警告が表示される場合があります。
Warning の抜粋
---------------------
Encountered error trying to write 1 event(s): Cannot convert from property 'c2' of type 'System.String' to column 'c2' of type 'System.DateTime
---------------------
Azure Stream Analytics では、”Error Policy” が既定の “Retry” に設定されている場合、出力になんらかのエラーが出ると、job をリトライし続けます。その結果、何度も入力のデータを参照することになり、Input Events は上昇し、リソースの利用状況を表す SU % Utilization もそれに伴い上昇します。最終的にリソースを使い切り、ジョブが停止することがあります。
不正な入力データが発生しない対処を行うのが一番ですが、このデータ型変換エラーが発生するような入力が来た場合もエラーを回避し出力を行うために、以下のように Azure Stream Analytics のクエリに TRY_CAST の関数を追加する対応をとることができます。
TRY_CAST() を利用することで、CAST のエラーをハンドリングすることができます。TRY_CAST() では、キャストが成功した場合は指定されたデータ型にキャスト値を返します。それ以外の場合は NULL を返します。
(例)
---------------------
SELECT
c1,
TRY_CAST(c2 as datetime) as c2
INTO
[sqldbout]
FROM
[blobin]
---------------------
+ 参考情報
TRY_CAST (Azure Stream Analytics)
“https://msdn.microsoft.com/library/en-us/Mt643735.aspx”
※ 本ブログの内容は、2017年12月時点の情報です。
以上、お役に立てたら幸いです。