2010/12/28

Riptano Cassandra Hands-on トレーニングの振り返り2

先日開催された第13回Cassandra勉強会にて、「Riptano Cassandra Hands-on トレーニング」について、とてもうれしいプレゼンがありました。ここに、ご紹介させていただきます。早速、Riptanoにもフィードバックしておきました。

「Cassandra Hands-on Training by Riptanoに行ってきた」westのぶろぐ



このように感謝していただけると、(結構、エネルギーがいりますが)なんとか次回も・・と考え始めてしまいます。本当にありがとうございます。

2010/12/20

『「Big Data」との戦い』 連載第4回 「オープン化とBig Data技術」

5回連載の『Big Dataとの戦い』連載第4回目となる「オープン化とBig Data技術」がアップされました。

「オープン化とBig Data技術」

Hibariをオープンソースとしてリリースする際に調べ、考え、議論したことや、リリースしたあとにメーリングリストなどの問い合わせを通じて学んだこと、「NOSQL AFTERNOON in JAPAN」や「NOSQL Hands-onトレーニング」を通じて経験したことをベースに、Big Data技術におけるオープンソースのビジネスモデルについてまとめました。

実は、脱稿後にもうひとつビジネスモデルがあることに気が付きました。それはログ付きのTシャツやマグカップなどの物販や、スポンサーにより運営されるビジネスモデルです。

Hadoop/HBASE、CassandraやHibariといったBig Dataを取り扱うNOSQLデータベースの大半は、自社利用を目的に開発したのちに、オープンソースとしてリリースされているため、この記事に記載したビジネスモデルがあてはまると考えています。

しかし、他の領域では自律的なコミュニティをベースにしたオープンソースプロジェクトが存在します。むしろ、オープンソースのイメージはこちらの方が「本物」という印象が強いかもしれません。

こういったオープンソースの開発者は、自分の本業とは別にこのプロジェクトのために時間を割き、規模が大きい場合にはコミュニティとして複数のキーとなる開発者達と共同で開発をしてゆきます。そして、ある一定の規模になると、コミュニティの運営のためにコストが必要となり、上記のような物販や、このオープンソフトウェアから恩恵を得る企業からのスポンサーシップを受けることで、組織を維持するのだと思います。

仮に、Hibariが一定規模のコミュニティに成長するようであれば、コミュニティ維持のために、Geminiとしても、ぜひとも支援したいと思います。この記事を書いたあとで、そんなことを考えました。

2010/12/16

日本語Hibariサイトを発見!

Hibariの日本語サイトをお客様から教えていただきました。Hibariの概要やインストール方法について、わかりやすく解説されています。



Hibariの特徴
Hibari/データモデル
Hibari/データ操作
Hibari/インストール

Hibariはオープンソースとしての日が浅く、英語ドキュメントしかありませんでした。このサイトのように、使い方を丁寧に説明していただけると、より多くの方に試していただけることになると喜んでいます。

こちらも、従来の開発者向けドキュメント(Hibari Home Page)とは別に、Users Guideの準備を始めています。完成しましたら、すぐにお知らせするようにいたします。




2010/12/15

NOSQL Hands-on Trainingの振り返り

12月9日(木)のRiptanoによるCassandra Hands-onトレーニングに続き、12月8日(水)~10日(金)の夜間と、12月10日(金)の昼の時間帯にGeminiによるNOSQL Hands-onトレーニングを開催しました。


当日の模様を1分程度のビデオでご紹介します。



各コース2時間の3コースというトレーニングでしたが、講義内容が盛りだくさんで、ペースが速すぎた・・・というようなフィードバックもいただきました。また、Cassandraを題材としたハンズオンでは、前回のトレーニングでは全く問題が無かったVirtual Boxの設定のトラブルなどで、数名の方にご迷惑もおかけしてしまいました。準備をする側としては深く反省しているところです。

幸いに予備のPCを山ほど用意していましたので、トレーニングは無事に実施できましたが、ご自身のPCで操作することに意味がある訳ですから、次回開催する場合には充分なテストを繰り返したうえで、仮想環境をご提供できるようにいたします。

終了後、サーベイを実施したところ、多くのコメントをいただきました。以下にご紹介いたします。

改善すべき点

  • 「スピードが速く、ついてゆくのに苦労した。NOSQL Overviewを2時間で行うのであれば、ポイントを絞った方が良い」
  • 「NOSQL Overviewは(具体的なNOSQLデータベースの技術ではなく)概念的な説明でも良かった。たとえば、NOSQLが生まれた背景、設計思想が異なる点、開発における留意点など」
  • 「NOSQLが効果を発揮する領域、RDBが適している領域などのケースの具体的な説明があると良かった」
  • 「(Virtual Boxが動作しない機種があったため)実機で動かなかったので、しっかりと確認、準備をして欲しい」
  • 「募集要件としてJava経験者とあれば充分であった」


良かった点

  • 「要点がまとまって、ポイントをしっかりと押さえていた」
  • 「講師の教え方、知識の高さが良かった」
  • 「(Virtual Boxのアプライアンスは)受講後に復習して理解を深めることができるため、非常に価値があると思う」
  • 「サンプルコードがシンプルで適切なものが提供されていた」
  • 「自分の手を動かして、Cassandraを使う形式が楽しく、勉強になった」
  • 「なぜNOSQLが必要かという基礎的な考え方の説明が役に立った。また、NOSQL特有の実装方法を取り入れたハンズオンも良かった」

そして、このトレーニングを受けたあとの、参加者のNOSQLに対する興味の変化について尋ねたところ、次のとおりの結果となりました。


今回のトレーニングは時間配分や仮想環境の準備に課題があったことを反省しながらも、NOSQLを体験し、理解するという点では評価をいただいたのではないかと感じています。次回のトレーニングについては未定ですが、今回いただいたご意見を参考に、Riptanoにもフィードバックをしつつ、米国のスタンダードを持ちこむというよりは、日本人向けの特別なトレーニングにしてみたいと強く思いました。

参加者の皆様、ご参加いただき、また有益なご意見をいただき、本当にありがとうございました。また、今回はたいへんに短期間でのお知らせになり、都合がつかなかったという方も多くいると聞いております。来年早期にでも、トレーニング受講のご要望がありましたら、ぜひとも、ご連絡をいただければ幸いです。ご要望に合わせて柔軟に対応させていただきます。

連絡先: bigdata at geminimobile.com

2010/12/10

Riptano Cassandra Hands-on Training review

昨日12月9日(木)、日本で初となるRiptano社によるCassandra Hands-on Trainingが、渋谷のGeminiのオフィスで開催されました。約15名の参加者が、Riptanoが米国で実施しているトレーニングと同じ内容で受講しました。

プロの通訳者が、難しい内容も確認しながら、わかりやすい日本語に通訳し、ときには説明内容は噛み砕くように講師をリードし、参加者全員から通訳があって本当に良かったとフィードバックをいただきました。参加費に見合う価値を得ていただくためにも、今後の運営の参考にしたいと思います。

開始5分程度の模様です。


Riptano Cassandra Training from geminimobile on Vimeo.

講師のPCにトラブルがあり、ハンズオンをたっぷりと期待していた方には御迷惑をおかけしてしまい、終了後、講師も気にしていました。ただし、そのかわりに、かなり踏み込んだ技術や最新の情報に関する多くの質疑が活発に行われました。それぞれの質問がとても鋭く、米国で定期的に開催されるトレーニングと参加者の質が全く違うと講師が驚いていました。

さいごに、参加者には全員、受講終了証が授与されました。


こんな受講終了証の数が増えてくると、NOSQLが本格的に普及し始めるのかもしれません。そんな日を楽しみにしているところです。

2010/12/03

モバイルクラウド環境におけるBig Data技術

ビジネスネットワーク.jpに、「モバイルクラウド環境におけるBig Data技術」として、Hibariを紹介しました。Hadoop/HBase、Cassandra、MongoDBについても簡単に紹介し、特徴の違いを説明しています。




2010/11/30

【事前準備のお知らせ】Riptano社によるCassandra Hands-on トレーニング

12月9日(木)に実施いたします、Riptano社による【日本語通訳付】Cassandra Hands-on Trainingの事前準備についてお知らせいたします。

1. ご持参いただくラップトップPCの要件
- Windows、Linux、Mac OSX、いずれかの OSによるラップトップPC
- 2GB 以上のメモリー
- 8GB 以上の空きディスクスペース

2. VMWareのダウンロードとインストール
- 事前に、以下よりVMWareをダウンロードのうえ、
- インストールをお願いいたします。
- バージョンは、3.1.0以上であればOKです。

http://www.vmware.com/go/downloadplayer/

3.当日は、USBメモリースティックによりアプライアンスをご提供します。そして、VMWareのイメージを使い、ハンズオントレーニングを実施いたします。



2010/11/26

Cassandra Hands-on Training by Geminiの準備について

12月9日(木)の18時30分、12月10日(金)の13時、15時30分と18時30分、12月11日(土)の13時、15時30分に開催するGeminiによるCassandra Hands-on Trainingの事前準備についてお知らせいたします。コースの詳細はこちらです

1. 御持参いただくラップトップPCの要件

 - Host OS: Windows, Mac OS, Linux 
 - 空きディスクスペース: Minimum 4GB
 - RAM: Minimum 2GB

2. 事前にHost OS(Windows, Linux, OS X)に合ったOracle VM VirtualBoxをダウンロードしてください
http://www.virtualbox.org/wiki/Downloads. version 3.2.10. 

3. Oracle VM VirtualBoxをインストールしてください 
 - デフォルト設定でOKです
