Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
DataStax Enterpriseをはじめよう
2017/06/06
スピーカー
森下 雄貴
DataStax ソリューションアーキテクト/時々エンジニア: 2011年11月-
Apache Cassandraコミッター: 2012年5月-
© DataStax, All Rights Reserved.2
DataStaxはどんな会社?
“The power behind the moment.”
• Apache Cassandra のサポート会社?
• Apache Cassandraコミッター 15名 (2017年6月)
• 80%以上のコ...
DataStax
Enterprise
Apache Cassandraを中
核にした製品
+ サポート
+ プロフェッショナルサービ
ス
+ トレーニング
© DataStax, All Rights Reserved.4
あなたの日常を支えるApache Cassandra
• 通勤中は、iPhone から Spotify を起動して音楽をストリーミング。
• と同時に、Instagram のコメントチェック。
• 会社についてPC起動したら、まず Yahoo!...
あなたの日常を支えるApache Cassandra
• 通勤中は、iPhone から Spotify を起動して音楽をストリーミング。
• と同時に、Instagram のコメントチェック。
• 会社についてPC起動したら、まず Yahoo!...
なぜ選ばれるのか
7
簡単にスケール
常にオン
● どんな障害にも耐えうる設計
● どんなデータも見逃さずに取り込
む
● ビジネスにフォーカス
即座に分析
● アプリケーションに分析機能を組
み込み、次のアクションにすぐに
つなげる
© Da...
© DataStax, All Rights Reserved.8
DSEをはじめよう
DSEの入手とインストール
https://academy.datastax.com
• ユーザー登録後ダウンロード
• 充実したトレーニングコース
• 無償で評価可能
• インストール
• tar.gz (要Java)
• RPM
• deb...
デモ: Docker
本日のデモはすべてDockerを利用して行います。
DataStaxオフィシャルイメージは準備中。
> docker pull luketillman/datastax-enterprise:5.1.1
© DataSta...
Apache Cassandra™
• DSEのコア
• オープンソースの分散データベース
– 大量のデータの中から
目的のデータに素早くアクセス
– ハイスケーラビリティ
– 高可用性
• 世界中で豊富な利用実績
– Apple
– Spot...
分散データベース?
• 複数のノードで一つのデータベースを構成
• すべてのノードがマスターノード
• トランザクション数、データ数の増加に応じてスケールアウト
© DataStax, All Rights Reserved.12
複数のノードでデータベースを構成
• ノード: 単独のインスタンス
• ラック: ノードの論理的なグループ(省略可)
• データセンター: ラックまたはノードの論理的なグループ
• クラスター: データセンターの論理的なグループ
© DataS...
起動してみよう
• DSEのメインツール: dse
例えばノードの起動
© DataStax, All Rights Reserved.14
クラスターを構築
• ノードはゴシッププロトコルを用いて互いに通信しあう
• 設定ファイルで最初にコンタクトするノード(Seed/シード)を指定
© DataStax, All Rights Reserved.15
# any class th...
読み書きはどこからでも
• ユーザーは任意のデータセンターの任意のノード
に接続してデータの読み書きが可能
• 書き込みは全て自動的に均等に分散され、
クラスター全体の中で自動的にレプリケート
される
© DataStax, All Right...
10
50
3070
80
40
20
60
Client
それでも他の2つのノードからデータが
取得可能
ノードが一時的に障害またはダウン
単一障害点がない
• 優れた耐障害性
• レプリケーションは自動的に処理
• スケールしても運用はシン...
マルチデータセンター対応
• データセンターやアベイラビリティ
ゾーンをまたいでデータを
レプリケート
• ダウンよるビジネスの中断はない
• グローバルでの低レイテンシーの
パフォーマンス
© DataStax, All Rights Res...
リニアなスケーラビリティ
• データはクラスター内の全ノードで分割
• リニアなスケーラビリティ(パフォーマンス、ストレージ)
© DataStax, All Rights Reserved.19
50,000 trans/sec
500 GB...
Cassandraのデータモデル
• パーティションキーとそれに紐づいた
カラムファミリー
• キースペース:
RDBMSのデータベースに相当
• テーブル:
RDBMSのテーブルに似ているが、
より柔軟で動的
– テーブル内の行は、キーに基づ...
Cassandra Query Language (CQL)
• RDBMSのSQLに類似
• DDLを使ってオブジェクト作成
CREATE, DROP, GRANT, REVOKE
• INSERT, UPDATE, DELETE,
SELE...
デモ: CQLSH
• テーブルの定義
• キースペースの作成
• テーブルの作成
• データの読み書き
© DataStax, All Rights Reserved.22
CQLと内部データモデル
© DataStax, All Rights Reserved.23
アプリケーションからのアクセス
© DataStax, All Rights Reserved.24
ドライバー
• DSEドライバーおよびCassandraドライバー
• ODBC/JDBC (サードパーティー)
デモ: DataStax Java Driver
• DataStax EnterpriseおよびApache Cassandraへ
Javaアプリケーションからつなぐためのドライバー
• 分散データベースであるDSE/Cassandraの様々...
自由度の高いデプロイ
• クラウドのみ: クラウドの伸縮性とグローバルで
利用できる点を最大限に活用。
• ハイブリッド: 1つのクラスターで、オンプレミスと
クラウドにまたがって配備可能
• ハブ&スポーク: 中央のハブと、そこから伸びる
ス...
決定的瞬間を支える機能
© DataStax, All Rights Reserved.27
Search Analytics Graph
© DataStax, All Rights Reserved.28
DSE Search
DSE Search
強力な検索機能をもったインデックスエンジン
• データ書き込み時の自動インデックス作成
• 高スループット
• 分散クエリーの最適化
外部検索機能との比較:
• 別に検索用クラスターを管理する必要なし
• ハードウェア費用...
KillrVideo
30 © DataStax, All Rights Reserved.
KillrVideo
DataStax Enterpriseデモアプリケーション
– https://killrvideo.github.io
– オープンソース
– gRPCを用いたスケーラブルなマイクロサービスアーキテクチャ
• Node....
KillrVideo
デモ環境
32
KillrVideo Web
アプリケーション
KillrVideo
マイクロサービス DataStax Enterprise
1ノード
DSE SearchAndAnalytics
etcd: サービスデ...
KillrVideo
機能に合わせたデータモデリング
– 非正規化
– クエリからデータモデルを考える
– KillrVideoスキーマ
• https://github.com/KillrVideo/killrvideo-dse-docker...
KillrVideo – DSE Search
34 © DataStax, All Rights Reserved.
KillrVideo – DSE Search
DSE Searchを用いた全文検索
– Solrリソースの作成
• dsetool create_core killrvideo.videos
– スキーマなどの自動生成が可能
– DataSt...
KillrVideo – Solr Admin UI
36 © DataStax, All Rights Reserved.
© DataStax, All Rights Reserved.37
DSE Analytics
DSE Analytics
38
アプリケーション
リアルタイム操作
Cassandra
Analytics
分析
クエリ
アナリティクス
リアルタイム
レプリケーション
単一のDSEクラスター
ストリーミング、アドホック、
バッチ分析
• ハ...
KillrVideo – DSE Analytics
DSE Analyticsを用いた分析
– データベースに対するSparkジョブ(リコメンデーション作成など)の実行
• dse spark
• dse spark-submit
– Apa...
デモ: DSE Analytics
CassandraテーブルのJOIN
> dse spark-sql
40 © DataStax, All Rights Reserved.
© DataStax, All Rights Reserved.41
DSE Graph
DSE Graph
スケーラブルな分散グラフデータベース。複雑なグラフデータをリアルタイム
に格納、探索および問い合わせできる。
• データ間の関係に注目
• DSE AnalyticsおよびSearchへ統合
• Customer360、レコ...
Apache Tinkerpop™
オープンソースのグラフ計算フレームワーク
• Gremlinグラフトラバーサル言語
• Tinkerpop対応グラフデータベース
• JanusGraph (TitanDB)
• Azure CosmosDB...
Gremlinグラフトラバーサル言語
© DataStax, All Rights Reserved.44
デモ: gremlin-console
DSEは Apache Tinkerpop の gremlin-console を同梱
> dse gremlin-console
© DataStax, All Rights Reserved.45
© DataStax, All Rights Reserved.46
DataStax Studio
DataStax Studio
DSE GraphおよびCQLのビジュアル開発プラットフォーム
DataStax is a registered trademark of DataStax, Inc. and its subsidiaries ...
DataStaxが提供するもの
DataStaxサブスクリプション
© DataStax, All Rights Reserved.49
DSE Standard DSE Max
Data Platform
Certified Apache Cassandra™ ✓ ✓
Ad...
DMC (DataStax Managed Cloud)
DataStax is a registered trademark of DataStax, Inc. and its subsidiaries in the United State...
エキスパートサポート
• 営業時間内から24x7x365までのSLA
• 本番環境および非本番環境のサポート
• アーキテクチャ設計やチューニングの定期的なサポート
• ソフトウェアを最新に保つための認定サービスパック
• 緊急時のホットフィッ...
プロフェッショナルサポート
• Project Methodology
• Accelerator Packages
• Architecture Design
• Production Readiness
DataStax is a regi...
ありがとうございました
Upcoming SlideShare
Loading in …5
×

