what's new in couchbase server 4.0 ja

49
©2015 Couchbase Inc. 1 What’s New in Couchbase Server 4.0? 河村康爾 – Solutions Engineer

Upload: couchbase-japan-kk

Post on 21-Jan-2018

631 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 1

What’s New in Couchbase Server 4.0?河村康爾 – Solutions Engineer

Page 2: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 2

アジェンダ

Couchbase Server 4.0新機能

N1QLでのクエリ

インデクシング

Multi-Dimensional Scaling (多次元スケーリング)

ForestDB: 次世代のストレージエンジン

セキュリティ

Page 3: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 3

And There’s More …

機能 説明

XDCRフィルタリング キーを利用したXDCRストリームのフィルタリングで参照データ&地理情報に基づいたレプリケーションのユースケースに対応。

Bloom Filters ワーキングセット率の低い(DGM: Data Grater than Memory)要件でのレイテンシを大きく改善

Memory Defragmentation ヒープ内のデフラグを解消し、メモリ利用のオーバヘッドを削減

クラスタの堅牢性を向上 Viewクエリによるクラスタ管理の障害を改善

Breakpad memcachedのコンパクトで可読性のあるクラッシュログ

SDK Couchbase Server 4.0の様々な新機能に対応したSDK

SUSE, Oracle Enterprise Linux, CentOS 7, RHEL 7, Ubuntu 14.04,

より多くのプロダクションサポート対象プラットフォーム

Page 4: What's new in Couchbase Server 4.0 ja

N1QLでのクエリ

Page 5: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 5

N1QLとは?

5

Flexibility of JSONPower of SQL

Page 6: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 6

クエリ言語はどのように評価すべきか?

Expressive / 表現の豊かさ

Declarative / 宣言性

Ecosystem / エコシステム

Page 7: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 7

表現力豊かなN1QL: E-Commerce の例

SELECT product.name, SUM(items.count) AS unitsSold

FROM purchases UNNEST purchases.lineItems AS items

JOIN product ON KEYS items.product

GROUP BY product

ORDER BY unitsSold DESC LIMIT 10

SELECT SUBSTR(purchases.purchasedAt, 0, 7) AS month,

ROUND(SUM(product.unitPrice * items.count)/1000000, 3)

revenueMillion

FROM purchases UNNEST purchases.lineItems AS items

JOIN product ON KEYS items.product

GROUP BY SUBSTR(purchases.purchasedAt, 0, 7)

ORDER BY month

Learn more about N1QL @

query.couchbase.com/tutorial

Page 8: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 8

表現力豊かなN1QL: 画像処理の例

SELECT

m.image AS gallery_image,

s.image AS source_image, s.x, s.y,

m.r AS gallery_r, m.g AS gallery_g, m.b AS gallery_b,

s.r AS source_r, s.g AS source_g, s.b AS source_b,

FROM SourcePixels s

JOIN GalleryMeans m ON KEY s.rgb

Source: http://www.metanautix.com/tr01

Page 9: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 9

N1QLに関するセッション

Introducing N1QL: Query Without CompromiseMay 3 @ 1:00 pm – 1:45 pm, Architecture TrackMay 4 @ 11:15 am – 12:00 pm, Architecture Track

Migrating MySQL Queries to N1QLMay 4 @ 1:00 am – 1:45 pm, Developer Track

N1QL and SDK Support for Java, .NET, and Node.jsMay 3 @ 4:30 pm - 5:15 pm, Developer Track

Big Data Query Landscape: N1QL and MoreMay 4 @ 4:30 pm – 5:15 pm, Architecture Track

Interactive Data Analytics with Couchbase N1QL – NielsenMay 3 @ 1:45 pm - 2:30 pm, Developer Track

Agility with Data Modeling at DIRECTV Using N1QL in Couchbase with Node.js - DIRECTVMay 4 @ 3:45 pm - 4:30 pm, Developer Track

Page 10: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 10

N1QLは宣言型: What Versus How

何を(WHAT) したいのか指定するとCouchbase Server がどうするか(HOW) を判断する

Page 11: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 11

N1QL は宣言型: 数百万のピクセルの処理

SELECT

m.image AS gallery_image,

s.image AS source_image, s.x, s.y,

m.r AS gallery_r, m.g AS gallery_g, m.b AS gallery_b,