当日は、2GB以上になりますが、USBメモリスティックにて、Virtual Boxのアプライアンスをご提供いたします。Linuxで動作するこのアプライアンスには、Cassandra、Eclipse、 YCSB、Twitter類似のデモアプリChirperなどが事前にインストールされており、このアプライアンスを利用してトレーニングを行います。

なお、Riptano社による12月9日(木)のCassndra Hands-on Training by Riptanoの事前準備については、あらためてお知らせいたします。

2010/11/24

【講師のご紹介】Cassandra Hands-on Training by Riptano

本年12月9日(木)に実施しますCassandra full day Hands-on Training by Riptanoの講師であるRiptano社のNate McCallよりメッセージが送付されてきましたので、ご紹介いたします。
・・・・・・・・・・・・・・・・・・・・・・・・・・・・
Riptano is very excited to be working with Gemini Mobile in offering this training. 

As I said at the NoSQL afternoon, we underestimated the amount of interest in Apache Cassandra in Japan. We decided to work quickly to get involved in the community. We are doing this as quickly as possible by offering our standard training course (well received by attendees in Europe and America) and translating our documentation to Japanese (thanks @kimtea!). 


I will be the one providing the training course - as a brief background:
- I have been working with Apache Cassandra for over a year now and have worked directly on internals including: secondary indexes, thrift rpc, and the CLI.
- I have been a committer on the Hector java client project since March, shortly after it's inception
- I have been at Riptano since August and have worked closely with Jonathan Ellis and the rest of the team preparing the presentation materials that we use in our trainings.



 This training is fast-paced and very hands-on. You will leave with a very good understanding of Apache Cassandra operations and application development. I am also working on a custom version of the material with ease of translation as a goal. I feel confident that we will deliver a solid product. 


I understand from Motohashi-san that the translation is a point of concern. I can only say that we will try our hardest to make this work and anyone who signs up for this course and feels like they do not get a good value will have their money refunded in full. 


Please let me know if you have specific questions regarding the training. 


Kind Regards,
- Nate 



(Thanks again to Motohashi-san and Ohtani-san for their help and Gemini Mobile for working with us to set this up quickly). 
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
なお、Geminiが提供するHands-onの講師はGeminiのR&Dを統括するGary Ogasawaraが講師を務めます。Gary Ogasawaraのプロフィールは次のとおりです。


Gary Ogasawara, Global R&D
Gary Ogasawara heads up Gemini's global development and QA team, with operations in Silicon Valley, Tokyo, and Beijing. Gary has over 15 years of hands on engineering management experience at startups and larger companies. Gary has led the development of all of Gemini's products and their worldwide carrier deployments. Prior to Gemini, Gary was Director of Engineering at e-Centives, an e-Commerce search engine company. He also led the development of real time commerce and advertising systems at Inktomi, a leading Internet search engine and CDN gateway company. Gary holds a Ph.D. in Computer Science from the University of California at Berkeley, where he specialized in Bayesian decision theory, uncertainty reasoning and machine learning.



NOSQL Hands-on トレーニングの詳細はこちらになります。

2010/11/23

【日本語通訳付】Cassandra Hands-on Training by Riptano

先週11月10日(土)、NOSQL Hands-on トレーニング開催についてお知らせをいたしました。早々にお申し込みをいただき、また、Riptano社が米国で提供しているトレーニングと同じプログラムを日本で実施することに関心をもっていただき、誠にありがとうございます。


このたび、より多くの方にご参加いただき、同時に深く理解していただけるよう、プロ通訳者による日本語通訳付のトレーニングとすることといたしました。


日本で初めて開催のプログラムであり、たいへんに貴重な機会だと思います。多くの皆様のお申し込みをお待ちしております。


お申し込みはこちらになります


Riptano社によるCassandra Hands-on Trainingの概要


受講者には、"Cassandra 0.7.0"によるUbuntuベースのVMWareイメージが同梱されたUSBドライブが提供されます。これらのイメージは、ハンズオンにおいて3つのNodeクラスターを構築するために利用します。トレーニングの前半部分では、インストレーションとアプリケーションデザインを行います。1時間の昼食後、内部構造、オペレーション、チューニング、トラブルシューティングについて学びます。たいへん短い時間(5分以内)にはなりますが、最後にRipcord管理ソフトのデモを行います。


日時: 2010年12月9日(木)10時から17時30分
場所:ジェミナイモバイルテクノロジーズ 会議室(東京都渋谷区)


アジェンダ(Agenda)

(1) Installation and configuration

- Explain configuration options including multi-datacenter replication
- Hands-on exercises include:
  * grow cluster from one node to two, then three
  * run benchmarks with stress_py tool

(2) Application Design
- Discuss denormalization and how to model data for Cassandra
- Discuss Twissandra application's datamodel
- Disucss CloudKick's time-series data model


Hands on exercises:
  * more detailed usage of the command line interface (CLI)
  * add, edit and delete existing data via the CLI

~~~ lunch break ~~~

(3) Basics of Cassandra Internals
- Discuss Memtable and SSTable design
- Demonstrate SEDA (Staged Event-Driven Architecture) concepts at work in Cassandra

Hands on exercises:
  * using JConsole to visually demonstrate internal state

(4) Operations
- Discuss replication, no single point of failure (SPoF) and failure detection in Gossip protocol
- Discuss snapshots and import and export of data

Hands on exercises:
  * create failure scenario in cluster and demonstrate recovery
  * demonstrate additional JMX metrics via JConsole along the way to observe failure and recovery
    ~ discuss how to identify potential issues ahead of time via JMX and monitoring systems

(5) Tunning and Troubleshooting
- Discuss effective JVM tunning options available
- Discuss row and key caching effectiveness as well as file system caching

Hands on exercises:
  * how to track effectiveness of JVM configuration options via JMX



以上になります。その他のNOSQL Hands-on トレーニングの詳細はこちらをご覧ください。NOSQLにご関心を持つ多くの皆様にお会いできることを楽しみにしております。



2010/11/22

『「Big Data」との戦い』 連載を始めました

このたび、businessnetwork.jpにおいて、「モバイルクラウドが避けては通れない「Big Data」との戦い」という5回連載記事を開始しました。連載第1回は「モバイルクラウドの道はBig Dataの道」です。



本年11月1日(月)のNOSQL AFTERNOON IN JAPANには多くのエンジニアの方にお集まりいただきました。しかし、NOSQLと総称されるBig Dataの技術の普及のためには、最先端の開発者や現場の最前線にいるITエンジニアだけではなく、サービスの企画、開発や予算、計画などのビジネス部門も含め、より広い分野の方々に、この新しい技術の波について理解していただくことが必要です。

この記事の筆者2人は、通信業界における長い経験を有し、とくに携帯通信事業においては黎明期より企画や計画、サービス開発に携わってきています。また、Geminiの開発者の主要メンバーは90年代半ばより、インターネット関連の技術開発を行っており、その経験を数千万というお客様が利用する携帯メール製品の開発に活かしています。

これらの経験を活かし、専門用語や難しい概念が多い分野ではありますが、可能な限り、ビジネス系の読者にも理解いただけるよう、わかりやすく解説していきたいと考えています。

そして、さらに深く知りたいという方々には、別にお知らせしていますNOSQL Hands-on トレーニングで、実際にその技術を体験していただきながら理解していただくという2段構えでの展開を考えてみました。



連載の第2回は「Big Dataと携帯メール」というタイトルで、クラウドコンピューティングの歴史を遡り、かつ携帯メールがモバイルにBig Dataをもたらしたという経験に基づく記事を準備しています。

また、第3回は「モバイルクラウド環境におけるBig Data技術」として、Big Data環境においては、3つのV、すなわち、Velocity(速さ)、Volume(量)、Variety(多様さ)に対応することの必要性について説明し、その技術としてNOSQLが活用されることについてお伝えします。

第4回は、まだ準備中ですが、Big Dataの技術の多くはオープンソースにより提供されています。このオープンソースでいかにビジネスとして成り立たせるのかという視点から準備する考えです。

そして、第5回は「Big Dataがモバイル業界に与える影響」として、この連載のまとめとします。

多くの方に読んでいただき、Big Dataの技術に注目が集まり、新しい市場を育てることができるよう、プロの編集者の力も借りて面白い記事にするつもりです。どうぞ、ご期待ください。





2010/11/17

Erlang User Conference 2010

11月15日(月)、16日(火)の両日、ストックホルムで開催されたErlang User Conference 2010において、UBFのハンズオン・チュートリアルとHibariのプレゼンテーションを行いました。


(1)UBF Hands-on tutorial
  ストックホルムにおけるHands-onであることから、さまざまな国から15名の参加者が集まりました。米国、英国、ドイツ、オランダ、ノルウェー、チェコ、スウェーデン・・・日本。UBFはErlangの父と呼ばれるJoe Armstrongの研究成果がベースになっており、その本人も積極的に議論に参加していました。



3時間のtutorial終了後、とても良かったと多くの参加者からの感想が寄せられました。


今回のHands-onの準備のため、UBF関連のドキュメントも整えました。
UBFドキュメント

また、Hibariに新しくThrift APIが加わりました。このThrift APIを利用することでErlang以外のC++やPythonといったプログラミング言語によるアプリケーションからHibariを利用できる環境が整い始めています。
Thrift API


(2) Erlang User Conference 2010
  Erlang User Conference 2010はストックホルムにあるAstoriaという映画館で開催されました。

映画館の前にはErlang the movieというスターウォーズのパロディのポスター。