Datastax Enterpriseをはじめよう

2,096 views

Published on

イベント「DataStax Enterpriseをはじめよう」資料
https://datastaxjp.connpass.com/event/57252/

Published in: Software
  • Be the first to comment

Datastax Enterpriseをはじめよう

  1. 1. DataStax Enterpriseをはじめよう 2017/06/06
  2. 2. スピーカー 森下 雄貴 DataStax ソリューションアーキテクト/時々エンジニア: 2011年11月- Apache Cassandraコミッター: 2012年5月- © DataStax, All Rights Reserved.2
  3. 3. DataStaxはどんな会社? “The power behind the moment.” • Apache Cassandra のサポート会社? • Apache Cassandraコミッター 15名 (2017年6月) • 80%以上のコード貢献 • 豊富なオンラインマテリアル それだけではありません。 © DataStax, All Rights Reserved.3
  4. 4. DataStax Enterprise Apache Cassandraを中 核にした製品 + サポート + プロフェッショナルサービ ス + トレーニング © DataStax, All Rights Reserved.4
  5. 5. あなたの日常を支えるApache Cassandra • 通勤中は、iPhone から Spotify を起動して音楽をストリーミング。 • と同時に、Instagram のコメントチェック。 • 会社についてPC起動したら、まず Yahoo! Japan。 • そのあと仕事は Office365 で。 • 夜は寝そべって、Netflix で”House of Cards”を見る。 • 休日は、PlayStation 4 でゲーム Overwatch のオンラインプレイ。 © DataStax, All Rights Reserved.5
  6. 6. あなたの日常を支えるApache Cassandra • 通勤中は、iPhone から Spotify を起動して音楽をストリーミング。 • と同時に、Instagram のコメントチェック。 • 会社についてPC起動したら、まず Yahoo! Japan。 • そのあと仕事は Office365 で。 • 夜は寝そべって、Netflix で”House of Cards”を見る。 • 休日は、PlayStation 4 でゲーム Overwatch のオンラインプレイ。 © DataStax, All Rights Reserved.6
  7. 7. なぜ選ばれるのか 7 簡単にスケール 常にオン ● どんな障害にも耐えうる設計 ● どんなデータも見逃さずに取り込 む ● ビジネスにフォーカス 即座に分析 ● アプリケーションに分析機能を組 み込み、次のアクションにすぐに つなげる © DataStax, All Rights Reserved.
  8. 8. © DataStax, All Rights Reserved.8 DSEをはじめよう
  9. 9. DSEの入手とインストール https://academy.datastax.com • ユーザー登録後ダウンロード • 充実したトレーニングコース • 無償で評価可能 • インストール • tar.gz (要Java) • RPM • deb © DataStax, All Rights Reserved.9
  10. 10. デモ: Docker 本日のデモはすべてDockerを利用して行います。 DataStaxオフィシャルイメージは準備中。 > docker pull luketillman/datastax-enterprise:5.1.1 © DataStax, All Rights Reserved.10
  11. 11. Apache Cassandra™ • DSEのコア • オープンソースの分散データベース – 大量のデータの中から 目的のデータに素早くアクセス – ハイスケーラビリティ – 高可用性 • 世界中で豊富な利用実績 – Apple – Spotify – Sony Playstation – など多数 © DataStax, All Rights Reserved.11
  12. 12. 分散データベース? • 複数のノードで一つのデータベースを構成 • すべてのノードがマスターノード • トランザクション数、データ数の増加に応じてスケールアウト © DataStax, All Rights Reserved.12
  13. 13. 複数のノードでデータベースを構成 • ノード: 単独のインスタンス • ラック: ノードの論理的なグループ(省略可) • データセンター: ラックまたはノードの論理的なグループ • クラスター: データセンターの論理的なグループ © DataStax, All Rights Reserved.13 DC1 DC2 RAC2 RAC1
  14. 14. 起動してみよう • DSEのメインツール: dse 例えばノードの起動 © DataStax, All Rights Reserved.14
  15. 15. クラスターを構築 • ノードはゴシッププロトコルを用いて互いに通信しあう • 設定ファイルで最初にコンタクトするノード(Seed/シード)を指定 © DataStax, All Rights Reserved.15 # any class that implements the SeedProvider interface and has a # constructor that takes a Map<String, String> of parameters will do. seed_provider: # Addresses of hosts that are deemed contact points. # Cassandra nodes use this list of hosts to find each other and learn # the topology of the ring. You must change this if you are running # multiple nodes! - class_name: org.apache.cassandra.locator.SimpleSeedProvider parameters: # seeds is actually a comma-delimited list of addresses. # Ex: "<ip1>,<ip2>,<ip3>" - seeds: "127.0.0.1"
  16. 16. 読み書きはどこからでも • ユーザーは任意のデータセンターの任意のノード に接続してデータの読み書きが可能 • 書き込みは全て自動的に均等に分散され、 クラスター全体の中で自動的にレプリケート される © DataStax, All Rights Reserved.16
  17. 17. 10 50 3070 80 40 20 60 Client それでも他の2つのノードからデータが 取得可能 ノードが一時的に障害またはダウン 単一障害点がない • 優れた耐障害性 • レプリケーションは自動的に処理 • スケールしても運用はシンプル © DataStax, All Rights Reserved.17
  18. 18. マルチデータセンター対応 • データセンターやアベイラビリティ ゾーンをまたいでデータを レプリケート • ダウンよるビジネスの中断はない • グローバルでの低レイテンシーの パフォーマンス © DataStax, All Rights Reserved.18 10 50 3070 80 40 20 60 Clie nt 15 55 3575 85 45 25 65 West Data CenterEast Data Center Outage 10 50 3070 80 40 20 60 Client
  19. 19. リニアなスケーラビリティ • データはクラスター内の全ノードで分割 • リニアなスケーラビリティ(パフォーマンス、ストレージ) © DataStax, All Rights Reserved.19 50,000 trans/sec 500 GB 100,000 trans/sec 1 TB 200,000 trans/sec 2 TB
  20. 20. Cassandraのデータモデル • パーティションキーとそれに紐づいた カラムファミリー • キースペース: RDBMSのデータベースに相当 • テーブル: RDBMSのテーブルに似ているが、 より柔軟で動的 – テーブル内の行は、キーに基づいて インデックス付けされる – 他のカラムもインデックス付け可能 © DataStax, All Rights Reserved.20 ID Name SSN DOB Portfolio キースペース Customer テーブル
  21. 21. Cassandra Query Language (CQL) • RDBMSのSQLに類似 • DDLを使ってオブジェクト作成 CREATE, DROP, GRANT, REVOKE • INSERT, UPDATE, DELETE, SELECT, WHERE • ユーザー定義関数 • 簡単な集計機能 • JOINはサポートしない © DataStax, All Rights Reserved.21 CQL Example CREATE TABLE market_prices ( symbol TEXT, date TIMESTAMP, price DECIMAL, side INT, PRIMARY KEY (symbol, date) ) WITH CLUSTERING ORDER BY (date DESC);
  22. 22. デモ: CQLSH • テーブルの定義 • キースペースの作成 • テーブルの作成 • データの読み書き © DataStax, All Rights Reserved.22
  23. 23. CQLと内部データモデル © DataStax, All Rights Reserved.23
  24. 24. アプリケーションからのアクセス © DataStax, All Rights Reserved.24 ドライバー • DSEドライバーおよびCassandraドライバー • ODBC/JDBC (サードパーティー)
  25. 25. デモ: DataStax Java Driver • DataStax EnterpriseおよびApache Cassandraへ Javaアプリケーションからつなぐためのドライバー • 分散データベースであるDSE/Cassandraの様々な特徴をサポート • 自動フェイルオーバー • クエリの自動ルーティング • DSE DriverはグラフDBもサポート © DataStax, All Rights Reserved.25
  26. 26. 自由度の高いデプロイ • クラウドのみ: クラウドの伸縮性とグローバルで 利用できる点を最大限に活用。 • ハイブリッド: 1つのクラスターで、オンプレミスと クラウドにまたがって配備可能 • ハブ&スポーク: 中央のハブと、そこから伸びる スポークの構成も可能。通信が不安定な環境や、 コンプライアンス、場所に合わせた最適化が 必要な時に。 © DataStax, All Rights Reserved.26
  27. 27. 決定的瞬間を支える機能 © DataStax, All Rights Reserved.27 Search Analytics Graph
  28. 28. © DataStax, All Rights Reserved.28 DSE Search
  29. 29. DSE Search 強力な検索機能をもったインデックスエンジン • データ書き込み時の自動インデックス作成 • 高スループット • 分散クエリーの最適化 外部検索機能との比較: • 別に検索用クラスターを管理する必要なし • ハードウェア費用の削減 • インデックスとデータの整合性 • ETLやデータ同期の必要なし • アプリケーションレベルでのデータ管理の必 要なし Search + Cassandra アプリケーション CQL © DataStax, All Rights Reserved.29
  30. 30. KillrVideo 30 © DataStax, All Rights Reserved.
  31. 31. KillrVideo DataStax Enterpriseデモアプリケーション – https://killrvideo.github.io – オープンソース – gRPCを用いたスケーラブルなマイクロサービスアーキテクチャ • Node.js/C#/Javaでの実装 – データベース層はDSE/Apache Cassandra • データモデリングのサンプル • DataStaxドライバーの利用サンプル – DSE Searchを用いた全文検索 31 © DataStax, All Rights Reserved.
  32. 32. KillrVideo デモ環境 32 KillrVideo Web アプリケーション KillrVideo マイクロサービス DataStax Enterprise 1ノード DSE SearchAndAnalytics etcd: サービスディスカバリー サンプルデータ生成アプリ © DataStax, All Rights Reserved.
  33. 33. KillrVideo 機能に合わせたデータモデリング – 非正規化 – クエリからデータモデルを考える – KillrVideoスキーマ • https://github.com/KillrVideo/killrvideo-dse-docker/blob/master/lib/killrvideo- data/schema.cql DataStaxドライバーからのアクセス 33 © DataStax, All Rights Reserved.
  34. 34. KillrVideo – DSE Search 34 © DataStax, All Rights Reserved.
  35. 35. KillrVideo – DSE Search DSE Searchを用いた全文検索 – Solrリソースの作成 • dsetool create_core killrvideo.videos – スキーマなどの自動生成が可能 – DataStaxドライバーからのシームレスな検索実行 • 35 © DataStax, All Rights Reserved.
  36. 36. KillrVideo – Solr Admin UI 36 © DataStax, All Rights Reserved.
  37. 37. © DataStax, All Rights Reserved.37 DSE Analytics
  38. 38. DSE Analytics 38 アプリケーション リアルタイム操作 Cassandra Analytics 分析 クエリ アナリティクス リアルタイム レプリケーション 単一のDSEクラスター ストリーミング、アドホック、 バッチ分析 • ハイパフォーマンス • ワークロード管理 • SQLレポート 外部機能との比較: • ETLの必要なし • Zookeeperを使わないHA © DataStax, All Rights Reserved.
  39. 39. KillrVideo – DSE Analytics DSE Analyticsを用いた分析 – データベースに対するSparkジョブ(リコメンデーション作成など)の実行 • dse spark • dse spark-submit – Apache Sparkプロジェクトの様々な機能を利用 • Spark Streaming • MLlib – 外部の分析ツールとの連携 • Spark連携機能をもつBIツール • Apache Zeppelin • dse spark-sql / dse sparkR 39 © DataStax, All Rights Reserved.
  40. 40. デモ: DSE Analytics CassandraテーブルのJOIN > dse spark-sql 40 © DataStax, All Rights Reserved.
  41. 41. © DataStax, All Rights Reserved.41 DSE Graph
  42. 42. DSE Graph スケーラブルな分散グラフデータベース。複雑なグラフデータをリアルタイム に格納、探索および問い合わせできる。 • データ間の関係に注目 • DSE AnalyticsおよびSearchへ統合 • Customer360、レコメンド、 不正検知に最適 © DataStax, All Rights Reserved.42
  43. 43. Apache Tinkerpop™ オープンソースのグラフ計算フレームワーク • Gremlinグラフトラバーサル言語 • Tinkerpop対応グラフデータベース • JanusGraph (TitanDB) • Azure CosmosDB • DSE Graph • … © DataStax, All Rights Reserved.43
  44. 44. Gremlinグラフトラバーサル言語 © DataStax, All Rights Reserved.44
  45. 45. デモ: gremlin-console DSEは Apache Tinkerpop の gremlin-console を同梱 > dse gremlin-console © DataStax, All Rights Reserved.45
  46. 46. © DataStax, All Rights Reserved.46 DataStax Studio
  47. 47. DataStax Studio DSE GraphおよびCQLのビジュアル開発プラットフォーム DataStax is a registered trademark of DataStax, Inc. and its subsidiaries in the United States and/or other countries.47
  48. 48. DataStaxが提供するもの
  49. 49. DataStaxサブスクリプション © DataStax, All Rights Reserved.49 DSE Standard DSE Max Data Platform Certified Apache Cassandra™ ✓ ✓ Advanced Security ✓ ✓ Automatic Management Services ✓ ✓ Advanced Replication ✓ ✓ Tiered Storage ✓ ✓ Multi-Instance ✓ ✓ In-Memory ✓ Search ✓ Analytics ✓ Graph Option Option Management and Development Solutions DataStax OpsCenter ✓ ✓ DataStax Studio ✓ ✓ DSE MAX 様々な要求に対応した オールインワン データプラットフォーム DSE STANDARD 開発が容易で、スケーラビリ ティが必要なチーム向け
  50. 50. DMC (DataStax Managed Cloud) DataStax is a registered trademark of DataStax, Inc. and its subsidiaries in the United States and/or other countries.50 OpsCenter 運用サービス DMC クラウド上でのDataStax Enterprise運用管理サービス オンプレミス で自社運用 DataStax による運用管理
  51. 51. エキスパートサポート • 営業時間内から24x7x365までのSLA • 本番環境および非本番環境のサポート • アーキテクチャ設計やチューニングの定期的なサポート • ソフトウェアを最新に保つための認定サービスパック • 緊急時のホットフィックスの提供 DataStax is a registered trademark of DataStax, Inc. and its subsidiaries in the United States and/or other countries.51
  52. 52. プロフェッショナルサポート • Project Methodology • Accelerator Packages • Architecture Design • Production Readiness DataStax is a registered trademark of DataStax, Inc. and its subsidiaries in the United States and/or other countries.52
  53. 53. ありがとうございました

×