20180124_ソフトウェアテストを効率的に実施するためのデータの仮想化と自動化とは?...

Post on 29-Jan-2018

89 views 7 download

Transcript of 20180124_ソフトウェアテストを効率的に実施するためのデータの仮想化と自動化とは?...

© 2016 Insight Technology, Inc. All Rights Reserved.

ソフトウェアテストを効率的に実施するためのデータの仮想化と自動化とは?

株式会社インサイトテクノロジービッグデータ・ソリューション事業部

益 秀樹

© 2016 Insight Technology, Inc. All Rights Reserved.

ブラウザ センサー情報UGC/UGM

常時ネット接続=新規サービスの需要

SNS ブログ 位置情報画像/動画 生体情報

趣味・嗜好 思想・信条 関心事

行動パターン

信仰・宗教

健康状態

旅行予定

移動経路 行動範囲

検索 閲覧履歴

いつでも

どこからでも

即座に

3

© 2016 Insight Technology, Inc. All Rights Reserved. 3

シェアリングエコノミーをめぐる環境

シェアライド 民泊 ペット預かり 家事代行

© 2016 Insight Technology, Inc. All Rights Reserved. 4

競合に対する優位性=スピード

有識者検討会

リサーチ&プロトタイプ

法律の整備

サービスローンチ

Ver.2 Ver.3

認可社会の動き

サービス提供者の動き

新しいビジネスモデル

競合

競合 M&A

© 2016 Insight Technology, Inc. All Rights Reserved. 5

https://bankinnovation.net/2017/07/bofa-and-chase-pull-ahead-of-wells-in-mobile-user-growth/

アメリカがうらやましい?

© 2016 Insight Technology, Inc. All Rights Reserved. 6

アメリカがうらやましい?

https://bankinnovation.net/2017/08/partnership-is-the-only-way-smaller-banks-can-compete-on-mobile/

© 2016 Insight Technology, Inc. All Rights Reserved. 7

武装が必要ですよね

© 2016 Insight Technology, Inc. All Rights Reserved. 8

という事で自動化です

© 2016 Insight Technology, Inc. All Rights Reserved. 9

システムの仮想化と自動化

サーバプール

ネットワークプール

ストレージプール

Orchestrator

API

Provisioning

リクエスター

指令

© 2016 Insight Technology, Inc. All Rights Reserved. 10

システムの仮想化と自動化

commit test

fix commit test

fix

commit test

fix

Deploy

© 2016 Insight Technology, Inc. All Rights Reserved. 11

デモ環境の説明

プッシュフック

フェッチ

コピー

実行

結果

© 2016 Insight Technology, Inc. All Rights Reserved. 12

デモ環境の説明

• Fizz Buzz• Fizz:3で割り切れる数字

• Buzz:5で割り切れる数字

• FizzBuzz:3でも5でも割り切れる数字

fizzbuzz table

© 2016 Insight Technology, Inc. All Rights Reserved. 13

デモ環境の説明

• “Fizz” “Buzz” “FizzBuzz”の文字列チェック

• 出現数をカウント

1~200の間の出現回数

• Fizz :53

• Buzz :27

• FizzBuzz :13

• 処理の最後にfizzbuzzテーブルを更新

1回目の処理:成功

2回目の処理:失敗

© 2016 Insight Technology, Inc. All Rights Reserved. 14

デモパターン1の説明

• Fizzの条件テスト

• Buzzの条件テスト

• FizzBuzzの条件テストfizzbuzz table

FizzBuzz

Fizz

Buzz

© 2016 Insight Technology, Inc. All Rights Reserved. 15

デモパターン2の説明

1. DBデータのクリーンナップ

2. Fizzの条件テスト

3. DBデータのクリーンナップ

4. Buzzの条件テスト

5. DBデータのクリーンナップ

6. FizzBuzzの条件テスト

fizzbuzz table

FizzBuzz

Fizz

Buzz

© 2016 Insight Technology, Inc. All Rights Reserved. 16

デモパターン3の説明

同時実行 fizzbuzz table

FizzBuzz

Fizz

Buzz

fizzbuzz table

fizzbuzz table

1. DBデータのクリーンナップ

2. Fizzの条件テスト

1. DBデータのクリーンナップ

2. Buzzの条件テスト

1. DBデータのクリーンナップ

2. FizzBuzzの条件テスト

© 2016 Insight Technology, Inc. All Rights Reserved. 17

製品のリリースまで

RFI/RFP

要件定義

基本設計

詳細設計

実装 コードレビュー

単体テスト

統合/結合テスト

システムテスト

受入テスト検証

© 2016 Insight Technology, Inc. All Rights Reserved. 18

製品のリリースまで

RFI/RFP

要件定義

基本設計

詳細設計

実装 コードレビュー

単体テスト

統合/結合テスト

システムテスト

受入テスト検証

Bug

Bug

Bug

Bug

Today

Bug

Bug

Bug

