2012-02-21 10 views
0

私は、インメモリデータベースの概念証明に取り組んでいます。私はredisのようなものについては知っていて、交差するセットのようなものは好きですが、それだけでは不十分です。私はparstreamデータベースやdrawntoscaleソリューションのようなサービスを実装する方法を知りたい。 そして、私は記憶に物を残すデーモンを持っているのが好きです。 pyroでプロトタイプを作成しました。これは、ランダムなビットマップインデックスを生成し、pyroクライアントからの入力としてビットマップマスクを受け取り、ビットマップマスクに一致するすべての主キーを返します。 しかし、インデックスを反復することは、それがPythonであることから明白ないくつかの大きさでは遅すぎます。インデックススキャンを行うC拡張を使用したいと思います。したがって、ビットマップインデックスは、cエクステンション内のメモリに保持されます。 非常に次のステップは、gpu ramの同じデータを自分のgpu内で繰り返し処理することです。python c extension/openclデーモン

私はCエクステンション内にデータを保持し、ビットマップインデックス全体をコピーせずにクエリを受け取ったり返したりするためにPython(pyro daeomonまたは多分フラスコ/トルネード)を使用できますか?いつも?よろしく クリスチャン

+0

興味深いですね。あなたはそれについてのブログを持っていますか? – smartmeta

答えて

0

はい

は、Cの拡張は、割り当てられた内部構造を持っていますが、必要なときに適切にあなたのデータを破壊することを確認することができます。 C/C++ DLLとしてコードを記述し、ctypes python拡張を使用してC関数に直接アクセスし、C変数(ints、char *など)を渡すこともできます。

関連する問題