Flujo de Datos NEAR

4 min read
To Share and +4 nLEARNs

Explicación del Video ​​

En el video a continuación, hemos tratado de brindar una descripción general rápida del concepto principal de cómo fluyen los datos en la cadena de bloques NEAR Protocol. Encontrarás una versión en texto debajo del video.

Versión en Texto

El flujo de datos de la cadena de bloques del Protocolo NEAR puede ser un poco complicado a simple vista. Pero es bastante sencillo y sigue reglas bien definidas. En este artículo, veremos más de cerca cómo fluyen los datos en la cadena de bloques del Protocolo NEAR.

De hecho, cualquier flujo de blockchain se puede representar como una línea de tiempo infinita que tiene un comienzo pero no un final.

Blocks Timeline

Y aparece un bloque en esa línea de tiempo con algún intervalo. Cada uno de estos bloques contiene la información sobre el anterior, creando así una cadena de bloques.

El protocolo NEAR tiene una naturaleza fragmentada (sharded), lo que significa que más de una red paralela, denominada Shard, puede ser en vivo en cualquier momento. Y cada Fragmento produce una parte de un bloque en un intervalo determinado. Un bloque en ma cadena de bloques NEAR es una colección de fragmentos de bloques de todos los fragmentos. El fragmento de bloque se reduce a Chunk en la documentación del Protocolo NEAR.

Volviendo al flujo de datos en sí. Lo mejor que podemos hacer es imaginar pistas como las que podríamos ver en las aplicaciones de edición de audio/video. Cada fragmento tiene su propio conjunto de pistas. La pista superior es para Chunks. Aparecen sin importar qué, en un intervalo dado; para NEAR Blockchain el intervalo es de aproximadamente un segundo. Se producen fragmentos incluso si no sucede nada en la cadena de bloques.

Timeline as tracks

Pero, ¿qué queremos decir cuando decimos que algo está pasando? Queremos decir que algo ha desencadenado algunos cambios en la cadena de bloques. Y el método más conocido para activar cualquier cambio es enviar una Transacción a la cadena de bloques con instrucciones de lo que queremos cambiar y quién ha solicitado esos cambios.

Una transacción debe construirse, firmarse y enviarse a la cadena de bloques. Una vez ejecutado esperamos tener un resultado – ExecutionOutcome. Oh, eso es simple. Pero no es realmente preciso para NEAR Blockchain.

Transaction execution

Al principio hay una Transacción, contiene instrucciones que queremos que se ejecuten en la cadena de bloques. La transacción se envía a NEAR Blockchain.

Y sí, se ejecuta allí inmediatamente PERO el resultado inmediato de la ejecución de la transacción siempre es sólo un reconocimiento de que se ejecutará en la cadena; esta solicitud de ejecución interna se conoce como Recibo o Receipt. Puede pensar en el Receipt como una transacción interna que existe para pasar información a través de fragmentos.

Volvamos a las pistas para ver el ejemplo.

Suponiendo que tenemos dos cuentas viviendo en diferentes Shards alice.near y bob.near. alice.near crea una Transaction para enviar algunos tokens a bob.near. La transaction se ejecuta inmediatamente y el resultado de ejecución (ExcecitionOutcome) de la transaction es siempre un recibo.

Pero este recibo no se puede ejecutar aquí, porque bob.near no vive en el mismo fragmento que alice.near, por lo que el recibo (Receipt) debe ejecutarse en el fragmento (Shard) del recibo (Receipt). Entonces, el recibo se está moviendo al fragmento al que pertenece bob.near.

En el Shard de destino se ejecuta el Receipt y el proceso se considera finalizado.

LA EXPLICACIÓN AQUÍ ES SIMPLIFICADA

Consulta el artículo Flujo de transferencia de tokens

Así que el esquema final se verá así:

Complete scheme of sending tokens from an account from one Shard to an account on another

Resumen​

Hemos aprendido los principios fundamentales de cómo fluyen los datos en NEAR Protocol. Hemos descubierto que las Transacciones se ejecutan y el Resultado de la Ejecución de la Transacción es siempre un Recibo.

Ahora sabemos que Receipt es un activo interno principal para la cadena de bloques del Protocolo NEAR y tiene el poder de viajar entre Shards. Aprendimos el flujo de datos NEAR en un ejemplo simple. Por supuesto, en la vida real, con transacciones más complejas, que implican llamadas entre contratos, habrá más recibos (Receipts) y resultados de ejecución (ExecutionOutcomes).

Esperamos que este artículo sea útil y que puedas crear tus dApps e indexadores fácilmente con el conocimiento de cómo fluyen los datos en el Protocolo NEAR.

19
Ir arriba