自分用のメモです。
ビッグデータ分散処理
- Hadoop
- Spark
- インメモリー処理を主体
- Storm
- リアルタイムHadoop
Hadoop
Spark
- Apache Sparkは、Scalaで(Hadoopのような)分散処理を行う為のライブラリー(OSS)
- HadoopのMapReduce部分に置き換わることを目指して開発された、Scalaで分散処理を行うフレームワークで、いわば高速化されたMapReduceといえる
- Spark を活用する:ビッグデータアプリケーション用の高速インメモリコンピューティング
- 分散処理に入門してみた(Hadoop+Spark)
- Apache Spark
- Apache Spark の紹介(前半:Sparkのキホン)
Storm
- 「ストリーム処理」、メッセージ処理、データベースのアップデートをリアルタイムで行うために使うことができる
- コンピュータクラスタ上で複雑なリアルタイム計算を書いたり、スケールするのが簡単になる
- Hadoopがバッチ処理のためにやっていることをリアルタイム処理で行う
- ツイッターStorm:オープンソースのリアルタイムHadoop
- Twitter Storm でビッグ・データをリアルタイムに処理する
分散ファイルシステム
- HDFS
- WebHDFS
- HTTP REST APIでHDFSにアクセスできる機能
HDFS
- Hadoop分散ファイルシステム (HDFS Hadoop Distributed File System)
- HDFS 【 Hadoop Distributed File System 】
- HDFSおよびMapReduce
WebHDFS
- Hoop(httpfs)とwebhdfsはほぼ同じ
- Java実装のHDFSClientがやっていた通信をHTTP REST APIで置き換え可能にする、というものがWebHDFS
- Hoop(httpfs)とwebhdfsの違い
- WebHDFSの性能評価
Hadoop内のアルゴリズム
- MapReduce
- YARN
- Tez
MapReduce
- 並列処理フレームワーク MapReduce
- MapReduce
YARN
- YARN (Yet Another Resource Negotiator)
- リソース管理と処理コンポーネントを切り離す
- MapReduce エンジンに比べ、YARN にはスケーラビリティー、効率性、柔軟性という点で明らかに勝っている
- YARN の紹介
- YARNの登場によりHadoopは複数の並列分散処理エンジンを併用できる環境へ。Hadoop Conference Japan 2014
Tez
- TezそのものはYARNにおける並列処理エンジンについてMapReduceの代替となることを意識しているようである
- Tezの特性について
- Apache Tez
- リピさんとオザさんのTezとSparkの会話
swimlanes
- TezのApplicationMasterが出力したログをもとに、"どのコンテナ"で"どのような処理"が"いつ"実行していたかを可視化する仕組み
- とりあえずTezのswimlanesを動かしてみた
分散ストレージシステム
HBase
- 大量データに対応した分散ストレージシステム
- Cassandra、Redis、MongoDBなどと同じで、NoSQLである
- HBaseを触ってみよう
- HBaseとはどんなNoSQLデータベースなのか? 日本語で読める情報を集めてみた
SQL Query Engine
- Hive
- Pig
- Presto
Hive
- Hadoopの上に構築されたデータウェアハウス 構築環境であり、データの集約・問い合わせ・分析を行う
- HiveはHiveQLというSQL風の言語でHadoop上のデータを操作できる
- Hadoop+Hive検証環境を構築してみる (1/3)
- SQL と Hadoop の間での双方向のデータ転送: 第 2 回 HBase と Hive を利用する
Pig
- PigとHiveは、共にSQLライクな記法でMapReduceを書けるDSLである
- 性能面で、「JavaMapReduce>Hive>Pig」
- Hadoop Pig の使いどころ
- Apache Pig で大規模データセットを分散処理する
Presto
- PrestoはHiveやImpalaと同じ「SQL Query Engine」
- 特に数百GBを超える大規模データに対してもインタラクティブなレスポンスを(コンマ0秒以下,遅くても2,3秒)返すという点では Hive と異なり,Impala に近いものがある
- 『Prestoとは何か,Prestoで何ができるか』
- Facebook、分散SQLエンジン「Presto」公開。大規模データをMapReduce/Hiveの10倍効率よく処理すると
Prestogres
- BIツールからPrestoにつなぐ際のゲートウェイ
- CognosからPrestogres経由でPrestoにつないだ話
その他
Hcatalog
- 大規模データについてのメタデータ、文字通りカタログの中央集中管理機能と、そのデータ入出力アダプタを提供する
- HCatalogインストール
- HCatalog
Hue
- Hadoopを操作できるオープンソースのWeb UI
- HueでHadoopをWeb UIから使う