タグ

mapreduceに関するkoko1000banのブックマーク (6)

  • 開発メモ: ローカルMapReduceの性能

    Kyoto CabinetMapReduceを実装したという話は前回書いたが、そのLuaバインディングでもMapReduceをサポートした。また、Kyoto Tycoonとそのスクリプト言語拡張でもMapReduceをサポートした。今回はその性能について解説する。 ローカルMapReduceのツボ 世に言うMapReduceは分散処理のフレームワークだけれども、KC/KTの「ローカルMapReduce」は分散処理を行わない。分散処理をしなかったらデータ処理能力が上がらないじゃないかと思うかもしれないけれども、そうとも限らないのだ。前回も書いたけども、MapReduceフレームワーク部分をうまく実装すると、時間効率と空間効率の双方を向上させることができる。特にキャッシュとソートの部分に工夫がある。 MapReduceは、リポジトリ内(KCではデータベースファイル内)の各レコードからキーと値

  • 開発メモ: MapReduce on Kyoto Cabinet

    Googleで実用化されHadoopで流行しているところの分散処理フレームワークMapReduceをKyoto Cabinetにおいても実現してみた。その解説。 ローカルなMapReduce MapReduceは多数のマシンが連携して分散処理を行うためのフレームワークなので、プロセス組み込みDBMであって分散など全く関係ない世界に生きているKCでMapReduceを実行して意味があるのだろうか。答えは、「あんまりない」である。それにもかかわらず実装したのは、何となく話題性がありそうだからってのが最大の理由なのだが、もうひとつ理由がある。 スクリプト言語で集計処理をやろうとすると、めっちゃメモリうしCPUパワーを使うわりに遅いからである。1000万件のソートってだけでスクリプト言語だと結構辛いからね。そこで、MapReduceフレームワークをC++で実装してmapとreduceだけをスクリ

  • blog.8-p.info: Percolator の勉強 - 1. はじめに

    Posted at 2010/09/27 23:07, Modified at 2010/09/28 02:17 9月もおわり。10月といえば OSDI '10 で Percolator のはなしがあるので、いまのうちに予習をはじめることにした。 Caffeine 今年の6月、Google は Caffeine という新しいインデクシングシステムの完成をアナウンスした。Google Official Blog いわく Web はサイズだけじゃなく、内容も豊かに、複雑になっている: 動画、画像、ニュース、リアルタイムな更新情報など。 ユーザーの要求するレベルも高くなっている: 検索する側は適合度が高く新しい情報をみたいし、される側も更新がすぐ反映してほしい。 いままでの Google のインデックスは更新頻度ごとに複数の階層にわかれていて、ページをクロールしても、それが検索結果に反映されるま

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • MapReduce on Tyrant - mixi engineer blog

    先日、隅田川の屋形船で花見と洒落込んだのですが、その日はまだ一分咲きも行ってなくて悲しい思いをしたmikioです。今回はTokyo Tyrant(TT)に格納したデータを対象としてMapReduceのモデルに基づく計算をする方法について述べます。 MapReduceとは Googleが使っているという分散処理の計算モデルおよびその実装のことだそうですが、詳しいことはググってください。Googleによる出自の論文やApacheプロジェクトによるHadoopなどのオープンソース実装にあたるのもよいでしょう(私は両者とも詳しく見ていませんが)。 今回の趣旨は、CouchDBMapReduceと称してJavaScriptで実現しているデータ集計方法をTTとTCとLuaでやってみようじゃないかということです。簡単に言えば、以下の処理を実装します。 ユーザから計算開始が指示されると、TTは、DB内の

    MapReduce on Tyrant - mixi engineer blog
  • MapReduce::Liteで手軽に分散処理 - はこべにっき ♨

    Googleを支える技術 ?巨大システムの内側の世界 (WEB+DB PRESSプラスシリーズ)」を読み終えたので,id:naoyaさんの作ったMapReduce::LiteでMapReduceを試してみた.以下は,MapReduce::Liteを使ってみたメモなど.あくまでもメモなので,くわしくMapReduceの勉強をしたいひとは,id:naoyaさんの記事(MapReduce - naoyaのはてなダイアリー)がおすすめです. MapReduceは,MapとReduceの二つを組み合わせて実現できる処理を,分散処理化するGoogle技術.すばらしい抽象化ですね. id:naoyaさんの作ったMpaReduce::Liteは,MapReduceの仕組みをPerl上で実現したモジュール.ただ,MapReduce::Liteでは,処理をマシンごとに割り当てて分散しているわけではなく,ス

    MapReduce::Liteで手軽に分散処理 - はこべにっき ♨
  • 1