Enviar pesquisa
Carregar
Lars George HBase Seminar with O'REILLY Oct.12 2012
•
10 gostaram
•
2,462 visualizações
Cloudera Japan
Seguir
2012年10月12日 オライリー社と共催したセミナー HBase本出版イベントでのLars Georgeの資料です。
Leia menos
Leia mais
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 41
Baixar agora
Baixar para ler offline
Recomendados
刊行記念セミナー「HBase徹底入門」
刊行記念セミナー「HBase徹底入門」
cyberagent
PHPで大規模ブラウザゲームを開発してわかったこと
PHPで大規模ブラウザゲームを開発してわかったこと
Kentaro Matsui
File Server on Azure IaaS
File Server on Azure IaaS
junichi anno
HBase×Impalaで作るアドテク「GMOプライベートDMP」@HBaseMeetupTokyo2015Summer
HBase×Impalaで作るアドテク「GMOプライベートDMP」@HBaseMeetupTokyo2015Summer
Michio Katano
初心者向け負荷軽減のはなし
初心者向け負荷軽減のはなし
Oonishi Takaaki
スケーラブルなシステムのためのHBaseスキーマ設計 #hcj13w
スケーラブルなシステムのためのHBaseスキーマ設計 #hcj13w
Cloudera Japan
100億超メッセージ/日のサービスを 支えるHBase運用におけるチャレンジ
100億超メッセージ/日のサービスを 支えるHBase運用におけるチャレンジ
LINE Corporation
Windows Azure Storage:Best Practices and Internals
Windows Azure Storage:Best Practices and Internals
Takekazu Omi
Mais conteúdo relacionado
Mais procurados
Couchbase server入門
Couchbase server入門
Yusuke Komatsu
20分でわかるHBase
20分でわかるHBase
Sho Shimauchi
Windows azureを知ろう ロール&ストレージ編
Windows azureを知ろう ロール&ストレージ編
Chiho Otonashi
20130413 JAWS-UG北陸 美人CDP
20130413 JAWS-UG北陸 美人CDP
真吾 吉田
20130330 JAWS-UG広島 美人CDP
20130330 JAWS-UG広島 美人CDP
真吾 吉田
Osc2012 spring HBase Report
Osc2012 spring HBase Report
Seiichiro Ishida
HBaseCon 2012 参加レポート
HBaseCon 2012 参加レポート
NTT DATA OSS Professional Services
MySQL カジュアル 福岡 03
MySQL カジュアル 福岡 03
Aya Komuro
今日から使えるCouchbaseシステムアーキテクチャデザインパターン集
今日から使えるCouchbaseシステムアーキテクチャデザインパターン集
Couchbase Japan KK
AmazonのDNSサービス Amazon Route 53の使いかたと裏側
AmazonのDNSサービス Amazon Route 53の使いかたと裏側
Yasuhiro Araki, Ph.D
HBaseを用いたグラフDB「Hornet」の設計と運用
HBaseを用いたグラフDB「Hornet」の設計と運用
Toshihiro Suzuki
Couchbase 101 ja
Couchbase 101 ja
Couchbase Japan KK
JBoss AS7 rev2
JBoss AS7 rev2
nekop
なぜApache HBaseを選ぶのか? #cwt2013
なぜApache HBaseを選ぶのか? #cwt2013
Cloudera Japan
Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~
Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~
KLab株式会社
目指せ1秒切り!ECサイト表示高速化のワザ
目指せ1秒切り!ECサイト表示高速化のワザ
Kohei MATSUSHITA
Guide to Cassandra for Production Deployments
Guide to Cassandra for Production Deployments
smdkk
Awsを学ぶ上で必要となる前提知識(DNS/LB)
Awsを学ぶ上で必要となる前提知識(DNS/LB)
聡 大久保
Mais procurados
(18)
Couchbase server入門
Couchbase server入門
20分でわかるHBase
20分でわかるHBase
Windows azureを知ろう ロール&ストレージ編
Windows azureを知ろう ロール&ストレージ編
20130413 JAWS-UG北陸 美人CDP
20130413 JAWS-UG北陸 美人CDP
20130330 JAWS-UG広島 美人CDP
20130330 JAWS-UG広島 美人CDP
Osc2012 spring HBase Report
Osc2012 spring HBase Report
HBaseCon 2012 参加レポート
HBaseCon 2012 参加レポート
MySQL カジュアル 福岡 03
MySQL カジュアル 福岡 03
今日から使えるCouchbaseシステムアーキテクチャデザインパターン集
今日から使えるCouchbaseシステムアーキテクチャデザインパターン集
AmazonのDNSサービス Amazon Route 53の使いかたと裏側
AmazonのDNSサービス Amazon Route 53の使いかたと裏側
HBaseを用いたグラフDB「Hornet」の設計と運用
HBaseを用いたグラフDB「Hornet」の設計と運用
Couchbase 101 ja
Couchbase 101 ja
JBoss AS7 rev2
JBoss AS7 rev2
なぜApache HBaseを選ぶのか? #cwt2013
なぜApache HBaseを選ぶのか? #cwt2013
Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~
Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~
目指せ1秒切り!ECサイト表示高速化のワザ
目指せ1秒切り!ECサイト表示高速化のワザ
Guide to Cassandra for Production Deployments
Guide to Cassandra for Production Deployments
Awsを学ぶ上で必要となる前提知識(DNS/LB)
Awsを学ぶ上で必要となる前提知識(DNS/LB)
Destaque
Database smells
Database smells
Mikiya Okuno
Data analytics with hadoop hive on multiple data centers
Data analytics with hadoop hive on multiple data centers
Hirotaka Niisato
Writing Yarn Applications Hadoop Summit 2012
Writing Yarn Applications Hadoop Summit 2012
Hortonworks
20120830 DBリファクタリング読書会第三回
20120830 DBリファクタリング読書会第三回
都元ダイスケ Miyamoto
【17-E-3】 オンライン機械学習で実現する大規模データ処理
【17-E-3】 オンライン機械学習で実現する大規模データ処理
Developers Summit
Cloudera Manager4.0とNameNode-HAセミナー資料
Cloudera Manager4.0とNameNode-HAセミナー資料
Cloudera Japan
Future of HCatalog - Hadoop Summit 2012
Future of HCatalog - Hadoop Summit 2012
Hortonworks
PostgreSQLの実行計画を読み解こう(OSC2015 Spring/Tokyo)
PostgreSQLの実行計画を読み解こう(OSC2015 Spring/Tokyo)
Satoshi Yamada
並列データベースシステムの概念と原理
並列データベースシステムの概念と原理
Makoto Yui
あなたの知らないPostgreSQL監視の世界
あなたの知らないPostgreSQL監視の世界
Yoshinori Nakanishi
Hadoop Summit 2012 - Hadoop and Vertica: The Data Analytics Platform at Twitter
Hadoop Summit 2012 - Hadoop and Vertica: The Data Analytics Platform at Twitter
Bill Graham
【SQLインジェクション対策】徳丸先生に怒られない、動的SQLの安全な組み立て方
【SQLインジェクション対策】徳丸先生に怒られない、動的SQLの安全な組み立て方
kwatch
SQLチューニング入門 入門編
SQLチューニング入門 入門編
Miki Shimogai
Datalogからsqlへの トランスレータを書いた話
Datalogからsqlへの トランスレータを書いた話
Yuki Takeichi
ならば(その弐)
ならば(その弐)
Tomoaki Hiramoto
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
Miki Shimogai
Destaque
(16)
Database smells
Database smells
Data analytics with hadoop hive on multiple data centers
Data analytics with hadoop hive on multiple data centers
Writing Yarn Applications Hadoop Summit 2012
Writing Yarn Applications Hadoop Summit 2012
20120830 DBリファクタリング読書会第三回
20120830 DBリファクタリング読書会第三回
【17-E-3】 オンライン機械学習で実現する大規模データ処理
【17-E-3】 オンライン機械学習で実現する大規模データ処理
Cloudera Manager4.0とNameNode-HAセミナー資料
Cloudera Manager4.0とNameNode-HAセミナー資料
Future of HCatalog - Hadoop Summit 2012
Future of HCatalog - Hadoop Summit 2012
PostgreSQLの実行計画を読み解こう(OSC2015 Spring/Tokyo)
PostgreSQLの実行計画を読み解こう(OSC2015 Spring/Tokyo)
並列データベースシステムの概念と原理
並列データベースシステムの概念と原理
あなたの知らないPostgreSQL監視の世界
あなたの知らないPostgreSQL監視の世界
Hadoop Summit 2012 - Hadoop and Vertica: The Data Analytics Platform at Twitter
Hadoop Summit 2012 - Hadoop and Vertica: The Data Analytics Platform at Twitter
【SQLインジェクション対策】徳丸先生に怒られない、動的SQLの安全な組み立て方
【SQLインジェクション対策】徳丸先生に怒られない、動的SQLの安全な組み立て方
SQLチューニング入門 入門編
SQLチューニング入門 入門編
Datalogからsqlへの トランスレータを書いた話
Datalogからsqlへの トランスレータを書いた話
ならば(その弐)
ならば(その弐)
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
PostgreSQLクエリ実行の基礎知識 ~Explainを読み解こう~
Semelhante a Lars George HBase Seminar with O'REILLY Oct.12 2012
クラウドデザイン パターンに見るクラウドファーストなアプリケーション設計 Data Management編
クラウドデザイン パターンに見るクラウドファーストなアプリケーション設計 Data Management編
Takekazu Omi
Qlik ReplicateでAmazon Kinesis Data Streamsをターゲットとして使用する
Qlik ReplicateでAmazon Kinesis Data Streamsをターゲットとして使用する
QlikPresalesJapan
AWS Black Belt Online Seminar Amazon Aurora
AWS Black Belt Online Seminar Amazon Aurora
Amazon Web Services Japan
Amazon RDS/Azure SQL/Google Cloud SQL 対応DBが多様!異種DBへの移行・連携ならSyniti DR
Amazon RDS/Azure SQL/Google Cloud SQL 対応DBが多様!異種DBへの移行・連携ならSyniti DR
株式会社クライム
エンターテイメント業界におけるAWS活用事例
エンターテイメント業界におけるAWS活用事例
Amazon Web Services Japan
Amazon Aurora
Amazon Aurora
Shinpei Ohtani
Open stack reference architecture v1 2
Open stack reference architecture v1 2
Dell TechCenter Japan
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
infinite_loop
【ウェブ セミナー】AI 時代のクラウド データ ウェアハウス Azure SQL Data Warehouse [実践編]
【ウェブ セミナー】AI 時代のクラウド データ ウェアハウス Azure SQL Data Warehouse [実践編]
Hideo Takagi
20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理
20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理
Amazon Web Services Japan
Couchbase introduction-20150611
Couchbase introduction-20150611
Couchbase Japan KK
AWSのデータベースサービス全体像
AWSのデータベースサービス全体像
Amazon Web Services Japan
Cassandraとh baseの比較して入門するno sql
Cassandraとh baseの比較して入門するno sql
Yutuki r
ふりかえり Windows Azure
ふりかえり Windows Azure
Takekazu Omi
AWS Blackbelt 2015シリーズ RDS
AWS Blackbelt 2015シリーズ RDS
Amazon Web Services Japan
Cloudera大阪セミナー 20130219
Cloudera大阪セミナー 20130219
Cloudera Japan
Amazon Aurora Deep Dive (db tech showcase 2016)
Amazon Aurora Deep Dive (db tech showcase 2016)
Amazon Web Services Japan
MySQL at Yahoo! JAPAN #dbts2018
MySQL at Yahoo! JAPAN #dbts2018
Yahoo!デベロッパーネットワーク
SQL Server 使いのための Azure Synapse Analytics - Spark 入門
SQL Server 使いのための Azure Synapse Analytics - Spark 入門
Daiyu Hatakeyama
Scalrご紹介資料 20130404 01
Scalrご紹介資料 20130404 01
Haruhiko KAJIKAWA
Semelhante a Lars George HBase Seminar with O'REILLY Oct.12 2012
(20)
クラウドデザイン パターンに見るクラウドファーストなアプリケーション設計 Data Management編
クラウドデザイン パターンに見るクラウドファーストなアプリケーション設計 Data Management編
Qlik ReplicateでAmazon Kinesis Data Streamsをターゲットとして使用する
Qlik ReplicateでAmazon Kinesis Data Streamsをターゲットとして使用する
AWS Black Belt Online Seminar Amazon Aurora
AWS Black Belt Online Seminar Amazon Aurora
Amazon RDS/Azure SQL/Google Cloud SQL 対応DBが多様!異種DBへの移行・連携ならSyniti DR
Amazon RDS/Azure SQL/Google Cloud SQL 対応DBが多様!異種DBへの移行・連携ならSyniti DR
エンターテイメント業界におけるAWS活用事例
エンターテイメント業界におけるAWS活用事例
Amazon Aurora
Amazon Aurora
Open stack reference architecture v1 2
Open stack reference architecture v1 2
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
大規模ソーシャルゲーム開発から学んだPHP&MySQL実践テクニック
【ウェブ セミナー】AI 時代のクラウド データ ウェアハウス Azure SQL Data Warehouse [実践編]
【ウェブ セミナー】AI 時代のクラウド データ ウェアハウス Azure SQL Data Warehouse [実践編]
20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理
20210127 AWS Black Belt Online Seminar Amazon Redshift 運用管理
Couchbase introduction-20150611
Couchbase introduction-20150611
AWSのデータベースサービス全体像
AWSのデータベースサービス全体像
Cassandraとh baseの比較して入門するno sql
Cassandraとh baseの比較して入門するno sql
ふりかえり Windows Azure
ふりかえり Windows Azure
AWS Blackbelt 2015シリーズ RDS
AWS Blackbelt 2015シリーズ RDS
Cloudera大阪セミナー 20130219
Cloudera大阪セミナー 20130219
Amazon Aurora Deep Dive (db tech showcase 2016)
Amazon Aurora Deep Dive (db tech showcase 2016)
MySQL at Yahoo! JAPAN #dbts2018
MySQL at Yahoo! JAPAN #dbts2018
SQL Server 使いのための Azure Synapse Analytics - Spark 入門
SQL Server 使いのための Azure Synapse Analytics - Spark 入門
Scalrご紹介資料 20130404 01
Scalrご紹介資料 20130404 01
Mais de Cloudera Japan
Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)
Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)
Cloudera Japan
機械学習の定番プラットフォームSparkの紹介
機械学習の定番プラットフォームSparkの紹介
Cloudera Japan
HDFS Supportaiblity Improvements
HDFS Supportaiblity Improvements
Cloudera Japan
分散DB Apache KuduのアーキテクチャDBの性能と一貫性を両立させる仕組み「HybridTime」とは
分散DB Apache KuduのアーキテクチャDBの性能と一貫性を両立させる仕組み「HybridTime」とは
Cloudera Japan
Apache Impalaパフォーマンスチューニング #dbts2018
Apache Impalaパフォーマンスチューニング #dbts2018
Cloudera Japan
Apache Hadoop YARNとマルチテナントにおけるリソース管理
Apache Hadoop YARNとマルチテナントにおけるリソース管理
Cloudera Japan
HBase Across the World #LINE_DM
HBase Across the World #LINE_DM
Cloudera Japan
Cloudera のサポートエンジニアリング #supennight
Cloudera のサポートエンジニアリング #supennight
Cloudera Japan
Train, predict, serve: How to go into production your machine learning model
Train, predict, serve: How to go into production your machine learning model
Cloudera Japan
Apache Kuduを使った分析システムの裏側
Apache Kuduを使った分析システムの裏側
Cloudera Japan
Cloudera in the Cloud #CWT2017
Cloudera in the Cloud #CWT2017
Cloudera Japan
先行事例から学ぶ IoT / ビッグデータの始め方
先行事例から学ぶ IoT / ビッグデータの始め方
Cloudera Japan
Clouderaが提供するエンタープライズ向け運用、データ管理ツールの使い方 #CW2017
Clouderaが提供するエンタープライズ向け運用、データ管理ツールの使い方 #CW2017
Cloudera Japan
How to go into production your machine learning models? #CWT2017
How to go into production your machine learning models? #CWT2017
Cloudera Japan
Apache Kudu - Updatable Analytical Storage #rakutentech
Apache Kudu - Updatable Analytical Storage #rakutentech
Cloudera Japan
Hue 4.0 / Hue Meetup Tokyo #huejp
Hue 4.0 / Hue Meetup Tokyo #huejp
Cloudera Japan
Apache Kuduは何がそんなに「速い」DBなのか? #dbts2017
Apache Kuduは何がそんなに「速い」DBなのか? #dbts2017
Cloudera Japan
Cloudera Data Science WorkbenchとPySparkで 好きなPythonライブラリを 分散で使う #cadeda
Cloudera Data Science WorkbenchとPySparkで 好きなPythonライブラリを 分散で使う #cadeda
Cloudera Japan
Cloudera + MicrosoftでHadoopするのがイイらしい。 #CWT2016
Cloudera + MicrosoftでHadoopするのがイイらしい。 #CWT2016
Cloudera Japan
Cloud Native Hadoop #cwt2016
Cloud Native Hadoop #cwt2016
Cloudera Japan
Mais de Cloudera Japan
(20)
Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)
Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)
機械学習の定番プラットフォームSparkの紹介
機械学習の定番プラットフォームSparkの紹介
HDFS Supportaiblity Improvements
HDFS Supportaiblity Improvements
分散DB Apache KuduのアーキテクチャDBの性能と一貫性を両立させる仕組み「HybridTime」とは
分散DB Apache KuduのアーキテクチャDBの性能と一貫性を両立させる仕組み「HybridTime」とは
Apache Impalaパフォーマンスチューニング #dbts2018
Apache Impalaパフォーマンスチューニング #dbts2018
Apache Hadoop YARNとマルチテナントにおけるリソース管理
Apache Hadoop YARNとマルチテナントにおけるリソース管理
HBase Across the World #LINE_DM
HBase Across the World #LINE_DM
Cloudera のサポートエンジニアリング #supennight
Cloudera のサポートエンジニアリング #supennight
Train, predict, serve: How to go into production your machine learning model
Train, predict, serve: How to go into production your machine learning model
Apache Kuduを使った分析システムの裏側
Apache Kuduを使った分析システムの裏側
Cloudera in the Cloud #CWT2017
Cloudera in the Cloud #CWT2017
先行事例から学ぶ IoT / ビッグデータの始め方
先行事例から学ぶ IoT / ビッグデータの始め方
Clouderaが提供するエンタープライズ向け運用、データ管理ツールの使い方 #CW2017
Clouderaが提供するエンタープライズ向け運用、データ管理ツールの使い方 #CW2017
How to go into production your machine learning models? #CWT2017
How to go into production your machine learning models? #CWT2017
Apache Kudu - Updatable Analytical Storage #rakutentech
Apache Kudu - Updatable Analytical Storage #rakutentech
Hue 4.0 / Hue Meetup Tokyo #huejp
Hue 4.0 / Hue Meetup Tokyo #huejp
Apache Kuduは何がそんなに「速い」DBなのか? #dbts2017
Apache Kuduは何がそんなに「速い」DBなのか? #dbts2017
Cloudera Data Science WorkbenchとPySparkで 好きなPythonライブラリを 分散で使う #cadeda
Cloudera Data Science WorkbenchとPySparkで 好きなPythonライブラリを 分散で使う #cadeda
Cloudera + MicrosoftでHadoopするのがイイらしい。 #CWT2016
Cloudera + MicrosoftでHadoopするのがイイらしい。 #CWT2016
Cloud Native Hadoop #cwt2016
Cloud Native Hadoop #cwt2016
Lars George HBase Seminar with O'REILLY Oct.12 2012
1.
HBASE IN JAPAN Overview,
Current Status and Future Lars George Director EMEA Services
2.
自己紹介 • Cloudera EMEAのディレクター
• 全地域におけるHadoopプロジェクトのコンサルタント • Apacheのコミッター • HbaseとWhirr • O’Reilly 書籍の著者 Hbase -The Definitive Guide • 日本語版も販売中! • 連絡先 • lars@cloudera.com • @larsgeorge 日本語版も出ました!
3.
アジェンダ • HBaseの紹介 • プロジェクトの現状 •
クラスタのサイジング
4.
HBASEの紹介
5.
HBaseとは? • 分散 • 列指向 •
多次元 • 高可用性 • 高パフォーマンス • ストレージシステム プロジェクトの目的 数十億の行 * 数百万の列 * 数千のバージョン 数千のコモディティサーバを通じ、ペタバイトのデータ量を処理
6.
HBaseテーブル
7.
HBaseテーブル
8.
HBase テーブル
9.
HBaseテーブル
10.
HBaseテーブル
11.
HBaseテーブル
12.
HBaseテーブル
13.
HBaseのテーブルとは • テーブルは行の辞書順(アルファベット順)でソートされている • テーブルスキーマは、列ファミリを定義するのみ
• それぞれの列ファミリは、任意の列の数で構成 • それぞれの列は、任意の数のバージョンで構成 • それぞれの列は、挿入時のみに存在 • 一つの列ファミリ内の列は、一緒にソート・格納 • テーブル名を除くすべてはbyte[] (テーブル、行、列ファミリ:列、タイムスタンプ)->値
14.
Java API • CRUD
• get: 行全体または部分から値を引き出す (R) • put: 行の生成と更新 (CU) • delete: セル、1列、複数列または行の削除 (D) Result get(Get get) throws IOException; void put(Put put) throws IOException; void delete(Delete delete) throws IOException;
15.
Java API (続き) •
CRUD+SI • scan: 任意の行の数をスキャン (S) • increment: 列の値をインクリメント (I) ResultScanner getScanner(Scan scan) throws IOException; Result increment(Increment increment) throws IOException ;
16.
Java API (続き) •
CRUD+SI+CAS • アトミックのコンペア・アンド・スワップ (CAS) • get、check、put操作の組み合わせ • 完全なトランザクション機能がないことを補う
17.
その他の特徴 • I/Oを効率よく利用するバッチ操作 • プッシュダウン式に述部処理するフィルタ
• 強力なコンパレータを用いた行キーや列名のフィルタ • 圧縮アルゴリズムの選択 • ブルームフィルタと時間ベースのストアファイル選択 • アトミックな追記とputs+deletes • マルチオペレーション • サーバーサイドのカスタムコードサポート • …
18.
プロジェクトの状況
19.
最近のプロジェクトの状況 • HBase 0.90.x
“進化した概念” • マスターの書き直し – Zookeeper を超える • 行の中でのスキャニング • アルゴリズムとデータ構造のさらなる最適化 CDH3 • HBase 0.92.x “コプロセッサ” • マルチデータセンタレプリケーション • 任意のアクセス制御 • コプロセッサ CDH4
20.
最近のプロジェクトの状況(続) • HBase 0.94.x
“パフォーマンスリリース” • CRC読み込みの改善 • シークの最適化 • WAL圧縮 • プレフィックス圧縮(別名:ブロックエンコーディング) • アトミックな追記 • アトミック put+delete • マルチインクリメントとマルチアペンド • リージョンごとの(つまりローカルの) 複数行トランザクション • WALPlayer CDH4.x (間もなくリリース)
21.
最近のプロジェクトの状況(続) • HBase 0.96.x
“特異性” • Protobuf RPC • ローリングアップグレード • 複数バージョンのアクセス • Metrics V2 • プレビュー技術 • スナップショット • PrefixTrieブロックエンコーディング CDH5 ?
22.
クラスタのサイジング
23.
リソースの競合 • 読み込み・書き出しで同じ低レベルリソースを
奪い合う • ディスク (HDFS) とネットワークI/O • RPCハンドラとスレッド • そのほか、完全に別々のコードパスを実行
24.
メモリの共有 • デフォルトでは、各リージョンサーバは(与えられ
る最大量の)メモリを次のように割り当てる • 40%をインメモリストア (write ops) • 20%をブロックキャッシング (reads ops) • 残りの領域(ここでは40%)を、オブジェクトなど一般的な Java heapの利用にあてる • メモリの共有には微調整が必要
25.
Reads • リージョンサーバの適切な配置とリクエストの配分
• より高速な検索のためのクライアントのキャッシュ情報 • クライアントはより高速なルックアップのため情報を キャッシュする➜ 高速ウォームアップのための先読みオ プションを考慮 • 可能ならば、時間の範囲指定かブルームフィルタ を利用してストアファイルを削除 • ブロックキャッシュを試し、もしブロックが見つから なければディスクから読み込む
26.
ブロックキャッシュ • ブロックキャッシュの有効性を確認するため、
出力しているメトリクスを使用 • ヒット率と同時に、排除率を満たしているか 確認 ➜ ランダムリードは理想的ではない • 必要に応じて増減させて微調整するが、ヒープ の全体的な使用量を監視すること • ブロックキャッシュは絶対に必要 • 短時間でのメリットがあるので、少なくとも 10%に設定
27.
書き込み • クラスタサイズは、書き込みパフォーマンスによって 決定されることが多い •
Log structured merge tree ベース • 変更処理をインメモリストアと先行書き込みログ (WAL)の両方に格納 • 負荷が高いとき、一定のしきい値に基づき集約さ れたソートマップをフラッシュする • ペンディング状態の変更がないログは破棄 • ストアファイルの定期的なコンパクションを実行
28.
書き込みのパフォーマンス • クラスタ全体の書き込みパフォーマンスにある多
数のファクター • クラスタ全体の書き込みパフォーマンスに影響す る様々な要因 • キーの分散 ➜ リージョンのホットスポットを回避 • ハンドラ ➜ すぐに枯渇しないようにする • 先行書き込みログ ➜ 第一のボトルネック • コンパクション ➜ 間違ったチューニングは、増加し続け るバックグラウンドノイズの原因に
29.
先行書き込みログ(WAL) • 現在のところ、リージョンサーバに1つ
• 全ストア(列ファミリ)間で共有 • ファイル追記の呼び出しで同期 • 次のようなことを緩和するために実行 • WALの負荷軽減のため以下の機能を追加 • WAL圧縮 • リージョンサーバにつき複数のWAL ➜ ノードごとに複数 のリージョンサーバを起動する?
30.
先行書き込みログ(WAL)-続き • デフォルトのブロックサイズの95%にサイズ設定
• 64MB または 128MB、configを確認! • 復旧時間を削減するため、低い数字を保持 • リミットは32まで、増加させることは可能 • ログサイズを大きくするとともにブロッキング前の ログの数を増やす(あるいはどちらか) • 書き込みの分布及びフラッシュの頻度に基づき数 値を計算
31.
先行書き込みログ(WAL)-続き • 書き込みは全ストア間で同期させる •
1つの列ファミリに巨大なセルがあると、ほかの書き込み すべてが停止する • この場合RPCハンドラは、動くか全てブロックされるかの 二択になる • 書き込み時にWALを回避することができるが、これは本当 の耐障害性やレプリケーションを失うことを意味する • 依存データセットをリストアするため、コプロセッサを利用 することも可能かもしれない (preWALRestore)
32.
フラッシュ • すべての変更のための呼び出し(put、deleteな
ど)は、フラッシュのチェックの原因になる • しきい値に達したら、ディスクへのフラッシュとコン パクションのスケジューリングを行う • 新たにフラッシュされたファイルは、迅速に圧縮すること • コンパクションは、必要ならリージョンを分割すべ き場所に返っていく
33.
コンパクションストーム • ログの数が多すぎる、あるいはメモリ使用量が逼
迫することにより早過ぎるフラッシュが発生する • ファイルは設定されたフラッシュサイズより小さくなる • バックグラウンドでコンパクションを行い、小さいフ ラッシュを大きなストアファイルにマージするのは 大変 • 数百MBのリライトを何度も実行
34.
依存関係 • たった1つのトリガーがあれば、フラッシュは
全ストア/列ファミリ間で起こる • フラッシュサイズは、結合されている全スト アサイズと比較する • 多くの列ファミリはサイズが小さい • 例: 55MB + 5MB + 4MB
35.
数値について • 一般的なHDFSの書き込みパフォーマンス
は 35-50MB/秒 Cell Size OPS 0.5MB 70-100 100KB 350-500 10KB 3500-5000 ?? 1KB 35000-50000 ???? 競争こそ、実際に高みに至る道!
36.
もう少し数字を書く •
速度が低い現実の状況下では、15MB/秒 かそれ以下 • スレッドによるリソースの奪い合いは、大規模な 速度低下の原因になる Cell Size OPS 0.5MB 10 100KB 100 10KB 800 1KB 6000
37.
注釈 • リージョンXのフラッシュサイズに基づき、
memstoreサイズを計算 • フィルおよびフラッシュの比率に基づき、保存する ログの数を計算 • 最終的に、容量は次で決定される • Java Heap • リージョン数とサイズ • キーの分散
38.
Cheat Sheet #1
• 先行書き込みログの実行に十分以上の性能があ ることを確認 • 利用できるメムストア領域の許容範囲を超えてク ライアントが利用しないことを確認 • フラッシュサイズを大きく設定してもいいが、大き 過ぎないことを確認 • 先行書き込みログの使用状況を注意して監視
39.
Cheat Sheet #2
• 1ノードにつき、より多くのデータを格納できるよう 圧縮を有効にする • いくつかのレベルでバックグラウンドI/Oを固定す るため、コンパクションアルゴリズムを変更 • 別のテーブルに不均一のカラムファミリを置くこと を考慮 • ブロックキャッシュ、メムストアやすべてのキュー のメトリクスを慎重にチェック
40.
例 • 10GBのJava Xmx
heap • メムストアは40%使う(デフォルト) • 10GB Heap x 0.4 = 4GB • 推奨するフラッシュサイズは128MB • 4GB / 128MB = 最大 32 リージョン! • WALサイズは 128MB x 0.95% • 4GB / (128MB x 0.95) = ~33 部分的にコミットできないログ の最大保持量 • 20GBのリージョンサイズ • 20GB x 32リージョン = 640GBの生ストレージを使用
41.
Thank
ご清聴いただきまして、 You! まことにありがとうございました +1 (3) 6228-7930 cloudera.com twi1er.com/ Sales-jp@cloudera.com cloudera facebook.com/ cloudera 41
Baixar agora