User Tools

Site Tools


dido:public:s_cli:05_contents:01_prt:02_basics:02_solstack:didostack:start

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
dido:public:s_cli:05_contents:01_prt:02_basics:02_solstack:didostack:start [2021/08/17 13:10]
murphy
dido:public:s_cli:05_contents:01_prt:02_basics:02_solstack:didostack:start [2021/08/18 11:40] (current)
murphy
Line 2: Line 2:
 [[dido:​public:​s_cli:​05_contents:​01_prt:​02_basics:​start| Return to DIDO CLI Background]] [[dido:​public:​s_cli:​05_contents:​01_prt:​02_basics:​start| Return to DIDO CLI Background]]
  
-The proposed DIDO Solution Stack is modeled after the [[dido:​public:​s_cli:​05_contents:​01_prt:​02_basics:​02_solstack:​dbstack:​start| Database Solution Stack]]. The core features of both stacks is persistent storage of data and the modification of data using [[dido:​public:​ra:​1.2_views:​2_tech_views:​2-nodenet:​3_nodearch:​2_ido:​2_trans | Transaction]]. The major difference is that the DIDO [[dido:​public:​ra:​xapend:​xapend.a_glossary:​d:​data_object|data objects]] Transactions are journaled with each Transaction being distributed to all the [[dido:​public:​ra:​xapend:​xapend.a_glossary:​n:​node|nodes]] in the [[dido:​public:​ra:​xapend:​xapend.a_glossary:​n:​node_network|node network]]. The details about how the Transactions ​ are bundled, validated and verified vary amongst [[dido:​public:​ra:​1.2_views:​2_tech_views:​2-nodenet:​2_node:​3_platform | DIDO platforms]]. For example, some [[dido:​public:​ra:​xapend:​xapend.a_glossary:​p:​platform|platforms]] bundle the Transactions into a block and the block is distributed once it has been verified by a [[dido:​public:​ra:​xapend:​xapend.a_glossary:​m:​mining|mining]] operation. Others use "​neighboring"​ nodes to valid and verify the Transactions. ​+The proposed DIDO [[dido:​public:​ra:​xapend:​xapend.a_glossary:​s:​solutionstack|Solution Stack]] is modeled after the [[dido:​public:​s_cli:​05_contents:​01_prt:​02_basics:​02_solstack:​dbstack:​start| Database Solution Stack]]. The core features of both stacks is persistent storage of data and the modification of data using [[dido:​public:​ra:​1.2_views:​2_tech_views:​2-nodenet:​3_nodearch:​2_ido:​2_trans | Transaction]]. The major difference is that the DIDO [[dido:​public:​ra:​xapend:​xapend.a_glossary:​d:​data_object|data objects]] Transactions are journaled with each Transaction being distributed to all the [[dido:​public:​ra:​xapend:​xapend.a_glossary:​n:​node|nodes]] in the [[dido:​public:​ra:​xapend:​xapend.a_glossary:​n:​node_network|node network]]. The details about how the Transactions ​ are bundled, validated and verified vary amongst [[dido:​public:​ra:​1.2_views:​2_tech_views:​2-nodenet:​2_node:​3_platform | DIDO platforms]]. For example, some [[dido:​public:​ra:​xapend:​xapend.a_glossary:​p:​platform|platforms]] bundle the Transactions into a block and the block is distributed once it has been verified by a [[dido:​public:​ra:​xapend:​xapend.a_glossary:​m:​mining|mining]] operation. Others use "​neighboring"​ nodes to valid and verify the Transactions. ​
  
 <​figure>​ <​figure>​
