Crear Visualizaciones
Esta página mostrará cómo puedes crear visualizaciones con Hubble y Google Looker Studio.
Al final del tutorial, habrás creado dos gráficos que ayudarán a visualizar la distribución de entradas de datos de contrato temporales frente a persistentes y su caducidad.
Como puedes ver, las entradas de datos de contratos persistentes representan aproximadamente el 25% de todas las entradas de datos de contratos, siendo el resto temporales. También hay muchas más entradas de datos de contrato temporales que han caducado. Esto es esperado porque las entradas temporales no pueden ser reemplazadas, mientras que las persistentes pueden ser reemplazadas/restauradas. Para más información, puedes leer sobre Archivado de Estado y el Ciclo de Vida de Datos de Contrato.
Condiciones Previas
- Asegúrate de que te has conectado a Hubble siguiendo las instrucciones en la página de Conexión
 - Tienes acceso a Google Looker Studio
 - Has leído y comprendes las Prácticas Recomendadas generales para consultar datos de BigQuery
 
Crear un Informe en Looker Studio
Adjuntar Fuentes de Datos a Looker Studio
- Selecciona 
Crear --> Fuente de datos 
- Encuentra y selecciona el 
Conector de Google BigQuery 
- Encuentra las tablas deseadas a las que quieras conectar. Para este ejemplo, querrás añadir una fuente de datos para:
crypto-stellar.crypto_stellar.contract_data
 
Crear un Nuevo Informe (Tablero)
- Seleccionar 
Crear --> Informe 
- Añade tus fuentes de datos de arriba
 
- Inserta un 
Gráfico de Tarta 
- Elige 
contract_datacomo laFuente de datos 
- Elige 
closed_atcomo laDimensión de Rango de Fechasycontract_durabilitycomo laDimensión 
- Ahora deberías tener un gráfico de tarta que muestra el porcentaje de Durabilidad de Datos de Contrato Temporales frente a Persistentes
 
Usar SQL Personalizado para Crear un Gráfico
- En tu informe, haz clic en 
Añadir Datos, que estará cerca de la parte inferior derecha de tu ventana 
- Selecciona 
BigQueryy eligeCONSULTA PERSONALIZADAy selecciona tuProyecto de Facturacióndeseado donde se cobrará la consulta 
- Añade la siguiente consulta y haz clic en 
Añadir 
-- Find the latest ledger sequence within Hubble.
-- This may be slightly behind the actual Stellar latest ledger
-- because Hubble is scheduled to run and insert data at 10 minute intervals
with latest_ledger_in_hubble as (
  select
    max(sequence) as latest_ledger_sequence
  from `crypto-stellar.crypto_stellar.history_ledgers`
),
-- Find all the ttl that have expired
expired_ttl as (
  select
    key_hash
    , live_until_ledger_seq
    -- Saving the date to aggregate on at the final step of the query
    , date(closed_at) as ledger_date
  from `crypto-stellar.crypto_stellar_dbt.ttl_current`
  where true
    -- Filter for expired entries only with the use of latest_ledger_sequence
    and live_until_ledger_seq < (select latest_ledger_sequence from latest_ledger_in_hubble)
)
-- Aggregate based on the month and contract durability type
select
  date_trunc(et.ledger_date, month) as month_agg
  , cd.contract_durability
  , count(1) as expired_entry_count
from expired_ttl as et
  join `crypto-stellar.crypto_stellar_dbt.contract_data_current` as cd
    on et.key_hash = cd.ledger_key_hash
where true
  -- Optionally filter for a specific date/date range
  and et.ledger_date between '2024-02-01' and '2024-10-31'
group by 1,2
order by 1 desc, 2
- Inserta 
Gráfico de Columnas 
- Selecciona lo siguiente:
 
BigQuery SQL Personalizadocomo tuFuente de datosmonth_aggcomo laDimensióncontract_durabilitycomo laDimensión de Desgloseexpired_entry_countcomo laMétrica
- Ahora deberías tener un gráfico de columnas (gráfico de barras) que muestra las entradas de contratos Soroban que han caducado
 
Aplicar un Filtro Global
- Haz clic en 
+Añadir filtro rápidopara aplicar un filtro en todo el informe 
- Selecciona 
contract_durabilitypara filtrar por los valores decontract_durability 
- Selecciona solo 
ContractDataDurabilityPersistenty haz clic enAplicar 
- Tus gráficos deberían ahora estar filtrados y mostrar solo datos de 
ContractDataDurabilityPersistent 
