Building Enterprise Blockchain...

Post on 20-May-2020

5 views 0 download

Transcript of Building Enterprise Blockchain...

Building Enterprise Blockchain

ApplicationsOverview for implementation

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

Brian PlatzCo-founder / Co-CEO

Fluree PBC

@bplatz

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

Blockc

hain

Types

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

Validated Transparent “Trustless” Data sharing

Decentralized Immutable Tamper Resistance

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

Private

FlureeDB

BigchainDB

Enterprise Ethereum

Ethereum

Hyperledger Fabric

Bitcoin

Data Oriented Transactional

Public

Blockchain Types

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

Consensus

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

POW

POS

POA

RAFT

PBFT

PAXOS

Public

PrivateNetwork is

“known”

Network is

“unknown”

Consensus Types

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

Application

Data Store

What is an enterprise app?

Client Tier

Application Tier

Data Tier

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

Client Tier

Application Tier

Data Tier

Blockchain Network

Transactional Aspects

Transactional

Metadata

Application

Data Store

Enterprise App+Blockchain

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

The Data Problem

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

The Data Problem

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

The Data Problem

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

The Data Problem

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

The Cost of Consensus

1GB

= ?

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

1. Store on-chain

2. Store in Traditional DB

3. Use IPFS

‣ No integration needed ‣ Cost

‣ App-level exposure

(often done through a

database)

‣ Transaction-oriented

blockchain use case

‣ Very, very little data

associated with

transaction

ADVANTAGES DISADVANTAGES USE WHEN

Use Case: Payments, CryptoCurrency Transactions

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

1. Store on-chain

2. Store in Traditional DB

3. Use IPFS

ADVANTAGES DISADVANTAGES USE WHEN

Use Case: Anytime more than a “speck” of data is needed

‣ *Unlimited Data Storage

‣ Data separated,

integration required

‣ Reproducibility of

original data critical

‣ Reproducibility of

hashing approach (sort,

character, encoding,

algorithm)

‣ ??

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

1. Store on-chain

2. Store in Traditional DB

3. Use IPFS

ADVANTAGES DISADVANTAGES USE WHEN

Use Case: Leans towards object storage (pictures, etc.), data that doesn’t “build” on predecessors.

‣ You Need Object Storage

‣ *Unlimited Data

Storage

‣ Hashing Approach

Standardization

‣ Data separated,

integration required

‣ Reproducibility of

original data critical

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

ADVANTAGES DISADVANTAGES USE WHEN

Use Case: Supply Chain Management, Insurance Interoperability, Financial Technology, Government Records Mgmt

‣ Transactional

Alternatives

‣ *Unlimited On-

chain data storage

‣ Hashing Approach

standardization

‣ Query engine

‣ Flexible Schema

‣ Meta-data/data-

oriented (most

business

applications)

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

GRAPH QUERY

CONSENSUS TIME TRAVEL

IMMUTABLE LEDGER

DATABASEBLOCKCHAIN

Blockchain, Meet Database.

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

Application

Data Store

What is an enterprise app?

Client Tier

Application Tier

Data Tier

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

Client Tier

Application Tier

Data Tier

Blockchain Network

Transactional Aspects

Transactional

Metadata

Application

Data Store

Enterprise App+Blockchain

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

Client Tier

Application Tier

Data Tier

Application

Data Store

Enterprise App+FlureeDB

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

TX

Development

Redundant, Scalable Decentralization

TX

TX

Run as a single server

Internal External

Query Peer

Query Peer

Query Peer

Query Peer

Query Peer

Query Peer

Query Peer

Query Peer

Query Peer

Query Peer

Transactor

Deployment Options

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

1. Schema

2. Spec

3. Programming Logic

If Product Being Updated

Is Connected to Company X

And Person updating Product

Is Connected to Company X

Then Allow

Else Deny

Blockchain Rules

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

Internal Blockhain

Federated Blockchain

Global Blockchain

Single Application

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

[{

“_id”: “John”,

“email”: “john@flur.ee”

}]

ENTITY ATTRIBUTE VALUE ADD BLOCK

123 user/email johnny@flur.ee FALSE 23

123 user/email john@flur.ee TRUE 23

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

#ITDEVCONNECTIONS | ITDEVCONNECTIONS.COM

Thank you.

/company/FlureePBC

@FlureePBC

/flureesupport@flur.ee

http://flur.ee docs.flur.ee