回答:
数ギガバイト非常に「ではありませんビッグ」。これは、エンタープライズDBの通常のサイズに似ています。テーブルに参加するときにPKを超える限り、将来的にも非常にうまく機能するはずです(1日にTBのデータを取得しない限り)。
ビッグデータ環境で働くほとんどの専門家は、ビッグデータという用語の始まりとして5TB以上を検討しています。しかし、それでも、次善のnosqlデータベースをインストールするのが常に最善の方法とは限りません。問題に最適なツールを見つけるために、データ(集計、読み取り、検索、鉱山など)でアーカイブするタスクを常に考える必要があります。
つまり、データベースで多くの検索を行う場合は、solrインスタンス/クラスターを実行し、PostgresやSQL ServerなどのDBMSからデータを非正規化し、データを単に移動するのではなくsolrに入れる方がよいでしょう。永続性とパフォーマンスの観点から、sqlからnosqlへ。
ビッグデータは、実際には「どれだけ大きいか」についてはそうではありません。
まず、数ギガバイトはまったく大きくなく、ほとんど何もありません。だから気にしないでください、あなたのシステムは、私が思うにしばらくの間、効率的に動作し続けるでしょう。
次に、データをどのように使用するかを考える必要があります。
格納されている「機能」データがアプリケーションで使用される場合、SQLのままにしておくことをお勧めします。後で検索したりレポートを作成するためにデータを保存する場合、およびこのデータ量が急速に増加する可能性がある場合は、ビッグデータを提案します。私の意見では、継続的に収集および分析する必要がある実際のデータを扱う場合、ビッグデータは有用です。
ここで、リレーショナルvsドキュメント(またはNoSQL)データベースを使用するのが適切な場合について、stackoverflowに関する非常に詳細な回答を投稿しました。
リレーショナルデータベース/ ORMまたはドキュメントデータベース/ ODMを使用する動機
概要:
小さなものについては、使い慣れたツールを使用してください
数ギガバイトは間違いなく小さなものです:妥当な数のノード(16-32)を持つ単一のMySQL Clusterに収まるには大きすぎるまで大きくなりません。つまり、おそらく8-16TBデータと数百万トランザクション1秒あたり(または最大100のTBデータと1秒あたり数千のトランザクションを含む、より一般的なハードドライブベースのデータベース)。
別のデータベース(MySQL Clusterではない)で立ち往生している場合は、FusionIOハードウェアを投入することで、さらに多くのデータベースを活用できます。
データが数TB を超え、1秒あたり数千のトランザクションよりも速い場合は、まずアプリケーションコードで論理シャーディングに移行し、次にNoSQLに移行することを検討してください。
カサンドラ :)
NoSQLに移行する時間は2つのことによって決まりますか?
SQLデータベースは、データが適切に構造化されている場合に優れています(たとえば、テーブル、Excelスプレッドシート、または列数が固定された行のセットとしてモデル化できる場合)。また、多くのテーブル結合を行う必要がある場合にも適しています(これはあなたのように聞こえます)。
NoSQLデータベースは、データがキーと値のペアを超えて非構造化されている場合に優れています。
パフォーマンスに関しては、 1つの質問をする必要があります。現在のSQLソリューションは遅いですか?