狠狠撸

狠狠撸Share a Scribd company logo
Couchbase server
入門
1時間で話したい内容を10分にまとめました
蚕耻别蝉迟颈辞苍?
Couchbaseが使われている
有名なプロダクトといえば?
A. ポケモンGO
利用企業には有名企業が多数
eBay
Symantec
Adobe
他多数
も利用顧客です。
Couchbaseは
新世代の
デファクトスタンダード
质问
闯厂翱狈を知っていますか?
厂蚕尝を书けますか?
両方できるあなたは
すでにCouchbase使いです。
もしかしたら
Couchbase Masterかも?
CouchbaseはこんなDB
CouchDB、Membase、Memcachedの3つを統合
したプロダクトで、「開発者がリラックスして、
カウチソファに座っているようにデータベースの
設計?構築?運用ができるように」という
CouchDBの思想を引き継ぎつつ、
Simple (シンプル)
Fast (高速性)
Elastic (柔軟)
をコンセプトにして作られている。
最小構成でいいのなら
パッケージ落として、インストールするだけで完了!!
mac
brew cask install couchbase-server-community
RHEL/CentOS
rpm --install couchbase-server-version.rpm
Debian/Ubuntu
dpkg -i couchbase-server-version.deb
minimumな設定でいいなら、これだけでもう動く。
簡単すぎて逆に怖い
前職インフラ担当談
ドキュメント指向データベース
Key-Value OR ドキュメントストア
Couchbaseはドキュメントストアとして動作する。
Valueはシンプルなデータ型のデータでも連想配列、JSON形式など
でもOK。
ドキュメントをそのまま保存できるので、JSON形式で保存するのが
推奨。
スキーマフリー
予めCouchbaseでスキーマ定義をする必要はない。
RDBSのようなDB migrationがいらない。
すべてプログラム側で管理できる。
ドキュメント毎に異なるスキーマの設定もできる。
なのに、インデックスを設定できる
SQL規格に準拠したN1QL
例1.
右記のデータに対して下記のクエリで
リクエストする
{
"results": [
{
"tutorial": {
"age": 46,
"children": [
{
"age": 17,
"fname": "Aiden",
"gender": "m"
},
{
"age": 2,
"fname": "Bill",
"gender": "f"
}
],
"email": "dave@gmail.com",
"fname": "Dave",
"hobbies": [
"golf",
"sur?ng"
],
"lname": "Smith",
"relation": "friend",
"title": "Mr.",
"type": "contact"
}
}
]
}
SELECT children[0].fname AS cname
FROM tutorial
WHERE fname='Dave'
結果1.
{
"results": [
{
"cname": "Aiden"
}
]
}
キャッシュ機構
よく使われるものは、メモリに乗りそうじゃないものがディスクに保存される
設計。
DBの負荷を下げるためのキャッシュを用意する必要がなくなる。
マネージドキャッシュ
ディスク
Doc1
Doc1
Doc2
Doc3
Doc3
ディスクキュー
レプリケーション
キュー
他ノードとのレプリケーションは
メモリ to メモリ
APP
えっ、まだ使ってないの?
と言われる前にぜひ!!
使ってる言語のSDKって
用意されてるの?
安心してください。
入ってますよ!!
公式サポートしてる言語とプラットフォーム
一般的に使われてる言語やプラットフォーム用のライブラリ
やSDKは公式で用意されています。
ElasticSearchなどのプラグインも用意されています。
一般的に使われてる言語の
Client/SDKは公式でカバー
RustやScalaはまだだけど..
ここまでの話は
Couchbase serverの話だけ
しかもほんのさわり程度
Couchbaseの全体像
Couchbase Server
高速、柔軟でハイパフォーマンスなデータベース
Couchbase Lite
デバイス上で動く簡易版DB。開発言語と同じ言語で作られている
Couchbase Sync Gateway
Couchbase LiteとCochbase ServerをつなぐGateway同期時にデータが競合した場合の
解決なども行ってくれる
開発ドキュメント読んだほう
がはやくね?
(??ω?`;)
http://www.couchbase.com/
https://forums.couchbase.com/
続きはWEBで

More Related Content

Couchbase server入門