私は巨大なデータベースを持っているプロジェクトに取り組んでいます。 [1週間で約32GBのデータ]。私たちはDB2とspring-framework + jdbcを使用しています。私はちょうどこのJDBCの多くのデータを処理できることを知りたがっていますか?それとも別のものを使うべきですか?または、JDBCがこれを行うことができる場合、私はこのためにいくつかの特定のテクニックを使用する必要があります。JDBCは巨大なデータベースを処理できますか?
答えて
JDBCは接続に過ぎません。データベース内のデータの量には関係ありません。私はそれがどこにいてもデータベース側でもっと問題になると思います。あなたが作成するのに高価なインデックスを持っているなら、あなたはもっと問題を起こす可能性が高いですが、正直言って32GBは1週間ではそれほど大きくありません。私は、「本当の」サーバー側のデータベースがそれをかなり簡単に処理できると期待しています。
私はあなたがあまりにも特定のパスを遠くにコミットする前にそれを試すことをお勧めします。できるだけ早くデータをチャックしてください。数時間で32GBのデータを作成できないと少し気になります。
JDBCは、データベースとJavaプログラムの間のインターフェイスです。この量のデータを処理するのはデータベースの責任です。 Javaの世界では、データベース接続に関してJDBCを使用する代わりにほとんど使用できません。
すべては、データベース上で実行する処理によって異なります。アクセスするテーブルの数はいつでも増え、データベースからの書き込みまたは読み取りの回数も増えます。これに基づいて設計することができます。また、春によく統合された休止状態のようなORMソリューションを使用して見ることもできます。これは毎回ダイレクトdbアクセスを避けるためにキャッシュのようないくつかのオプションを提供します。また、接続を再利用するために接続プーリングを設定する必要があります。
「いつでもアクセス可能なテーブル数」は、20を超えるテーブルがありません。いつでも、最大6-7のテーブルからフェッチしています。 –
SQL APIおよびデータベース抽象化レイヤーは重要ですが、データベースのパフォーマンスおよび保守性に最も大きな影響を与えるのは、DBAが大量のデータを管理するために使用する索引付け、クラスタリングおよびパーティション化のスキームです週間。これらの分野で最も強力な機能は、Linux、UNIX、およびWindows用のDB2データエンジンのエンタープライズ版で利用できます。私は、MDC(Multi-Dimensional Clustering)、レンジ・テーブル・パーティショニング、ディープ・コンプレッションの組み合わせを見て、テーブルが成長するにつれてテーブルを管理し、ロールイン/ロールアウトを容易にし、最も重要なことに、データは最低限のスキャンで要求されます。マテリアライズ照会表(MQT)のメリットもあります。非常に最近リリースされたDB2のバージョン9.7は、これらの機能のいくつか、特に索引のための積極的な圧縮スキームに特筆すべき拡張機能を提供します。
ありがとうFred、実際にデータベースの最適化は私の手にはありません。しかし、はい、私はthtメイトにこれらのことを知らせます –
- 1. 巨大なビットマップを処理する
- 2. C#で巨大ファイルを処理する
- 3. GWTの巨大なデータ処理
- 4. Python:巨大なシングルラインファイルを処理する方法は?
- 5. WCFで巨大なリクエストを処理する最良の方法
- 6. DataGridView + DataTable、巨大なリストを処理する最善の方法?
- 7. どのようにJavaの巨大なデータを処理する
- 8. 巨大なデータベースのキャッシング
- 9. 巨大なデータベースをローカルサーバーにインポートする
- 10. 巨大なデータベースにAmazon Web Services(AWS)を使用できますか?
- 11. 巨大なPerlコードベースを整理する
- 12. symfonyとdoctrineを使って巨大なselectクエリを処理するには?
- 13. 大きなテキストファイルの処理
- 14. 処理大きな文書
- 15. は、前処理なしでYolov2で巨大な画像を使用する方法があります
- 16. ノードは大きなファイルを処理できません。
- 17. Futuresで大きなJDBCクエリを高速化できますか?
- 18. 巨大なデータベースのリストの代わり
- 19. PHP - 大きなデータを処理する
- 20. 第1のデータベースを反復処理しながら第2のデータベースを反復処理できますか?
- 21. データベースのVARCHAR2列の大きな文字列値の処理
- 22. 巨大なdaskデータフレームを一見に保存できますか?
- 23. ニューラルネットワークで大きな数字処理
- 24. 巨大なクエリは、
- 25. は、巨大な値
- 26. MySQLデータベースまたはInfobrightデータベースで大量のデータを処理する方法...?
- 27. 巨大なファイルのバージョン管理システム?
- 28. Apache SolrでTeraByteの大きなデータを処理できるか
- 29. FuelPHP ORMはこのデータベース設計を処理できますか?
- 30. コードが大きなループを処理できません
チャック、おっと、私はJon:Dを意味しています。あなたによれば、これは私だけではなく、これを気にする必要があるDBAです。 –
ほぼ確実です。 JDBCは、データをポンピングするパイプを表します。明らかに、データを処理するために*オーバーヘッドがかかりますが、それは重要ではありません。 –