問題タブ [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.

0 投票する
5 に答える
258 参照

sql - 外部サーバーからデータをロードする SQL Server 2005

次の設定と要件を備えた新しいプロジェクトを用意してください:-

私のクライアントは、オフィスに MSSQL 2005 サーバー (A) を持っています。彼らのベンダーは、リアルタイムのトランザクション データを含む MSSQL 2005 サーバー (B) を世界の別の場所に持っています。私のクライアントは、営業時間外に毎日 (B) から (A) にデータをロードしたいと考えています。彼らは (B) へのデータリーダー アクセス権を持っていますが、それだけです。ベンダーはレプリケーションやログ配布などを行いません。私のクライアントは、独自のレポート/キューブを実行できるように独自のデータを取得する責任があります。

私が使用したスクリプトは次のとおりで、分散 TSQL と (B) へのリンク サーバーを使用しています。

丸 1 日分のデータに対して 10 個の最大テーブルの最初の試行を行いましたが、1 時間かかりすぎました。また、テストのために、テーブルの主キー (1 ~ 4 個の BIGINT 列で構成される) を除くすべてのインデックスと制約を既に削除しました。ロード時間を短縮したり、データをロードしたりする方法について何か提案はありますか?

編集: select ステートメントがこのように記述された理由を疑問に思う場合に備えて、追加するだけです。上記の例では、(A) の Table1 は ETL データベースにあり、その後、データが比較されて、実際の挿入/更新/削除が決定されます。 (A) のレポート データベース

0 投票する
2 に答える
541 参照

sql-server - 大規模な ETL 文字列ルックアップのパフォーマンスの問題

ETL プロセスのパフォーマンスに問題があります。40 億行以上のテーブルがあります。構造は次のとおりです。

  • idbigint ID(1,1)
  • raw_urlvarchar(2000) が null ではない
  • md5hashchar(32) が null ではない
  • job_control_numberint null ではない

id のクラスター化された一意のインデックスと md5hash の非クラスター化の一意のインデックス

SQL Server 2008 エンタープライズ ページ レベルの圧縮がオンになっています

Web サーバー ログから生の URL をディメンションとして保存する必要があります。生の文字列が 900 文字を超えるため、その列に一意のインデックスを配置することはできません。md5 ハッシュ関数を使用して、インデックス作成用の一意の 32 文字の文字列を作成します。テーブル内で重複する raw_url 文字列を許可することはできません。

問題はパフォーマンスの低下です。もちろん、md5hash は本質的にランダムであるため、インデックスの断片化は 50% に達し、非効率的な IO につながります。

これを構造化して、挿入と検索のパフォーマンスを向上させ、インデックスの断片化を減らす方法についてのアドバイスを探しています。

0 投票する
3 に答える
291 参照

database - 堅牢なデータ転送プロセスを作成する方法に関するアドバイスはありますか?

ファイルシステムの「ドロップボックス」ディレクトリに配信されるフラットファイルに依存する毎日のプロセスがあります。これにより、このコンマ区切りの(外部企業のExcelなどからの)データのデータベース、断片的なPerl / Bashアプリケーションへのロードが開始されます、このデータベースは複数のアプリケーションで使用されるだけでなく、いくつかの GUI ツールで直接編集されます。データの一部は、追加の Perl アプリを使用して、私が主に使用するデータベースに複製されます。

言うまでもなく、すべてが複雑でエラーが発生しやすく、入ってくるデータが破損したり、編集によって壊れたりすることがあります。私のユーザーは、データの欠落や不正確さについてよく苦情を言います。フラット ファイルと DB を比較して、プロセスが壊れている場所を分析するには時間がかかり、日を追うごとにどのデータがデータ不足になり、分析が難しくなります。

このデータ転送プロセスの一部またはすべてを修正または書き直す予定です。

これに着手する前に、推奨される読書を探しています。堅牢で障害に強く、自動回復可能な ETL プロセスを作成する方法に関する Web サイトや記事、またはその他のアドバイスをいただければ幸いです。

0 投票する
6 に答える
1265 参照

ms-access - 古い Firebird データベースを新しく編成された Firebird データベースに転送するための ETL ツール

多くの質問を見た後..これに対する本当の答えは見つかりませんでした。

お客様のためにデータベースを再設計しました。Microsoft Access を使用して、新しい整形式のデータベース構造で古いテーブル データを取得するための優れたツールを見つけました。とても簡単ですが、かなり時間がかかります (古いデータを慎重に扱うため)。

Microsoft Access のように、その機能を提供するオープン ソース ツールはありますか?

それを片付けるために:私は「ただ」古いFirebirdデータベースデータを新しい「ベストプラクティス」の方法で並べ替えたいと思っています。

編集: ログ ファイルまたは同様のものを取得して、変更に関するドキュメントを入手できれば、本当にうれしいです。

更新: そのウィキペディア サイトのツールのいくつかを確認した後。実際のロギング メカニズムは見つかりませんでした。データベースの変更をどのように文書化しますか? 単に書き留めるだけですか?

結果: 本当の答えは得られませんでした...私はまだ良いツールを探しています。この質問に関するヒントとご意見をお寄せいただきありがとうございます。ケネス・コクランに報奨金を贈りたいのですが、彼が私に ETL を教えてくれたからです。ありがとうございました!

0 投票する
3 に答える
1457 参照

sql - SQL Server-ETLのクエリとテーブルの同期を維持するにはどうすればよいですか?

この質問の言い方がわからないので、説明してみます。SQLServer2005にサードパーティのデータベースがあります。別のSQLServer2008があり、サードパーティのデータベースのデータの一部も「公開」したいと考えています。次に、このデータベースをポータルおよびレポートサービスのバックエンドとして使用します。これはデータウェアハウスになります。

宛先サーバーで、サードパーティのデータベースとは異なるテーブル構造でデータを保存したいと思います。非正規化したいテーブルがいくつかあり、不要な列がたくさんあります。また、同じ行に格納されているデータに基づいて更新する必要があるいくつかのテーブルにフィールドを追加する必要があります。たとえば、他の列に入力したい情報を含むvarcharフィールドがあります。これらすべてにより、データがクレンジングされ、レポートが簡単になります。

特定の宛先テーブルに必要なすべての情報を取得するためのクエリを作成できます。ただし、他のサーバーのソースで最新の状態に保つことができるようにしたいと思います。すぐに更新する必要はありませんが(それでもいいのですが)、おそらく10分ごとに更新したいと思います。数十万行のデータがありますが、データの変更や新しい行の追加などはそれほど大きくありません。

私は周りを見回しましたが、これを達成するための最良の方法はまだわかりません。私が知る限り、レプリケーションは必要なことを実行しません。おそらくMergeステートメントを使用して更新を行うためにt-sqlを手動で記述し、それをsqlサーバーエージェントを使用するジョブとしてスケジュールすることができます。私もSSISを調べてきましたが、それはETLのようなものに連動しているように見えます。

これを達成するために何を使用すればよいかわからないので、この種のことをどのように行うべきかについてアドバイスをもらいたいと思っていました。任意の提案をいただければ幸いです。

0 投票する
6 に答える
2790 参照

mysql - あるデータベースから別のデータ構造を持つ別のデータベースにデータを移動する

仮定のmysqlデータベースからpostgresデータベースにデータを移動する方法は?

シナリオ: 2 つの類似したアプリケーション。ユーザーは、あるアプリケーションから別のアプリケーションに切り替えたいと考えています。しかし、彼は mysql データベースを使用する以前のアプリケーションで特定のデータ情報を保持していました。アプリケーションを切り替えるとき、古いアプリケーションから postgres を使用する新しいアプリケーションにデータを移動する必要があります。

両方のデータベースは、構造とテーブルとテーブルの関係が異なり、テーブルの数とその下の列も異なります。

しかし、あるデータベースから別のデータベースに日付を移動する方法は?

これを行うツールはありますか?もしそうなら、誰もがそのようなツールを提案できます..

0 投票する
2 に答える
3776 参照

etl - Pentaho Kettle のアーキテクチャはどこにありますか?

Pentaho Kettle アーキテクチャはどこにありますか? 短いウィキ、設計ドキュメント、ブログ投稿など、物事がどのように機能するかについての概要を説明するものを探しています。この質問は、具体的な「ハウツー」の開始ガイドではなく、テクノロジとアーキテクチャに関する優れた見解を示すものです。

具体的な質問は次のとおりです。

  1. ステップ間のデータの流れは?すべてが記憶されているように見えますが、これは正しいですか?
  2. 上記は、さまざまな変換についても当てはまりますか?
  3. 収集手順はどのように実装されていますか?
  4. それを使用するための特定のパフォーマンスガイドラインはありますか?
  5. ftp タスクは信頼性とパフォーマンスに優れていますか?
  6. 他の「すべきこととすべきでないこと」はありますか?
0 投票する
1 に答える
1370 参照

c# - Rhino-Etl と MySQL の問題

しばらく Rhino-ETL を使用していますが、非常にスムーズに動作しています。しかし、MySQL DB への接続に問題があります。

http://dev.mysql.com/downloads/connector/net/6.1.html mysql.data が参照され、bin フォルダーにあります。

私の接続文字列 i app.config は次のようになります

接続文字列は、単純な Web サイトでデバッグ目的でデータ ソースとして正常に機能します。私はasp.net 3.5、win 7、およびVS 2008を実行しています。この問題について何か助けていただければ幸いです。

ETL プロジェクトでの簡単なテストも機能しています

0 投票する
4 に答える
2904 参照

sql-server-2005 - SSIS でのルックアップ タスクの代替

対応するアプリケーション キーのサロゲート キーを抽出するためのデータ ウェアハウス用の SSIS ソリューションに取り組んでいます。SSIS のルックアップ タスクを使用していますが、このタスクの問題は、完全なルックアップ テーブルをメモリにキャッシュすることです。私のルックアップ テーブルのサイズは巨大です。つまり、2,000 万レコードです。したがって、ルックアップタスクのいくつかの方法または代替案を提案できる場合