mirror of
https://github.com/FlipsideCrypto/axelar-models.git
synced 2026-02-06 11:41:44 +00:00
94 lines
2.1 KiB
SQL
94 lines
2.1 KiB
SQL
{{ config (
|
|
materialized = "view",
|
|
post_hook = fsc_utils.if_data_call_function_v2(
|
|
func = 'streamline.udf_rest_api',
|
|
target = "{{this.schema}}.{{this.identifier}}",
|
|
params ={ "external_table" :"axelscan_day_counts_gmp",
|
|
"sql_limit" :"100",
|
|
"producer_batch_size" :"20",
|
|
"worker_batch_size" :"20",
|
|
"sql_source" :"{{this.identifier}}",
|
|
"order_by_column": "date_day" }
|
|
)
|
|
) }}
|
|
|
|
WITH dates_hist AS (
|
|
|
|
SELECT
|
|
A.date_day,
|
|
DATE_PART(
|
|
epoch_second,
|
|
A.date_day
|
|
) AS fromTime,
|
|
DATE_PART(epoch_second, DATEADD (DAY, 1, A.date_day)) -1 AS toTime
|
|
FROM
|
|
{{ source(
|
|
'crosschain',
|
|
'dim_dates'
|
|
) }} A {# LEFT JOIN {{ ref('streamline__axelscan_day_counts_gmp_complete') }}
|
|
b
|
|
ON A.date_day = b.date_day #}
|
|
WHERE
|
|
A.date_day BETWEEN '2022-05-09'
|
|
AND SYSDATE() :: DATE - 2 {# AND b.date_day IS NULL #}
|
|
),
|
|
dates_recent AS (
|
|
SELECT
|
|
date_day,
|
|
DATE_PART(
|
|
epoch_second,
|
|
date_day
|
|
) AS fromTime,
|
|
DATE_PART(epoch_second, DATEADD (DAY, 1, date_day)) -1 AS toTime
|
|
FROM
|
|
{{ source(
|
|
'crosschain',
|
|
'dim_dates'
|
|
) }}
|
|
WHERE
|
|
date_day BETWEEN SYSDATE() :: DATE - 1
|
|
AND SYSDATE() :: DATE
|
|
),
|
|
date_combo AS (
|
|
SELECT
|
|
date_day,
|
|
fromTime,
|
|
toTime
|
|
FROM
|
|
dates_hist
|
|
UNION ALL
|
|
SELECT
|
|
date_day,
|
|
fromTime,
|
|
toTime
|
|
FROM
|
|
dates_recent
|
|
)
|
|
SELECT
|
|
REPLACE(
|
|
date_day :: STRING,
|
|
'-'
|
|
) AS partition_key,
|
|
{# date_day, #}
|
|
fromTime,
|
|
toTime,
|
|
{{ target.database }}.live.udf_api(
|
|
'GET',
|
|
'https://api.gmp.axelarscan.io',
|
|
OBJECT_CONSTRUCT(),
|
|
OBJECT_CONSTRUCT(
|
|
'method',
|
|
'searchGMP',
|
|
'fromTime',
|
|
fromTime,
|
|
'toTime',
|
|
toTime,
|
|
'size',
|
|
1
|
|
)
|
|
) AS request
|
|
FROM
|
|
date_combo
|
|
ORDER BY
|
|
date_day
|