問題タブ [azure-data-factory]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
azure-data-factory - Azure Data Factory ジョブは Hadoop/Map Reduce で失敗しますか?
一部の ADF ジョブがランダムに失敗し、出力は以下の /PackageJobs/~job/Status/stderr ファイル内のデータに送られます。
これは常に発生するとは限らないことに注意してください。一部のジョブではランダムに発生し、他のジョブは正常に完了します。
この問題の原因は何ですか?
stderr データは次のとおりです。
azure - Azure Data Factory は、Azure 以外の REST API からデータをダウンロードするのに適していますか?
次のようなデータ処理パイプラインを検討してください。
- インターネット上のどこかにホストされている REST API から大量のデータを取得し、データ ストアに保存します。
- 永続化されたデータに対していくつかの複雑なデータ変換を実行します。
- データ ストアでのデータ変換の結果を永続化します。
このようなパイプラインを Azure に実装することを目的としている場合、手順 2 と 3 はAzure Data Factoryアクティビティとして実装するのに適しているようです。
私の質問は、Azure Data Factory アクティビティにもステップ 1 を実装することは理にかなっていますか?
技術的には、データのダウンロードと永続化を実行する .Net アクティビティをコーディングできる可能性があります。
sql-server - Azure Data Factory - BLOB から Azure SQL への一括インポート
コンテンツを含む単純なファイルFD_GROUP.TXTがあります。
~0100~^~乳製品・卵製品~
~0200~^~スパイス・ハーブ~
~0300~^~ベビーフード~
~0400~^~油脂~
~0500~^~鶏肉製品~
これらのファイル (一部は 700,000 行) を Azure Data Factory を使用して SQL データベースに一括インポートしようとしています。
戦略は、最初に列を^で区切ることです。次に、チルダ (~) を空の文字に置き換えるため、チルダ (~) が失われ、挿入が行われます。
1. SQL ソリューション:
上の写真に見られるように、^で区切るフラット ファイル ソースと、不要なチルダ (~) を置き換える派生列変換。
Microsoft Azure Data Factory でどのように行うのですか? FD_GROUP.TXT
をAzure Storage Blob に入力としてアップロードし、テーブルを Azure SQL Server で出力用に準備しました。
-
2 つのリンクされたサービス: AzureStorage と AzureSQL。
- 2 つのデータセット: BLOB を入力として、SQL を出力として
- 1 つのパイプライン
FoodGroupDescriptionsAzureBlob設定
FoodGroupDescriptionsSQLAzureの設定
FoodGroupDescriptionsパイプライン設定
これは Azure Data Factory では機能しません + このコンテキストで置換を使用する方法がわかりません。どんな助けでも感謝します。
azure - Azure Data Factory - パイプラインの実行順序での複数のアクティビティ
Azure SQL テーブルにコピーする 2 つの BLOB ファイルがあります。2 つのアクティビティを含むパイプライン:
私が理解しているように、最初の活動が完了すると、2番目の活動が始まります。データセット スライスに移動して手動で実行する代わりに、このパイプラインをどのように実行しますか? また、 pipelineModeをスケジュールではなく OneTime のみに設定するにはどうすればよいですか?
azure - Azure Data Factory - コピー アクティビティの空の値が null エラーに変更されない
私はtxtファイルを含む紺碧のブロブを持っています。一部の列には空の値が含まれているため、データベース テーブルに保存すると NULL になります。ダイレクト SQL および SSIS ETL パッケージで動作させることができます。
行の例:
1002,100,Butter,whiped with salt BUTTER,WHIPPED W SALT,Y,0,6.38,,,
最後の 3 つは null と見なされます。
ADF を使用しようとすると、次のエラーが表示されます。
コピー アクティビティでユーザー エラーが発生しました。' ' を 'Decimal' 型に変換できません。,Source=Microsoft.DataTransfer.Common,''Type=System.FormatException,Message=入力文字列の形式が正しくありません.,Source=mscorlib,'.
食べ物の説明アズールブロブ:
FoodDescriptionsSQLAzure:
パイプライン:
パイプラインで "treatEmptyAsNull": true を設定しようとしましたが、うまくいきませんでした。
azure - Azure Data Factory と SSIS の比較
SSIS ETL を Azure Data Factory に移行することを考えています。そのような飛躍を支持する私の主張は次のとおりです。
ソースとターゲットはすでにクラウドにあります。ADF はクラウド ネイティブであるため、うまく適合しているようです。
ADF はサービスであるため、オンデマンドで使用して支払うことができます。SSIS はライセンス コストを意味し、オンデマンドでの消費に自然に役立つわけではありません (DevOps を使用して ETL サーバーをアドホック ベースでスピンすることを考えました)。
SSIS を使用してプログラムで ETL コードを生成するには、BIML や DTS API などの非常に特殊なスキルが必要です。ADF に移行することで、JSON と TSQL および USQL の C# を組み合わせることで、必要なスキルがより汎用的になることを願っています。
コミュニティのメンバーが自分の経験を共有し、それによって私が決定を下すのを助けてくれることを願っています.
azure - Azure データ ファクトリ HDInsight オンデマンド クラスター 'SessionHiveMetaStoreClient をインスタンス化できません'
Visual Studio を使用して ARM テンプレートを展開することにより、Azure データ ファクトリを展開しています。
このテンプレートは、Azure Storage のリンクされたサービス (ソース データと出力データの読み取りと書き込み用)、入力データセットと出力データ セット、HDInsight オンデマンドのリンクされたサービス、および HDInsight HIVE アクティビティを実行するパイプラインを使用して、データ ファクトリを定義します。入力データセットを出力データセットに処理する HIVE スクリプトを実行します。
すべてが正常にデプロイされ、pipine アクティビティが開始されます。ただし、アクティビティから次のエラーが発生します。
スレッド「メイン」の例外 java.lang.RuntimeException: java.lang.RuntimeException: org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClientをインスタンス化できません org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:445) で org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:675) で org.apache.hadoop .hive.cli.CliDriver.main(CliDriver.java:619) の sun.reflect.NativeMethodAccessorImpl.invoke0(ネイティブ メソッド) の sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) の sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) で java.lang.reflect.Method.invoke(Method.java:606) で org.apache.hadoop.util.RunJar.run(RunJar.java:221) で org.apache.hadoop. util.RunJar.main(RunJar.java:136)
このような投稿や、HIVE メタストア データベース名のダッシュまたはハイフンによって引き起こされる既知のバグであることを示唆する投稿を見つけました。
私の問題は、ARM テンプレートを使用して HDInsigh クラスターをオンデマンドで展開することです。クラスター自体にアクセスできないため、手動で構成を変更することはできません (オンデマンドの考え方は、一時的であり、作成されるだけであるということです)。一連の要求を処理してから、自身を削除します)。
この問題は、チュートリアルのステップバイステップに従うだけで簡単に再現できます。
私が見つけた唯一の希望の光は、ここに記載されているように hcatalogLinkedServiceName を設定することです。これは、独自の Azure SQL データベースをハイブ メタストアとして使用できるように設計されています。ただし、これも機能しません。そのプロパティを使用すると、次のようになります。
「JamesTestTutorialARMDataFactory/HDInsightOnDemandLinkedService」は、「<strong>このサブスクリプションでは HCatalog 統合が有効になっていません。」というメッセージで失敗しました。</p>
私のサブスクリプションは無制限で、Azure のすべての機能を利用できるはずです。だから今、私は完全に立ち往生しています。現在、オンデマンドの HDInsight で Hive を使用することは基本的に不可能なようですか?
誰か試してみることができるなら、私はすべての耳です!
ありがとう
azure - 既知の IP (または範囲) を使用した Azure からのサービス リクエスト
私は Azure ベースのプロジェクトに取り組んでいます。このプロジェクトでは、Azure Data Factory 内で応答 (興味がある場合は JSON) を消費することを最終的な目標として、顧客ネットワークの内部にある REST ベースの API と対話する必要があります。
Site-to-Site を使用した vNET やジョブを実行して応答を Blob Storage に保存するなど、このサービスと対話する複数の方法について説明し、バッチ サービス内で実行されるカスタム アクティビティについても説明しました (ただし、接続できません)。これを vNET に) と、実際にはどこにも行かなかった他のもの...
私たちが抱えている主な障害は、クライアントがネットワークに着信する要求をホワイトリストに登録できるように、Azure 側から IP を保証する方法が必要だということです..
これを達成する方法について何か素晴らしいアイデアをお持ちの方はいますか.. 理想は、パブリック IP を呼び出すバッチ サービス内で実行されるカスタム アクティビティを ADF 内でコーディングできることですが、それらの呼び出しは既知の IP からのみ行われます。または少なくとも v. 狭い範囲の IP..
前もって感謝します!