s.r AS source_r, s.g AS source_g, s.b AS source_b,

FROM SourcePixels s

JOIN GalleryMeans m ON KEY s.rgb

Page 12: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 12

N1QLに関するセッション –より詳細な内容

Deep Dive into N1QL: Power Features and Internals in Couchbase 4.0May 3 @ 2:30 pm - 3:15 pm, Architecture Track

Tuning Query Performance with N1QL in Couchbase Server 4.0May 4 @ 1:45 pm – 2:30 pm, Architecture Track

Enterprise Architect’s Perspectives of Couchbase with N1QLMay 4 @ 5:15 pm – 6:00 pm, Architecture Track

Page 13: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 13

N1QLでつながるエンタープライズエコシステム

ODBC /

JDBC

App

CB Node

ODBC /

JDBC

ETL

ODBC /

JDBC

BI

ODBC /

JDBC

Visualization

CB Node CB Node

Standards-based drivers

Integrations, partnerships

Page 14: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 14

N1QLに関するセッション –パートナー

Operational Analytics with Looker and N1QL- LookerMay 3 @ 1:00 pm – 1:45 pm, Big Data Track

Enterprise Data Integration: Using Informatica ETL with Couchbase –InformaticaMay 3 @ 3:45 pm – 4:30 pm, Big Data Track

Visual Analytics with Tableau & Couchbase – Tableau SoftwareMay 3 @ 4:30 pm - 5:15 pm, Architecture Track

Open Connectivity: BI, Integration, and Applications on Couchbase using ODBC and JDBC - SimbaMay 4 @ 1:45 pm – 2:30 pm, Big Data Track

Metanautix Quest and Couchbase: Scalable Analytics Across NoSQL, RBDMS, Hadoop – MetanautixMay 4 @ 3:45 pm – 4:30 pm, Big Data Track

Page 15: What's new in Couchbase Server 4.0 ja

インデクシング

Page 16: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 16

なぜインデックスが必要なのか?

ユーザが指定した条件に

一致するオブジェクトを

データベース内の

すべてのオブジェクトを走査せずに

高速に探すために

インデックスを利用する

Page 17: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 17

インデックスにはどんな種類があるか?

Primary Indexes

Secondary Indexes

Spatial Indexes

Text Indexes

Page 18: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 18

インデックスの種別… 図書館で例えると

Source: http://www.montel.com/en/markets/library/

Page 19: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 19

Secondary Indexes

Local secondary indexes – Map/Reduce views in 3.0 データと同居

高い更新性能

ただし参照性能は劣る: 分散し集約するため (scatter-gather)

多数のインデックスやデータノードでスケールのボトルネックに

Global secondary indexes (GSI) – New in 4.0 より高いクエリ性能

より多くのGlobal Indexに対する非同期の更新

個別にスケールし、分割

Key-Valueのオペレーションと分離

Page 20: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 20

Global Secondary Indexesに関するセッション

Introducing Global Secondary Indexes: The New High Performance Indexer with Couchbase 4.0May 3 @ 1:45 pm - 2:30 pm, Architecture Track

Deep Dive into Global Secondary Indexing Architecture in Couchbase Server 4.0May 3 @ 3:45 pm - 4:30 pm, Architecture Track

Page 21: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 21

Box on Points Box Intersects Multi Dimensions Geo + Others

Spatial Indexes

3.0では試験的, 4.0から正式サポート対象(GA)に 性能と安定性を向上

GeoJSONを出力

多次元でのバウンディングボックスと範囲検索

Page 22: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 22

Spatial Indexesに関するセッション

Introducing Spatial Views for Location Aware Applications with Couchbase Server 4.0May 3 @ 4:30 pm – 5:15 pm, Architecture Track

Page 23: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 23

Text Indexes (Developer Preview)

wise

engineer

…, akay1980, …

…, akay1980, …

engineers

engineer完全一致

転置インデックス

インデックス時に適用したテキスト解析を検索時にも適用する。

Page 24: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 24

Text Indexesに関するセッション

A Sneak Peek of CBFT, Full Text Search for CouchbaseMay 4 @ 5:15 pm –6:00 pm, Developer Track

Page 25: What's new in Couchbase Server 4.0 ja

多次元スケーリングMulti-Dimensional Scaling

Page 26: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 26

ワークロードとスケーリング

水平スケーリング

