ビッグデータはどのくらいですか?


86

多くの人々は、大きなデータセットが計算に関与していることを示す手段として、かなり商業的な方法でビッグデータという用語を使用しているため、潜在的なソリューションには優れたパフォーマンスが必要です。もちろん、ビッグデータには、スケーラビリティや効率などの関連用語が常に含まれていますが、問題をビッグデータの問題として正確に定義しているのは何ですか?

計算は、データマイニング/情報検索などの特定の目的のセットに関連する必要がありますか、またはデータセットが十分大きい場合、一般的なグラフ問題のアルゴリズムにビッグデータのラベルを付けることができますか?また、どのように大きいです十分な大きさ(これを定義することが可能である場合)?


7
データが通常の使用量に対して大きすぎ始める時期に関する素晴らしい記事chrisstucchio.com/blog/2013/hadoop_hatred.html
Johnny000

18
「Excelに読み込むには大きすぎるもの」は、冗談です。
Spacedman 14年

1
それは流行語としてただ投げ入れられているかどうかに依存します。
ジョンロバートソン

正確に1 GBです。それがルールブックのカットオフです。あいまいさの余地はありません。
ハックR

これは素晴らしい質問です。さまざまな答えが示すように、定義は...未定義
マヌーH

回答:


86

私にとって(リレーショナルデータベースのバックグラウンドから)、「ビッグデータ」とは、主にデータサイズに関するものではありません(これは、他の答えがこれまでのところ大部分です)。

「ビッグデータ」と「不良データ」は密​​接に関連しています。リレーショナルデータベースには「元のデータ」が必要です。データがデータベースにある場合、データは正確で、クリーンで、100%信頼できます。リレーショナルデータベースには「グレートデータ」が必要であり、データをデータベースにロードする前にデータが適切に準備されていることを確認するために膨大な時間、お金、説明責任が課せられます。データがデータベースにある場合、それは「福音」であり、現実のシステム理解を定義します。

「ビッグデータ」は、この問題に別の方向から取り組んでいます。データは十分に定義されておらず、その多くは不正確であり、実際には多くが欠落している可能性があります。データの構造とレイアウトは、リレーショナルではなく線形です。

ビッグデータには、不良データや欠落データの量が統計的に重要でないように十分なボリュームが必要です。データのエラーが互いに打ち消し合うほど一般的である場合、欠落データが無視できるほど比例的に小さい場合、およびデータアクセス要件とアルゴリズムが不完全で不正確なデータであっても機能する場合、「ビッグデータ」 。

「ビッグデータ」は実際にはボリュームに関するものではなく、データの特性に関するものです。


6
+1ビッグデータがサイズの問題ではなく、コンテンツ(特性)の問題であることを強調しています。
ルーベンス

4
それは非常に新鮮な視点です。私はこれを聞いたことがありませんが、それは非常に真実です。これは、SQLおよびNoSQLテクノロジーは競合的ではなく、補完的なものであることを示唆しています。
ジェイゴッド

7
あなたはビッグデータではなく、非構造化データについて話している。通常、非構造化データはNoSQLソリューションとアプリケーションのビッグデータにつながりますが、それらは依然として異なります。
TheGrimmScientist

これは、ビッグデータとは何かというビジネスの観点からは良いと思いますが、「ビッグデータはどれくらい大きいのか」という非常に指摘されている特定の質問には答えません。
ワビット

33

当然のことながら、最近の「ビッグデータ」は誰もが自分が持っていると言いたいことであり、人々が用語を定義する方法にある程度のゆるみを伴います。ただし、一般的に、少なくとも、Hadoopなどのビッグデータテクノロジーで補完することなく、RDBMSなどの従来のテクノロジーで管理することが不可能な規模であれば、確かにビッグデータを扱っていると思います。

そのためには、データが実際にどれだけ大きくなければならないかは議論の余地があります。これは(やや挑発的な)ブログ投稿で、5 TB未満のデータでは実際にはそうではないと主張しています。(明確にするために、「5 TB未満はビッグデータではない」と主張していませんが、「5 TB未満ではHadoopが必要なほど大きくない」と主張しています。)