Bug

データ仮想化

&自動化

© 2016 Insight Technology, Inc. All Rights Reserved.

19

デモ環境の説明

プッシュ

フック

フェッチ

コピー 実行

結果

実行

結果

リフレッシュ

© 2016 Insight Technology, Inc. All Rights Reserved. 20

とは

NFS

DELPHIXエンジン

アプリケーション

ファイル

データベース

ソースシステム

SHARED DATA

+

CHANGED DATA

データ仮想化システム テストや開発での利用

データ仮想化ソフトウェアアプライアンスです

NFS

インジェスト

リフレッシュ

© 2016 Insight Technology, Inc. All Rights Reserved. 21

テスト環境の申請の流れ

環境提供までの待ち時間

単体テスト環境

本番DB環境のコピーを申請

統合テスト環境

本番DB環境のコピーを申請

品質管理環境

本番DB環境のコピーを申請

開発環境

システム管理者DB管理者

本番DB環境のコピーを申請

各種リソースの確認

領域の確認と切り出し

ファイルシステムの構成

バックアップファイルのコピー

DBのリカバリー

DBのパラメータ調整

環境の引き渡し

数日の待ち時間

ストレージ管理者

セキュリティの確保

© 2016 Insight Technology, Inc. All Rights Reserved. 22

テスト環境の申請の流れ

単体テスト環境

本番DB環境のコピーを申請

統合テスト環境

本番DB環境のコピーを申請

品質管理環境

本番DB環境のコピーを申請

開発環境

システム管理者DB管理者

本番DB環境のコピーを申請

各種リソースの確認

領域の確認と切り出し

ファイルシステムの構成

バックアップファイルのコピー

DBのリカバリー

DBのパラメータ調整

環境の引き渡し

ストレージ管理者

セキュリティの確保

数分Delphix

© 2016 Insight Technology, Inc. All Rights Reserved. 23

デモ ~プロビジョニング~

© 2016 Insight Technology, Inc. All Rights Reserved. 24

デモパターン3の説明

同時実行 fizzbuzz table

FizzBuzz

Fizz

Buzz

fizzbuzz table

fizzbuzz table

1. DBデータのクリーンナップ

2. Fizzの条件テスト

1. DBデータのクリーンナップ

2. Fizzの条件テスト

1. DBデータのクリーンナップ

2. Fizzの条件テスト

再掲

© 2016 Insight Technology, Inc. All Rights Reserved. 25

デモパターン3の説明

同時実行fizzbuzz table

FizzBuzz

Fizz

Buzzfizzbuzz table

fizzbuzz table

1. DBデータのクリーンナップ

2. Fizzの条件テスト

1. DBデータのクリーンナップ

2. Fizzの条件テスト

1. DBデータのクリーンナップ

2. Fizzの条件テスト

DB1

DB2

DB3

© 2016 Insight Technology, Inc. All Rights Reserved.

block pointerblock pointerblock pointer

開発 QA 受入テスト

1 TB

App Data Files

✓ 重複排除✓ 圧縮✓ 仮想化により領域追加消費なし✓ ユニークなブロックマッピング技術

0.3 TB

実データブロック

Delphixの仕組みソース ターゲット

© 2016 Insight Technology, Inc. All Rights Reserved.

block pointerblock pointerblock pointer

開発 QA 受入テスト

1 TB

App Data Files

✓ 重複排除✓ 圧縮✓ 仮想化により領域追加消費なし✓ ユニークなブロックマッピング技術

0.3 TB

実データブロック

Delphixの仕組みソース ターゲット

© 2016 Insight Technology, Inc. All Rights Reserved.

block pointerblock pointerblock pointer

開発 QA 受入テスト

ソース

1 TB

App Data Files

ターゲット

実データブロック

Delphixの仕組み

NFSmount

NFSmount

NFSmount

0.3 TB

© 2016 Insight Technology, Inc. All Rights Reserved.

block pointerblock pointerblock pointer

開発 QA 受入テスト

1 TB

App Data Files

0.3 TB

実データブロック

NFSmount

NFSmount

NFSmount

Copy-on-write

更新

変更blockを時間管理

ソース ターゲット

Delphixの仕組み

© 2016 Insight Technology, Inc. All Rights Reserved.

開発

NFS, iSCSImount

テスト

品質保証(QA)

DELPHIXエンジン

App Binaries, Files

DB Binaries, Files

Database

ソースシステム(本番環境など)

SHARED DATA

+

CHANGED DATA

高圧縮同期/差分情報コピー

(元データの1/3~1/4)

物理容量を消費せず仮想環境を複数複製

任意の時刻でプロビジョニング

自動で継続的なマスキング

コアテクノロジー仮想化システム テスト&開発

独立した環境(1人に1システム)

仮想環境作成が数分で完了

物理環境へのプロビジョニング

(V2P)も可能

エンドユーザーによるセルフサービスも可能

