タグ

2008年5月15日のブックマーク (5件)

  • Hadoop、hBaseで構築する大規模分散データ処理システム:CodeZine

    はじめに この連載では、大規模分散計算フレームワーク「Hadoop」と、その上につくられた大規模分散データベース「hBase」の仕組みと簡単なサンプルアプリケーションを紹介します。HadoopとhBaseは、Googleの基盤ソフトウェアのオープンソースクローンです。機能やコンセプトについては、Googleが発表している学術論文に依っています。 これらの学術論文によると、Googleでは大規模分散ファイルシステム「Google File System」、大規模分散計算フレームワーク「MapReduce」、大規模分散データベース「BigTable」、分散ロックサービス「Chubby」という4つのインフラソフトウェアが使われています。 図1にGoogleの基盤技術間の依存関係、そしてそれに対応するOSSの対応関係を示しました。まずは対応するGoogleの基盤技術それぞれの機能や特徴をざっくりと

    kei-os2007
    kei-os2007 2008/05/15
    "[Hadoop][google][mapreduce]"
  • yacc - IT戦記

    ほげほげ ちょっとメモしますよ 定義 %% add: mul | add '+' mul | add '-' mul ; mul: una | mul '*' una | mul '/' una ; una: pri | '+' una | '-' una ; pri: '1' | '(' add ')' ; ルール ルールには $accept: add $end が追加される。(%start がないから、最初の非終端が $accept と $end で挟まれる。) $accept: add $end add: mul add: add '+' mul add: add '-' mul mul: una add: mul '*' una add: mul '/' una una: pri una: '+' una una: '-' una pri: '1' pri: '(' add ')'

    yacc - IT戦記
    kei-os2007
    kei-os2007 2008/05/15
    "[yacc]"
  • ちょっと yacc っぽいもの作ってみる - IT戦記

    残り時間 1.5 時間 たぶん出来ない。 定義 終端は、 /^/ で囲んで、 非終端は文字列で表現する。 var y = { add: [ ['mul'], ['add', /^\+/, 'mul'], ['add', /^-/, 'mul'] ], mul: [ ['una'], ['mul', /^\*/, 'una'], ['mul', /\//, 'una'] ], una:[ ['pri'], [/^\+/, 'una'], [/^-/, 'una'] ], pri: [/^1/], [/^\(/, 'add', /^\)/] ] }; これから、状態遷移図を作る あー。ハッシュだとどれがstart かわからんな>< やっぱり $accept は手動で入れることにする。 $end は /^$/ で表現する。 var y = { $accept: [ ['add', /^$/] ]

    ちょっと yacc っぽいもの作ってみる - IT戦記
    kei-os2007
    kei-os2007 2008/05/15
    "[yacc]"
  • 空のルールがあるとき、どうしよう - IT戦記

    こんなやつがあったら maybe_space: /* Empty */ | maybe_space WHITESPACE ; どうしようどうしよう。 考えながら書く 使うときは hoge: maybe_space fuga | piyo ; fuga: '1'; piyo: '0'; みたいな感じ たとえば パーサの状態が以下のような感じだったら . maybe_space fuga . piyoWHITESPACE トークンが来たら maybe_space . fugaこうなる '0' トークンが来たら '0' .こうなる 他のが来てたら、そのトークンに行く前に maybe_space をリデュースすればいいのか。 ってことは、 先読みが必要だな。 次が空のルールの可能性がある場合は先読みが必要 ほんとかなあ。おい 違うっぽいなあ そもそもいままでのやり方だったら maybe_space

    空のルールがあるとき、どうしよう - IT戦記
    kei-os2007
    kei-os2007 2008/05/15
    "[yacc]"
  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

    kei-os2007
    kei-os2007 2008/05/15
    "[perl][moose]"