Discussion (350 words - APA format) + 3 Questions
Professor MichaelG. Solomon
BLCN 631–BlockchainImplementation
EFD Chapter 12–Integrating Non-BlockchainApps with Ethereum
HybridApplications
- Some blockchain apps areblockchain only
- Most aren’t
- Goal: integrate legacy appsand blockchain
- Making a legacy app talk to asmart contract
- Sounds like a simple API call
- But wait … there’s more
ComparingBlockchainandDatabase
- Some define blockchain as adecentralized database
- This is just wrong
- Blockchain does store dataand is decentralized
- But there are lots ofdifferences
- Several prominent featuresdiffer
- Integrating differentarchitectures takes planning
Database vs Blockchain
|
Feature |
Traditional Database |
Blockchain |
|---|---|---|
|
Control |
One central database copy-centralized control |
Each node stores a complete copy of theblockchain-decentralized control |
|
Data format |
Data schema defines data format |
No schema-each smart contract decideshow to store its data |
|
Data update |
Create, Read, Update, Delete (CRUD) |
Read and Append only |
|
Performance |
Optimized for short response time andhigh-throughput |
Not optimized for performance |
|
Confidentiality |
Centrally managed permissions |
No default confidentiality for pubicblockchains |
|
Storage cost |
Up-front infrastructure costs |
Per-transaction costs |
|
Integrity andtransparency |
Dependent on DBMS and application |
Consensus and immutability provide integrity |
|
Resilience |
Possible with substantial investment |
Each node stores a complete copy of theblockchain |
IntegrationDesignConsiderations
- Execution flow
- Smart contracts runs on every EVM
- Identity mapping
- Maintain identity across boundaries
- Level of mapping confidence
- Transaction scoping
- No undo in a blockchain
- Blockchain integration generally atend of DB trx
IntegrationApproach
- Identify
- Data requirements
- Transaction requirements
- Identity requirements
- Design integration software
- Write or modify smart contracts
- Test, test, test
- Deploy (and test more)
Summary
- Exploring differencesbetween blockchain anddatabases
- Identifying differencesbetween blockchain andtraditional applications
- Integrating traditionalapplications withEthereum
- Testing and deployingintegrated blockchainapps