一つ以上の同スペックのノードへデータセットを分割

各ノードは同様に複数のワークロードを処理する

ハードウェアキャパシティを追加する際はデータセットを再配置

Node 8

Index Service

Couchbase Cluster

Query Service

Data Service

Node 1

Page 27: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 27

多次元スケーリング(Multi-Dimensional Scaling)

No-SQL のワークロード:

Key-value, クエリ, インデクシング, map-reduce,レプリケーション/ツール間連携

異なるリソース要件 (CPU, メモリ, I/O, ネットワーク)

異なる性能要件 (レイテンシ, スループット)

多次元スケーリング(MDS)とは?

MDSとは、data, query, indexのワークロードを個別にスケールできるアーキテクチャである。

Page 28: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 28

多次元スケーリング (Multi-Dimensional Scaling)

サービスを分離し互いの干渉を最小に

query, index, dataサービスごとに独立した”ゾーン”

コアなkey-value操作に対するインデクシングとクエリのオーバヘッドを最小化

Index Service

Couchbase Cluster

Query Service Data Service

Node 1 Node 8

Page 29: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 29

多次元スケーリング(Multi-Dimensional Scaling)

個別のスケーラビリティでサービスごとの処理性能を最大化

Couchbase Cluster

node1 Node 8 Node 9

Data Service

Index ServiceQuery Service

より多くのインデックス (より多くのフィールド): index serviceノードをスケールアップ。

クエリ処理により多くのRAMを:query serviceノードをスケールアップ。

Node 1

Page 30: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 30

Multi-Dimensional Scalingに関するセッション

Multi-Dimensional Scaling: A New Architecture for Scaling Big Data ApplicationsMay 3 @ 10:30 am – 11:15 am, Architecture Track

Page 31: What's new in Couchbase Server 4.0 ja

ForestDB: 次世代のストレージエンジン

Page 32: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 32

モダンなweb/mobile/IoTアプリケーション 大量の非構造化データの操作

数億のユーザやデバイスから継続的に膨大な量の新しいデータが生成される

とめどなく成長を続けるデータベースを管理するためのスケーラビリティと高い性能が同時に必要

内部のストレージエンジンはデータベースシステムで高い性能とスケーラビリティを提供するために最も重要な部品の一つ

次世代のストレージエンジンへの要件

32

Page 33: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 33

一般的なストレージ構造 – B+-Tree

33

参照 更新 エンジン

B+-Tree Good read performance if the fan-out is high (“short” tree) for small fixed-length keys. Read performance degrades for variable-length keys.

Update-In-Place results in random writes and bad write latency.

Append-Only file improves write performance but requires periodic compaction.

BerkeleyDB,InnoDB, Couchstore (append-only), WiredTiger B+

04/26

…Key

Value (or Pointer)

longer keys

Page 34: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 34

一般的なストレージ構造 – LSM-Tree

参照 更新 エンジン

LSM-Tree

Reads may have to traverse multiple trees – typically worse than B+ tree.

WAL improves writes within-memory trees that are appended to the end of the log.

LevelDB, BigTable,Cassandra,WiredTiger LSM

In-memory

Sequential log

flush/merge merge

C1 tree C2 tree

merge

Capacity increases exponentially

Page 35: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 35

Fast Storage – ForestDB

Fundamentally rethinking the requirements for fast storage Compact and efficient storage for a variety of data

Unified engine that performs well for various workloads

Unified engine that scales from small devices to large servers

Optimized for new SSD storage technology

35

ForestDB provides a

compact index structure

that significantly reduces the disk I/O

and write amplification.

Page 36: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 36

Trie (prefix tree) for which the nodes are B+-Trees HB+-Trie was originally presented at ACM SIGMOD 2011 Programming

