¿Cómo elegir un proveedor de datos para tu proyecto web3?

Más allá de los tokens de criptomonedas, la cadena de bloques también permite a los analistas obtener una imagen más clara de prácticamente cualquier proyecto de GameFi, NFT, mercado o protocolo DeFi, gracias a Footprint.

En Footprint, hemos creado una metodología que compila y agrega de manera significativa los datos sin procesar de la cadena de bloques. Y esto se aplica a las integraciones de programación.

1 . Formas de trabajar con los datos de la cadena de bloques

Primero hablemos sobre los métodos de integración de programación. Hay algunas formas diferentes de trabajar con datos de blockchain, y el enfoque elegido dependerá de sus necesidades y objetivos específicos. Aquí hay una descripción general rápida:

1.1 Exploradores de cadenas de bloques

Un explorador de cadena de bloques es un sitio web o una herramienta que le permite ver los datos almacenados en una cadena de bloques. Esta puede ser una forma rápida y fácil de acceder a información sobre transacciones específicas, bloques y otros datos en la cadena de bloques.

Los exploradores de cadenas de bloques pueden ser una herramienta útil para acceder y ver datos almacenados en una cadena de bloques, pero tienen algunas limitaciones para las integraciones de software. Aquí hay algunos ejemplos de cosas que pueden faltar a los exploradores de blockchain:

  • Centrado principalmente en datos sin procesar. Los exploradores de cadenas de bloques suelen mostrar datos sin procesar de la cadena de bloques. Eso requiere implementar las abstracciones sobre los datos sin procesar, lo que puede ser tedioso, especialmente para proyectos enfocados en la entrega en lugar de los detalles técnicos de ciertas cadenas de bloques.
  • Opciones de personalización: los exploradores de Blockchain generalmente están diseñados para ser fáciles de usar y fáciles de usar, lo que significa que es posible que no ofrezcan muchas opciones de personalización. Esto puede dificultar la adaptación del explorador a sus necesidades o preferencias específicas.
  • Funcionalidad de búsqueda avanzada: los exploradores de Blockchain a menudo tienen una funcionalidad de búsqueda básica, pero es posible que no admitan funciones de búsqueda más avanzadas, como operadores booleanos o expresiones regulares. Esto puede dificultar la búsqueda de información específica en la cadena de bloques.
  • Interactividad: muchos exploradores de blockchain son esencialmente herramientas de solo lectura.

Si bien los exploradores de blockchain pueden ser una forma útil de acceder y ver datos sin procesar de blockchain, tienen algunas limitaciones que debe tener en cuenta antes de decidir implementar su infraestructura de solución basada en ellos.

 1.2 Solución de indexación propia

Configurar su propio indexador para trabajar con datos de blockchain puede tener varias ventajas y desventajas potenciales. Aquí hay algunos ejemplos de cada uno:

Ventajas:

  • Personalización: cuando configura su indexador, tiene control total sobre cómo se indexan y se accede a los datos. Esto puede permitirle adaptar el indexador a sus necesidades y preferencias específicas.
  • Independencia: al configurar su indexador, no depende de un servicio de terceros para mantener y actualizar el índice. Esto puede proporcionar un mayor control y flexibilidad en su trabajo con datos de blockchain.
  • Seguridad mejorada: cuando configura su propio indexador, puede implementar sus propias medidas de seguridad para proteger los datos y evitar el acceso no autorizado.

Desventajas:

  • Complejidad: configurar su indexador puede ser un proceso complejo y lento, especialmente si es nuevo en el trabajo con la tecnología blockchain. Deberá comprender la tecnología subyacente y estar dispuesto a invertir el tiempo y el esfuerzo necesarios para poner en funcionamiento el indexador.
  • Mantenimiento: Una vez que haya configurado su indexador, será responsable de mantenerlo y actualizarlo. Esto puede requerir experiencia técnica y recursos continuos, lo que puede ser una desventaja si no tiene el conocimiento o el apoyo necesarios.
  • Costo: configurar su propio indexador puede ser costoso, ya que debe comprar el hardware y el software necesarios para ejecutar el indexador y pagar los costos asociados, como la electricidad y el ancho de banda.

