Technosphereの講義。 2学期。 Hadoopで大量のデータを分散処理する方法

Technosphereの新しい講義コースに注目してください。 これはHadoopの紹介であり、ワープロ、グラフ、関連データなどのさまざまな分野に適用できる分散アルゴリズムの設計と実装に焦点を当てています。 さまざまなHadoopプラットフォームコンポーネントとソフトウェアモデルも取り上げています。 このコースの目的は、大量のデータの保存、アクセス、処理に使用されるHadoopテクノロジーのスタックを生徒に紹介することです。 コースの教師:アレクセイ・ロマネンコ、ミハイル・フィルリック、ニコライ・アノヒン。



講義1.ビッグデータとMapReduceの紹介



ビッグデータとは? この現象の歴史。 ビッグデータを扱うために必要な知識とスキル。 Hadoopとは何ですか、どこで使用されますか。 「クラウドコンピューティング」とは、テクノロジーの出現と開発の歴史です。 Web 2.0 サービスとしての計算(ユーティリティコンピューティング)。 仮想化 サービスとしてのインフラストラクチャ(IaaS)。 並行性の問題。 多くの労働者の管理。 データセンターとスケーラビリティ。 典型的なビッグデータタスク。 MapReduce:それが何であるか、例。 分散ファイルシステム。 Googleファイルシステム。 GFSのクローンとしてのHDFS、そのアーキテクチャ。







講義2. Hadoopの基本



Hadoopの歴史とその応用。 データストレージ、Hadoopクラスター。 システムの原則。 垂直ではなく水平スケーリング。 データをコード化します。 機器の故障。 実装の複雑さのカプセル化。 DBMS(RDBMS)との比較。 Hadoopエコシステム。 ディストリビューション、ベンダー、サポートされているOS。 有用な文献。 Cloudera VM上のHadoop。 VMをインポートして起動します。 ファイルをHDFSにコピーします。 HadoopでMapReduceタスクを実行します。 結果の検証。







講義3.分散HDFSファイルシステム



HDFSが適しているタスクと適切でないタスク。 HDFSデーモン。 ファイルとブロック。 ブロック複製。 クライアント、ネームノード、データノード。 ファイルの読み取りと書き込み。 Namenode:メモリ使用量。 Namenodeの障害に対する耐性。 プロキシを含むHDFSへのアクセス。 シェルコマンド データをシェルにコピーし、削除し、統計します。 Fsckコマンド。 HDFSの権利。 DFSAdminチーム バランサー ファイルシステムJava API。 ファイルシステムの実装。 構成オブジェクト ファイルからのデータの読み取りと書き込み。 置換(グロビング)。







講義4. HadoopでのMapReduce(紹介)



MapReduceワークフロー。 Hadoop MapReduceおよびHDFS。 MapReduceを実行します。 MapReduceの最初のバージョンのアーキテクチャと操作。 Hadoop API(タイプ、クラス)。 WordCount(合字ジョブ、マッパー、リデューサー)。 コンバイナーとしての減速機。 Hadoopのデータ型。 InputSplit、InputFormat、OutputFormat。 Hadoopでのシャッフルと並べ替え。 タスクの開始とデバッグ。 Hadoopストリーミング。 MapReduceでのストリーミング。







講演5. HadoopでのMapReduce(アルゴリズム)



WordCount(ベースライン、インマッパー結合、平均値、異なる値)。 相互相関(ペア、ストライプ)。 MapReduceリレーショナルパターン(選択、射影、結合、交差点、差、対称差、GroupByおよび集約、再パーティション結合、複製結合、TF-IDF)。







講義6. HadoopでのMapReduce(グラフ)



データ構造としてのグラフ。 グラフ上のタスクと問題。 グラフとMapReduce。 隣接マトリックス。 隣接リスト。 最短経路を検索します。 ダイクストラのアルゴリズム。 並列BFS:アルゴリズム、擬似コード、反復、終了基準、ダイクスターとの比較。 BFS加重:エッジ、完了基準、難易度。 グラフとMapReduce。 PageRank:それが何であるか、それが適用される場所。 PageRankの計算、単純化。 MapReduceのPageRank。 完全なPageRank、収束。 グラフ上の他のクラスの問題。 グラフアルゴリズムの主な問題。 パーティションの改善。 シミーデザインパターン。







講義7.ブタとハイブの紹介