Line 21: Line 21:
     * **DIDO Platform CLI** - Sme DIDO platforms offer their own proprietary CLI. There have been efforts to "​re-use"​ a particular DIDO Platform CLI on different Platforms.     * **DIDO Platform CLI** - Sme DIDO platforms offer their own proprietary CLI. There have been efforts to "​re-use"​ a particular DIDO Platform CLI on different Platforms.
     * **DIDO API** - Many DIDO Platforms provide [[dido:​public:​ra:​xapend:​xapend.a_glossary:​a:​api|APIs]] allowing a programmer to directly access a DIDO. For example, [[dido:​public:​ra:​xapend:​xapend.a_glossary:​e:​ethereum|Ethereum]] provides a __Javascript API Libraures__,​ [[https://​ethereum.org/​en/​developers/​docs/​apis/​javascript/​]] or __Ethereum JSON RPC__, [[https://​ethereumbuilders.gitbooks.io/​guide/​content/​en/​ethereum_json_rpc.html]].     * **DIDO API** - Many DIDO Platforms provide [[dido:​public:​ra:​xapend:​xapend.a_glossary:​a:​api|APIs]] allowing a programmer to directly access a DIDO. For example, [[dido:​public:​ra:​xapend:​xapend.a_glossary:​e:​ethereum|Ethereum]] provides a __Javascript API Libraures__,​ [[https://​ethereum.org/​en/​developers/​docs/​apis/​javascript/​]] or __Ethereum JSON RPC__, [[https://​ethereumbuilders.gitbooks.io/​guide/​content/​en/​ethereum_json_rpc.html]].
-    * **DIDO Configuration** - There are always two aspects to configuring a DIDO. The first is setting up the environment externally to the DIDO Platform (i.e., downloading the software, running a wizard to install and configure the DIDO, etc), the second is the startup, upgrade, shutdown, etc of the DIDO Platform.+    * **DIDO Configuration** - There are always two aspects to configuring a DIDO. The first is setting up the environment externally to the DIDO Platform (i.e., downloading the software, running a [[dido:​public:​ra:​xapend:​xapend.a_glossary:​w:​wizard|wizard]] ​to install and configure the DIDO, etc), the second is the startup, upgrade, shutdown, etc of the DIDO Platform.
     * **DIDO Data Definition** - A DIDO provides a way to define Types, objects, oracles, exchanges, aggregates, and smart contracts, etc. to the DIDO.     * **DIDO Data Definition** - A DIDO provides a way to define Types, objects, oracles, exchanges, aggregates, and smart contracts, etc. to the DIDO.
     * **DIDO Data Manipulation** - A DIDO provides a way to manipulate the inserting data into DIDO Objects, making for deletion objects, creating a Transaction to update the objects and associated data from different objects together.     * **DIDO Data Manipulation** - A DIDO provides a way to manipulate the inserting data into DIDO Objects, making for deletion objects, creating a Transaction to update the objects and associated data from different objects together.
Line 88: Line 88:
 </​figure>​ </​figure>​
  
-In the third scenario, an application uses a DIDO Platform specific library that specifically supports the coding language requires of the application (i.e., [[dido:​public:​ra:​xapend:​xapend.a_glossary:​j:​javascript|Javascript]],​ Python, Java, etc) to interact with the DIDO Platform generally these languages are imbedded in Web Pages or can be used within the language specific applications. The application can be a thicker client or a lightweight browser application. The client talks to the server usually [[dido:​public:​ra:​xapend:​xapend.b_stds:​tech:​w3c:​xml | XML]] or more recently [[dido:​public:​ra:​xapend:​xapend.b_stds:​tech:​ietf:​json | JSON]].+In the third scenario, an application uses a DIDO Platform specific library that specifically supports the coding language requires of the application (i.e., [[dido:​public:​ra:​xapend:​xapend.a_glossary:​j:​javascript|Javascript]],​ Python, Java, etc) to interact with the DIDO Platform generally these languages are imbedded in Web Pages or can be used within the language specific applications. The application can be a thicker client or a lightweight browser application. The client talks to the [[dido:​public:​ra:​xapend:​xapend.a_glossary:​s:​server|server]] ​usually [[dido:​public:​ra:​xapend:​xapend.b_stds:​tech:​w3c:​xml | XML]] or more recently [[dido:​public:​ra:​xapend:​xapend.b_stds:​tech:​ietf:​json | JSON]].
  
 <figure applicationServerModel>​ <figure applicationServerModel>​
dido/public/s_cli/05_contents/01_prt/02_basics/02_solstack/didostack/start.1629220247.txt.gz · Last modified: 2021/08/17 13:10 by murphy