非常に大きなデータベースを操作するには、C# で Windows フォーム アプリケーションを作成する必要があります。データベース内の情報を非常に迅速に検索する必要があります。私の質問は、大規模なデータベースを処理するための最速の方法は何ですか。情報を非常に迅速に見つけるには、ヒント、チュートリアル、または記事があれば大いに役立ちます。
ありがとう。
非常に大きなデータベースを操作するには、C# で Windows フォーム アプリケーションを作成する必要があります。データベース内の情報を非常に迅速に検索する必要があります。私の質問は、大規模なデータベースを処理するための最速の方法は何ですか。情報を非常に迅速に見つけるには、ヒント、チュートリアル、または記事があれば大いに役立ちます。
ありがとう。
私の質問は、大規模なデータベースを処理し、情報を非常に迅速に見つけるための最速の方法は何かということです
小さなデータベースと同じ方法で、適切なプログラミングと呼ばれます。
大小を問わず、データを取得する唯一の方法は、SQL データベースの場合は SQL です。魔法の近道はありません。ビッグ データベース = 適切なサーバー + 適切なプログラミング プラクティス。限目。JON で始まるすべての人物を検索する必要があります。これらの人物テーブルに 10 億または 10 億のエントリがあるかどうかに関係なく、select ステートメントを発行します。代替手段はありません。
ここで、「SQL ステートメントをシンプルに保つ」と言うことができますが、それは小さなデータベースにも同様に当てはまります。
必要以上の結果を返さないようにし、UI の結果を制限します (クエリ結果に 10,000 エントリを必要とする人はいません - 501 をプルし、500 以上を伝え、さらに条件を追加してください)。データベースは。
大規模なデータで回避できないのは、インデックスがない、テーブル スキャンを強制するなどの愚かなプログラミング ミスですが、LARGE であるということは、データベースを実行している人々が実際に「データを選択して検索する」以上のことを知っている可能性が高いことを意味します。 SQLの。そして、それが本当に大規模なデータベースであり、夢ではない場合、サーバーはブルートフォースを使用して1秒未満で1億行のテーブルを照会できる可能性があります-私の最後の大きなデータベースは(21000GB、約1億行を追加しました1日あたりいくつかのテーブル)。
結果セットを制限し、インデックスがないなどのばかげた障害のないデータベース設計を維持し、それがあなたにできるすべてです。
最速の方法はいくつかのことを意味します
データを取得するためのアクセス時間を最短にするためのコードを最速で記述します。
データセットが非常に大きい場合は、データベース クエリ分析ツールを使用して最適化できるため、ストアド プロシージャを使用することをお勧めします。
ただし、クエリが単純な場合、つまり単純な where 条件または結合がない場合、世界はあなたのカキです。
また、データベースにも依存します.SQL、Oracle、postgres、mysql、またはnosqlのようなものですか、それとも単なるcsvファイルですか? それらはすべて少し異なるため、異なる推奨事項を使用する可能性があります。
50,000 行はそれほど大きなものではありません。ほとんどのデータベースはそれを処理し、「MOAR」と叫びます