問題タブ [etl]
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.
sql-server - SQL Server のアラートまたは通知について学ぶには、どこから始めればよいですか?
最近、運用データを抽出して別のレポート データベースに要約する SSIS パッケージを含む SQL Server エージェント ジョブで問題が発生し始めました。
過去 2 週間、ジョブが無人で完了まで実行されていたため、試してみたアラート/通知設定の一部が問題を引き起こしたと思います。
では... SQL エージェントのアラートと通知について読み始めるのに適した場所はどこですか?
常に通知されるように、何らかのアラート/通知を有効にしたい:
- ジョブが正常に完了したこと (ジョブが常に実行されることを確認するためのチェックとして)、または
- ジョブで何らかのエラーが発生したこと。これには、エラーの原因を診断できる十分な情報 (エラー番号など) が含まれている必要があります。
いつものように、どんな助けも大歓迎です!
ssis - SSIS を使用して Hyperion 7.3 からデータを抽出するためのオプションは何ですか?
SSIS を使用して、いくつかの Hyperion キューブ (データベース) からデータを取得する必要があります。これに使用できる接続マネージャーはありますか? 誰かがこれをしましたか?
sql - MS SQL 2005 で varbinary に格納された Excel (.xls) ファイルをどのように解析できますか?
問題
SQL 2005 フィールドにバイナリ データとして保存されている「Excel ファイル」データを解析/アクセス/抽出する方法を教えてください。
(そのため、最終的にすべてのデータを他のテーブルの他のフィールドに格納できます。)
バックグラウンド
基本的に、当社の顧客はユーザーから大量の詳細データを要求しています。残念ながら、当社のお客様は、ユーザーにいかなる種類のデータベース エクスポートも要求できません。そのため、顧客は、ユーザーがデータを入力できるように何らかの UI を提供する必要があります。すべてのユーザーに受け入れられると顧客が判断した UI は、適度に堅牢な UI を備えているため、Excel でした。そのため、顧客はこのデータを解析してデータベースに自動的に保存する必要があります。
私たちは、ユーザーがこれを一度だけ実行してから、データベースのエクスポートを要求することを顧客に納得させようとしました! ただし、顧客はユーザーのデータベース エクスポートを要求することはできません。
- 私たちの顧客は、Excel ファイルを解析するように私たちに要求しています
- 顧客のユーザーは、すべての必要なデータを入力するための「最適な」ユーザー インターフェイスとして Excel を使用しています。
- ユーザーには空白の Excel テンプレートが与えられ、入力する必要があります。
- これらのテンプレートには、固定数の一意の名前のタブがあります
- これらのテンプレートには、完了しなければならない多数の固定領域 (セル) があります。
- これらのテンプレートには、ユーザーが同じフォーマットの行を最大数千行挿入する領域もあります
- 完了すると、Excel ファイルは標準の html ファイルのアップロードによってユーザーから送信されます
- お客様は、このファイルをそのまま SQL データベースに保存します
与えられた
- 標準の Excel (「.xls」) ファイル (ネイティブ形式、コンマまたはタブで区切られていない)
- ファイルは
varbinary(max)
SQL 2005 フィールドにそのまま保存されます - Excel ファイルのデータは、行間で必ずしも「均一」であるとは限りません。つまり、1 つの列がすべて同じデータ型であると仮定することはできません (たとえば、行ヘッダー、列ヘッダー、空のセル、異なる「フォーマット」、 ...)
要件
- 完全に SQL 2005 内のコード (ストアド プロシージャ、SSIS?)
- 任意のワークシート (タブ) の値にアクセスできる
- 任意のセルの値にアクセスできる (数式データや逆参照は不要)
- セル値が行間で「均一」であると仮定してはなりません。つまり、1 つの列がすべて同じデータ型であると仮定することはできません (たとえば、行ヘッダー、列ヘッダー、空のセル、数式、異なる "フォーマット", ...)
環境設定
- ファイルシステムへのアクセスなし (一時的な .xls ファイルの書き込みなし)
- 定義された形式で値を取得します (たとえば、39876 のような生の数値ではなく、実際の日付値)
sql - すべてのソースのレコードが同じ人物を表しているかどうかを判断する方法
次のような個人データを含むテーブルのソースがいくつかあります。
したがって、ソース1と2のID 1のレコードが同じ人物であると仮定すると、私の問題は、すべてのソースのレコードが同じ人物を表すかどうかを判断する方法です。さらに、すべてのレコードがすべてのソースに存在するわけではないことを確認してください。すべての名前は、主にスペイン語で書かれています。
この場合、データソースが国の公式識別局に対して厳密にチェックされていないことを前提としているため、正確な一致を緩和する必要があります。また、データを収集するプロセスの性質上、タイプミスが一般的であると想定する必要があります。さらに、レコードの量は、すべてのソースで約200万から300万です...
私たちのチームは次のようなことを考えていました。まず、ID NUMBERやNAMESなどの選択したフィールドで完全一致を強制して、問題がどれほど難しいかを確認します。次に、一致基準を緩和し、一致できるレコードの数を数えますが、ここで問題が発生します。ノイズを生成しすぎず、制限しすぎずに一致基準を緩和するにはどうすればよいでしょうか。
これを処理するためにどのツールがより効果的である可能性がありますか?たとえば、このマッチングをサポートするためのデータベースエンジンの特定の拡張機能について知っていますか?この近似一致を処理するためのsoundexのような巧妙なアルゴリズムについて知っていますが、スペイン語のテキスト用です。
どんな助けでもいただければ幸いです!
ありがとう。
sql - ツール: ODBC から SQL 05 への ETL?
実行するようにスケジュールできるスクリプト/パッケージをすばやく作成するのに役立つシンプルなツールが欲しいだけです。私の変換要件は非常に単純です (列名の変更、テーブルの結合/分割、および日付変換)。これについては、開発速度のために柔軟性を犠牲にします。
思い当たることはありますか?
sql-server - プログラムで SSIS パッケージを作成する方法は?
同じデータベース内のテーブル A からテーブル B への単純なデータ フローを含む SSIS パッケージをプログラムで作成しようとしています。hereの例を使用しています。パッケージが作成され、dtsx ファイルに保存されますが、ビジュアル スタジオで開くと、ソース テーブルと宛先テーブルが選択されていないことがわかります。
また、宛先に到達する前に変換タスクを間に挿入したいと考えています。
編集
ソーステーブルと宛先テーブルを選択することができ、タスクも正常に実行されました。私がする必要があることがわかりました
(a) ソースと宛先にそれぞれ 1 つの oleDB 接続を使用します [この方法は好きではありません。1つの接続のみを使用したい]
(b) 宛先SetComponentProperty("AccessMode", 3)で Accessmode を 3 に設定します。これは、Table または View - fast load に相当します。
これに関するドキュメントはどこかにありますか。私が見つけることができるのは、SetComponentPropertyが行うことだけであり、それを行うために使用できるすべてのパラメーターではありません。例えば。「AccessMode」以外に何を指定できますか? 2 番目のパラメーター 3 または 2 または 1 は何を表していますか?
まだモニカをマッピングしようとしています。STOCK:PipelineTask は DataFlow タスクを意味します。say... copy column のモニカは何ですか?
sql-server - SSIS パッケージの dtsConfig ファイルに相対パスを使用することはできますか?
SQL Server Integration Services パッケージを可能な限りポータブルにしようとしていますが、それを妨げているのは、構成へのパスが常に絶対パスであるため、テストと展開が頭痛の種になることです。これをより管理しやすくするための提案はありますか?
もう 1 つの問題は、別の開発者がパッケージをソース管理から外した場合、パスが開発者のマシンに固有のものになることです。
sql-server - SSISでExcelの行を削除するにはどうすればよいですか?
SSISからExcelワークシートの行を削除することは可能ですか?
sql-server - SSISまたは他のツールで多くの抑制された列を含む不規則な右のテキストファイルを処理する方法は?
不規則な右側のフラット ファイル オプションは、CRLF で終了する単一の末尾フィールドに最適ですが、空白の末尾フィールドがいくつでも抑制され、行が CRLF で早期に終了する場合、SSIS に代替手段が見つかりませんでしたが、いくつかを読む必要があります列を単一の「REMAINDER」列で入力し、派生列変換と SUBSTRING 操作を使用して、「オプションの」列を 1 つずつ抽出しました。
私が考えた 1 つの可能性は、接続マネージャーがそれを取得する前に、SSIS 内の「パダー」コンポーネントを介して行を渡す方法があるかどうかです。そうすれば、接続マネージャーを使用して受信列の長さを設定するすべての利点を得ることができます。私は常に外部プログラム (または完全に別の SSIS データフロー) を作成して、すべての行にスペースを埋め込むファイルを渡すことができました (そして、不規則な右に - すべての抑制されたフィールドを考慮して同じ最小数のスペースをすべての行に追加するだけです)。 1 行で十分です) が、これはかなりディスク領域を浪費するように思われ、ファイルをもう一度完全に読み取る (および書き込む) 必要があります。
あるいは、行が途中で終了した場合、単純に NULL または空白になり、列が自動的に表示されるサード パーティのデータ ソース コンポーネントが存在する可能性があります。
他のオプションはありますか?
etl - Webフォームのリバースエンジニアリング
2〜3 MBの生データをダウンロードしてETLプロセスにフィードし、データマートにロードするWebサイトがあります。残念ながら、データプロバイダーは米国農務省(USDA)であり、FTP経由でのダウンロードは許可されていません。Webフォームを使用して必要な要素を選択し、2〜3の画面をクリックして、最終的にクリックしてファイルをダウンロードする必要があります。このダウンロードプロセスを自動化したいのですが。私はWeb開発者ではありませんが、どういうわけか、何らかのツールを使用して、最終的なリクエストからサーバーへのput / get/magicが何をするのかを正確に教えてくれるはずです。「これらのパラメーターをこのURLに渡して応答を待つ」というツールがあれば、Perlで何かを一緒にハックして、このプロセスを自動化できます。
5つのページすべてを分解し、JavaScriptインクルードを読み、ヒールを3回一緒にタップすると、アクセスできるものからこの情報を取得できることに気付きました。しかし、すべてのJSを手動で解析する必要のない、より高速でより直接的なパスが必要です。
最後の質問の言い換え:Webフォームから送信された最終的なリクエストリクエストが何であり、それがどのように構成されているかを明確に示すツールまたはメソッドはありますか?