そして、約200人の参加者にHibariのプレゼンテーションを行いました。
HIbari/NOSQL/Erlang for Big Data at Erlang User Conference 2010
View more presentations from geminimobile.


パーティでは、Hibariのプレゼンを観に来た、ドイツの大手通信事業者のWebメールのバックエンドに利用できないかと注目していたなどという話を聞いたり、日本語のサイトまでも見て熱心に研究している参加者に出会うなど、HibariはErlangコミュニティにおける大型案件として、多くの方に認知されていたようです。

当日のプレゼン模様ははこちらをご覧ください。iPhoneで録画した30分の動画です。後半部分では活発なQAが行われています。

Hibari/Erlang/NOSQL for Big Data





2010/11/10

NOSQL Hands-on Training 開催のお知らせ

NOSQL AFTERNOON IN JAPANの大きな盛り上がりを受け、Geminiは、多くの方にNOSQLを学び、体験していただくため、NOSQL Hands-on Trainingを開催いたします。可能な限りスケジュールを合わせることができるよう、全日、夜間、平日昼間、土曜日の4つの時間帯で開催いたします。多くの皆様のご参加をお待ちしております。



1. 日程
  • 夜間コース 2010年12月8日(水)、9日(木)、10日(金)
  • 全日コース   2010年12月9日(木)
  • 平日昼間コース 2010年12月10日(金)
  • 土曜日コース 2010年12月11日(土)

2.コース概要

(1) Cassandra full day Hands-on by Riptano(全日)
  Riptanoの講師より、Riptanoが米国で実施しているスタンダードのCassandra Hands-onトレーニングプログラムを日本語通訳付きで直接受講します。詳細についてはこちらもご参照ください。

(2) 100. NOSQL Technologies Overview (2時間)
   Geminiの講師より、NOSQL関連論文を要約し、NOSQLの概要について学びます。また、Amazon EC2を利用してCassandraのオペレーションデモにより動作を確認します。

(3) 200. Cassandra Hands-on Basics (2時間)
   Geminiの講師より、参加者自身のラップトップPCにVirtual Boxのアプライアンスをインストールし、実際に操作しながら、Cassandraの基礎について学びます(専門家である必要はありませんが、Java、C++、Pythonなどのプログラミング経験が必要です)。

(4) 201. Cassandra Hands-on Data Modeling (2時間)
   Geminiの講師より、参加者自身のラップトップPCにVirtual Boxのアプライアンスをインストールし、Twitter類似のアプリケーション開発を通じて、Cassandraのデータモデルについて学びます(専門家である必要はありませんが、Java、C++、Pythonなどのプログラミング経験が必要です)。

日程スケジュール表

4.Geminiの講師

Geminiが提供するトレーニングの講師は、Gemini Mobile TechnologiesのグローバルR&Dを統括するGary Ogasawaraです。Gary Ogasawaraは、UCバークレーにてコンピューターサイエンスの博士号を取得後、シリコンバレーにおけるベンチャーや大手企業において15年以上に亘る開発経験を有しています。また、インクトゥミ社時代には、CAP定理を提唱したEric Brewerとともに当時最大手の検索エンジン関連開発に従事していました。

5. 場所

東京都渋谷区道玄坂1-10-5 渋谷プレイス7階 
ジェミナイモバイルテクノロジーズ会議室  地図


6.お申込み

以下のサイトで、Google Checkoutを利用して、チケットを購入していただくことでお申し込みできます(チケット価格はUSドルで表示されています)。




7.その他
  • 夜間コースと土曜日コースの講義は英語で行います。エンジニアリングレベルの英語を聴き取ることができることが必要です。なお、全日コースと平日昼間コースは日本語通訳が付きます。
  • Windows、Linux、Mac OSX搭載のラップトップPC持参をお願いいたします。
  • 1コースあたり最小参加人数1名から実施いたします。また、Geminiが提供する各コースの定員数を15名、Riptanoが提供するトレーニングの定員数を20名としますので、小人数で深く学ぶことができます。

特に、Riptanoによる全日コース並びにGeminiによる200と201のコースでは、Cassandraなどの関連ソフトウェアをインストール済みのアプライアンスをご提供しますので、NOSQLに強い興味があるものの、実際に試してみる時間の余裕が無いという方に最適なコースだと考えています。多くの方のお申込みをお待ちしております。

2010/11/08

Mongo DB mug cup

NOSQL AFTERNOON IN JAPANにご出席の皆様に、10genから、Mongo DBのコーヒーマグカップのプレゼントがあります。



本来であれば、当日の出席者にお配りする予定でしたが、船荷が間に合いませんでした。そのため、お申し込みいただいた方に、米国より直接、郵送したいとのことです。ご希望の方は、以下のフォームでお申し込みくださいとのことです。
Mongo DB mug cup

また、お問い合わせは、10genのMeghan Gillまでお願いします。
@meghanpgill

(Geminiでは、その他詳細はわかりませんので、予めご了解いただければ幸いです。)




2010/11/05

NOSQL AFTERNOON IN JAPANの振り返り


発表者の皆様、運営をお手伝いいただいた皆様、ご相談させていただきました皆様、スポンサーの皆様、そして出席いただきました皆様、

多くのご協力いただき、本当にありがとうございました。今回の経験で多くのことを学びました。アンケートの結果やコメントを一部ご紹介しながら、今後の参考となるようなトピックをお伝えしたいと思います。

1. 会議全体の評価

約70名の方からアンケートに回答していただけました。約380名が出席したとすると、20%弱の回答率です。95%近くの方に「たいへん良かった」、「良かった」と回答していただきました。この高い評価を観るに、回答にバイアスがかかっているとも言えるかもしれません。「良い」と感じた人だけが回答している可能性です。

とはいえ、そんな統計的な意味合いはどうでも良い気分です。多くの方に喜んでいただけたという実感もありますので、運営側としても素直に喜んでいます。




2. 運営について

運営についても、全般的に良い評価をいただきました。


良い点についてのコメントは次のようなものが多く見られました。

  • 時間通りの進行と熱心な運営
  • 無料にもかかわらず同時通訳があった
  • 国内外から一堂に集まり、直接話しを聞くことができた
  • 初めてのため、わかりやすかった

一方、課題として次のようなコメントをいただいています。

  • 6時間は長かった
  • パイプ椅子はつらかった
  • 概要レベルだったので、もっと深い内容の話を聞きたかった
  • 発表に共通の軸があると比較しやすかった
  • パネルがあると良かったのでは
上記のコメントは、仮に次の機会があれば当然ながら参考にしたいと思います。もしも、同種の会議を企画している方がいれば、ぜひともご参考になさってください。


3. いくつかのトピック

(1)無料で運営できた理由

日米の有名なNOSQLプロジェクトが一堂に介し、同時通訳も付いて無料。

この点については、Tweetも含め、高く評価をいただきました。しかし、米国からの渡航費、同時通訳機器、プロの通訳者、当日の運営者の人件費、会議スペース、これらの運営にかかったコストはそれなりのものになります。一般的には、これらのコストは情報を得る側が負担するのはないでしょうか。準備過程においても、いくたびか有料で開催してはどうかという提案もいただきました。

こちら側に先入観があったことも否定できないのですが、NOSQLという分野は未だアカデミックな色彩が強く、広く理解してもらうにはハードルが高く、英語では、そのハードルをさらに高くしてしまい、そのうえ有料にしたら、出席する人はかなり限定されてしまう、と考えていました。

そのため、「出席者の裾野を広げるためにはコストがかかる」ということを、関係者と相談し続けていました。発表者側としても、日本は世界で2番目に大きなNOSQLの市場と認識しています。スポンサーとなり運営コストを負担してでも、より多くの人に理解してもらえる機会と考えてくれたのだと思います。こうして、無料で開催できることになりました。

ただし、次回も無料開催にできるものかはわかりません。市場として魅力的に見えなければ、発表者側でコスト負担までしようと思わない可能性もあります。また、少ない人数で専門性の高い会議の場合には採算がとれないと考える可能性もあります。

そういう意味では、日本市場にビジネスとしても大いに関心を持ってもらえるよう、熱心に情報発信をし続けることが重要なのだろうと思います。

そして、それは、いまやグローバル語となった英語で伝えることが早道なのではないでしょうか。英語でプレゼンという挑戦を高く評価してもらえるとうれしいところです。

(2)日本語通訳が英語?


通訳者の方々には、「音の聞き易さ」という点からは、あまり良いとは言えない環境のもとで通訳をお願いしました。同時通訳であることから、ちょっとした発言や音声を聞き漏らすと、その部分は飛んでしまいます。

これが、フレーズ毎に通訳する逐時通訳であれば、確認しながら通訳できますので、そのような課題は少なくなります。ただし、英語で発言し、次に日本語で訳し、となりますので、プレゼンには倍の時間が必要になります。今回は多くのプロジェクトに参加いただいたことから、時間がタイトでした。そのため、今回のようにお願いすることとしました。

そのこととは無関係に興味深いTweetを見かけました。「日本語の通訳が英語・・・」、という感想です。専門用語に英語とカタカナ語が多いために、それらのキーワードや専門用語になじみが無いと、そんな感想も充分に理解できると思いました。

とはいえ、「帽子理論」と日本語で聞いたら逆にわからないかも・・・なんて心配も(冗談です)。

(3)日本流と分散システム

出席者の皆様のご協力により、受付、誘導、セキュリテリカードの登録や回収、レシーバーの配布〜回収〜整理〜片付け、時間通りの運営、スムースな入退場・・・、本当に整然(organized)とした会議運営になったと思います。