Contest, by Jung-Sang Ahn who works at Couchbase(http://db.csail.mit.edu/sigmod11contest/sigmod_2011_contest_poster_jungsang_ahn.pdf)

HB+-Trie (Hierarchical B+-Trie)

Page 37: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 37

ForestDB

ForestDB Evaluations: LevelDB, RocksDB

37

Throughput Future Proof

FITTED

FORSSD

Efficiency

UP TO5X

COMPACT

UP TO

6XFASTER

Page 38: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 38

ForestDBに関するセッション

Next Generation Storage Engine: ForestDBMay 3 @ 4:30 pm – 5:15 pm, Architecture Track

Under the hood ForestDB: Performance on SSDs and File SystemsMay 3 @ 2:30 pm – 3:15 pm, Architecture Track

Intel: Next Generation SSDs and ForestDB: Next Generation Storage EngineMay 3 @ 2:30 pm – 3:15 pm, Architecture Track

Page 39: What's new in Couchbase Server 4.0 ja

セキュリティ

Page 40: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 40

それ以前… In 2.2 In 2.5 In 3.0 New in 4.0

SASL AuthNwith Bucket Passwords

Admin User

Secure Build Platform

Read-Only User

Easy Admin

Password Reset

Non-Root User

Deployments

Secure Communication

for XDCR

Encrypted Client-Server

Communication

Encrypted Admin Access

Access Log

Data-at-Rest Encryption

• Simplified compliance with admin auditing

• External identity management for admins using LDAP

Couchbaseのセキュリティ機能

In a few

slides ..

40

Page 41: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 41

LDAPを利用した外部のID管理

IDの集中管理

複数の参照専用/フル管理者を定義

管理者アカウントのセキュリティポリシーを集中管理、より強固なパスワード、パスワードローテイション、自動ロックアウト

アカウンタビリティー; コンプライアンスをシンプルに

LDAP内でUIDを定義し、UIDをCouchbaseの参照専用/フル管理者のロールにマッピング

LDAPのUIDを用いた包括的な監査記録

Page 42: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 42

Couchbase管理操作の監査ログ

リッチな監査イベント

25以上の様々な、詳細な管理操作監査イベント

バックアップなどのツールを含む監査

監査ログの設定

出力ファイルの設定

タイムベースのログローテイション、監査イベントのフィルタリング

容易なツール連携

JSONフォーマットにより、Flume, Logstash,

syslogdなどを利用したシステムと容易に連携

Page 43: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 43

ログイン成功の監査イベント

43

{

"timestamp":"2015-02-20T08:48:49.408-08:00",

"id":8192,

"name":"login success",

"description":"Successful login to couchbase cluster",

"role":"admin",

"real_userid": {

"source":"ns_server",

"user":"bjones”

},

"sessionid":"0fd0b5305d1561ca2b10f9d795819b2e",

"remote":{"ip":"172.23.107.165", "port":59383}

}

WHEN

WH

O

WHAT

HO

W

Page 44: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc. 44

セキュリティに関するセッション

Securing Your Couchbase Server Deployment Using VormetricMay 4secur @ 1:45 pm –2:30 pm, Operations Track

Security Features in Couchbase ServerMay 4 @ 3:45 pm – 4:30 pm, Operations Track

Page 45: What's new in Couchbase Server 4.0 ja

Build Your App TODAY!

Download Couchbase Server 4.0 Betaat

www.couchbase.com/beta

Page 46: What's new in Couchbase Server 4.0 ja

Don’t forget that we also provide aMobile solution!!

Page 47: What's new in Couchbase Server 4.0 ja

I’ll talk about Couchbase Server 101

Page 48: What's new in Couchbase Server 4.0 ja

©2015 Couchbase Inc.

Couchbase Upcoming Event

開催日

イベント概要 リンク

9/1 Couchbase モバイル ワークショップ http://goo.gl/llRjhF

9/30 Couchbase 管理者用ワークショップ https://goo.gl/jhmChM

10/14 Couchbase Server 公式トレーニング(有償)「CD220 Couchbase Server 開発者向け(3日間)」

http://goo.gl/wUUu8k

10/27 Couchbase Server 公式トレーニング(有償)「CS300 Couchbase Server 管理者向け(4日間)」

http://goo.gl/SBAOHz

?? JPBUG勉強会 Unity + Couchbase モバイル Coming soon!

?? Couchbase Server 開発者用ワークショップ Coming soon!

日本語マニュアル

Couchbase Serverhttp://goo.gl/79ZJ5o

Couchbase モバイルhttp://goo.gl/uQpzMS

日本語ブログ

SE in 東京http://goo.gl/IHX5yI

モバイルエンジニア@シリコンバレーhttp://hideki.github.io

事例紹介https://goo.gl/UgFQEp

製品説明、デモ、事例紹介などは、下記 へご連絡ください。

[email protected]

Page 49: What's new in Couchbase Server 4.0 ja

Thank You