しかし、小さなデータセットであっても、Hadoopのようなビッグデータテクノロジーには、バッチ操作に適していること、非構造化データ(および構造が事前にわからないか変更される可能性のあるデータ)、水平スケーラビリティ(既存のサーバーを強化する代わりにノードを追加することによるスケーリング)、および(上記のリンクされた投稿ノートのコメンターの1つとして)データ処理を外部データセットと統合する機能(map-reduceの場所を考える別のサーバーを呼び出します)。NoSqlデータベースなどのビッグデータに関連する他のテクノロジーは、大量のデータセットを処理する一方で、高速なパフォーマンスと一貫した可用性を重視し、半非構造化データを処理し、水平に拡張することもできます。

もちろん、従来のRDBMSには、ACID保証(原子性、一貫性、分離性、耐久性)や特定の操作のパフォーマンス向上、標準化、成熟、および(多くのユーザーにとって)より馴染みのある独自の利点があります。紛れもなく「ビッグ」データであっても、データの少なくとも一部を従来のSQLデータベースにロードし、ビッグデータテクノロジーと組み合わせて使用​​することは理にかなっています。

したがって、より寛大な定義は、ビッグデータがある程度の付加価値を提供するのに十分な大きさである限り、ビッグデータがあるということです。しかし、ご覧のとおり、それはデータのサイズだけでなく、データの操作方法や、柔軟性、一貫性、パフォーマンスの面でどのような要件があるかに依存します。 データの使用方法は、データの使用目的(データマイニングなど)よりも質問に関連しています。とはいえ、データマイニングや機械学習などの使用は、使用するのに十分なデータセットがある場合に有用な結果をもたらす可能性が高くなります。


このコメントはほぼ5年前のものであり、その一部はまだ真実ですが、私が引用したブログの5 TBのしきい値は確かにもはや真実ではありません。たとえば、Microsoftは最大100 TBの「ハイパースケール」SQL DBを提供しています。docs.microsoft.com/ en-us / azure / sql-database / もちろん、巨大なSQL DB 持つ多くの組織、たとえばさまざまなワークロードをサポートするSparkクラスター。どちらかを選択するルールはありません。
ティムグッドマン

21

世界のデータの総量:2012年には2.8ゼタバイトで、2015年までに8ゼタバイト(ソース)に達すると推定され、倍増時間は40か月です。それより大きくなることはできません:)

1つの大規模な組織の例として、Facebookは1日あたり500テラバイトを100ペタバイトのウェアハウスに取り込み、2012年時点で1日あたり70kクエリを実行します(ソース)現在のウェアハウスは300ペタバイトを超えています。

ビッグデータは、おそらくFacebookの数のかなりの部分です(1/100おそらくそう、1/10000おそらくそうではありません:それは単一の数ではなくスペクトルです)。

サイズに加えて、「大きく」するいくつかの機能は次のとおりです。

  • 保存されるだけでなく、積極的に分析されます(「ビッグデータを活用していない場合、ビッグデータがなく、データが山ほどある」という引用)Jay Parikh @ Facebook)

  • データウェアハウスの構築と実行は、主要なインフラストラクチャプロジェクトです。

  • それはかなりの速度で成長しています

  • 構造化されていないか、不規則な構造をしています

ガートナーの定義:「ビッグデータは、新しい形式の処理を必要とする大量、高速、および/または多様な情報資産です」(3V)したがって、「ビッグ」はデータセットのサイズだけではないと考えていますが、速度と構造、必要なツールの種類についても。


2
世界のデータの総量が40か月ごとに2倍になった場合、それよりも大きくなる可能性があります。; p
エア14年

2
他には、ビッグデータIBMの4 V または5 VのDAVE BEULKE 2011
nmtoken

2
元の3つのVは、2001年にDoug Laney 3Dデータ管理によって設定されました 。データボリューム、速度、およびバラエティの制御です。
nmtoken

13

私にとって、ビッグデータは主にツールに関するものです(結局のところ、そこから始まったのです)。「大きな」データセットとは、従来のツールで処理するには大きすぎるものです。特に、単一のマシンではなくクラスターでストレージと処理を要求するのに十分な大きさです。これは、従来のRDBMSを排除し、処理のための新しい手法を要求します。特に、さまざまなHadoopのようなフレームワークを使用すると、クラスター全体に計算を簡単に分散できますが、この計算の形式が制限されます。2つ目のhttp://www.chrisstucchio.com/blog/2013/hadoop_hatred.htmlへの参照; ビッグデータの手法は、他の方法で処理するには大きすぎるデータセットの最後の手段です。問題の形が既存の「ビッグデータ」ツールが適切ではないようなものであれば、あらゆる目的のデータセットは十分に条件を満たせると思いますが、おそらく新しいものを考え出す方が良いでしょう。名前。