このことに米国側全員が驚いていました。別の機会にも、電車や駅を例に、その正確さと集団の秩序に基づき行動する日本流について議論したことがありました。集団としての利を得るために、個々人が自らを律し、浅く広く全員に少しづつ我慢してもらう(パイプ椅子固かったですか?・・・すみません。)。そんな日本流の分散システム?を示すことができたのではないかと思います。

繰り返しになりますが、ご協力いただきありがとうございました。いただきましたフィードバックを励みに、Hibariだけではなく、NOSQL市場全体の成長に引き続き尽力したいと思います。

2010/11/02

Brief reviews of "NOSQL AFTERNOON in JAPAN"

Yesterday afternoon, November 1, 2010, "NOSQL AFTERNOON in JAPAN" was held at the Rakuten meeting room in Shinagawa, Tokyo. Almost 380 people joined this first NOSQL conference in Japan despite the weekday afternoon. Also this conference became the largest generic NOSQL event in the world.


 The meeting started from Opening Remarks from Shinya Motohashi (Gemini Mobile) and Tim Anglade (the founder of a nosql summer reading group), 


(picture from Prof. Shudo)


who co-organized this event, by showing appreciations to sponsors and supporters of  "Gemini Mobile Technologies", "InfinityGraph", "Scality", "10gen", "Cloudant", "CUPA", "Riptano" and "Rakuten". 






As presenters, eight plus one NOSQL projects of Japan and US showed up. The followings are presentations from them (to be updated)


(1) Hibari (Gemini Mobile Technologies) 
  Joe Norton presented  "Hibari". Hibari is written as "雲雀" in Kanji, which has the meaning of "Cloud Bird".






(2) Okuyama (Takahiro Iwase)
  Takahiro Iwase presented  "Okuyama"  named from his favorite driving road.


(Picture from Prof. Shudo)




(3) Cassandra (Riptano)
  Nate McCall presented "Cassandra", which was introduced as a hybrid of merits of BigTable and Dynamo.






(4) ROMA (Rakuten)
  Muga Nishizawa presented "ROMA" developed by motivations to create distributed systems by Ruby.






(5) MyCassandra (Shunsuke Nakamura)
  Shunsuke Nakamura is a graduate student of Tokyo Institute of Technologies and showed very unique project to mix up MySQL and Cassandra as "MyCassandra".






(6) Mongo DB (10gen)
  Roger Bodamer presented "Mongo DB" of 90,000DL per month with very nice Mongo DB stickers.


(Picture from Prof. Shudo)


(7) kumofs (Sadayuki Furuhashi)
  Sadayuki Furuhashi presented "kumofs". "Kumo (雲)" means "cloud" in Japanese and never falls down from the sky.






(8) Couch DB (Cloudant)
  Alan Hoffman presented Couch DB. The word of "Futon"comes from the Japanese style bedding, "布団". Combination of Couch and Futon are very nice. Thanks to 2GB free cloud access card.


(Picture from Prof. Shudo)




(9) HBASE/Hadoop (Cloudera)
  Todd Lipcon presented "HBASE/Hadoop". Thanks to rushing up from other appointments.


(Picture from Prof. Shudo)




This "NOSQL AFTERNOON in JAPAN" has received many positive feedbacks from attendees via Twitter by  "hashtag of "#nosqlgogo".  Also, you can watch presentations recorded in U-STREAM channel of "nosql-afternoon-in-japan


Recorded presentations
Part 1 (Opening Remarks, Hibari, Okuyama, Cassandra, ROMA, MyCassandra)
Part 2 (Mongo DB, kumofs)
Part 3 (Couch DB, HBASE/Hadoop, Closing Remarks)




The meeting proceeded as planned agenda to finish by 1830pm and all of 200 interpreter's receivers and 400 guest security card were successfully collected without any loss. We highly appreciate for Not Only many attendances but also supports and cooperations to run the meeting smoothly. Finally, thank you very much for a big applause from all.


(picture from Prof. Shudo)

2010/10/25

Cassandra Hands-on トレーニングの振り返り

本年10月19日と20日に渋谷のGeminiオフィスにて、2日間に亘り計4時間のCassandra Hands-on トレーニングを開催いたしました。その2日目は、Chirperと名付けたTwitterに類似したアプリケーション開発を通して、Cassandraの列指向型(Column-oriented)のデータモデルについて学びました。第1日目に配布したVirtual Boxのアプライアンスを利用し、Single-userのケースとしてUserとTweetを加え、そのTweetを呼び出し(userline)、Multi-userのケースとして、friendを加え、そのfriendのTweetを呼び出す(timeline)というエクササイズです。そして、トレーニングの最後には、JMX(Java Management Extensions)を用いてアプリケーションのモニターもしました。

2日目のトレーニングは、活発な質問や議論のあった1日目のトレーニング模様から一転し、参加者の皆さんが講師のインストラクションに従い、休憩時間も使わず、黙々と考え、プログラミングしていたのがとても印象的でした。また、開発ツールであるEclipseを始めて利用したという方がいたにもかかわらず、参加者の方々の理解の速さと高いスキルに、たいへん驚かされました。

終了後、アンケートを実施しました。いただきました回答の一部をご紹介します。




トレーニングの改善点として、次のようなご意見をいただきました。

  • 「標準のAPIやもっとシンプルなAPIの利用方法を説明して欲しい」
  • 「稼働させた際の問題点や課題など、実践的な説明があると良いのでは・・・」
  • 「日本語で説明のサポートがあると良いのでは・・」


その一方で、トレーニングに対して、多くのお褒めの言葉もいただきました。

  • 「講師がたいへん丁寧に説明し、質疑に応じてくれた」
  • 「事前に用意されたアプライアンスにより、全員が同じ環境で学べたことが良かった」
  • 「トレーニングの環境が良かった」


このような、素晴らしいフィードバックをいただき、運営側としても、何とか年内にもう一度トレーニングを開催してみたいと思うようになりました(実は準備は結構たいへんです・・)。次回のトレーニングは、ご要望の多かったマルチノードを利用した環境をAmazon EC2を用いて設定し、ネットワーク構築やノード追加などのオペレーションを学ぶトレーニングなどはどうかと考えています。ただし、次回は運営コストを賄うことができるよう、トレーニングの回数を複数回設けるか、参加費を上げて実施する必要はありそうです。

さいごにはなりますが、参加者の皆様、ご参加いただき、また有用なご意見をいただき、本当にありがとうございました。また、今回ご参加できなかった皆様、次回は今回の経験も活かし、より良い内容にしたいと考えています。このブログなどでお知らせいたしますので、機会があれば、ぜひご参加ください。Big Dataを扱う技術にご関心を持っていただける多くの皆様にお会いできることを心から楽しみにしております。

2010/10/20

Cassandra Hands-on トレーニング 第1日目

10月19日(火)、渋谷にあるGeminiの会議室にてCassandra Hands-on トレーニング第1日目を開催しました。講師はGeminiのグローバルR&Dを統括するGary Ogasawaraです。10人の方々にお申込みいただきましたが、仕事などの都合で急遽参加できなくなった方もおり、計7人にご参加いただきました。

1時間目は、NOSQLとCassandraの概要です。NOSQLの概要として、NOSQLが必要になってきた技術的側面からの背景やNOSQLとSQLの違い、NOSQLのプロジェクトの分類などについて説明をいたしました。そして、Cassandraの概要としては、その技術的な特徴について説明をいたしました。特に強調したのは、列指向型と呼ばれるデータモデルと、書き込みはメモリー上の"In-Memory Table"とディスク上の”Commit Log”に行われ、"In-Memory Table"からディスク上の"SSTable"に複製(レプリカ)をすることで、サーバー障害などの際にメモリーが消滅してもディスク上にデータは残るというLocal Persistent(永続性)の仕組みでした。参加者の方々から、分散されたノードにデータを振り分けるコンシステント・ハッシングについてのご質問などにより、議論も盛り上がりました。

2時間目は、事前準備として参加者の方々に仮想化ソフトウェアであるVirtual Boxをインストールしておくことをお願いしてありましたが、そのVirtual BoxのRed Hat Linuxで動作するアプライアンスを皆さんにお配りしました。

このアプライアンスは、GeminiのUSの開発チームのトレーニング用に作成したものです。ただし、そのUSのトレーニングにおいては、ラップトップのメモリーサイズやディスクサイズなどのハードウェアの要因により、うまく動作しないというケースも見受けられました。そのため、予備のラップトップを用意してあったのですが、、あっという間に全員が設定を終えてしまいました。この手際の良さには、講師のGaryも驚いていました。

このアプライアンスには、Cassandra、YCSB、翌日に利用するTwitter類似のアプリなどが組み込まれています。そして、第1日目は、CassandraとYCSBを操作してみました。多少のトラブルもあるかと想定していましたが、参加者の方々は簡単に操作され、こちらは一安心といったところです。

こうして、ちょうど2時間で、CassandraとYCSBの操作までというセッションを終了しました。第2日目は、Twitterに類似したアプリケーションの開発を通して、Cassandraのデータモデルを理解します。この模様については、あらためてご報告することにいたします。

2010/10/14

"NOSQL afternoon in Japan" 2

本年11月1日(月)、楽天様の会議室をお借りして開催する"NOSQL afternoon in Japan"。本当に多くの皆様にお申込みをいただいています。150名であった定員数を200名に増やしましたが、数日のうちに300名を超えるお申込みをいただくことになりました。

100名近くの方が補欠となっていましたが、#nosqlgogoのTweetやatndのコメントには、どうしても参加したいとの多くのご意見が寄せられていました。