豚とは何ですか? 豚とMapReduce。 主な機能。 コンポーネント。 実行モード。 Pigを起動します。 豚のラテン。 DUMPおよびSTORE操作。 大量のデータ。 LOADコマンド。 スキーマのデータ型。 豚のラテン語(診断ツール、グループ化、内部および外部バッグ、FOREACH、トークン化機能、FLATTEN演算子、WordCount、内部および外部結合)。 ハイブ(アーキテクチャ、インターフェイス、コンセプト、テーブルの作成、データの読み込み、クエリの実行、内部結合と外部結合、WordCount)。







講義8. NoSQL、HBase、Cassandra



ズームアップ。 RDBMSのスケーリング(マスター/スレーブ、シャーディング)。 NoSQLとは何ですか? DynamoおよびBigTable。 CAPの理論。 一貫性モデル。 最終的な一貫性。 NoSQLの種類。 キー/値。 スキーマレス。 必要な場合と使用しない場合のHBaseとは何ですか。 HBaseデータモデル。 列ファミリー。 タイムスタンプ。 細胞。 HBaseのアーキテクチャとコンポーネント。 RegionServerのキー配布。 HBaseのデータストレージ。 マスターとズーキーパー。 HBaseへのアクセス。 ストレージユニットとしてのカラムファミリ。 HBaseからデータをリクエストします。 Cassandraとは何ですか。 典型的なNoSQL API。 データモデル。 Cassandraと一貫性。







講義9. ZooKeeper



ZooKeeperとは、Hadoopエコシステムにおけるその場所です。 分散コンピューティングに関する真実。 標準分散システムのスキーム。 分散システムを調整する複雑さ。 典型的な調整の問題。 ZooKeeperの設計に組み込まれた原則。 ZooKeeperデータモデル。 Znodeフラグ。 セッション。 クライアントAPI プリミティブ(構成、グループメンバーシップ、単純ロック、リーダー選出、群れ効果のないロック)。 ZooKeeperアーキテクチャ。 ZooKeeper DB。 ZAB。 要求ハンドラ。







講義10. Apache Mahout



Apache Mahoutとは何ですか。 実装されたアルゴリズム。 分類(単純ベイズ、k-平均)。 推奨事項(協調フィルタリング、アイテムベース、Slop Oneアルゴリズム、Apache.teste、Hadoopを使用したアイテムベース、Sparkを使用したMahout、共起レコメンダー)。







講義11.計算モデルPregel



Web 2.0およびソーシャルグラフ。 グラフの例。 グラフ処理タスク。 大きなグラフを処理するためのツール。 プレゲル(概念とは何ですか)。 頂点 計算メソッド。 コンバイナー アグリゲーター。 グラフを変更します。 Giraph(アーキテクチャ、プログラム実行、フォールトトレランス)。 PageRank 最短経路。 パフォーマンス。







講義12.スパーク



モチベーション。 RDD Sparkソフトウェアモデル。 高階関数。 RDDの変換(マップ、リデュース、ジョイン、コグループ、ユニオン、サンプル)。 RDDアクション。 SparkContext。 RDDを作成します。 一般変数(ブロードキャスト、アキュムレーター)。 Apache Sparkエンジン。 Sparkソフトウェアインターフェイス。 血統 RDD(狭い、広い)間の依存関係。 タスクスケジュール。 フォールトトレランスRDD。 メモリ管理。 RDDに適しているアプリケーションと適していないアプリケーション。







講義13.ヤーン



YARNとは何ですか。 YARNと古いMapReduce。 YARNのMapReduceコンポーネント。 YARNでMRタスクを実行します。 MapReduceタスクを実行します。 タスクの初期化。 MRAppMasterの初期化。 MRAppMasterおよびUber Job。 タスクの割り当て。 メモリ管理(タスクを起動するためのコンテナの作成、各タスクのメモリの制御、JVMヒープ、仮想メモリ)。 タスクのパフォーマンス。 ステータスの更新。 Resource Manager Webインターフェース。 タスクを完了できませんでした。 アプリケーションマスターがクラッシュします。 ノードマネージャがクラッシュします。 リソースマネージャーがクラッシュします。 タスクスケジュール。







講義14. Mail.Ru SearchのHadoop



実装履歴、検索コンポーネント。 なぜHadoop なぜHBaseなのか? 検索ロボット(旧式、新世代H)。 HBaseには何を保存しますか? Hadoopと連携します。 翻訳の難しさ。 エクスプロイト(ガングリア)。 HadoopおよびHBaseから役立つレッスン。







以前の問題



テクノパーク:



Technosphere:



テクノパークとテクノスフィアのYouTubeチャンネルに登録してください!



All Articles