読者です 読者をやめる 読者になる 読者になる

Riak が使用しているライブラリについて

Riak がそろそろ 1.0.0 が出そうなので、本格的に触ってみることにしました。

何が出来るかと言うよりはある程度仕組みをしっておきたいなと思いどんなライブラリを使ってるのか調べてみました。

とりあえずさっと眺めただけなので間違ってる可能性大です、突っ込みを是非

riak

パッケージング用なので rebar.config と rel/ フォルダがあるだけ
riak_search のテストが入ってる

basho_metrics

パフォーマンス測定用ライブラリ

basho_stats

統計ライブラリ

bitcask

Erlang のデフォルトエンジン eleveldb とどちらを使うか考える必要あり
一番多く bitcask が使われている模様

http://downloads.basho.com/papers/bitcask-intro.pdf

cluster_info

Erlang ノードクラスターの情報を提供してくれるライブラリ

Hibari からのフォーク

https://github.com/basho/cluster_info

ebloom

NIF で書かれたブルームフィルター

edown

マークダウンの Erlang 実装

eleveldb

NIF で書かれた LevelDB の Erlang ラッパー

The Basho Blog: Leveling the Field http://blog.basho.com/2011/07/01/Leveling-the-Field/

eper

Erlang のパフォーマンスやデバッグツール

erlang_js

Spidermonkey とのリンクドインドライバー

lager

Erlang/OTP 用のロギングフレームワーク parse_transform !!

luke

MapReduce のようなフロー指向?(flow-oriented)の並列計算ライブラリで、Riak の MapReduce エンジンのベース

luwak

Riak 用の大きいオブジェクトを格納するためのライブラリ

merge_index

ディスク上のソート済みの set データのライブラリ

mochiweb

HTTP ライブラリ

poolboy

Erlang ワーカープールライブラリ

protobuffs

Google の Protocol Buffers の Erlang ライブラリ

https://github.com/basho/erlang_protobuffs

riak_core

分散システム用の下回りライブラリ

riak_kv

Riak の Key/Value データストア、MapReduce や Link と REST/PB などの API を提供するライブラリ

https://github.com/basho/riak_kv

riak_pipe

MapReduce 2.0

https://github.com/basho/riak_pipe

riak_search

Riak 用の全部検索エンジン

riak_sysmon

OTP アプリケーションでつかう Erlang VM 用のシステムモニタ

sysmon のラッパー?

https://github.com/basho/riak_sysmon

riakc

Riak のプロトコルバッファベースの Erlang クライアント

https://github.com/basho/riak-erlang-client

sext

ソート可能な Erlang のシリアライゼーションライブラリ

https://github.com/uwiger/sext

skerl

NIF で書かれたSkein というハッシュアルゴリズム実装

http://yebo-blog.blogspot.com/2008/11/skein.html

webmachine

REST ベースのウェブアプリケーションフレームワーク