© 2016 Insight Technology, Inc. All Rights Reserved. 31

デモ ~セルフサービス~

© 2016 Insight Technology, Inc. All Rights Reserved. 32

実データブロック

block pointerblock pointerblock pointer

Delphixの仕組み開発 QA 受入テスト

NFSmount

NFSmount

NFSmount

© 2016 Insight Technology, Inc. All Rights Reserved. 33

実データブロック

block pointerblock pointerblock pointer

Delphixの仕組み開発 QA 受入テスト

NFSmount

NFSmount

NFSmount

© 2016 Insight Technology, Inc. All Rights Reserved. 34

実データブロック

block pointerblock pointerblock pointer

Delphixの仕組み開発 QA 受入テスト

NFSmount

NFSmount

NFSmount

© 2016 Insight Technology, Inc. All Rights Reserved. 35

高機能ストレージとの違い

Oracleアイランド

高機能ストレージ(共有ストレー

ジ)

Writable Snapshot

© 2016 Insight Technology, Inc. All Rights Reserved. 36

高機能ストレージとの違い

Oracleアイランド

高機能ストレージ(共有ストレー

ジ)

Writable Snapshot

+

NFS

DELPHIXエンジン

ソースシステム

データ仮想化システム

テストや開発での利用

NFS

インジェスト

アプリケーション

ファイル

データベース

© 2016 Insight Technology, Inc. All Rights Reserved. 37

Delphixの機能

過去

未来

完全セルフサービス

© 2016 Insight Technology, Inc. All Rights Reserved. 38

デモ ~複数のOracleとセルフサービス~

© 2016 Insight Technology, Inc. All Rights Reserved. 39

顧客事例

ソースシステム

注文入力 資材管理

注文入力

資材管理

© 2016 Insight Technology, Inc. All Rights Reserved. 40

顧客事例

ソースシステム

注文入力

資材管理

注文入力

資材管理

© 2016 Insight Technology, Inc. All Rights Reserved. 41

本番データとテストデータ

© 2016 Insight Technology, Inc. All Rights Reserved.

SHARED DATA

テスト

DELPHIXエンジンApp Binaries, Files

DB Binaries, Files

Database

ソースシステム(本番環境など)

+

CHANGED DATA

本番データをテストに?仮想化システム テスト&開発

© 2016 Insight Technology, Inc. All Rights Reserved.

SHARED DATA

テスト

DELPHIXエンジンApp Binaries, Files

DB Binaries, Files

Database

ソースシステム(本番環境など)

+

CHANGED DATA

本番データをマスキング仮想化システム テスト&開発

Data Masking

© 2016 Insight Technology, Inc. All Rights Reserved.

SHARED DATA

DELPHIX

+

CHANGED DATA

仮想化システム

Masked Data

SHARED DATA

テスト

DELPHIXApp Binaries, Files

DB Binaries, Files

Database

ソースシステム(本番環境など)

+

CHANGED DATA

本番データをマスキング仮想化システム テスト&開発

Data Masking

Replication

© 2016 Insight Technology, Inc. All Rights Reserved. 45

データマスキング アルゴリズムの種類Delphixのデータマスキングは複数のアルゴリズムから選択できます

アルゴリズム 説明

Secure Lookup 一貫した方法でマスク値を割り当てます。

Segmented Mapping 部分定義に基づいてデータを置換します。例)ACCOUNT NUMBERの初めの数桁はオリジナルのままのデータを保持し、残りの部分を乱数で置換。

Mapping 元データを順番に、ルックアップテーブルに予め設定している値にマップしてマスク値を決定。

Binary Lookup Secure Lookupアルゴリズムに近いが、全ファイルが特定のカラムにストアされているときのみ使用。

Min/Max データベースの値が指定された範囲の中にあることを確認することに利用。例えば年齢99歳以上という個人の特定を妨げます。

Tokenization ランダムに生成されたトークンデータと置換。トークン化環境でのみ使用することを想定。

Data Cleansing 元データがマスキングの前に標準的なフォーマットに置換することができます。たとえば、「Ariz」、「Az」、「Arizona」はすべて「AZ」に置換するようなことができます。

Free Text Redaction このアルゴリズムはフリーテキストのカラムを編集またはマスクします。ホワイトリストやブラックリストを使ってマスクする・しないを決定します。このアルゴリズムを使うには事前の相応の設定が必要になります。

不可逆

可逆

© 2016 Insight Technology, Inc. All Rights Reserved. 46

デモ ~データマスキング~

© 2016 Insight Technology, Inc. All Rights Reserved. 47

まとめ

データの仮想化と自動化で

快適なテスト・開発環境を実現しましょう

© 2016 Insight Technology, Inc. All Rights Reserved.

記載されている会社名、サービス名、製品名は、株式会社インサイトテクノロジーおよび各社の商標または登録商標です。

Copyright 2016 Insight Technology, Inc. All Rights Reserved.

48

ご清聴ありがとうございました