En general, configurar su propio indexador para trabajar con datos de blockchain puede proporcionar un mayor control y personalización, pero también puede ser un proceso complejo y costoso. Es importante considerar cuidadosamente las ventajas y desventajas antes de decidir si este es el enfoque correcto.

1.3 Base de datos como servicio

El uso de un indexador de terceros para trabajar con datos de blockchain puede tener varias ventajas y posibles desventajas. Aquí hay algunos ejemplos de cada uno:

Ventajas:

  • Facilidad de uso: los indexadores de terceros generalmente están diseñados para ser fáciles de usar, lo que significa que puede comenzar a trabajar con los datos de blockchain rápidamente y sin tener que aprender muchos detalles técnicos o ejecutar su solución de indexación personalizada (no importa si es de desarrollo propio o un SDK listo para usar)
  • Funcionalidad de búsqueda avanzada: muchos indexadores de terceros ofrecen funciones de búsqueda avanzada, como operadores booleanos y expresiones regulares, lo que facilita la búsqueda de información específica en la cadena de bloques. Estos pueden tener muchas implementaciones reales, pero los datos indexados a menudo se agregan a una base de datos relacional, lo que implica un soporte completo de SQL.
  • Escalabilidad: los indexadores de terceros a menudo están diseñados para manejar grandes volúmenes de datos, lo que significa que pueden ser una buena opción si necesita buscar o acceder a datos de una gran cadena de bloques.
  • Confiabilidad: los indexadores de terceros suelen estar a cargo de organizaciones profesionales con los recursos y la experiencia para garantizar que el índice esté siempre actualizado y sea preciso. Las soluciones no siempre son descentralizadas, ya que están enfocadas a procesar grandes cantidades de datos, pero la gran mayoría son de código abierto, lo que aumenta la confianza del usuario en el servicio.

Desventajas:

  • Dependencia: al utilizar un indexador de terceros, confía en ese servicio para mantener y actualizar el índice. Si el indexador experimenta problemas técnicos o se desconecta, es posible que no pueda acceder a los datos de la cadena de bloques.
  • Personalización limitada: los indexadores de terceros generalmente están diseñados para ser fáciles de usar, lo que significa que es posible que no ofrezcan muchas opciones de personalización. Esto puede dificultar la adaptación del indexador a sus necesidades o preferencias específicas.
  • Costo: algunos indexadores de terceros pueden cobrar una tarifa por sus servicios, lo que puede ser una desventaja si trabaja con un presupuesto ajustado.

En resumen, usar un indexador de terceros para trabajar con datos de blockchain puede ser una opción conveniente y efectiva, pero limitada y, a veces, sin personalización.

1.4 Resumen

El objetivo de Footprint es principalmente bajar la barra para ingresar análisis y trabajar con datos web3. Este enfoque es un equilibrio entre la facilidad de uso y la flexibilidad. Es por eso que uno de nuestros servicios es DaaS (Base de datos como tipo de servicio). Antes de analizar más de cerca las ventajas de nuestro servicio, también veremos otra opción de implementación para el indexador, a saber, una solución autoescrita o SDK.

En los próximos capítulos, exploraremos la característica principal que deberían tener las API de blockchain de solo lectura. Veremos el problema desde diferentes ángulos y consideraremos soluciones alternativas. Algunas de las características más importantes de las API de blockchain incluyen las siguientes:

  • Facilidad de uso y flexibilidad
  • Escalabilidad
  • Compatibilidad

La facilidad de uso y la flexibilidad son dos características importantes de las API de blockchain. Una API de cadena de bloques que sea fácil de usar facilitará que los desarrolladores comiencen a crear aplicaciones basadas en cadena de bloques, permitiéndoles crear rápidamente prototipos y probar sus ideas sin perder mucho tiempo aprendiendo a usar la API.

