レポート

「第3回 MongoDB 勉強会 in Tokyo」活動報告

この記事を読むのに必要な時間:およそ 4.5 分

@ygenkiさん「MongoDBを使用したモバイルゲーム開発について」

@ygenkiさんより,実サービスである,モバイルゲームへMongoDBを使用した際の使用感などについて発表していただきました。なお,現在のMongoDB勉強会では非公式にCA枠というものがあり,間違いなく日本で最もMongoDBを活用している企業であるCyber Agentの皆様に毎回発表をお願いしております。

さて,まず特筆すべきはモバイルゲームの内容です。その名も東京Girls Snap」⁠

画像

こんな楽しいゲームのバックグラウンドでMongoDBが活躍してくれていることを考えると,筆者は胸が熱くなります。4月にリリースされたということですが,そもそもMongoDBを使用することに決めた理由として以下の4つを挙げられていました。

  • スキーマレス
  • ドキュメントの階層構造
  • Replication & Sharding
  • MySQL + memcached からの移行

このうち,Shardingは実際のデータ量や使用用途を考えて現在のところは使用しておらず,負荷分散が必要になった時点で検討するという話です。

主に,あるユーザーのアルバムがどんどん増えていくデータに対しての利用において,ドキュメントが階層構造になっていることと非常に相性が良く,アルバムの追加も配列に対するupdateコマンド,$pushや$pullをうまく活用できることが紹介されていました。また,update処理を行う際に起こりやすいミスについても触れられ,多くの人が「あるある」と頷いていました。

画像

また,データの追加が容易なことやキャッシュを意識しないで良いことなどは,今後の機能追加にも柔軟に対応できるという点でメリットであることが述べられていました。逆にデメリットは,上述したupdate時のオペレーションミスや,⁠スキーマフリー故の)スキーマデザインの難しさを挙げられていました。

全体の感想

ゲーム内のユーザーデータをMongoDBのupdateコマンドをうまく利用して効率良く処理しているところなどを見ると,さすがCyberAgentさんだなぁと感心しました。MongoDBのメリット・デメリットをきちんと見極め,実際の開発に次々とMongoDBを投入していく思い切りの良さは現在のCAさんの勢いを反映しているように感じます。

また,スキーマデザインの部分はとても重要であり,かつ難しい部分でもあります。皆さん,おなじところで頭を抱えられているんだなぁと感じました。

懇親会

懇親会もたくさんの方に参加していただき,大いに盛り上がりました。

画像

サプライズで皆さんから筆者の26歳の誕生日を祝っていただきました。本当に驚き,喜びましした! ありがとうございました。本コミュニティと共に今後も大きく成長を続けていきたいと思います。

画像

全体の総括とこれからの #mongotokyo の活動について

今回は前回よりも20名ほど多い,100名以上の方に参加エントリーしていただき,日々MongoDBの注目度が高まっていることに喜びを感じています。どの発表でも質問は絶えることがなく,とても有意義な勉強会になったことを大変嬉しく思います。また,会場の環境が素晴らしく,広さや綺麗さだけでなく,飲み物も無料で提供していただきました。そのような環境でリラックスして参加してもらえたのも良かったと思います。今後も同じ会場でMongoDB勉強会を継続していくつもりですので,是非とも一度足をお運びください。

勉強会の後,参加されたたくさんの方々にブログが書れました。筆者が調べた限りのブログをここに掲載させていただきます(漏れなどがありましたら申し訳ございません)⁠皆さん,詳細なレポートありがとうございます。

さて,前回のレポートではこれまでの#mongotokyoの活動について紹介しましたので,今回はここで今後の活動について触れておきます。

MongoDB勉強会はフューチャーアーキテクトさんの会場(大崎)をお借りして100名規模で毎月開催しています。MongoDBの機能や仕組みについての話からアプリケーションの応用まで,これからも幅広い内容で初心者から上級者までそこに意義を見いだせていただけるような会にしていきますので,皆さんお気軽に足をお運びください。また,分科会として以下の勉強会も発足しつつあります。

  • MongoDBソースコードリーディング(5月末からキックオフ)
  • スキーマデザイン討論会・読書会(教科書Document Design for MongoDBの発売後,6月末から開始)

今後とも#mongotokyoをよろしくお願いします。

著者プロフィール

井上敬浩(いのうえたかひろ)

MongoDB JP主催者。MongoDB日本語ドキュメント訳もしています。芸者東京エンターテインメントGTE所属(データマイングエンジニア)。Hadoop,MongoDB,GraphDB(Neo4j),Redis等を使用して,大規模かつ複雑なソーシャルデータの解析を行っています。解析技術においては業界一を本気で目指しています。

Twitter:@doryokujin