関係者の方から「400名まで定員を増やしましょう!」とのうれしいご連絡を昨晩遅くにいただき、本日早朝、すぐにatndの定員数を400名に増やしました。

「A nosql summer」の主催者から、日本でNOSQLの開発者が集まる会議に興味が無いか?と聞かれたのは、すでに2ヶ月以上も前のことです。そして、彼は日本に呼ぶことができる(だろう)NOSQLのプロジェクトとそれをサポートする企業名のリストを送ってきました。GeminiもNOSQLである分散KVSのHibariをオープンソースとしてリリースしており、米国を中心とした彼らの名前は良く知っています。以前の同僚がいる会社もあります。

しかしながら、Geminiは約2年前からHibariの技術をお客様に直接ご説明してきましたが、好意的なご意見をいただくものの、なかなかその先には進まないという経験を繰り返してきました。そのため、米国ではHadoopやCassandraを中心に盛り上がりを見せてはいるものの、日本において理解していただくにはもう少し時間がかかるであろうと考えていました。

そして、この会議を開催しても、平日の午後ですし、英語というハードルもありますので、100名集まっていただけるかどうか・・と躊躇いながら、コミュニティで中心になって活動されている方々にご相談してきました。また、少しでもご出席していただく方々の裾野を広げようと、通訳の手配についても、コスト面も含めて、いろいろな方にご相談させていただきました。

本当にありがたいことに、参加を表明してくれた米国側、日本側でクラウドを推進する活動を積極的に行っている方々が、これらのコストのスポンサーシップに応じてくれることになりました。また、楽天様が快く会場をご提供してくれることになりました。

募集を開始すると、関係者の皆様にご相談したことが恥ずかしくなるほどのお申込み数です。こんなにも多くの方々が関心を持っていたと知り、本当に驚いています。そして、基盤系の技術における、このような盛り上がりは、何か新しい時代の予感すらさせます。

多くの皆様が集まりますので、運営にはいろいろと心配もあります。ふと、昔の上司が「悲観的に計画し、楽観的に実行しろ」と言っていた言葉を思い出します。微力ではありますが最善を尽くしてみたいと思います。ぜひ、皆様におきましても、これがきっかけとなり、日本でもBig Dataの技術としてNOSQLが大きな波となるよう、ご協力をいただけると幸いです。


2010/10/08

NOSQL afternoon in Japan

昨日、10月7日(木)の朝7時より、"NOSQL afternoon in Japan"と題したNOSQLの開発者が集まる会合の募集をatndで行いました。数時間のうちに、200を超えるお申込みをいただきました。本当にありがとうございます。

http://atnd.org/events/8460

このブログ、NOSQL関連のMLで翌日に募集を開始するとお知らせしたところ、IT Proにも記事にしていただき、「準備中」、「募集は、しばらくお待ちください」、定員0と掲載しておいたにも関わらず、多くの方に「補欠」としてご登録いただき、結果として募集開始をお待ちいただくような形になりました。

IT Pro news

お知らせをするのであれば、すぐに募集を開始すれば良いのに・・・というご意見もあると思います。しかし、最後の最後まで、開発者達の参加について確認をしていました。実は、いまでも、まだ1社最終確認を待ってますが、その一方で、開催は1ヶ月を切っています。特に、平日の午後ですので、早くお知らせすることも必要です。そんな葛藤を経て、このような募集方法になりました。

また、共同で幹事をしている"A nosql summer"の主催者と案内文のやり取りをしているなかで、ここでご紹介したい、いくつかのトピックがありました。

1.Meet up

最初の会議名は、前回のブログにもあるように、"nosql meet up in Japan"としていました。しかし、このmeet upは、夕方の軽い会議に使われる表現だとのことでした。今回の会議は、午後一杯を使う会議です。そのため、meet upは適切ではないので、この際、Afternoonはどうだろう?との提案があり、こんな会議名としました。

2.NOSQL

最近、Webなどで良くNoSQLの表現を見かけるようになりました。そのため、自然にNoと記載していました。ところが、この"A nosql summer"の主催者は、"No"ではなく、"Not Only" SQLであるという点を常に強調しています。そのため、Noではなく、Oを大文字で、NOSQLにして欲しいと提案してきました。こちらも、Not Only SQLの考え方には全面的に賛成なので、大文字で、NOSQLと表現することにしました。

3.#nosqlgogo

本当にありがたいことに、Tweetも増えてきました。ハッシュタグをすぐにつけようと提案がありました。その案として、#nosql no gogo という案が送られてきました。なんとなく意味不明です。No Go Goでは、「進むな!」のような印象もあります。そこで、Skypeで、ハッシュタグをどうする?と聞いたところ、自分の日本語は変か?のような質問をしてきます。そこで、やっと気がつきました。このgogoは、「午後」でした。日本側でご協力していただいている方に、この#nosql no gogo についてどう思うかお伺いしたところ、#nosqlgogoはどうでしょう?という提案もいただいていました。実は、理解していなかったのは、当方だけだったのかもしれません。

4.世界最大?

200名もの登録をいただく半日間、先方もフランスからatndの登録者数が増えているのを見守っていたようで、100を超えた、150を超えたと次々にメールを送ってきます。そのなかで、これまでのNOSQLの会合で世界最大になると興奮した様子で、何としても定員数を200に増やして欲しいと伝えてきました。すぐに会場をご提供いただく楽天様にご相談し、定員数を増やしました。

彼によれば、これまでの最大のNOSQLのイベントは、NOSQL EASTだったそうで、120名の参加者があったとのことです。そのため、仮にキャンセルがあったとしても200名近くの方にお集まりいただければ、世界最大になるとの考えでした。

nosql east conference

しかし、その時には興奮していましたが翌日確認したところ、HadoopNYは2000人の参加者があったとのこと。NOSQLという総称を使った会議では世界最大と、注意して表現しようと確認し合いました。

5.アジェンダ

10月8日現在でご案内しているアジェンダは、かなりタイトなものになっています。このような会議では、ブレイク(休憩)を多く入れ、開発者達と自由に雑談できる時間があるのが良いとのアドバイスをいただいております。最終確認が必要な開発者からの連絡を待ち、アジェンダの時間割も見直す予定です。

また、もしかすると、もう1社参加いただけるかもしれません。その場合には、少し終了時間が遅くなる可能性もあります。こちらも合わせて、あらためてご連絡いたします。

2010/10/01

nosql meet up in Japan

この数カ月、nosql summer reading in Tokyoという、グローバルで展開しているNoSQL論文の読書会の東京における開催のホストをしてきました。もう夏は終わりですが、10月に最終回を開催する予定です。

http://nosqlsummer.org/

ただし、それだけではなく、この主催者とともに、NoSQLの開発者が集まるmeet upと呼ぶ会合の準備を進めています。

このNoSQL meet upは、先日シアトルで開催されています。そして、10月後半にシリコンバレー。そして、日本。さらに他の国における開催も準備しているようです。

Seattle-Hadoop-HBase-NoSQL-Meetup

Silicon-Valley-NoSQL

日本では11月1日の開催を予定しています。日本からはHibariを含み4、米国から4の計8のプロジェクトが一堂に介して、半日に亘り、それぞれがプレゼンをします。

現在、最終の詰めを迎えており、いわゆるBig Nameからの最終確認待ちという段階です。なんとか来週にはお知らせできると良いなと思っています。

2010/09/23

Cassandra Hands-on トレーニング開催のお知らせ

最近、日本にもおいても多くのメディアや各種勉強会などにおいて活発に紹介され、注目を集めているCassandraのHands-on トレーニングを開催します。
Geminiは自社開発の分散型KVSであるHibariをオープンソースとしてリリースしていますが、同時に米国シリコンバレーのR&Dにおいては、CassandraのAPIを利用してデモアプリを開発するなど、多くの経験を積み重ねています。
このたび、GeminiのグローバルR&D責任者であるGary Ogasawaraが来日する機会に、2日間夕刻2時間の計4時間のHands-on トレーニングを開催するものです。Hands-onのため10名程度の参加者にて実施することを計画しています。参加希望、お問い合わせはメールにてご連絡いただければ幸いです。概要は次のとおりとなります。


Cassandra Hands-on トレーニングの実施概要


日時: 2010年10月19日(火)と20日(水)の2日間、
    18時30分〜20時30分


場所: ジェミナイ・モバイル・テクノロジーズ株式会社会議室  
    (ジェミナイ・モバイル・テクノロジーズ 地図/住所)


講師: Gary Ogasawara 
(GeminiのグローバルR&D責任者、UCバークレー博士号取得後、検索最大手であったInktome社などにおいて15年以上に及ぶ開発マネジメント経験)


参加者数: 10名程度を募集

トレーニング概要:

目的:計4時間のHands-onトレーニングにより、参加者自身のコンピュータを利用してパフォーマンス・ベンチマーク(YCSB)を動かし、単純なTwitter類似のアプリケーションを開発することを通じてCassandraの初歩的な利用について学びます。

要件:
  • LinuxかMac OS XのノートブックPC
  • Java, C++, Python・・・などにおける開発経験(初歩的な経験で大丈夫です)
  • エンジニアレベルの英語 (トレーニングの大半は英語で行いますので聞き取りができることが必要です。ただし、日本におけるコミュニケーション経験豊富ですので、流暢である必要はありません)
アジェンダ:
  • Cassandra Basics (1時間目)


    • Non-relational DBs overview
    • Cassandra architecture
    • Cassandra data model


  • Cassandra setup and benchmarking (2時間目)


    • Setup: Install necessary software.
    • Configuration: Review different configuration settings.
    • YCSB benchmarking: Run simple benchmarks using YCSB.


  • Hands-on Twitter-like application (3、4時間目)


    • Building Twitter-like application
    • JMX, logging.


