多くの人が、ビッグデータという用語を商業的の方法で使用しています。大規模なデータセットが計算に関与しているため、潜在的なソリューションのパフォーマンスが優れている必要があることを示しています。もちろん、ビッグデータには常にスケーラビリティや効率などの関連用語が含まれていますが、問題をビッグデータ問題として正確に定義するものは何ですか?
計算は、データマイニングや情報検索など、特定の目的のセットに関連している必要があります。または、データセットが十分に大きい場合、一般的なグラフの問題のアルゴリズムにビッグデータというラベルを付けることができます。 >?また、大きいは十分に大きい(これを定義できる場合)?
コメント
- データが通常の使用に対して大きくなり始めたときについてのすばらしい記事chrisstucchio.com/blog/2013/hadoop_hatred.html
- “何でもExcelにロードするのに大きな”は実行中の冗談です。
- それは、流行語として投げ込まれているだけかどうかによって異なります。
- ‘は正確に1GBです。 ‘がルールブックのカットオフです。あいまいさの余地はありません。
- これはすばらしい質問です。さまざまな回答で示されているように、定義は…未定義
回答
私に(来るリレーショナルデータベースの背景から)、「ビッグデータ」は主にデータサイズに関するものではありません(これは他の回答の大部分です)。
「ビッグデータ」と「悪いデータ」は密接に関連しています。リレーショナルデータベースには「元のデータ」が必要です。データがデータベースにある場合、それは正確で、クリーンで、100%信頼できます。リレーショナルデータベースには「優れたデータ」が必要であり、データベースにロードする前にデータが適切に準備されていることを確認するために、膨大な時間、費用、および説明責任が課せられます。データがデータベースにある場合、それは「福音」であり、現実のシステム理解を定義します。
「ビッグデータ」は、この問題に反対の方向から取り組みます。データの定義が不十分であり、その多くが不正確である可能性があり、実際にはその多くが欠落している可能性があります。データの構造とレイアウトは、リレーショナルではなく線形です。
ビッグデータには、不良データや欠落データの量が統計的に重要でなくなるように、十分な量が必要です。データのエラーが互いに打ち消し合うほど一般的である場合、欠落しているデータが無視できるほど小さい場合、データアクセス要件とアルゴリズムが不完全で不正確なデータでも機能する場合は、「ビッグデータ」になります。 。
「ビッグデータ」は実際には量ではなく、データの特性に関するものです。
コメント
- +1ビッグデータに対するストレスは、サイズではなく、コンテンツ(の特徴)についてであることに感謝しています。
- それは非常に新鮮な視点です。私はこれまで聞いたことがありませんが、それは非常に真実です。これは、SQLテクノロジーとNoSQLテクノロジーが競合的ではなく、補完的であることを示しています。
- あなたは’ビッグデータではなく、非構造化データについて話しています。非構造化データは通常、アプリケーションでNoSQLソリューションとビッグデータにつながりますが、それでも異なります。
- これはビッグデータとは何かについての優れたビジネスの視点であると思いますが、非常に指摘されている特定の質問には答えません。 “ビッグデータの大きさは?”
>
回答
ご存知のように、最近の「ビッグデータ」は誰もが「持っている」と言いたがっているものであり、人々が用語を定義する方法にある程度の緩みが伴います。少なくともHadoopなどのビッグデータテクノロジーで補完することなく、RDBMSなどの従来のテクノロジーで管理することがもはや不可能な規模であれば、確かにビッグデータを扱っていると思います。
そのためには、データが実際にどれだけ大きくなければならないかについては議論の余地があります。これは(やや挑発的な)ブログ投稿で、5TB未満のデータには当てはまらないと主張しています。 (明確にするために、「5 TB未満はビッグデータではない」とは主張していませんが、「5 TB未満は「Hadoopが必要になるほど大きくない」だけです。)
しかし、小さなデータセットでは、Hadoopのようなビッグデータテクノロジーには、バッチ操作に適している、非構造化データ(および構造が事前にわかっていないか変更される可能性のあるデータ)でうまく機能する、水平方向のスケーラビリティ(既存のサーバーを強化する代わりにノードを追加する)、および(上記のリンクされた投稿ノートのコメント投稿者の1人として)データ処理を外部データセットと統合する機能(マップを考えてください-マッパーが作成する場所を減らしてください別のサーバーへの呼び出し)。NoSqlデータベースなど、ビッグデータに関連する他のテクノロジーは、大量のデータを処理しながら高速なパフォーマンスと一貫した可用性を重視し、半構造化されていないデータを処理して水平方向にスケーリングすることもできます。
もちろん、 、従来のRDBMSには、ACID保証(Atomicity、Consistency、Isolation、Durability)や特定の操作のパフォーマンスの向上、さらに標準化され、成熟し、(多くのユーザーにとって)使い慣れたものなど、独自の利点があります。したがって、紛れもなく「ビッグ」データの場合でも、データの少なくとも一部を従来のSQLデータベースにロードし、それをビッグデータテクノロジーと組み合わせて使用することが理にかなっている場合があります。
つまり、より寛大な定義ビッグデータテクノロジーが何らかの付加価値を提供するのに十分な大きさである限り、ビッグデータがあるということです。しかし、ご覧のとおり、それはデータのサイズだけでなく、作業方法にも依存する可能性があります。それに加えて、柔軟性、一貫性、パフォーマンスの観点からどのような要件がありますか。 データをどのように使用しているかは、何のために使用しているかよりも質問に関連しています。 (例:データマイニング)。とはいえ、データマイニングや機械学習などの使用は、使用するのに十分な大きさのデータセットがある場合に有用な結果をもたらす可能性が高くなります。
コメント
- このコメントはほぼ5年前のものであり、その一部はまだ真実ですが、私が引用したブログの5TBのしきい値は確かにそうではありませんもう真実ではありません。たとえば、Microsoftは最大100TBの”ハイパースケール” SQL DBを提供しています: docs.microsoft.com/en-us/azure/sql-database/ … もちろん、巨大なSQLDBを備えた多くの組織を想定できます たとえば、さまざまなワークロードをサポートするSparkクラスターがあります。 ‘どちらかを選択する必要のあるルールはありません。
回答
世界のデータの総量:2012年には2.8ゼータバイト、2015年までに8ゼータバイトに達すると推定され(ソース)、倍加時間40ヶ月の。それより大きくなることはできません:)
単一の大規模な組織の例として、Facebookは1日あたり500テラバイトを100ペタバイトの倉庫に取り込み、2012年の時点で1日あたり70kのクエリを実行しています(ソース)現在のウェアハウスは> 300ペタバイトです。
ビッグデータはおそらくFacebookの数のかなりの部分です(1 / 100おそらくはい、1/10000おそらくそうではありません:それは「単一の数値ではなくスペクトルです。」
サイズに加えて、それを「大きく」するいくつかの機能は次のとおりです。
-
保存されるだけでなく、積極的に分析されます(「ビッグデータを活用していない場合、ビッグデータはありません。データの山があります」Jay Parikh @ Facebook)
-
データウェアハウスの構築と実行は、主要なインフラストラクチャプロジェクトです
-
かなりの速度で成長しています
-
構造化されていないか、構造が不規則です
ガートナーの定義:「ビッグデータは大量、高速、 /または新しい形式の処理を必要とする多種多様な情報資産」(3V)したがって、「大きさ」はデータセットのサイズだけでなく、速度と構造、および必要なツールの種類についても考えています。
コメント
- 世界のデータの総量が40か月ごとに倍増する場合、それは確かにより大きくなる可能性がありますそれ。 ; p
- 他の人はビッグデータの4V ‘を説明しています IBM または5V ‘ s DAVE BEULKE 2011
- 元の3V ‘は、2001年にDoug Laney 3Dデータ管理:データ量、速度、多様性の制御によって設定されました。
回答
私にとってビッグデータは主にツールに関するものです(結局のところ、それが始まりです)。「大きな」データセットこれは、従来のツールでは処理するには大きすぎるものです。特に、単一のマシンではなくクラスターでのストレージと処理を要求するのに十分な大きさです。これにより、従来のRDBMSが除外され、処理のための新しい手法が必要になります。特に、さまざまなHadoopのようなフレームワークを使用すると、この計算の形式を制限する代わりに、クラスター全体に計算を簡単に分散できます。 http://www.chrisstucchio.com/blog/2013/hadoop_hatred.html への参照を2番目に説明します。ビッグデータ手法は、単に大きすぎるデータセットの最後の手段です。問題の形が既存の「ビッグデータ」ツールが適切でないようなものである場合は、おそらくより良いでしょうが、私は、あらゆる目的のデータセットが十分に大きければ適格であると言います。新しい名前を思い付くために。
もちろん、いくつかの重複があります。私が(簡単に)last.fmで作業したとき、Hadoopを使用して同じ50 TBのデータセットで作業し、かなりばかげたサーバー上のSQLデータベースでも作業しました(1 TBのRAMがあったことを覚えていますが、これは数年前です)。これは、ある意味で、あなたが取り組んでいる仕事に応じて、ビッグデータであったかどうかを意味しました。しかし、それは正確な特性だと思います。 Hadoopの仕事に携わった人々は、ビッグデータの会議やWebサイトにアクセスすると便利でしたが、SQLの仕事に携わった人々はそうではありませんでした。
回答
単一のコモディティコンピューターがデータ量を処理できなくなると、データは「ビッグ」になります。これは、スーパーコンピューターの構築やクラスターを使用したデータの処理について検討を開始する必要があるポイント。
回答
ビッグデータが定義されていますデータの量によって、そうですが、それだけではありません。ビッグデータの特殊性は、のロットを保存する必要があることです。さまざまなおよび場合によっては非構造化のもの常におよびトンのセンサーから、通常は数年または数十年。
さらに、スケーラブルなものが必要です。データを見つけるのに半年。
ビッグデータが登場します。従来の方法では機能しなくなります。SQLはスケーラブルではありません。SQLは非常に構造化されリンクされたデータで機能します(すべてこれらのプライマリキーと外部キーの混乱、内部結合、暗黙のリクエスト…)
基本的に、ストレージがますます安くなり、データの価値が高まるため、ビッグマネージャーはエンジニアにすべてを記録するように依頼します。これらすべてのモバイル、ソーシャルネットワーク、埋め込みのものを備えたこの大量の新しいセンサー…など。そのため、従来の方法では機能しないため、新しいテクノロジーを見つける必要があります(すべてをファイルに、json形式で、大きなインデックスを使用して、noSQLと呼びます)。
ビッグデータは非常に大きいかもしれませんが、それほど大きくはありませんが、構造化されていない複雑なデータや、生の形式ですばやく実行中に保存する必要のあるさまざまなデータがあります。最初に焦点を合わせて保存し、次にすべてをリンクする方法を検討します。
回答
ビッグデータがゲノミクス、特にデノボアセンブリでどのようになっているのかを共有します。
いつ私たちはあなたのゲノムをシーケンスし(例:新規遺伝子を検出する)、何十億もの次世代の短い読み取りを行います。下の画像を見てください。ここでは、いくつかの読み取りを組み立てようとしています。
これは単純に見えますか?しかし、それらの読み取りが数十億ある場合はどうなりますか?それらの読み取りにシーケンスエラーが含まれている場合はどうなりますか? RAMに読み取りを保持するのに十分なメモリがない場合はどうなりますか?非常に一般的な Alu Element などの反復DNA領域はどうですか?
De-novoアセンブリは、 De-Bruijnグラフを作成することによって実行されます:
グラフは、重複する読み取りを表す巧妙に採掘されたデータ構造です。完璧ではありませんが、 「考えられるすべてのオーバーラップを生成して配列に格納するよりも優れています。
アセンブラがトラバースして折りたたむ必要のあるパスがかなりあるため、アセンブリプロセスが完了するまでに数日かかる場合があります。
ゲノミクスでは、次の場合に大きなデータがあります。
- すべての組み合わせをブルートフォースできない
- コンピュータに十分な物理メモリがないデータを保存するには
- ディメンションを縮小する必要があります(例:冗長なグラフパスを折りたたむ)
- 必要があるため、腹を立てます何かをするのに何日も待つ
- データを表すために特別なデータ構造が必要です
- エラー(例:シーケンスエラー)についてデータセットをフィルタリングする必要があります
回答
グラフアルゴリズムには特別なことがあります。それは、データを本質的に分割する能力についての、それから特別なものにする独自の質問です。
配列の数値を並べ替えるなど、データ構造の問題をより小さな論理和部分に分割することはそれほど難しくありません。 ここ:並列インプレースマージソート
ただし、グラフアルゴリズムの場合、特定のグラフィックメトリックでオプションのパーティションを見つけることがわかっているという課題があります。 $ NP困難$になります。
したがって、通常のPCでは10 GBの数値を並べ替えるのは非常に近づきやすい問題かもしれませんが(動的計画法を使用するだけで、プログラムフローについて非常に優れた予測可能性があります)、10GBのグラフを使用します。データ構造はすでに挑戦することができます。
GraphX など、グラフに固有の課題をある程度回避するための方法や特別なコンピューティングパラダイムを使用する特殊なフレームワークがいくつかあります。
質問に簡単に答える:他の人が前に述べたように、データが通常のPCのメインメモリに収まらないが、問題に答えるためにすべてのデータが必要な場合は、データはすでにやや大きいです。ただし、正確なラベル付けは、データ構造と質問に少し依存すると思います。
回答
ビッグデータは、サイズが原因でやりたいことができないところから始まると思います。ほとんどのシナリオでは、実行可能と見なされる実行時間に制限があります。 1時間の場合もあれば、数週間の場合もあります。データが十分に大きくなく、実行可能な時間枠でO(n)アルゴリズムのみを実行できる限り、ビッグデータに到達することはありませんでした。
ボリュームにとらわれないため、この定義が好きです。テクノロジーレベルと特定のアルゴリズム。リソースにとらわれないため、大学院生はGoogleよりもずっと前にビッグデータのポイントに到達します。
データの大きさを定量化できるようにするために、私はバックアップに必要な時間を考慮してください。テクノロジーが進歩したため、数年前は大きいと考えられていたボリュームが中程度になりました。テクノロジーが向上するにつれて、学習アルゴリズムの実行時間と同じように、バックアップ時間が向上します。より賢明だと思います。データについて話すには、Yバイトのデータではなく、バックアップにX時間かかります。
PS。
ビッグデータポイントに到達した場合でも、注意することが重要です。また、O(n)を超える複雑なアルゴリズムを簡単な方法で実行することはできません。そのようなアルゴリズムの恩恵を受けるために、できることはたくさんあります。 s。
たとえば、特徴選択により、多くのアルゴリズムの実行時間が依存する特徴の数を減らすことができます。多くのロングテール分布では、頭の中のいくつかの項目に焦点を当てることが有益かもしれません。サンプルを使用して、より遅いアルゴリズムを実行できます。
コメント
- $ O(n)$バリアも破られていることに注意してください。現在、MLの一部のドメインにあります。 MLのサブリニアアルゴリズムに関するワークショップ[1]については、[ grigory.us/mpc-workshop-dimacs.html] を参照してください: grigory.us/mpc-workshop-dimacs.html
回答
データが大量であるため、1台のハイエンドコンピューターよりも2台以上の商用コンピューターで分析する方が費用がかからない場合、データは「ビッグデータ」です。
これは基本的にGoogleの「 BigFiles “ファイルシステムが始まりました。PageとBrinは、Webインデックスを保存および検索するための豪華なSunサーバーを購入する余裕がなかったため、複数の商用コンピューターを接続しました。
回答
@Dan Levinがすでに言ったことに同意する傾向があります。最終的には、データを保存するだけでなく、データから有用な洞察を引き出したいので、それは「ビッグデータ」と呼ばれるものを決定するアルゴリズム/システムの学習能力。 MLシステムが進化するにつれて、今日のビッグデータは明日はビッグデータではなくなります。
ビッグデータを定義する1つの方法は、次のとおりです。
- ビッグデータ:一般的なワークステーションで妥当な時間(1〜2時間)でMLモデルを構築できないデータ(たとえば4GBのRAMを使用)
- 非ビッグデータ:上記の補足
この定義を前提とすると、個々の行が占めるメモリ(単一のデータポイントのすべての変数)がマシンRAMを超えない限り、非ビッグデータ体制。
注: Vowpal Wabbit (今日の時点で群を抜いて最速のMLシステム)は、個々の行(データポイント)が< RAM(たとえば、4GB)である限り、任意のデータセットで学習できます。 。行数は制限ではありません複数のコアでSGDを使用しているため。経験から言えば、ラップトップで1日で10kの機能と10MNの行を備えたモデルをトレーニングできます。
回答
“ビッグデータ」は文字通り大量のデータです。これは何よりもマーケティング用語ですが、通常、データを保持するために必要なメモリ(RAM)の量が原因で、すべてのデータを一度に分析できないほど多くのデータがあることを意味します。処理および分析するメモリが、使用可能なメモリの量よりも多くなっています。
これは、通常、データのランダムなセグメントに対して分析を行う必要があることを意味します。これにより、データの他の部分と比較するためのモデルを構築できます。