5

次のような形式になる可能性が最も高い大量のデータを収集しています。

ユーザー 1: (a,o,x,y,z,t,h,u)

u を除くすべての変数が時間に関して動的に変化する場所 - これはユーザー名を格納するために使用されます。私のバックグラウンドは「ビッグデータ」にあまり集中していないため、理解しようとしているのは、配列を最終的に作成すると、各タイムステップで分析を実行するため、108000 x 3500 のような非常に大きくなるということです。それをグラフ化して、これを管理するのに適切なデータベースは何かを決定しようとしています。これは科学研究のためなので、私は CDF と HDF5 を調べていました。NASAで読んだ内容に基づいて、CDF を使用したいと思います。しかし、これはそのようなデータを管理して速度と効率を向上させる正しい方法でしょうか?

最終的なデータセットにはすべてのユーザーが列として含まれ、行にはタイムスタンプが付けられるため、分析プログラムは行ごとに読み取ってデータを解釈します。そして、データセットにエントリを作成します。たぶん、CouchDB や RDBMS などを検討する必要があるかもしれませんが、どこから始めればよいかわかりません。アドバイスをいただければ幸いです。

4

2 に答える 2

6

これは包括的な回答ではなく、拡張されたコメントです...

敬意を表して言えば、最近では、サイズのデータ​​セットは108000*3500実際にはビッグ データGBとは見なされません。単なる108000*3500バイトの場合、それは 3GB プラス変更のみです。あなたが言及した技術はどれも、それに簡単に対処できます。実行を速めるのではなく、どのアプローチが開発を速めるかに基づいて選択する必要があると思います。

しかし、さらに提案を検討したい場合は、次のことをお勧めします。

  1. SciDB
  2. ラズダマン
  3. モネDB

これらはすべて、学術的なビッグデータ コミュニティである程度の牽引力を持ち、そのコミュニティの外でも使用され始めています。

于 2013-01-04T10:04:58.950 に答える
3

同様のサイズのデータ​​にCDFを使用してきましたが、うまく機能すると思います。ただし、いくつかのことを覚えておく必要があります。あなたのプロジェクトの詳細をよく知らないことを考えると、これは役立つかもしれませんし、役に立たないかもしれません...

3GB のデータは、古いバージョンの CDF のファイル サイズ制限に近いため、最新のライブラリを使用していることを確認してください。

3GB はそれほど多くのデータではありませんが、読み書きの方法によっては、処理が遅くなる場合があります。可能な限りハイパー読み取り/書き込み機能を使用してください。

CDF は、ユーザー名やデータの説明などの情報を保持できるメタデータ (グローバル/変数属性と呼ばれる) をサポートします。

データを複数のファイルに分割するのは簡単です。ユーザーごとに 1 つのファイルを使用することをお勧めします。これは、各レコードではなく、属性としてファイル全体に対して一度だけユーザー名を書き込むことができることを意味します。

エポックと呼ばれる追加の変数を作成する必要があります。これは、各レコードの明確に定義されたタイムスタンプです。あなたが今持っているタイムスタンプが適切かどうか、またはそれを処理する必要があるかどうかはわかりませんが、それはあなたが考える必要があるものです. また、epoch 変数には、特定の型 (e​​poch、epoch16、または TT2000) を割り当てる必要があります。TT2000 は、ナノ秒の精度を提供し、うるう秒を処理する最新バージョンですが、私が遭遇したほとんどの CDF リーダーは、まだうまく処理できません。そのような精度が必要ない場合は、しばらくの間標準であった epoch16 をお勧めします。

これがお役に立てば幸いです。CDF を使用する場合は、問題が発生した場合はお気軽にバグを報告してください。

于 2013-01-23T15:32:14.867 に答える