お問い合わせとお申込み

  • 以下のメールアドレスにご連絡ください。

  bigdata@geminimobile.com

 
 その他

  • 先着順とさせていただきます。
  • トレーニング前にCassandraのインストール方法など事前準備資料をお送りいたします。
  • トレーニング前後にアンケートを実施させていただきます。

ご不明点など、ご遠慮なくお問い合わせください。
お問い合わせ、お申込みを心よりお待ちしております。




2010/09/17

「クラウド育ち」のOSS、主役に

2010年9月15日発売の日経コンピュータ誌の特集「クラウド育ち」のOSS、主役に」において、Hibariが紹介されました。


Hibariは「クラウド育ち」の新型OSSがユーザー企業にもたらすメリットとして、「ハードウェア障害が起きても”落ちない”データベースシステムを運用できる」活用ソフトとして、「Cassandra」「Voldemort」とともに紹介されています。

また、日本企業からも登場し始めた「クラウド育ち」のOSSとして、

「Hibariは元々、ネット企業や通信事業者向けに開発したソフトだ。日本国内大手ネット事業者が提供するWebメールのストレージとして採用された実績がある。中国の大手通信事業者であるチャイナモバイルやチャイナユニコムもHibariを利用する」に加え、

「OSSとして公開して、まずは様々な企業に使ってもらおうと思った」と紹介されています。

多くの誌面に紹介していだだき心から感謝しているところですが、OSSとして公開した理由については、もう少し付け加えたいことがありました。

(1) エコシステム
OSSとして公開することにより、Hibariというデータベースを取り巻くエコシステムを作りたいと考えました。これはすでに動き始めているという実感があります。HibariはLinuxのRed Hat、Cent OS、Fedora LinuxをOSとしてサポートしてきました。それは利用していただいているユーザーの環境に合わせるためです。しかし、OSSとして公開した直後から、Debian、Ubuntu、さらにはMac OS Xも利用できるように、次々とパッチが送られてきています。このおかげで、さらに多くのOS環境から利用できるようになります。今後はクライアントAPIの言語においても、いろいろな言語から利用できるようになるとうれしいと考えています。

(2) チェイン・レプリケーション
Hibariは、結果として整合性が保たれるという「結果整合性」ではなく、リクエストに対し更新を確認済みのデータを必ずリプライする「強い一貫性(Strong Consistency)」を提供するため、チェイン・レプリケーションという技術を実装しました。このチェイン・レプリケーションについて、いくつかの論文は発表されていますが、商用システムにおいて実装されたという事例はいまのところ発見できていません。おそらく、世界初であろうと考えています。OSSとして公開することにより、このチェイン・レプリケーションの実装方法をレビューしてもらい、今後のNoSQL技術の進化に貢献したいとも考えました。

(3) Big Dataアプリケーション
Hibariはデータベースです。そのため、このデータベースを利用するアプリケーションが必要です。HibariはWebメールのために最適化されていますが、これからのBigDataの時代には、想像を超えた広範囲な分野で活用される可能性があるのでは無いかと考えました。そんなユーザーに近いアプリケーションを開発している方々に、気軽にHibariを利用してもらえれば、Big Dataのアプリケーションに対する新しい領域が見えてくるのではないかと思いました。

このような理由も含め、HibariをOSSとして公開しました。しかし、実際にOSSとして公開してみると、公開前には想定していなかった効果が顕著になってきました。

それは、世界中からHibariのダウンロードがあり、さまざまな国々の方々から問い合わせをいただいているという点です。たとえば、ドイツ、英国、ウクライナ、ロシア・・。渋谷から半径何キロメートルから、ある日突然、世界に視野が広がったという感じです。

もっともっとHibariの知名度があがるようになれば、さらに想定していなかった効果があるのかもしれません。それは本当に楽しみです。



2010/09/05

Hibari presentations in Chicago

去る8月25日、ChicagoのおけるErlangユーザーの集まりであるChicago Erlang User Groupにおいて、2時間に亘り、HibariについてのTech talkが開催されました。かっての同僚である開発者が説明しています。その模様が、ブログに掲載されましたのでご紹介いたします。


ブログ:http://www.snookles.com/slf-blog/2010/09/04/hibari-news-presentations-in-chicago-and-tokyo/



ビデオは2時間あり、見ごたえがあります。前半の約45分は、以前ご紹介したHibariの日本語プレゼン資料の一部を利用していますので、内容は解りやすいかもしれません。後半は、英語版になりますが、HibariのReadmeをご覧いただければフォローしやすいと思います。


ビデオ:http://blip.tv/file/4052356/

Hibari Developers Guide: http://hibari.sourceforge.net/hibari-developer-guide.en.html


そのほか、質疑などの雰囲気も楽しめるかもしれません。前半の説明の終了時に当日プレゼンで利用している資料はGeminiの承認を未だ得ていないのでビデオで公開するのはどうする?・・・。ものすごく低い解像度で公開したら・・(笑)のようなやりとりも見られます。


2010/09/02

NoSQLについて知るべき10の事柄

 このブログは技術的に深い内容をお伝えするのではなく、Big Dataにすでに直面しているが気が付いていない、気が付いているがその解決の糸口を探している・・・、という方々に読んでいただければと考えています。すでにBig Dataの問題に直面している方々は、ノン・リレーショナル、NoSQL、KVSといったリレーショナル・データベースではない解決方法について、よく理解されていると思います。 

 しかし、Big Dataの問題に直面しながらも、NoSQLの課題のみに囚われているという方もいるのではないでしょうか(とはいえ、そういう方々がこのブログを発見することは無いと思いますが)。私たちも、つねにNoSQLには課題があるが、Big Dataの時代にはリレーショナル・データベースではできないことができる。これを組み合わせて利用する時代になるとお伝えしています。 つい先日、”10 things you should know about NoSQL databases"というブログ記事を発見しました。 とても良くまとまっていますので、以下に日本語でご紹介することにします。

 (以下、翻訳)
  リレーショナル・データベースモデルは、数十年に亘り、優勢でした。しかし、NoSQLとして知られる、新しいタイプのデータベースが、企業において注目を集めています。ここでは、その長所と短所の概要を述べてみます。 この四半世紀の間、リレーショナル・データベース(RDBMS)はデータベース管理の最有力なモデルでした。しかし、最近では、ノン・リレーショナル、「クラウド」、または「NoSQL」データベースが、データベースマネジメントにおける代替モデルとして、マインドシェア(顧客の心の中における特定ブランドの占有率)を高めています。この記事において、私たちは、これらのノン・リレーショナル NoSQLデータベースの10の重要な点を見てみます。すなわち、トップ5の優位点と、トップ5のチャレンジです。 

NoSQLの5つの優位点 

1:柔軟な拡張性
  数年間に亘り、データベース管理者は、「スケールアウト」 - 負荷が増大するに伴い複数のホストにまたがりデータベースを分散する – ことよりも、むしろ「スケールアップ」 - データベースの負荷が増大するに伴い、より大きなサーバーを購入すること – に頼ってきました。しかし、トランザクションレートや可用性への要求が高まり、データベースがクラウドや仮想空間に移行するに伴い、汎用ハードウェアによるスケールアウトの経済的優位性は文句の言えないものとなってきました。 RDBMSは汎用クラスター上において容易にスケールアウトはできないですが、NoSQLの新種のデータベースは新しいノードの利点を、明らかに活かすように設計されています。そして、それらは、通常、低コストの汎用ハードウェアを念頭に置いて設計されています。 

2: Big data
   トランザクションレートが過去十年間の認識を超えて成長するにつれ、格納されているデータの量もまた膨大に増加してきました。オライリーは、これを「データの産業革命」と賢く呼んできました。RDBMSの容量はこれらの増加に合わせて増えてはいますが、トランザクションレートと同様に、単一のRDBMSで実質上管理できるデータ量の制約は、いくつかの企業で耐え難いものとなってきています。今日では、HadoopのようなNoSQLで取り扱える「big data」の量は、最大のRDBMSで取り扱える量を超えています。

 3:さようならDBAs (また会いましょう?) 
  数年間に亘るRDBMSベンダーにより主張されてきた多くの管理面での改善にもかかわらず、ハイエンドのRDBMSシステムは、高価であり、高度に訓練されたDBAs(データベース管理者)の支援によってだけ維持できます。DBAは、設計、設置とハイエンドRDBMSシステムの継続的なチューニングに密接に関わっています。 NoSQLデータベースは、一般的に、より少ない管理 ― 理論的には、自動修復、データ分散、そして、より少ない管理とチューニング要件 ― を根本から満たすように設計されています。実際のところ、DBAの死という噂は少し誇張されすぎているでしょう。誰かは常にミッションクリティカルなデータストアのパフォーマンスや可用性について責務を負うのでしょう。

 4:経済性 
  NoSQL データベースは典型的に、爆発的なデータとトランザクション量を管理するために安い汎用サーバーのクラスターを用います。その一方で、RDBMSは高価で専有型のサーバーやストレージシステムに頼る傾向があります。その結果、より安い価格でより多くのデータを格納し処理することにより、NoSQLにおけるギガバイトあたりのコストやトランザクション/秒は、多くの場合、RDBMSのコストよりも低くなりえます。

 5:柔軟なデータモデル
  マネジメント変更は、大規模に稼働するRDBMSにとって、かなりの頭痛の種です。RDBMSのデータモデルに対するわずかな変更でさえ、注意深く管理されなければなりませんし、ダウンタイムやサービスレベル低下が起こりえます。 NoSQL データベースは、― すなわち、実在さえしない ー データモデルの制約をはるかに緩やかなものとしています。NoSQLのKey Value storeとドキュメントデータベースは、アプリケーションを、データ構成部分のなかで、それが望むどのような構造にも仮想的に格納することを許しています。もっとも厳格に定義されるBig TableベースのNoSQLデータベース(Cassandra、HBase)でさえ、多すぎる混乱もなしに新しいコラムが作られることを概して許しています。 その結果、アプリケーションの変更やデータベーススキーマの変更は、ひとつの複雑な変更の単位として管理される必要が無くなります。理論的には、仮にアプリケーションがデータの整合性の管理に失敗する場合には、明らかに望ましくない副作用がありうるものの、このことは、アプリケーションをより速くさせるでしょう。


 NoSQLの5つのチャレンジ 


  NoSQLデータベースへの期待は、多くの熱狂を生み出してきました。しかし、それらがエンタープライズの主流と言われるようになる前に、克服するべきいくつかの障害があります。

 1:成熟性
  RDBMSシステムは昔からあります。NoSQL擁護派は、その進んだ年齢は退行のサインと主張するでしょう。しかし、多くのCIO達にとって、RDBMSの成熟度は安心を与えています。大部分において、RDBMSシステムは安定的で、リッチな機能があります。比較して、多くのNoSQL代替は、多くの主要機能がこれから実装されるプロダクション前の状態にあります。 技術的な最先端に生きることは、多くの開発者にとってエキサイティングなことですが、企業は相当に警戒してそれに接近するべきです。 