もちろん、いくつかの重複があります。last.fmで(簡単に)作業したとき、Hadoopを使用して同じ50 TBのデータセットと、かなりばかげたサーバー上のSQLデータベースで作業しました(1 TBのRAMがあり、これは数年前のことです)。ある意味では、作業中のジョブに応じて、ビッグデータであったこととビッグデータでなかったことの両方を意味しました。しかし、それは正確な特性評価だと思います。Hadoopの仕事に携わった人々はビッグデータの会議やウェブサイトに行くのが便利であると感じましたが、SQLの仕事に携わった人々はそうではありませんでした。



7

ビッグデータはデータの量によって定義されますが、それだけではありません。ビッグデータの特殊性は、あなたが保存する必要があるということであるたくさん様々な、時には非構造化詰め込むすべての回からのセンサーのトンを、通常年または十年のために

さらに、データを見つけるのに半年もかからないように、スケーラブルなものが必要です。

そこで、従来の方法ではうまくいかないビッグデータが登場しました。SQLはスケーラブルではありません。また、SQLは、非常に構造化されリンクされたデータ(これらすべてのプライマリおよび外部キーの混乱、内部結合、混成リクエストなど)で動作します。

基本的に、ストレージはどんどん安くなり、データはますます貴重になるので、大きなマネージャーはすべてを記録するようエンジニアに依頼します。これらすべてのモバイル、ソーシャルネットワーク、埋め込みコンテンツなどを備えたこの大量の新しいセンサーに追加してください。そのため、従来のメソッドは機能しないため、新しいテクノロジを見つける必要があります(ファイルにすべてをjson形式で格納し、大きなインデックスを付けてnoSQLと呼びます)。

したがって、ビッグデータは非常に大きい場合がありますが、それほど大きくはできませんが、複雑で非構造化されたデータやさまざまなデータは、生の形式ですばやく実行中に保存する必要があります。最初に焦点を合わせて保存し、次にすべてをリンクする方法を検討します。


6

ビッグデータがゲノミクス、特にde novoアセンブリでどのようなものかを共有します。

ゲノムの配列を決定するとき(例:新規遺伝子の検出)、数十億の次世代のショートリードを取得します。以下の画像を見てください。ここでいくつかの読み取りを組み立てようとしています。

ここに画像の説明を入力してください

これは簡単に見える?しかし、これらの読み取りが10億ある場合はどうでしょうか?それらの読み取りにシーケンスエラーが含まれている場合はどうなりますか?RAMに読み取りを保持するのに十分なメモリがない場合はどうなりますか?非常に一般的なAlu Elementなどの反復DNA領域はどうですか?

De-novoアセンブリは、De-Bruijnグラフを作成することにより行われます

ここに画像の説明を入力してください

グラフは、重複する読み取りを表す巧妙なデータ構造です。完璧ではありませんが、可能なすべてのオーバーラップを生成して配列に保存するよりも優れています。

アセンブラがトラバースして折りたたむ必要があるパスが非常に多いため、アセンブリプロセスの完了には数日かかる場合があります。

ゲノミクスでは、次の場合にビッグデータが得られます。

  • すべての組み合わせをブルートフォースすることはできません
  • コンピューターにデータを保存するのに十分な物理メモリがありません
  • 寸法を小さくする必要があります(例:冗長なグラフパスの折りたたみ)
  • 何かをするのに何日も待たなければならないので、あなたは腹を立てます
  • データを表すには特別なデータ構造が必要です
  • エラーのデータセットをフィルタリングする必要があります(例:シーケンスエラー)

https://en.wikipedia.org/wiki/De_Bruijn_graph


5

グラフアルゴリズムには特別なものがあります。元の質問は特別なものになります。これは、データを本質的に分割する能力に関するものです。

配列上の数値のソートなど、データ構造上の問題をより小さい選言的な部分に分割することは、それほど難しいことではありません。例:並列インプレースマージソート

