タグ

NoSQLとkvsに関するWatsonのブックマーク (15)

  • グーグルがNoSQL軽量ライブラリ「LevelDB」をオープンソース化。SQLiteとの比較ベンチマークも公開

    グーグルがNoSQL軽量ライブラリ「LevelDB」をオープンソース化。SQLiteとの比較ベンチマークも公開 キーバリュー型データストアは、いわゆるNoSQLデータベースの代表的な種類の1つ。LevelDBは以下のような特徴を備えています。 基的な操作は、Put(key,value), Get(key), Delete(key) 1つのトランザクションとして複数の変更操作が可能 データは自動的に圧縮し保存される SQLite、Kyoto TreeDBとの比較ベンチマークも LevelDBC++で書かれたライブラリで、今後のChromeブラウザのIndexedDBはLevelDBで実装されると説明されています。 Upcoming versions of the Chrome browser include an implementation of the IndexedDB HTML5

    グーグルがNoSQL軽量ライブラリ「LevelDB」をオープンソース化。SQLiteとの比較ベンチマークも公開
  • グーグル、NoSQL軽量ライブラリ「LevelDB」を公開。ChromeブラウザのIndexedDBとして採用

    LevelDBSQLをサポートせず、クライアント/サーバ型でもなく、シングルプロセスからアクセスされることを想定したいわゆるNoSQLの高速なキーバリュー型データストアを実現するためのライトウェイトなライブラリだと説明されています。 ChromeブラウザでHTML5の仕様として策定中のIndexedDBを実装するものとして開発されたようです(ドキュメントに明記されていないのですが)。 LevelDBを開発した理由 LevelDBのWebサイトによると、LevelDBは以下の主な機能を備えています。 基的な操作は、Put(key,value), Get(key), Delete(key) 1つのトランザクションとして複数の変更操作が可能 データは自動的に圧縮し保存される Hacker Newsの記事によると、当初はLevelDBを開発する代わりに平林幹雄氏が開発したTokyo Cabin

    グーグル、NoSQL軽量ライブラリ「LevelDB」を公開。ChromeブラウザのIndexedDBとして採用
  • 高速key-valueストア「Redis 2.0」リリース | gihyo.jp

    2010年9月3日、key-valueストア「Redis」のバージョン2.0系となる2.0.0がリリースされました。Redisは昨今流行りのNoSQLデータベースに分類されるもので、memcachedなどと同様にキーとそれに対する値をメモリ上に保持しますが、値は文字列だけでなくListやSetなどのデータ型もサポートしていたり、終了させてもデータが消えないよう、非同期でディスク書き出しが行えるなど永続性を持っていることが特徴です。今回のバージョンアップにより主に変更された点は以下のとおりです。 複数のコマンドをアトミックに実行できる「MULTI/EXEC」 複数キーから値を取得する「BLPOP/BRPOP」コマンドの追加 非同期メッセージング(PUBLISH/SUBSCRIBE)の導入 1つのキー上に複数のkey/valueを持てるハッシュデータ型の追加 実メモリ以上のデータを扱える仮想メ

    高速key-valueストア「Redis 2.0」リリース | gihyo.jp
  • キーバリュー型データベースの概要とその例

    まず、日々の天気を記録するようなプログラムを作ることを考えてみてください。この場合、表1のような2列の表を作って、片方の列に日付、もう片方の列に天気を保存する、といったことを行うことが考えられます。 この例のように、プログラムを作る中で、以下のような処理を行うことは、よくあることです。 2つの情報からなる組を扱う 2つの情報のうちの1つが、個々の組を識別するための情報になっている(表1の例だと日付) もう片方の情報が、主に必要な情報になっている(表1の例だと天気) このような「2つの情報の組」のうち、個々の組を識別する情報を「キー」(Key)と呼び、もう片方の情報を「バリュー」(Value、値)と呼びます。キーバリュー型データベースは、このような「キー」と「バリュー」の組を保存するためのデータベースです。 多くのプログラム言語では、キーとバリューからなるデータ構造を扱う機能を持っています(

  • NoSQLデータベース、Key-valueストアの「Redis 2.0」がリリース | OSDN Magazine

    Key-valueストア型データベース「Redis」の開発チームは9月3日、最新版「Redis 2.0」を公開した。MULTI/EXECコマンドの追加や仮想メモリ対応などが特徴となる。ライセンスはBSD License。 RedisはANSI Cで書かれたKey-valueストア型データベース。memcachedと似ているが、データをストレージに永続的に格納でき、格納するデータの形としてテキストだけでなくリストやセット、順序付きセットなども利用できる点が特徴。ANSI Cで実装されており、POSIX互換であるLinuxや各種BSD、Mac OS XやSolarisなどのシステムで動作する。公式にはサポートしていないものの、Windows環境でもCygwinを利用することでコンパイルおよび実行が可能だそうだ。 また、単なるKey-Valueストアとは異なり、すべてのデータ型に対し要素の挿入や

    NoSQLデータベース、Key-valueストアの「Redis 2.0」がリリース | OSDN Magazine
  • 分散 Key-Value ストア mio-0.0.1alpha をリリースしました - higepon blog

    分散 Key-Value ストア mio-0.0.1alpha をリリースしました。(mio-0.0.1-alpha.tar.gz) Mio とは何か? 範囲検索(range query) が出来る KVS です。例えば「key が "1000"〜"2000" にあるものを昇順に10件取り出す」という検索が可能です。 Mio は memcached 互換プロトコルを実装しているので、多くのプログラミング言語から簡単にアクセスする事が可能です。(後述のコード例参照) Mio のアーキテクチャ Mio は Skip Graphs(スキップグラフ)というアルゴリズムに基づいて実装されています。詳細はErlang 分散システム勉強会での発表資料 Mio - a distributed Skip Graph based orderd KVSをご参照ください。 インストール 最新の Erlang をイ

    分散 Key-Value ストア mio-0.0.1alpha をリリースしました - higepon blog
  • さくらインターネット、NoSQLデータベースのテストサービスを開始

    サーバホスティング大手のさくらインターネットは、NoSQLデータベースの一種であるキーバリュー型データストア(KVS)を試験的に同社のサーバ上で提供する「KVSアルファテストサービス」を行うと、さくらインターネット研究所のブログで明らかにしました。 キーバリュー型データストアは、リレーショナルデータベースよりも単純な形式でデータを格納し、データ操作もシンプルなため、スケーラビリティや高速なアクセスを実現しやすく、クラウドの特徴を活かせるデータベースとして最近注目されています。 今回のアルファテストサービスでは、memcachedプロトコルを用いてさくらインターネット研究所が提供するキーバリュー型データストアを運用しているクラウドへアクセスし、利用する形態をとるようです。 KVSの中身はグリーが開発したFlare キーバリュー型データストアにはApache FoundationのCassan

    さくらインターネット、NoSQLデータベースのテストサービスを開始
  • 第4回 スキーマレスで柔軟に扱えるMongoDB | gihyo.jp

    はじめに 今回はドキュメント指向型データベースの代表としてMongoDBを取り上げます。ドキュメント指向型データベースはRDBMSと違って、スキーマ(テーブル定義)が必要ないことが大きな特徴です。 今回も利用したコードやプログラムはgithubに置いてあるので適宜参照してください。 MongoDBの特徴 前々回、前回と紹介したmemcachedやTokyoTyrantは基的にRDBMSと組み合わせて、「⁠RDBMSの弱い部分を補う」という使い方でした。しかしMongoDBは少し違っていて、JOINが行えないこととトランザクションをサポートしていないこと以外は、ほぼRDBMSと同じように扱うことができるため、「⁠RDBMSの代替として使う」ことが可能です。 上述したようにMongoDBRDBMSと違ってJOINはできませんが、代わりに基準となるオブジェクトに別のオブジェクトをあらかじめe

    第4回 スキーマレスで柔軟に扱えるMongoDB | gihyo.jp
  • Cassandraデータモデル入門 - Arin Sarkissian - Digital Romanticism

    この記事は、Arin Sarkissian氏のブログ記事「http://arin.me/blog/wtf-is-a-supercolumn-cassandra-data-model」を氏の許可を得て翻訳したものです。(原文公開日:2009年9月1日) ここ1、2ヶ月というもの、DiggのエンジニアリングチームはCassandraについて調べ、遊び、最終的にはプロダクションにデプロイするためにかなりの時間を費やしてきました。これは実に楽しいプロジェクトでしたが、楽しくなる前にCassandraのデータモデルについて理解するために相当の時間を費やしたのです。「'super column'って何だよ」というフレーズが何度も口にされました。 もしあなたのバックグラウンドがRDBMSならば(ほとんどみんながそうでしょうが)、Cassandraのデータモデルについて学ぶ際に、いくつかのネーミング規約で

  • 第3回 様々なデータ型を扱えるTokyoTyrant | gihyo.jp

    どんなところに使える? もっとも簡単な利用方法は、前回紹介したmemcachedの代替として利用するというものです。memcached互換プロトコルが実装されているため、memcachedを利用している場合ポート番号を変えるだけでTokyoTyrantに差し替えることが可能です。これだけで簡単にデータの永続性が得られます。 また、テーブルデータベースを利用すれば一つのkeyに対して複数のvalueを持たせることが可能であり、keyだけでなく任意のvalueを条件としてデータの検索を行うこともできます。JOINやGROUP BYといった処理は行えませんが、それ以外のほとんどの検索条件を扱えます。レスポンスはRDBMSに比べて高速なので、アクセス数が多いテーブルをTokyoTyrantのテーブルデータベースに載せ換える、といった利用方法も効果的かもしれません。 具体的な利用シーン memcac

    第3回 様々なデータ型を扱えるTokyoTyrant | gihyo.jp
  • 第2回 RDBMSと組み合わせて使えるmemcached | gihyo.jp

    はじめに 今回からタイプ毎に代表的なNoSQLデータベースを扱っていきます。まず今回は、揮発性key-valueストアの代表としてmemcachedを取り上げます。 なお、利用したコードやプログラムはgithubに置いてあります。適宜参照してください。 どんなところに使える? memcachedの特徴は、何といってもデータの揮発性(memcachedサーバを停止すると全データが消えてしまうこと)です[1]⁠。そのため、データが消えても影響が小さいところに利用シーンは限られてきます。一方、連想配列(ハッシュ)のように使えて扱いやすいこと、様々なサイトでの事例があること、などから導入はしやすいです。 具体的な利用シーン memcachedの具体的な利用シーンとしては、以下の事柄が考えられます。 RDBMSから取得したデータのキャッシュ 消えても大きな影響の無いデータの保存 一般的には(1)のよ

    第2回 RDBMSと組み合わせて使えるmemcached | gihyo.jp
  • 第1回 RDBMSとNoSQLデータベース | gihyo.jp

    はじめに NoSQL(Not Only SQL)という言葉が注目を集めています。これは「RDBMSが得意なことはRDBMSで、不得意なところにはRDBMSにこだわらず、用途に合ったデータストアを使いましょう』という考え方です。最近では、いわゆるNoSQLデータベース (⁠key-valueストアや各種データベース⁠)⁠ が次々と登場してきています。 そこで今回から数回に渡り、それぞれのNoSQLデータベースの特徴や具体的な使い方について紹介していきます。 RDBMSの強みとは そもそも、MySQLやPostgreSQLなどのRDBMSの弱みを補うため、様々なNoSQLデータベースが登場してきたわけですが、RDBMSにはたくさんの強みがあることも忘れてはいけません。 RDBMSの強み データの一貫性 (⁠トランザクション) 更新時のコストが少ない(JOINが前提でテーブルが正規化されている)

    第1回 RDBMSとNoSQLデータベース | gihyo.jp
  • 第1回 NoSQL、そしてCassandraとは | gihyo.jp

    NoSQLミドルウェアの特徴をもう少し細かく挙げてみます。分量の都合もあり個別には触れませんが、それぞれのNoSQLミドルウェアで差別化部分に関してはかなり詳細に説明がされていますので、ぜひそちらを参照してみてください。 高速に動作する リレーションモデルではないデータモデル スケールアウト型アーキテクチャ コモディティサーバによって構築される スキーマフリー SPOF(単一故障点)を持たない 自動的に複数台へレプリケーションする イベンチュアルコンシステンシまたは一貫性の選択が可能 SQLのような強力なクエリ言語を持たず、シンプルな問い合わせしかできない Cassandraとは何か NoSQLミドルウェアの筆頭といえばGoogle BigTableやAmazon Dynamoですが、オープンソースの世界でもいろいろなものが出てきています。その中でも最近特に注目を集めているのが、Apach

    第1回 NoSQL、そしてCassandraとは | gihyo.jp
  • KeyValue Stores

    Technical overview of three of the most representative KeyValue Stores: Cassandra, Redis and CouchDB. Focused on Ruby and Ruby on Rails developement, this talk shows how to solve common problems, the most popular libraries, benchmarking and the best use case for each one of them. This talk was part of the Conferencia Rails 2009, Madrid, Spain. http://app.conferenciarails.org/talks/43-key-value-sto

    KeyValue Stores
  • Not Only NoSQL!! 驚異的なまでにWRITE性能をスケールさせるSPIDERストレージエンジン

    Webサービスでは、世界中からのトラフィックを捌く必要があるため、いくらチューニングしようとも一台のRDBMSでは捌ききることが出来ないのが常だ。MySQLは最初からマスター・スレーブ型のレプリケーション機能が搭載されており、スレーブをたくさんぶら下げることによって参照の負荷をスレーブに割り振るというスケールアウトによってその問題に対処してきた。スレーブによるスケールアウトは、参照(=PV)が多いWebサイトと非常に相性が良く、幾多のWebサイトにおいて実績を作ってきているし、まだまだ利用されている。 しかしながら、サイトのトラフィックが劇的に増加してくるようになると、レプリケーションによる負荷分散では追いつかなくなってきた。そこで人々がとった選択肢は、memcachedを利用することである。memcachedはインメモリ型の高速なKVSであり、参照・更新性能はMySQLより格段に高い。M

    Not Only NoSQL!! 驚異的なまでにWRITE性能をスケールさせるSPIDERストレージエンジン
  • 1