2:サポート
   企業は、仮に主要システムに障害が起きた場合に、タイムリーで有能なサポートを得ることができるという安心を望みます。 対照的に、多くのNoSQLシステムはオープンソースプロジェクトであり、通常、それぞれのNoSQLデータベースに対してサポートを提供するひとつかふたつの企業があるものの、これらの企業は、たいてい、オラクル、マイクロソフトやIBMのようなグローバル展開や、サポートのリソース、信頼性の無い小さなスタートアップ企業です。

 3:分析とビジネスインテリジェンス
  NoSQLデータベースは、最近のWeb2.0アプリケーションのスケール要求に合うよう進化してきています。結果として、それらの機能セットのほとんどは、これらのアプリケーションの要求に基づいています。しかし、あるアプリケーションのデータは、典型的なWebアプリケーションの挿入-読み出し-更新-削除というサイクルを超えたビジネスに価値があります。これらの効率性と競合性、そしてビジネスインテリジェンス(BI)を改善する企業データベースにある企業の鉱山情報は、すべての中堅、大企業にとっての主要なIT課題です。 NoSQLデータベースはアドフォッククエリや分析への容易性はほとんど提供しません。単純なクエリでさえ、かなりのプログラミング専門性を必要としますし、普通に利用されるBIツールはNoSQLへの接続性を提供しません。 やや助かるのは、HIVEやPIGといったHadoopクラスター、またはおそらく結果的に他のNoSQLデータベースにあるデータへの簡単なアクセスを提供するようなソリューションが現れてきたことです。 

4:管理
  NoSQLにとっての設計ゴールは、全く管理しないソリューションを提供することかもしれません。しかし、最近の現実はそのゴールに全くもって足りていません。今日のNoSQLはインストールするために多くのスキルや維持するために多くの努力を要します。 

5:専門性
   RDBMSのコンセプトやプログラミングを熟知した開発者は、世界中、そしてあらゆるビジネス領域に文字どおり数百万います。対照的に、ほとんどすべてのNoSQL開発者は、学習モードです。この状況は、時間とともに自然と解決するでしょう。しかし、いまのところ、NoSQL専門家よりも、経験豊かなRDBMSプログラマーや管理者を見つけることのほうが、はるかに簡単です。 

結論
  NoSQLデータベースは、ますますデータベースのランドスケープの重要な部分になりつつあります。そして、適切に利用されたときには、本物の利益をもたらすことができます。しかしながら、企業はこれらのデータベースにある合理的な制約と課題を完全に認識するという慎重さを持って進むべきでしょう。(以上、翻訳)

  いかがでしたでしょうか。前半の優位点はNoSQLの擁護派の方々の声が大きくなるにつれ、これからさらに目立つようになる主張だろうと思います。一方の、チャレンジの部分は、そのとおりと思う部分もありますし、その課題をクリアしようとしているとお伝えしたい気持ちもありますが、このようなフェアな視点が大事だと思い、ご紹介いたしました。ご参考になれば幸いです。

2010/08/30

Hibari presentation at Tokyo Erlang Workshop

先日、第5回Erlang分散システム勉強会(Tokyo Erlang Workshop)において、Hibariのプレゼンテーションの機会をいただきました。大きな集まりにおける初めてのHibariのプレゼンテーションです。限られた時間でお伝えしたいことがたくさん有り、日本語で概要をご説明し、技術的に詳しい内容は英語で開発者よりお伝えするというご説明方法となりました。

参加いただいた皆さんには、とても真剣に耳を傾けていただき、心から感謝しています。また、とても鋭いご質問をいただきました。未だ英語のドキュメントがあるだけですので、リソースの関係で段階的にはなりますが、日本語でお伝えできるようにしていければと考えています。Slideshareの資料をご覧いただければ、英語での説明内容も日本語でカバーされているとは思いますが、Q&Aについて、ここで簡単に補足も含めてご紹介しておきたいと思います。

(1) Amazon S3のクライアントAPI
Amazon S3のクライアントAPIについてご質問をいただきました。現在、商用済み(Production-ready)システムのクライアントAPIにはUBFとNative Erlang Client APIを利用していますが、その他、Amazon S3、JSON-RPC-RFC4627によるクライアントAPIも用意しています。ただし、このAmazon S3は、GeminiでProductionはしていませんので、もしご関心のある場合には、ぜひとも、ご利用いただき、フィードバックいただければと考えています。

(2)Chain Replication
Chain ReplicationのFailoverについてご質問をいただきました。Hibariの場合には、CassandraのようなGossipプロトコルを利用しているのではなく、Admin serverが、各チェインを管理しています。このAdmin serverは、このFailoverのようにチェインに何らかの変更を加える必要があるときに機能します。

(3)Readのレイテンシー
HibariのRead(読み出し)のレイテンシーについてご質問をいただきました。Write(書き込み)のレイテンシーについては、Hibariは、fsyncによりDiskへのWrite(書き込み)を確認すること、またチェインの構造からWrite(書き込み)をシリアライズしている一方で、HBaseはfsyncがなく、またCassandraとともにWrite(書き込み)をパラレルで処理しているため、レイテンシーに差がでるとプレゼンのなかでご説明いたしました。一方の、Readに関しては、小さいValueの場合に1ms(ミリセカンド)程度の差が生じますが、パフォーマンステストの条件により充分に変わり得る(現在、YCSBパフォーマンステストを実施中です)と説明いたしました。むしろ、このRead(読み出し)が安定的であるといことは、アプリケーションを開発する方々にとって開発し易いというメリットがあるのではないかと考えています。

(4) github
Hibariは、なぜgithubを利用しなかったのかというご質問をいただきました。すでにgithubにもミラーサイトがありますが、Sorceforgeを利用した理由は統計機能が充実しているからとお答えしました。以前このブログでもご紹介いたしましたが、この統計機能により、世界中の国からのDLの数を知ることができます。リリースして約1カ月が経ちますが、あと数日で1000DLになると思います。その際にはぜひお知らせさせていただきます。

http://github.com/norton


(5)Network Partition
Chain Replicationという仕組みにおけるNetwork Partitionについてのご質問をいただきました。このNetwork Partitionとはネットワーク分断という意味ですが、ご質問の趣旨はPartition Tolerance(分断耐性)、つまり、ネットワークに一部障害があっても誤ったレスポンスを返さないという耐性についてのご質問と理解しています。未だに各種議論が絶えないBrewerのCAP定理においては、一般的にデータベースにおいては、Consistency(一貫性)、Availability(可用性)と、このPartition Tolerance(分割耐性)の3つの条件のうち、2つしか満たせないとされています。

Hibariの場合には、複数の複製(Replica)が存在する分散環境にあっても、Diskに書き込みを確認したデータだけを読み出すというConsistency(一貫性)と正常動作しているノードが受け取った全てのリクエストに対して必ずレスポンスをするというAvailability(可用性)を重視しています。しかし、最近では、実際のオペレーションにおいては、このAvailability(可用性)とPartition Tolerance(分割耐性)は排反事象だろうか?というような議論もあります。特に、Network Partition(ネットワーク分断)に際してはAvailability(可用性)までも失われるケースもあり得ますので、このPartition tolerance(分断耐性)については、さまざまなケースを想定しなければなりません。

詳細なケース分けは、バックアップ資料にあります。これを簡単に説明すると、Admin serverの分断については、3つのAdmin serverを配置することで分断耐性を持つことができます。一方、ChainのなかのHead、Middle、Tailの各ノードに関しては、仮に、Headが分断されたとしても、Middleがその役割を担うというように、Chainのなかで常にHeadとTailの役割が新たに割り振られます。その点では、Chainのなかでは分断耐性があります。しかし、仮にHead、Middle、Tailの3つのノードを含むChainが分断された場合には、分断されたChain側のクライアントに対しては結果的に(Eventually) 正しい答えを返しますが、異なる側からの書き込み、読み出しはできないという状況になります。この場合にはネットワーク全体としては、やがてConsistency(一貫性)を失うことにつながります。その場合にはAvailability(可用性)を犠牲にして、分断された側をストップさせてもConsistency(一貫性)を保つという対応も必要であろうと考えているところです。

