3 ms·
> Smart contracts are, in database terminology, stored procedures that run one of the various incarnations of distributed databases these technologies are built
by timdaub 5y ago
> Smart contracts are, in database terminology, stored procedures that run one of the various incarnations of distributed databases these technologies are built on.
This is a classic misrepresentation of the properties of a smart contract. It's nothing like a procedure and the environment that its executed is different.
A database procedure can be deployed, run and deleted by anyone being a database admin. Anyone else cannot even see the procedures. A procedure can be edited mid-lifecycle too. E.g. we cannot see DB procedures of FB, neither can we interact with them.
A database has mutable state. And every data base makes trust assumptions about the nodes and their operators. You wouldn't invite a malicious actor to run a node in your regular DB cluster.
Anyone can host a blockchain node but not all state can be arbitrarily edited. That may require "work" as in "Proof of Work".
A smart contract can be published by anyone, be run by anyone and it cannot be updated. And it's internal state can be read after any transaction. DB procedures have no internal state that's persisted. They are functional and pure. They update the DB records.
Smart contracts and DB procedures are very different.