A function compare_json_data(source_data_a,source_data_b), accepting structures populated with data loaded from json.load() and comparing for equality.
$ ./compare.py
Compare JSON result is: True| <!DOCTYPE html> | |
| <html lang="en"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <title>Vektorized Hero Demo</title> | |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| <script src="https://cdn.jsdelivr.net/npm/[email protected]"></script> | |
| <style> | |
| body { | |
| background-color: #0e0e0e; |
| <!DOCTYPE html> | |
| <html lang="en"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <title>Vektorized Hero Demo</title> | |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| <script src="https://cdn.jsdelivr.net/npm/[email protected]"></script> | |
| <style> | |
| body { | |
| background-color: #0e0e0e; |
| {"exportVersion":8,"dashboards":{"dashboard-1":{"title":"Movement","layout":[{"w":2,"h":2,"x":0,"y":0,"i":"item-1"},{"w":3,"h":2,"x":2,"y":0,"i":"item-2"}],"description":"Shows sensor movement","embedding":{},"filters":[]}},"items":{"item-1":{"title":"","description":"","dashboardId":"dashboard-1","dataSourceId":"data-source-1","iconValue":"gauge","itemType":"chart","filters":[],"missedFields":[],"lookupFields":[],"convertedFields":[],"calculatedFields":[],"channels":{"value":{"field":"acceleration","type":"quantitative","inferredType":"Number","channelType":"aggregation","aggregate":"sum"}},"reductions":{},"customisations":{"options":{"valueLabel":{"enabled":true,"value":null}},"axes":{"value":{"scaleMax":{"enabled":true,"value":"2500"},"scaleMin":{"enabled":true,"value":"1"}}},"channels":{"value":{"numberFormatting":{"enabled":true,"value":"Custom"},"numberDecimals":{"enabled":true,"value":"2"}}},"conditionalFormatting":[]},"chartType":"Gauge","meta":{},"sample":false,"query":null,"queryId":null,"interactiv |
A function compare_json_data(source_data_a,source_data_b), accepting structures populated with data loaded from json.load() and comparing for equality.
$ ./compare.py
Compare JSON result is: True| {"userid": 100, "theamount": 14000, "ending_ts": 1618848883} | |
| {"userid": 200, "theamount": 23300, "ending_ts": 1618848883} |
| SELECT | |
| userid, | |
| SUM(amount) AS theamount, | |
| tumble_end(timestamp, interval '1' hour) AS ending_ts | |
| FROM mystream | |
| GROUP BY userid, tumble(timestamp, interval '1' hour) |
| {"userid": 100, "amount": 10000, "timestamp": 1618852483} | |
| {"userid": 200, "amount": 23000, "timestamp": 1618852483} | |
| {"userid": 100, "amount": 4000, "timestamp": 1618848883} | |
| {"userid": 200, "amount": 300, "timestamp": 1618848883} |
| // hello world | |
| function HELLOWORLD() { | |
| return "Hello World"; | |
| } | |
| HELLOWORLD(); |
| -- return aggregation of total payments | |
| -- over a 1 hour tumbling window | |
| SELECT SUM(CAST(amount AS numeric)) AS payment_volume, | |
| CAST(TUMBLE_END(eventTimestamp, interval '1' hour) AS varchar) AS ts | |
| FROM payments | |
| GROUP BY TUMBLE(eventTimestamp, interval '1' hour); |
| -- eventTimestamp is the Kafka timestamp | |
| -- as unix timestamp. Magically added to every schema. | |
| SELECT max(eventTimestamp) FROM solar_inputs; | |
| -- make it human readable | |
| SELECT CAST(max(eventTimestamp) AS varchar) as TS FROM solar_inputs; | |
| -- dete math with interval | |
| SELECT * FROM payments | |
| WHERE eventTimestamp > CURRENT_TIMESTAMP-interval '10' second; |