ビッグデータ-なぜそんなにファッショナブルなのですか?

少なくとも現時点ではIT出版物で最も一般的な用語であるという事実からもわかるように、ビッグデータテクノロジーは今日非常に人気があります。 GoogleやYandexなどの有名な検索エンジンの統計を「ビッグデータ」というフレーズで見るだけで、いわゆる「ビッグデータ」は本当に情報技術の開発において最も人気があり興味深い方向の1つと言えることが明らかになります。



それでは、これらのテクノロジーの人気の秘secretは何ですか?「ビッグデータ」という用語の意味は何ですか?

まず、「ビッグデータ」または「ビッグデータ」という用語は、膨大な情報を隠しています。 さらに、そのボリュームは非常に大きいため、従来のソフトウェアおよびハードウェアでこのような量のデータを処理することは非常に困難になります。 つまり、ビッグデータは問題です。 大量のデータを保存および処理する問題。



これらのボリュームはどこから来たのですか? 私たち一人一人が毎日どれだけの情報を生成するか考えてみましょう。 電話で話したり、メッセージを書いたり、ブログを保管したり、何かを購入したり、写真を撮ったり、友人に何かを送ったり、見返りを求めたりします。 など 最終的には、ギガバイトの情報について話します。 これはすべて、情報スペースにマークを残します。 これらはすべてどこかに保存され、何らかの方法で処理されます。 ある時点で、情報が過剰になり、その情報を活用することが難しくなります。



一方、大量の情報は氷山の一部にすぎません。 ここでは、「ビッグデータ」の定義を「ボリューム、速度、バラエティ」として思い出すのが適切です。これは一方では膨大な量のデータを意味します(既に述べました)一方で、情報を非常に迅速に処理する必要性を意味します。 たとえば、現金を引き出すときにカードの残高を確認する操作の時間はミリ秒で計算されます。 これらは、市場が規定する要件です。 問題の3番目の側面は、多様性と非構造化情報です。 メディアコンテンツ、ブログエントリ、構造化されていないドキュメントなどを操作する必要が増えています。



したがって、ビッグデータについて話すとき、これは3つの側面に関連していることを理解します:大量の情報、その多様性、またはデータを非常に迅速に処理する必要性。



一方、この用語は多くの場合、これらの問題を解決するために設計された完全に特定のアプローチと技術​​のセットとして理解されています。 これらのアプローチの1つは、1台の高性能マシンがデータ処理に使用されるのではなく、そのようなマシンのグループ全体がクラスターに統合されている分散コンピューティングシステムに基づいています。



分散データ処理を提供するシステムを構築するには、いくつかのアプローチがあります。 最も一般的なアプローチの1つは、MapReduceパラダイムの使用です。データ処理は、クラスターのさまざまなノードで実行される多数の基本タスクに分割され、最終的には単一の結果になります。 このモデルはGoogleによって開発されたもので、コンピュータークラスターを使用してペタバイトのデータを処理できます。



現在、MapReduceパラダイムはかなり多数の異なるプロジェクトを使用しており、分散コンピューティングテクノロジーへの関心は日々高まっています。 記述されたモデルの既存の実装の中で、現在Apache Software Foundationによって管理されているHadoopプロジェクトを選び出すことができます。



Hadoopプロジェクトは2005年から開発されており、たとえばAmazon、Google、Facebookなどの巨大企業で世界中で使用されており、ロシアでも急速に人気を集めています。 MapReduceパラダイムの実装はHadoopだけではないことに注意してください。 ウィキペディアでは、何らかの方法でこのアプローチを使用する少なくとも15のプロジェクトへのリンクを見つけることができます。



しかし、人気の理由は何ですか、そしてこのアプローチの使用を正確に与えるものは何ですか? 分散システムの主な利点は、線形スケーリングにより生産性を無限に向上できることです。 さらに、高性能クラスタはローエンドマシン上に構築できることを忘れてはなりません。つまり、同じ容量のサーバーのコストよりもコストが大幅に低くなります。 そして、3番目に重要なのは、私が考えるように、瞬間はシステムの信頼性とフォールトトレランスです。 クラスターは多数のノードで構成され、システムはそれらに保存されたデータを自動的に再配布するため、1つまたは複数のマシンで障害が発生した場合、情報を失うリスクは最小限に抑えられます。



NoSQLデータベースなどのテクノロジー分野を無視するのは間違っています。 私の意見では、これはビッグデータ技術に関連することが多い2番目の重要な傾向です。



そして、これには理由があります。 NoSQLデータベースは、従来の一般的なリレーショナルデータベースを使用して大量のデータを処理することがますます複雑でリソース集約的なタスクになりつつあるという事実に鑑みて、急速に発展し始めました。 同時に、リレーショナルDBMSでこのような問題を解決するために必要なハードウェアのコストは、必要な投資の観点からこのアプローチの有効性にますます疑問を投げかけています。



NoSQL自体の用語は、ACIDの原則に基づく通常のリレーショナルDBMSとは異なるアプローチの使用を意味します。 NoSQLデータベースの方法論的基礎は、分散システムでは、データの一貫性、可用性、および独立した部分への分割に対する耐性を同時に保証することは不可能であるという原則です。

この観点から、このようなデータベースは、高可用性とデータ分離への耐性を優先してデータの一貫性を確保することに焦点を合わせていません。 それらのほとんどは「キーバリュー」ベースで編成されているため、情報抽出の高い柔軟性と速度が実現されています。 一方、慣性のため、NoSQLデータベースは原則として、急速に変化するデータの処理には使用されません。 しかし、大量のデータから情報のごく一部を迅速に取得する必要が生じた場合、そのようなソリューションは天の恵みになります。



このようなDBMSは分散も未割り当ても可能であるという事実に特に注意を払う必要があります。 NoSQLクラスの分散データベースの例として、Cassandra、HBase、MongoDB、CouchDB、Riak、Scalalaris、Voldemortなどのデータベースを引用できます。 未割り当てのデータベースに関しては、私の意見では、未割り当てのNoSQL DBMSの使用は半分の尺度です。 分散システムのスケーリングにより、パフォーマンスをさらに向上させることができます。 これらのソリューションにも独自のタスクがあることを否定することはできませんが。



誰が大量のデータを処理するためのソリューションに興味を持っているのかを理解することはまだ残っています。 当然、これらのボリュームがある産業に関心が寄せられており、それらの処理にはすでに困難があります。 このようなシステムの使用例としては、インターネット検索エンジン、ソーシャルネットワーク、オンラインオークションなどがあります。インターネット環境以外では、銀行や通信会社などがあります。 DIS Groupの専門家の経験によると、彼らは何十年にもわたって蓄積された膨大な量のデータの処理で最大の困難を経験している人たちです。

まとめましょう。ビッグデータテクノロジーで企業ユーザーを引き付けるものは何か、そして分散コンピューティングテクノロジーはビジネスに何を提供できるのでしょうか。



まず第一に、リアルタイムのテラバイトサイズのデータ​​を操作できる、Google、Yahoo、Facebookなどのインターネット業界の巨人でデバッグされた高性能システムを提供します。 これらのソリューションのおかげで、時間のかかるデータウェアハウスの構築、不十分な構造の情報の処理、高いハードウェアコストの問題は過去のものとなり、企業は会社に蓄積されたすべての必要なデータを完全に使用できるようになります。



一方、システムの構築中に安価な機器を使用するため、これらのソリューションを使用すると、組織自体のインフラストラクチャを維持するのではなく、ビジネスの緊急のニーズを解決するためにファイナンスとダイレクトキャッシュフローを再配分できます。



All Articles