17
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Aerospikeの紹介

Last updated at Posted at 2016-05-30

こんにちは、株式会社D2C 技術開発部の二瓶(にへい)です。

d-tech の中から今回お届けするのは、NoSQLについてです。
NoSQLの中でも特に最近話題の「Aerospike」についてお送りしていきます。

Aerospikeの紹介

まずは入門編として下記について説明します。

  1. NoSQLとは?
  2. Aerospikeとは?

1.NoSQLとは?

ズバリ!RDBMS以外のデータベースのことです!

データベースといえばOracleやMySQLなどのRDBMS(リレーショナルデータベース管理システム)がありますが、これ以外のデータベースが Not only SQL (NoSQL) と呼ばれています。

違いはリレーショナルモデル(関係モデル)を採用しているかどうかです。

RDBMSではデータを表(テーブル)で保持してデータ同士の関係性を定義することで厳格なデータモデルを表現できます。
カラムという単位で項目が分かれていて、SQL文を使用して複雑で高度な問い合わせを行うことができます。

NoSQLは関係モデルの複雑で高度な問い合わせを捨てている代わりに、高速です。
MySQLなどに対してTPS(速さの指標単位)の公称値が桁が2つ3つ違うものもあったりします。

世間(!?)一般的なメリデリはこちら。
59fb0b93-64ab-8aef-c9a8-b4835f05a8b9.png

2.Aerospikeとは?

今回の主題であるAerospikeについてですが、まずは概要と特徴についてお伝えします。

◯概要

アメリカのAerospike社が開発したNoSQLの一種で、C言語で書かれていて以前は商用のみでしたが、2014年6月にオープンソース化されました。
aerospikeはロケットの先端部分のことを意味しているそうです。
特にアドテク界隈では最近よく採用されています。

◯特徴

・スピード
速いです。
1MTPSを公称していますが、今後のロードマップでは3MTPSを目指すとされています。

・SSDモード
Aerospikeには3つ動作モードがあります。
①インメモリモード
②メモリ+SSDモード
③インメモリ+HDDモード

なかでも特徴的なのがSSDモードです。
SSDをファイルシステムを介さずにRAWデバイスとして使うことで、OSによるIOバッファ管理のオーバーヘッドが低減されるらしいです。
他にも自動デフラグとかSSDの寿命を延ばす工夫がされているそうです。

インメモリのNoSQLはいろいろありますが、性能を担保するためにはデータが全てメモリに乗っている必要があるため、どうしてもデータが大きくなってくると、相当ハイスペックなサーバを用意しなければいけませんが、SSDならスケールアウトも比較的安価にできますね。

・クラスタ化
Aerospikeにはクラスタ化の機能があります。
設定が自動化されていて、クラスタへのサーバ追加が自動で簡単に行えたりします。
詳細はまた別の機会で説明できればと思います。

次回は、システム構成やデータ型についてお伝えする予定です。

17
14
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
17
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?