問題タブ [talend]
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 - ETL のフィールド固有のエラー
MS SQL Server で ETL プロセスを作成していますが、特定の行の特定の列に固有のエラーが発生したいと考えています。たとえば、データは最初に Excel ファイルからすべての列があるテーブル (初期テーブルと呼びます) にロードされ、varchar(2000)
次に、より具体的なデータ型 ( datetime
、int
など) を含む別のテーブル (DataTypedTable) にデータをステージングします。 .) またはより厳密に制約された varchar の長さ。「1 月 13 日」は提出日の有効な日付形式ではありません。MM/DD/YYYY の形式を使用してください
これらのエラー メッセージは、プロセスの後半で、各メッセージが特定の行とフィールドを参照するエラー メッセージを含むレポートを自動化されたプロセスで作成できるように、何らかの方法で保存する必要があります (誰かが戻って、ソース システムを修正し、Excel ファイルを再送信します)。したがって、理想的には、何らかの障害テーブルに挿入され、失敗した行の主キー、列名、およびエラー メッセージが含まれます。
質問: SSIS や Talend などのオープン ソース ツールを使用してこれを実現できるかどうか疑問に思っています。または、どのようなハンドコーディングのアプローチをとりますか?
SQL を使用することを考えたいくつかのアプローチ (SQL プロシージャで手動で ETL を実行したことがないまでは、他のアプローチを検討したいと思います。C# の可能性もあります):
カーソルを使用して初期テーブルを読み取り、行ごとに、主キーのみを含む空のレコードを DataTyped テーブルに挿入し、各列に単一の更新ステートメントを使用して、その更新が失敗した場合に非常に具体的なものを挿入できるようにします。エラー メッセージ テーブルのその列に固有のエラー メッセージ。
すべてのデータをそのまま DataTyped テーブルに挿入しますが、 と のようSubmissionDate
に列が重複していますSubmissionDateOld
。最初の挿入後、*Old 列にはデータがあり、残りは空白で、SubmissionDateOld に基づいて SubmissionDate を設定する列ごとに 1 つの更新があります。
アプローチを提案することに加えて、あなたがそのアプローチを使用しているかどうか、またはあなたが行っている仕事ですでに同様のものを使用しているかどうかを知りたい.
java - 単純な Java/Groovy と ETL ツール (Talend/etc) の比較 - どのライブラリを使用しますか?
表面上はTalendのようなETLツールに適しているように見える小さなプロジェクトがあるとします。
しかし、Talendを一度も使用したことがなく、さらに、一般的に「ビジュアルプログラミング」ツールを信頼しておらず、適切な言語とサポートの助けを借りて、すべてを昔ながらの方法でコーディングしたいと考えているとします (テキストは優れた IDE で!)。ライブラリ。
ETL ツールの誘惑や罠を回避するのに役立つ言語パターンとサポート ライブラリは何ですか?
java - Pentaho / Talend/etcを統合します。ORマッパーを使用
独自のORマッパーを備えたアプリケーション(Java)があります。このシステム内には、Hibernateのインターセプター(トリガーと呼びます)と比較できるものがあります。データベースにデータを保存する直前、データを削除した後など、特定のアクションを実行します。基盤となるデータベースはMySQLです。
次に、Pentaho Data IntegrationやTalendなどのツールを使用して、データを変換してシステムに配置したいと思います。これをSQLレベルで直接行うことは問題ありませんが、そうすることで、トリガーの組み込み機能が失われます。
データ統合ソリューションのいずれかを既存のアプリケーションに何らかの方法で統合する方法はありますか?データベースに直接書き込むのではなく、クラスのインスタンスに書き込む方法があれば素晴らしいと思います。
ヒントは大歓迎です:-)
database - talendを使用して2つのコードセット(列挙)間でマッピングする方法
次のソーステーブル(Sと呼ばれる)があるとします。
また、ルックアップテーブル(S_gender_valuesと呼ばれる)もあると仮定します。
私の目標は、次のようなターゲットテーブル(Tと呼びます)を作成することです。
また、テーブルTを作成する(およびその結果を検証する)ために使用できる、T_GenderValuesと呼ばれるテーブルTのルックアップテーブルがあると仮定します。
私は2つ(または3つ)の選択肢について考えました:
次のようなマッピングテーブルを作成します(S_T_Gender_Code_Mappingと呼びます)。
次に、tMapを使用して単純な結合/ルックアップを実行します。
tMapを使用して、次のようなマッピングを実装する式を追加します。
/li>代替案2に似ていますが、ユーザーJavaルーチンを使用します。
他の選択肢はありますか?tMapの使いやすさを利用して、S_GenderValuesとT_GenderValuesの間でマッピングし、tMapのようにUIツールの使いやすさを活用できることを望んでいました。
ヒントはありますか?
etl - インフォマティカを効果的に使用するために必要な言語知識は何ですか?
今後数週間で、私の会社は複数のベンダーと協力して、共通のグローバル ETL ツールの選択肢を確立する予定です。これは、必ずしも破ることができないツールではなく、ライセンスへの投資がこれらのコストを統合するために使用される場所です。主要なプレーヤーの 2 つは Talend と Informatica であり、その他はこの質問にとって重要ではありません。
私の経験は、Talend のエンタープライズ ETL ツールである Talend Integration Suite にあり、これには多くの標準的な統合機能もあります。コスト、知識豊富なリソースの可用性など、2 つの間の明らかな長所と短所は別として、私の質問は、必要な開発言語の知識に固有のものです。
Informatica オプションに関するフィードバックをお願いします。経験上、Talendを効果的に使用し、事前にプログラムされた範囲を超えて到達するには(これはかなり頻繁に発生します)、Javaの十分なバックグラウンドが必要であると言えます。この場合、Java を直接意味します。アドオン機能が必要な場合は、Java の「特別な」バージョンではなく、文字通り Java を使用できます。インフォマティカの状況は?使用できる特定の拡張言語はありますか? それは独占的ですが、おそらく主流の言語と密接に関連していますか? 重要な仕事にそれを使用する必要がある可能性はどのくらいですか?
これは、スペースを評価する際に使用する 1 つの要素にすぎませんが、十分な情報を得る前に、インフォマティカのこの側面についてもう少し理解を深める必要があります。回答ありがとうございます。
java - java.text.SimpleDateFormat を使用して、可能な 1 桁の月/日/時間で日付を解析します
Talend Open Studio (オープン ソースのコード生成 ETL ツール) を使用したプロジェクトで、"3/14/1967 0:00:00" ( 1 桁の月に注意してください) のような受信日付文字列の解析エラーが発生します。
コードを掘り下げると、 java.text.SimpleDateFormatを使用していることがわかります。したがって、使用する必要があると予想される日付パターン文字列は「dM-yyyy H:mm:ss」です...しかし、「解析不能な日付: 3/14/1967 0:00:00」のようなエラーが表示され続けます。
SimpleDateFormatは1 桁または 2 桁の問題に対処できると思います。別の日付パターンが必要ですか? (確かに、Java が文字列を日付として読み取ろうとする前に、前処理を行って値を微調整することはできますが、その必要はありません!)
linux - コマンドラインからTalend perlジョブを実行するとファイルが見つからない
Excelファイルからデータを抽出してmysqlテーブルに配置するための単純なtalend perlジョブを作成しました。これは、talend studio 4.1.1 で実行すると問題なく動作します。
問題は、ジョブをエクスポートするときです。私はそれを次のように実行しようとします:
perl -Ilib proj.job_import_prods_0.1.pl --context=デフォルト --context_param file_path="/home/antoniocs/programming/file.xls" $*
これにより、次のエラーが表示されます。
@INC で IO/Scalar.pm が見つかりません (@INC には以下が含まれます: /home/antoniocs/programming/ lib /etc/perl /usr/local/lib/perl/5.10.1 /usr/local/share/perl/ 5.10.1 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10 /usr/local/lib/site_perl .) lib/OLE/Storage_Lite.pm 行171. BEGIN 失敗 -- lib/OLE/Storage_Lite.pm 行 171 でコンパイルが中止されました lib/Spreadsheet/ParseExcel.pm 行 18 でコンパイルが require で失敗しました。 . Compilation failed in require in proj.job_import_prods_0.1.pl line 568. BEGIN failed--コンパイルは proj.job_import_prods_0.1.pl 行 568 で中止されました。
ジョブのフォルダー内の lib フォルダーに ParseExcel.pm を既に配置しています。talendが必要なファイルをジョブのフォルダーに自動的に追加する方法はありませんか?
注: ジョブをエクスポートするとき、「依存関係のエクスポート」ボックスをチェックしました。 追加の注: 私は perl プログラマーではありません。
svn - SVNでのTalendプロジェクト
SVNでTalendOpenStudioを使用する必要があります。リポジトリに配置する必要のあるフォルダは何ですか?
soap - How to push contacts to Microsoft Exchange from Talend?
I'm trying to use Talend Open Studio to sync contacts from a variety of input sources into an Exchange 2007 server.
I know Talend can talk SOAP, and EWS has a WSDL, but having bumped into all sorts of problems trying to marry the two together (since Exchange's WSDL is lacking elements which Talend needs) I don't know if that's the best plan of attack, or if I should be looking at building a more Exchange-specific plugin for Talend using the EWS Java API from MS.
Alternatively, if these are both known to not be possible, I'd appreciate a pointer to an explanation as to why - all the buzzwords seem to line up on each side, after all.