NPhard

そのため、通常のPCでは10 GBの並べ替えの数値は非常に親しみやすい問題かもしれませんが(動的プログラミングを使用するだけで、プログラムフローについて非常に優れた予測可能性を得ることができます)、10 GBのグラフデータ構造での作業は既に困難です。

グラフ固有の課題をある程度回避するためのメソッドや特別なコンピューティングパラダイムを使用するGraphXなど、多くの特殊なフレームワークがあります。

だからあなたの質問に簡単に答えます:他の人が以前に述べたように、データが通常のPCのメインメモリに収まらないが、問題に答えるためにすべてを必要とする場合、データがすでにある程度大きいという良いヒントです。正確なラベル付けは、データ構造と質問に少し依存すると思います。


4

ビッグデータは、サイズがあなたがしたいことをするのを妨げるポイントから始まると思います。ほとんどのシナリオでは、実行可能と見なされる実行時間に制限があります。場合によっては1時間ですが、場合によっては数週間かかることもあります。O(n)アルゴリズムのみが実行可能な時間枠で実行できるほどデータが大きくない限り、ビッグデータには到達しませんでした。

ボリューム、テクノロジーレベル、特定のアルゴリズムに依存しないため、この定義が気に入っています。リソースにとらわれないため、卒業生はGoogleよりも先にビッグデータのポイントに到達します。

データの大きさを定量化できるようにするために、バックアップに必要な時間を検討したいと思います。技術が進歩してから、数年前に大きなものと考えられていた量が今では中程度です。学習アルゴリズムの実行時間と同様に、技術が向上するにつれて、バックアップ時間も改善されます。Yバイトのデータセットではなく、バックアップにX時間かかるデータセットについて話す方が賢明だと思います。

PS。

ビッグデータポイントに到達し、O(n)を超える複雑なアルゴリズムを簡単に実行できない場合でも、そのようなアルゴリズムのメリットを享受するためにできることはたくさんあります。

たとえば、機能を選択すると、実行時間の多くのアルゴリズムが依存する機能の数を減らすことができます。多くのロングテール分布では、頭の中のいくつかのアイテムに焦点を当てることが有益です。サンプルを使用して、より遅いアルゴリズムを実行できます。


On

4

1台のハイエンドコンピューターよりも2台以上の汎用コンピューターで分析する方が安価な量のデータは、「ビッグデータ」です。

これは、本質的にGoogleの「BigFiles」ファイルシステムの起源です。PageとBrinは、Webインデックスを保存および検索するための高級なSunサーバーを購入する余裕がなかったため、いくつかのコモディティコンピューターを接続しました


1

@Dan Levinがすでに言ったことに同意する傾向があります。最終的に、単にデータを保存するのではなく、データから有用な洞察を引き出したいので、「ビッグデータ」と呼ばれるものを決定するべきアルゴリズム/システム学習する能力です。MLシステムが進化するにつれて、今日のビッグデータは明日のビッグデータではなくなります。

ビッグデータを定義する1つの方法は次のとおりです。

  • ビッグデータ:典型的なワークステーション(4GB RAMなど)で妥当な時間(1〜2時間)でMLモデルを構築できないデータ
  • 非ビッグデータ:上記の補足

この定義を前提として、個々の行(単一のデータポイントのすべての変数)が占有するメモリがマシンRAMを超えない限り、非ビッグデータ領域にいる必要があります。

注: Vowpal Wabbit(今日の最速のMLシステム)は、個々の行(データポイント)がRAM(たとえば4GB)未満であれば、どのデータセットでも学習できます。行数は、複数のコアでSGDを使用するため制限さません。経験から言えば、1日で10kの機能と10MNの行をラップトップでモデルにトレーニングできます。


1

「ビッグデータ」は文字通り大量のデータです。それは何よりもマーケティング用語ですが、含意は通常、あなたがメモリにデータを保持するために必要なメモリ(RAM)の量のためにすべてのデータを一度に分析できないほど多くのデータを持っていることです処理および分析は、使用可能なメモリの量よりも大きくなります。

これは、通常、データのランダムなセグメントで分析を行う必要があることを意味します。これにより、モデルを構築してデータの他の部分と比較できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.