La flexibilidad, por otro lado, se refiere a la capacidad de una API de cadena de bloques para admitir una amplia gama de casos de uso y aplicaciones. Una API de cadena de bloques flexible permitirá a los desarrolladores acceder a diferentes partes de la cadena de bloques y crear aplicaciones que interactúen con diferentes tipos de contratos inteligentes y otros activos basados ​​en la cadena de bloques. Esto puede ser especialmente importante para los desarrolladores que buscan crear aplicaciones que puedan usarse en diversas industrias y contextos.

En general, tener una API de cadena de bloques que sea fácil de usar y flexible puede facilitar a los desarrolladores la creación de aplicaciones innovadoras y útiles que pueden aprovechar las características y capacidades únicas de la tecnología de cadena de bloques.

1.5 Análisis de huella

La facilidad de uso y la flexibilidad están garantizadas por nuestra organización de datos, que afecta todos los aspectos de las interacciones con el ecosistema de Footprint. Footprint tiene una API construida sobre este modelo de datos que permite a los usuarios crear canalizaciones de datos completas para aplicaciones de análisis de datos y aprendizaje automático. Lo llamamos API de datos. Admitimos simultáneamente dos tipos de API y dos subtipos dentro de uno de ellos para cubrir la mayoría de los casos: Rest API y SQL API.

La API REST nos permite integrar rápidamente una aplicación, ya que cada punto final es un script preconstruido y codificado que hemos identificado como uno de los más populares. Todos los puntos finales vienen con herramientas fáciles de usar para filtrar, ordenar y paginar.

Gracias a la interfaz más adaptable de la API de SQL, puede obtener esto para casos más específicos. Una de las ventajas de utilizar las mismas consultas SQL tanto en la aplicación web como en la API es que puede simplificar el desarrollo y el mantenimiento. Al usar las mismas consultas en ambas interfaces, los desarrolladores pueden evitar la necesidad de escribir y mantener conjuntos separados de consultas para la aplicación web y la API. Esto puede ahorrar tiempo y esfuerzo y reducir el riesgo de errores o inconsistencias entre las dos interfaces.

Además, el uso de las mismas consultas SQL tanto en la aplicación web como en la API puede facilitar a los desarrolladores la creación de una experiencia de usuario perfecta. Mediante el uso de las mismas consultas, los desarrolladores pueden garantizar que los datos a los que acceden y manipulan la aplicación web y la API sean coherentes, lo que permite a los usuarios cambiar entre las dos interfaces sin encontrar incoherencias o interrupciones.

 1.6 Otras plataformas

Muchas soluciones analíticas alternativas permiten al usuario analizar diferentes redes de acuerdo con varios niveles de requisitos. Sin embargo, en su mayoría, las soluciones alternativas tienden a ir a los extremos, implementando un producto muy flexible que requiere conocimiento de lenguajes de consulta o incluso lenguajes de programación o una interfaz muy simple con scripts preparados y, en consecuencia, poca flexibilidad.

Soluciones como Moralis y Quicknode solo tienen una interfaz REST API. Aunque hay muchos puntos finales, aún limita al desarrollador en la flexibilidad de los datos devueltos.

Dune ha presentado recientemente su API. Esta solución asíncrona implica la existencia preliminar de una consulta en la plataforma bajo un determinado id (dune.com/query/{{query id}}), por lo que es posible ejecutar consultas en forma de SQL. La principal limitación de esta solución es la necesidad de modificar previamente el SQL en la plataforma para que la consulta actualizada se ejecute posteriormente.

Chainbase lanza SQL API de la misma manera que Footprint. Aún así, a diferencia de Footprint, Chainbase no tiene un ETL tan sofisticado, por lo que las consultas SQL solo se pueden ejecutar para transacciones sin procesar.

2. escalabilidad

Las API de Blockchain deberían poder manejar grandes volúmenes de datos y transacciones, lo que permite a los desarrolladores crear aplicaciones que muchos usuarios pueden usar simultáneamente.

 2.1 Análisis de huella

 2.1.1 Pila de datos abierta moderna

