タグ

MapReduceに関するgungleのブックマーク (13)

  • 分散システム処理モデルに関する動向について(MapReduceからBorgまで)

    詳細については後述しますが、MapReduceの処理モデルは、上記の通り各区分ごとにそれぞれ単純化(限定)されたモデルであったと言えます。 また、MapReduceの関数プログラミングおよびグラフ的な特徴も合わせて以下に整理してみます。 関数プログラミング的な特徴 MapおよびReduceフェーズは、それぞれ関数型プログラミングのMapおよびReduce処理をモデル化したものです。MapReduceは、参照透過性がある純粋な関数処理と言えます。参照透過性とは入力により出力が一意に決まる性質のことです。言い換えればMapReduceの処理は、大域などの処理に影響する外部の環境は持たず、内部的にも静的な一時変数などの状態も持たないことを意味します。 純粋な関数処理は複数の処理が同時に実行されても他の並列に動作している処理の状態には左右されないため、この参照透過性は並列化に向いている性質がありま

    分散システム処理モデルに関する動向について(MapReduceからBorgまで)
  • PHP と MySQL でカジュアルに MapReduce する

    PHPMySQL で 1 カチャカチャカチャ...ッターン! MapReduce (@ニコニコ超会議)Yuya Takeyama

    PHP と MySQL でカジュアルに MapReduce する
  • グーグル、フル機能のMapReduceをGoogle App Engineで提供へ

    グーグルは同社のクラウドサービスであるGoogle App Engineで、フル機能のMapReduce機能を提供することが同社のイベントGoogle I/O 2011で明らかにしました。 これまでGoogle App EngineではMapReduceを構成する「Map」「Shuffle」「Ruduce」の3つのうち、Mapperの機能の提供が行われてきました。 Google I/O 2011で行われたセッション「App Engine MapReduce」では、MapReduceを構成するすべての機能の提供が行われることが発表されています。 セッションのポイントを紹介しましょう。 App Engine MapReduce App EngineエンジニアリングチームのMike Aizatsky氏。 MapReduceは数年前にグーグルが開発した処理。社内ではほとんどあらゆるチームがこの処理

    グーグル、フル機能のMapReduceをGoogle App Engineで提供へ
  • RubyでMapReduceのフレームワークを作ってみた - egghour dialy

    MapReduceシリーズの第5弾。第4弾まではこちら → Scala / Erlang / Go / F# The Omnibus Concurrency Libraryというのを使ってみた。Scalaのアクターと同じ感じ。 require 'concurrent/actors' include Concurrent::Actors KeyValue = Case.new :key, :value Exit = Case.new :reply_to Complete = Case.new :actor, :result def log *args puts *args end class MapReduce # 繰り返し処理をするアクターを作る def loop_receive acc0 = nil, &block Actor.spawn do acc = acc0 loop do Ac

    RubyでMapReduceのフレームワークを作ってみた - egghour dialy
  • リアルタイムなHadoop? 「Real-Time MapReduce」を実現するS4、オープンソースとしてYahoo!が公開 - Publickey

    Yahoo!は、大規模データの分散処理を実現するMapReduceをリアルタイムに行うソフトウェア「S4」を、オープンソースとして公開しました。 MapReduceを実行するソフトウェアとして、オープンソースの「Hadoop」がありますが、Hadoopはあらかじめジョブを定義して投入するバッチ処理を前提としていました。 S4は、データをキーとバリューのペアで構成されるストリームデータとして非同期に受け取ることができ、処理結果もキーバリューのペアで構成されたストリームデータとして出力するようになっているとのこと。 この非同期なストリームデータによる入出力が、リアルタイムなMapReduceを実現するフレームワークとしてのS4の特徴といえます。 リアルタイムなMapReduceで何ができる? リアルタイムなMapReduceにはどのような用途が考えられるのでしょうか? S4の公開を表明したY

    リアルタイムなHadoop? 「Real-Time MapReduce」を実現するS4、オープンソースとしてYahoo!が公開 - Publickey
  • グーグルが構築した大規模システムの現実、そしてデザインパターン(1)~MapReduce編

    グーグルが「Evolution and Future Directions of Large-Scale Storage and Computation Systems at Google」(グーグルにおける、大規模ストレージとコンピュテーションの進化と将来の方向性)という講演を、6月に行われたACM(米国計算機学会)主催のクラウドコンピューティングのシンポジウム「ACM Symposium on Cloud Computing 2010」で行っています。 グーグルはどのようにして大規模分散システムを構築してきたのか、そして、そこからどのようなことを学んだのかが語られていますし、後半では大規模分散システムのデザインパターンという、非常に興味深いノウハウも公開している、非常に情報量の多い講演です。 その講演の内容を、全部で4つの記事、MapReduce編、BigTable編、教訓編、デザイン

    グーグルが構築した大規模システムの現実、そしてデザインパターン(1)~MapReduce編
    gungle
    gungle 2010/08/24
    続きが読みたい:
  • マイクロソフトのHadoop対抗技術「Dryad」、いよいよ始動か?

    大規模分散処理のフレームワークとしてグーグルが開発したMapReduce処理や、そのオープンソース実装であるHadoopが急成長し、ビジネスの分野での商業利用が立ち上がり始めていることは、Publickeyでも何度か記事で紹介してきました。 Hadoopを表計算のように使える「InfoSphere BigInsights」、IBMが発表 グーグルによるMapReduceサービス「BigQuery」が登場。SQLライクな命令で大規模データ操作 Hadoopは企業のための新たな情報分析プラットフォームとなる、とCloudera グーグルがBigQueryの開始を発表し、IBMも大規模処理のエンジンとしてHadoopを採用、AmazonクラウドでもHadoop処理を行う「Amazon Elastic MapReduce」サービスを提供していることから分かるように、Hadoopはクラウドでの大規模

    マイクロソフトのHadoop対抗技術「Dryad」、いよいよ始動か?
  • ヤフーを変え始めたHadoop

    ヤフーが日独自の検索関連サービスの開発で、オープンソースの分散処理ソフトである「Hadoop」の活用を進めている。Hadoopを使うことで、従来は6時間以上かかった処理がわずか5分半で済むようになった例もある。2009年秋には組織を整備し、適用範囲を全社に広げている。 Hadoopは、米グーグルが開発した分散処理ソフト「Google File System(GFS)」と「MapReduce」を模したオープンソースソフトである(図)。GFSとMapReduceは、グーグルのクラウドを支える基盤技術。Hadoopを使うと、複数台の安価なPCサーバーを連携させ、数十テラ~数ペタバイトに及ぶデ ータを高速に処理できる。 Hadoopを日国内で最も積極的に利用している企業はヤフーだ。2008年ごろから部署単位でHadoopの導入を進め、Hadoopを使う事例が10件を超えるようになった(表)。

    ヤフーを変え始めたHadoop
  • Google App Engineを使ったMapReduce·Appengine Mapreduce MOONGIFT

    Appengine MapreduceはGoogle App Engine用Python製のオープンソース・ソフトウェア。Googleの基礎技術の一つであるMapReduce。膨大な文字列やデータを細かく細分化し、無数のコンピュータ上で並列処理させることで高速なシステムを実現する仕組みだ。 実行画面 MapReduceはAmazon Webサービスにも真似されており(Amazon Elastic MapReduce)、有益さが分かっている。だが、どう使えば良いかが今ひとつ実感できないかも知れない。そこでMapReduceを手軽に試せるシステムとして開発されたのがAppengine Mapreduceだ。 Appengine MapreduceはGooglerが開発したソフトウェアで、Google App Engine上で動作する。テキストなどを分散化処理することができる。管理画面から処理を

    Google App Engineを使ったMapReduce·Appengine Mapreduce MOONGIFT
    gungle
    gungle 2010/06/01
    MapReduceを体感できる。:
  • グーグルがHadoopにMapReduce特許の利用を許可

    大規模分散処理の技術として知られるMapReduceは、グーグルが検索エンジンの基盤技術として開発したもの。そして同社はMapReduceの特許を1月に取得していました。 グーグルMapReduce特許を取得。Hadoopへの影響は? - Publickey グーグルが特許を保有していることでMapReduceのオープンソース実装であるHadoopに対する影響が心配されていましたが、Apache Foundationの弁護士がグーグルの弁護団から特許の利用許可を得たことを明らかにしました。 予想通りの展開に 4月23日付けでYahoo!のHadoopチームアーキテクトOwen O’Malley氏がメーリングリストに投稿した「Re: License for Google's patent」というメッセージ。この中でApache Foundationの弁護士が、グーグルからの特許利用許可を伝

    グーグルがHadoopにMapReduce特許の利用を許可
  • Hadoopを使いこなす(1)

    まず、 1 の入力ファイルを分割する方法は、InputFormatクラスの、getSplits関数を上書きすることで、カスタマイズできます。 また、 3 のInputSplitから、KeyとValueを抽出する処理も、InputFormatクラスを通じてカスタマイズできます。 InputFormatのgetRecordReader関数を通じて、RecordReaderクラスを生成するのですが、これに任意のRecordReaderクラスを指定すればOKです。 2 のMap処理ですが、ユーザが指定したMapperクラスの処理を実行します。 Mapperクラスは、MapRunnerクラスを通じて、初期化処理、map関数を繰り返す過程、終了処理といった一連の流れを実行します。 MapRunnerクラスをカスタマイズすれば、こうした流れを制御することができます。 0.20.0からの新しいMapRed

    Hadoopを使いこなす(1)
  • クックパッドとHadoop - クックパッド開発者ブログ

    はじめまして。今年の5月に入社した勝間@さがすチームです。 入社してからは、なかなか大変なことも多いですが、最近はお酒好きが集まって月曜から飲み合う 「勝間会」なるものも発足して、仕事面でも仕事以外の面でも密度の高い毎日を過ごしています! さて、僕は「さがす」チーム所属ということで、普段はレシピを「さがす」ユーザの満足度を上げるために、 クックパッドの検索まわりについて、いろいろな開発を行っています。 一方で、ユーザの「さがす欲求」について深く知るために、大規模なデータ解析を行い、欲求の分析を行う機会も増えてきました。 ところが、クックパッドのログは膨大な数があるので、一口のデータ解析と言っても通常のバッチ処理だと間に合わないため、 分散処理環境の必要性が高まってきました。 そこで、まずは手軽に試せる分散処理の王道ということで、最近ではHadoopを使ったデータ解析環境を整備しています。

    クックパッドとHadoop - クックパッド開発者ブログ
    gungle
    gungle 2009/09/17
    最近、クラウド(分散処理環境)が流行りだよね~。地方で、クラウドを組むことなんてあるのかなぁ。必要性も含めて。
  • 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
    gungle
    gungle 2009/04/07
    MapReduceのことについて。
  • 1