なお、クライアントが分断された場合には、クライアントがAdmin serverと同じ側にあり、かつChainのサブセットが残っていれば分断耐性はありますが、完全にクライアントがChainから分断された場合と、クライアントがAdmin severと異なる側にある場合には分断耐性は無くなります(どんなシステムでも同じことが起きるのかもしれません)。

実際のオペレーションにおいて、このように分断される状況が発生しないようなネットワーク構成をとり、運用が行われるはずですが、バックアップ資料のようなさまざまなケースが想定され、またその組み合わせもあり、私たちとしても、さらに深く議論し、考えていきたいと思います。

Hibari Open Source Projectのメーリングリストなどにおける議論も大歓迎ですので、一緒に考える機会をいただければと思います。
Hibari at TEW5 (japanese)
View more presentations from geminimobile.

2010/08/26

Summary of "Cassandra" for 3rd nosql summer reading in Tokyo

第3回目となる"nosql summer reading in Tokyo"の論文は、最近注目を集めているCassandraをとりあげました。Cassandraは、以前ご紹介したGoogleのBigTableとAmazonのDynamoの良いところを合わせたと言われているとおり、論文からもそれを伺い知ることができます。

たとえば、分散されたノード間に主従関係を作らず、Gossipプロトコルにより、サーバー相互間で連絡をしあい、あるサーバーに障害が起きていないかと監視するという優れたメカニズムが実装されています。

また、SQL以外という意味で幅広いNo-SQLという分野においてコラム指向と分類されるように、キーに紐づくひとつのrow(行)に対して、いくつにでも増やせるという複数のコラムを持つことができます。そして、そのコラムはコラムファミリーとして、複数のコラムのグループをつくることもできます。このようなコラムのグループを作ることにより、検索を容易に行うことができるというメリットを得ることができます。

そして、この論文には言及されていませんが、データの一貫性(Consistency)のレベルを設定できるという点にもメリットがあります。たとえば、一貫性(Consistency)のレベルを、ゼロと設定すると、データの一貫性を全く確認することなく、書き込み/読み出しを実行します。以前にもご紹介した「Eventual Consistency(結果整合性)」を受け入れることができるアプリケーションの場合には、このトレードオフとして良いレイテンシーを得ることができるはずです。逆に、書き込むノードの数と読み出すサーバーの数の合計が、レプリカ(複製)する数よりも多いQUORUMに設定すれば、「強い一貫性(Strong Consistency)」を得ることもできます。この設定は、クライアント側で、書き込み/読み出しの都度設定します。

Hibariは、この人気が高いCassandraのAPIを利用できるように準備をしているところです。Hibariの場合は、Cassandraのようなコラムを複数持つデータモデルではなく、キーとバリューが対となるキー・バリュー型に分類されます。そのため、複数のコラムを持つCassandraのアプリケーションがHibariを利用する際に、複数のコラムファミリーでグループ化されたコラムを、ひとつひとつのコラムとします。また、HibariはChain Replicationにより「強い一貫性(Strong Consistency)」を保証するように設計されていますので、Cassandraのクライアント側で設定する一貫性(Consistency)のレベルに関する情報は必要が無くなります。

このように、HibariでCassandraのAPIを利用するためには、いくつかの仕組みを用意する必要はありますが、「書き込みを重視するCassandra」と「読み出しを重視するHibari」というように、それぞれの持ち味が異なります。

やがて、数多くのNoSQLのシステムに対する理解が深まり、その特徴が明確になり始めれば、アプリケーションのニーズに応じて、それぞれの特徴にあったシステムを選び使い分けることができるようになると考えています。

2010/08/25

Erlang, GB mail box web mail, Hibari

先日、楽天技術研究所様の勉強会でHibariの開発言語であるErlangを中心に、GB(ギガバイト)のメールボックスを提供するWeb mail(私たちはCloud maiとも呼んでいます)と、このGB mail box web mailのデータベースに実装されているHibariについて、開発者からお話をさせていただきました。

楽天技術研究所様では、すでにErlangを用いた開発が進められており、その開発成果のご紹介をいただきましたが、いまだ日本では商用開発に利用しているケースは多くないようです。

Geminiは2008年よりErlangによる開発を始めました。大規模なシステムの一部として高性能の"User Profile"ストレージサーバーが必要でしたが、LDAPとRDBMSでは、ニーズを満たすことができず、Erlangにより自社開発するに至りました。

それ以降、C/C++とErlangを主に開発言語としています。そして、数百万人のユーザーにGBのメールボックスを提供するWebmailという大規模なシステムにおいては、既にC/C++で開発済みの一部コンポーネントを除き、システム全体のほとんどをErlangにより開発しています。

2005年のアイデア段階から、数年かけて開発してきたHibariも、このGB mailbox web mailに実装し、さらにテストやバグフィックスに多くの時間を費やし、より良いプロダクトにしました。

Erlangのメリットは、Big Dataの処理に必要な、複数のサーバーへの分散や並行処理に向いた関数言語であり、また、その効率性や生産性の高さにあります。Geminiの開発者は、分散や並行処理という重たい開発部分はErlangに任せることができるので、「小さなチームで大きな仕事ができる」と良く語ります。

今後、多くの方にErlangを利用していただき、そしてHibariのオープンソースプロジェクトにもご参加いただければと考えています。開発にご興味のある方々のために、いくつかのハンズオンミーティングも計画しています。準備ができましたら、あらためてお知らせさせていただきたいと思います。

2010/08/16

Hibariの由来

とてもありがたいことなのですが、、Hibariにご興味を持っていただいている方々から、たびたびHibariの名前の由来についてご質問いただいています。日本語版のプレスリリースでは、「ヒバリ」について特別な注記をしませんでしたが、英語版のプレスリリースには、次の( )を付けました。


Hibari (meaning "Cloud Bird" in Japanese)


漢字ではHibariは「雲雀」と書きますので、"Cloud Sparrow"が正しいのかもしれません。ただし、Sparrowと表現すると、「Sparrowとは何か?」という質問が続きそうですので、Birdとしました。そして、この漢字を見ていただければ、Hibariは「Cloudのなかで、たくさん使われそうな」技術?というイメージが湧きませんか。


このHibariという名前は、日本、米国、中国系とさまざまな国籍が入り混じったメンバーが、Hibariだけではなく、いわゆるnosqlの技術全般の打合せをしていた最後に、ひとりから「ところで、Hibariという名前はどうだろう?」との提案で、全員が「Hibari?」と、?マークを頭に浮かべながら、考え始めました。


日本人であれば、「ヒバリ」と聞くと、かなりの確率で「美空ひばり(30代後半以上かもしれませんが・・・)」を思い浮かべてしまいます。Geminiは双子座の意味ですので、「双子座の美空ひばり」ファンが開発者だと面白いTweetsもいただきました。渋谷の道玄坂生まれの「ひばり」ちゃんなのですか?という方もいらっしゃいましたが。


Hibariという発音に違和感が無いと言いながら、米国人はGoogleサーチを始めました。すぐに見つかるのは、Hibari(雲雀)というアニメだったようで、Hibariとはアニメか?と質問が続きます。


中国に長く滞在していた日本人がヒバリを中国語(漢字)で調べました。そして、ひとこと、ヒバリは「雲雀」と書くらしいと。中国系米国人が、あー、たしかに雲雀・・、それに同意します。


そんなやりとりで、Hibari(雲雀)という名前は、なかなか良いということになりました。あとづけのように、Hで始まるからApacheプロジェクトでHadoopの次に並ぶとか、HyperScaleというGeminiの別の技術名称と相性が良いとか・・、いろいろな講釈も続きます。


Hibari(雲雀)となりましたが、Hibariを提案した彼の意図はHibari(=Skylark)としたかったとか。彼はStarwarsの大ファン。Skywalkerに始まるSkyシリーズ。分かる人には分かるかもしれません。そう考えると、Hibariの由来はそれなりに深めることができ、それぞれに思いがありそうです。早速、商標登録手続きを始めました。


なお、このHibariの絵はCEOが自ら書いています。Hadoopがかわいい象をロゴにしていることもありますが、基盤技術はBackEndと呼ばれるように、とかく裏方になりがちです。ロゴと言えども、すこしでも多くの人に理解し、親しんでもらうきっかけになれば良いなと思っています。







2010/08/05

Summary of "Amazon's Dynamo" for the 2nd nosql summer reading in Tokyo

第2回目の"nosql summer reading in Tokyo"では、"Eventual Consistency(結果整合性)"を提起したことで有名な、"Amazon's Dynamo"の論文を題材に読書会を開催しました。

この論文以前には、分散環境において複数のノードにレプリカ(複製)されたデータの一貫性(Consistency)を保つことは当然のことと考えられており、先に発表されたGoogleの"Big Table"は、"Strong Consistency(強い一貫性)"が前提となっています。

しかし、その1年後に発表されたAmazonの"Dynamo"は、すべてのアプリケーションが必ずしもデータの一貫性(Consistency)を求めている訳ではないという前提で開発され、そのトレードオフとして、遅延(Latency)が少ないというメリットを得ています。

この論文においては、他にも多くの分散環境に適切に対応する方法が提示されており、そのひとつに"Consistent Hashing"があります。これは、ハッシュ関数を用いて分散化されたノードに、偏りなく、均等にデータを格納するというものです。

なお、Hibariは、"Chain Replication"により"Strong Consistency(強い一貫性)を提供するという点ではDynamoとは異なりますが、この"Consistent Hashing"が実装されています。