No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Aprende todo un fin de semana sin pagar una suscripci贸n 馃敟

Aprende todo un fin de semana sin pagar una suscripci贸n 馃敟

Reg铆strate

Comienza en:

3D
20H
15M
5S

Accounts, todo es Accounts en Solana

3/20
Recursos

Solana es una Blockchain innovadora en varios sentidos, desde el funcionamiento y optimizaci贸n de la red, sus protocolos de consenso, hasta el m茅todo de almacenamiento de la informaci贸n que implementa.

Persistencia de datos en Solana

En otras Blockchains como Ethereum, la informaci贸n se guarda de forma Stateful, o sea, los contratos inteligentes almacenan el estado de la informaci贸n. Solana lo hace en forma Stateless, separa la l贸gica del almacenamiento de datos en lo que denomina como 鈥渁ccounts鈥, o cuentas.

Podemos entender las cuentas como archivos, similar al sistema de archivos de un sistema operativo, donde tanto los programas como la informaci贸n que consumen su guarda en archivos binarios. En Solana, todo es una cuenta. Desde una transacci贸n, un contrato inteligente, informaci贸n que queremos guardar en la Blockchain, hasta otros tipos de cuenta nativa, propias del funcionamiento del core de Solana.

Los contratos inteligentes derivan la informaci贸n a las cuentas y hacen uso de estas para ejecutar su l贸gica. Las cuentas tambi茅n pueden ser compartidas entre m煤ltiples contratos, optimizando el uso de la red.

Solana, al igual que el lenguaje de programaci贸n Rust, busca optimizar el utilizaci贸n de la memoria. Cada byte cuenta y las accounts tienen un tama帽o m谩ximo de 10 MB. La administraci贸n del tama帽o de una cuenta ser谩 crucial para el desarrollo de un programa.

Estructura de una cuenta

Las cuentas en Solana tienen la siguiente estructura de informaci贸n:

  • Lamports: Representaci贸n m铆nima de la unidad monetaria de la Blockchain de Solana conocida como SOL. A lo igual que Wei en Ethereum o los Satoshis en Bitcoin. 1 Lamport = 0,0000000000582 SOL
  • Owner: Due帽o de la cuenta con permisos para acceder a la informaci贸n.
  • Executable: Booleano que indica si la cuenta se trata de un contrato para permitir su ejecuci贸n o no.
  • Data: Datos propios que se guardan en la cuenta. Si la cuenta es un contrato, se almacena la l贸gica del mismo.
  • rent_rpoch: Renta o alquiler que hay que pagar a la red para mantener la cuenta en memoria de cada validador por X tiempo. Es una especie de Garbage Collection para limpiar los datos que ya no se utiliza en la red.
{
    lamports: number,
    owner: string,
    executable: boolean,
    data: Object,
    rentEpoch: number,
}

Conclusi贸n

Los datos en la Blockchain de Solana se almacenan como todo un sistema de archivos de un sistema operativo, donde los mismos tienen un due帽o, peso en bytes y una serie de permisos de lectura y ejecuci贸n.

Mantener la l贸gica separada de la informaci贸n es el m茅todo que Solana implementa para desarrollar programas. Totalmente diferente a como lo realizan otras Blockchains, cambiando as铆 el paradigma de programaci贸n.


Contribuci贸n creada por: Kevin Fiorentino (Platzi Contributor).

Aportes 2

Preguntas 0

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

Lamports: Representaci贸n m铆nima de una unidad monetaria de la moneda SOL de Solana. A lo igual que Wei en Ethereum o los Satoshis en Bitcoin.
Owner: Due帽o de la cuenta con permisos para acceder al mismo.
Executable: Booleano que indica si la cuenta posee un programa o no.
Data: Datos de la cuenta.
rent_rpoch: Renta o alquiler que hay que pagar a la red para mantener la cuenta en memoria de cada validador por X tiempo. Es una especie de Garbage Collector para limpiar los programas que ya no se utilizan en la red.

Muy interesante jejejejje como un microservicio