問題タブ [azure-integration-runtime]
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 - Terraform を使用したマネージド仮想ネットワーク内の Azure Integration Runtime
Azure Data Factory では、ポータルを使用して 3 種類の統合ランタイムを作成できます。
- アズール
- Azure-SSIS
- 自己ホスト型
しかし、AzureRM プロバイダーの Terraform ドキュメント サイトを見ると、Azure-SSIS ( azurerm_data_factory_integration_runtime_managed ) と自己ホスト型 ( azurerm_data_factory_integration_runtime_self_hosted ) しか作成できません。
Terraform を使用して、 https: //docs.microsoft.com/en-us/azure/data-factory/managed-virtual-network-private-endpointで指定されているように、仮想ネットワークに接続された既定の Azure IR を正常に作成した人はいますか?
oracle - Oracle テーブル値関数は、Data Factory で誤った 10 進数を返します
Azure Data Factory v2 を使用してクラウド データ ウェアハウスに取り組んでいます。私のデータ ソースの多くは、オンプレミスの Oracle 12g データベースです。テーブル 1-1 の抽出は問題ではありません。ただし、ときどき、コピー アクティビティでその場でパラメーター化された計算によって生成されたデータを抽出する必要があります。
PL/SQL ストアド プロシージャを ADF のソースとして使用できないため、代わりにソース データベースでテーブル値関数を使用し、コピー アクティビティでクエリを実行します。
ほとんどの場合、これで問題なく動作します。ただし、テーブル値関数が 10 進数型の列を返すと、ADF が誤った値を返すことがあります。つまり、ソース データベースで TVF を実行し、ADF を介してプレビュー/コピーすると、異なる結果が得られます。
10 進数の絶対値または符号が重要な場合は、いくつかの実験を行いましたが、10 進数が正しく返されるパターンとそうでないパターンを見つけることができません。
誤ってマッピングされた数値の例をいくつか示します。
Oracle データベースの値 | ADF の値 |
---|---|
-658388.5681 | 188344991.6319 |
-205668.1648 | 58835420.6352 |
10255676.84 | 188213627.97348 |
- 同様の問題を経験した人はいますか?
- これが ADF のバグ (そもそも PL/SQL にうまく統合されていない) かどうか知っていますか?
最初の仮説
最初は、この問題は NLS やキャスティングなどに関連していると思いました。この仮説をテストするには、Oracle db 側でテーブルを作成し、そこで TVF からの出力を永続化し、ADF でテーブルから抽出しました。このメソッドを使用すると、ADF で小数が正しく返されました。したがって、仮説は成立しません。
2番目の仮説
ユーザーアクセスに関係している可能性があります。ただし、ADF で使用されるリンクされたサービスは、データベースへのログインに使用されるものと同じ db 資格情報を使用して、そこで TVF を実行します。
観察
多くの集計関数が tvf のロジックに関与している場合、エラーがより頻繁に発生するようです。
最小限の再現可能な例
Oracle データベース:
ADF: データセット:
パイプライン:
azure - Azure Data Factory のスループットが低い
最近、リソースとパイプラインDevops Pipeline
用CI/CD
に 2 つのリソース グループ ( DEV
、PRD
) を構成していました。Data Factory
構成を間違えて (完全なデプロイ)、サービスのリソース グループを完全に消去してしまいました。
時間を早送りして、同じ で新しいサービスを起動して構成しました。データベースからデータを抽出するためにGR
、新しいData Factory
と を構成しています。新しいパイプラインを作成した後、次の図に示すように、スループットが非常に低く、約 3 ~ 15 バイト/秒であることがわかりました。Integration Runtime
Azure VM
Oracle
毎日の抽出はおおよそ100 MB
で、完了するまでに約 2 時間から 5 時間かかります。さらに、VM のメモリ使用量と処理能力を確認しましたが、これは非常に低く、より優れたマシンにアップグレードしても何も変わりませんでした。現在は ですf4s
。次の図では、複数日にわたるパイプラインの速度を確認できます。
GR
これはイントラネットであり、Oracle
データベースはサーバーにあると言うことが重要ですがIBM
、このデータにアクセスするためのすべてのファイアウォールが指定されており、データベースへのルートも構成で問題なく、この同じパイプラインで問題なく (15 minutes
最大) 動作しました最後にワイプされたデータ ファクトリとIR
. この問題で 2 週間が経過しましたが、今のところ解決方法がわかりません。データベースで使用している選択は、前述のデータベースのユーザーによって直接テストされ、サーバーで20 seconds
結果を返すのに必要です。パイプラインは、最初にデータベースを更新するプロシージャを呼び出す単純なコピー アクティビティですが、この更新手順がなくても問題は解決しません。また、すでに再インストールしましたがIntegration Runtime
、役に立ちませんでした。
azure - VM からセルフ ホステッド統合ランタイムを削除するにはどうすればよいですか?
ADF の IR に接続され、正常に動作する VM にセルフ ホスト IR があります。ただし、別の IR を VM に接続したいと考えています。Microsoft Integration Runtime Configuration Manager で既存の IR の統合を削除する方法が見つからないようです。
IR はいつでも ADF から削除でき、VM に反映される可能性があります。しかし、これが機能するかどうかはわかりませんし、システムを壊す危険を冒したくありません.
ADF の git config は、2 つの ADF リソースを指しています。IR は最初のもの (ポータルから IR が作成された場所) に接続します。2 番目の ADF は後で作成され、その git は 1 番目のものと同じリポジトリを指していました。VM を起動すると、IR で 1 つ目は Running と表示されますが、2 つ目は「ステータスの取得に失敗しました」と表示されます。
- VM で IR を安全にアンインストールし、2 番目の ADF で新しい IR を作成して統合することは可能ですか? はいの場合、どのように?または、
- どういうわけか、VM の IR が 2 番目の ADF を指すようにします。私もそれを行う方法を見つけることができません。
編集 - 1 番目の ADF を削除して、2 番目の ADF のみを保持したい。