問題タブ [batch-insert]

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 投票する
1 に答える
237 参照

c# - TransactionScope 内でのバッチ挿入中に ORA-00604 エラーが発生しました

TransactionScope内でADO.NETを使用して、Oracleデータベースに10万以上のアイテムをバッチ挿入しようとしています。このような:

これより低いアイテム (10k-30k) の場合、トランザクションは正常に完了します。ただし、より高い項目 (100k など)の場合は、 ORA-00604: エラーが再帰 SQL レベル %s で発生しました

TransactionScope を完全に削除すると、アイテムのサイズにエラーは発生せず、機能します。

TransactionScope を膨大な数のアイテムで動作させるにはどうすればよいですか?

0 投票する
1 に答える
2646 参照

hibernate - Nativequeryを使用したJPA(Hibernate)およびpostgres sqlバッチアップサート

JPAPostgresでバッチ アップサートを実行したいと思います。PK ではない一意の制約の競合をチェックしているため、マージを使用できません。Postgres で upsert するために、ON Conflict 機能を使用できるようになりました。基本的には、ネイティブクエリの実行を実行したいと思いますJPA。クエリは次のようになります。

オブジェクトのリストをループしてクエリを実行します。

だから私の質問は、ネイティブクエリ挿入の場合、のような手動フラッシュを使用できますかem.flush()? バッチ挿入で機能しますか。

そうでない場合、誰かがこの問題の可能な解決策を教えてもらえますか?

御時間ありがとうございます。

0 投票する
1 に答える
753 参照

ruby-on-rails - 100K MongoDB オブジェクトの 'db.collection.insert()' バッチ挿入速度を上げる方法

私の Ubuntu サーバーには、MongoDB に依存する Ruby on Rails アプリがあります。私はしばしばMongoidを使用して DB にオブジェクトを注入しますが、大量のオブジェクトを注入するときは、ハッシュの巨大な配列をコンパイルし、mongo シェル メソッドdb.collection.insert()で注入します。

バッチ挿入時間は私にとってボトルネックです。たとえば、150000 個のオブジェクトをバッチ挿入するには 23 秒かかります。バッチ挿入を高速化する方法でリソースを割り当てることは可能ですか?

0 投票する
1 に答える
251 参照

java - Neo4j のパスを取得するにはどうすればよいですかバッチ インサータ メソッドで?

Web アプリケーションで Neo4j 2.2.8 と Spring Data を使用しています。次のように、xml を使用してデータベースを構成しています。

しかし、バッチ インサータを使用して、.txt ファイルをソースとする 100 万を超えるノードを追加しようとしています。ファイルを読み取ってオブジェクトのリストを設定した後、バッチ処理するコードは次のようになります。

「インサーター」のxmlで構成されたデータベースのパスを取得することは可能ですか? 上記の構成では、Neo4j が複数の接続に関するエラーを表示するためです。複数接続のこのエラーを解決するプロパティを設定できますか? 誰かがこの問題を抱えていて、それを解決する方法を知っていますか? アイデアは大歓迎です。

みんなありがとう!

0 投票する
1 に答える
742 参照

java - JOOQ バッチ ステートメントでバインド呼び出しの数に上限はありますか?

次のように、挿入するときにバッチステートメントを使用します。

これは、過去に数千のオブジェクトを挿入するときにうまく機能しました。ただし、いくつかの疑問が生じます。

  1. .bind()バッチの呼び出し回数に上限はありますか?
  2. もしそうなら、制限は何に依存していますか?
  3. .bind()を実行した後に再度呼び出すことは可能のよう.execute()です。.execute()以前にバインドされた値をクリアしますか?

最後の質問を明確にするために: 次のコードが実行された後...

どの結果を期待する必要がありますか?

残念ながら、Javadocドキュメントも、この特定の使用パターンについて説明していません。

(この特定の質問をしている理由.execute()は、上記の制限を回避するために 1000 回のバインドごとに行う場合、複数の呼び出しでbatchオブジェクトを再利用できるかどうかを知る必要があるためです。).execute()