El equipo de Footprint ha realizado varias actualizaciones arquitectónicas desde su lanzamiento en agosto de 2021, gracias a su gran capacidad para explorar e iterar la tecnología. En menos de un año y medio, el equipo ha podido implementar estos cambios con éxito. Este es un testimonio de la habilidad y la experiencia del equipo en tecnología y ciencia de datos.

A través de la experimentación, Footprint realizó de manera iterativa tres actualizaciones arquitectónicas globales, y finalmente llegó a una arquitectura que cumple con los requisitos de los diversos casos de uso de la plataforma. Más información sobre la evolución de la implementación se puede encontrar en el siguiente artículo:

https://www.footprint.network/article/iceberg-spark-trino-a-modern-opensource-data-stack-for-blockchain-fp-HGZpPm3D

 2.1.2 Ejecuciones sincronizadas y asíncronas

Dentro de Footprint, hay dos modos para ejecutar consultas a la API de SQL: sincrónico y asincrónico. Las llamadas de API al punto final sincrónico implican que los servidores de Footprint ejecutarán la consulta SQL tan pronto como se reciba una solicitud HTTP de la aplicación, manteniendo así la conexión. Esto tiene sentido cuando se usan solicitudes ligeras, ya que en este caso, la aplicación no tiene que esperar mucho para ejecutarse. Los detalles se pueden encontrar en la siguiente página:

https://docs.footprint.network/reference/post_native

Para solicitudes pesadas, se recomienda utilizar una solicitud asincrónica. A diferencia de una síncrona, la aplicación cliente no tiene que mantener una conexión con el servidor durante la ejecución. En cambio, puede obtener la identificación de la solicitud de inmediato, según la cual, después de un tiempo, obtiene los resultados de la ejecución por separado. Como parte de la API asíncrona, se deben cubrir dos pasos para obtener los datos: el siguiente punto final se usará para enviar una "orden" para la ejecución de SQL:

https://docs.footprint.network/reference/post_native-async

El segundo paso es enviar una solicitud para recibir resultados por el identificador obtenido al acceder al punto final anterior. El punto final para este segundo paso se describe en la página siguiente:

https://docs.footprint.network/reference/get_native-execution-id-results

2.2 Otras soluciones

DuneV2 cambia toda la arquitectura de la base de datos. Dune ahora está pasando de una base de datos PostgreSQL a una instancia de [[Apache Spark]] alojada en [[Databricks]]. Solo API asíncrona.

3. Compatibilidad

Las API de Blockchain deben ser compatibles con una amplia gama de lenguajes de programación y entornos de desarrollo para que los desarrolladores puedan usar las herramientas y los marcos con los que están más familiarizados.

REST es más fácil de integrar ya que cada lenguaje de programación tiene muchas bibliotecas que brindan un trabajo cómodo con este tipo de API. Sin embargo, al final, tanto las API de SQL como REST funcionan sobre HTTP, por lo que la experiencia de desarrollo es casi idéntica con respecto al envío de una solicitud de forma predeterminada.

4. Resumen

Como hemos analizado, en la mayoría de los casos, es suficiente que una aplicación use soluciones DaaS listas para usar porque pueden devolver abstracciones (no solo datos sin procesar) y ahorrar mucho tiempo y dinero, ya que finalmente permiten que los equipos centrarse no en la infraestructura sino en el valor del producto. Pasando por varias soluciones en el mercado DaaS,

Footprint parece ser el más óptimo para integrar, ya que tiene el modelo más flexible para generar solicitudes a la vez que es fácil de usar y también tiene la moderna pila de datos de código abierto bajo el capó, lo que garantiza una ejecución ininterrumpida y, lo que es más importante, rápida. de las solicitudes más complejas.

Publicado en: ECONOMÉTRICOS, Web3

Lea nuestro último informe de mercado

Fuente: https://cryptoslate.com/how-to-choose-a-data-provider-for-your-web3-project/