{ Abhilash Kumar Bhattaram : Follow on LinkedIn }
series : 23ai - CLOB to JSON Migration Part 2
As a pre-requisite to read further on this blog , I highly recommend to read the first part , series 1 of this blog regarding CLOB to JSON conversion here
CLOB to JSON - Test Data set using weather data
I would like to create some realistic weather data where my JSON data is significantly larger than my table data , so create table is as below. Note that I have a IS JSON check constrainst which verifies if my data is actually JSON ( available from 21c onwards ). This helps avoids JSON pre-check migration issues at a later date
FREE> CREATE TABLE we.weather_data_clob_part_v2 (
2 id NUMBER GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
3 location VARCHAR2(100),
4 created_at DATE DEFAULT SYSDATE NOT NULL,
5 weather_json CLOB
6 )
7 LOB (weather_json) STORE AS SECUREFILE (
8 ENABLE STORAGE IN ROW
9 CHUNK 8192
10 NOCACHE
11 LOGGING
12 )
13 PARTITION BY RANGE (created_at)
14 INTERVAL (INTERVAL '1' MONTH) -- Literal constant
15 (
16 PARTITION p_start_1999 VALUES LESS THAN (DATE '1999-01-01')
17 ) tablespace users;
Table created.
Now I would like to generate some random and near realistics weather data.
This PL/SQL block simulates and inserts 5000 complex JSON records into a partitioned Oracle table
This PL/SQL script is designed to stress-test Oracle’s handling of large JSON objects stored in CLOB columns by generating and inserting 10,000 synthetic weather records into a partitioned table. Each record simulates comprehensive weather data by constructing a JSON object with multiple layers: it starts with location information (city, latitude, longitude), includes metadata like creation timestamps, and builds extensive weather data sections. One section comprises a 365-day forecast with randomized values (e.g., temperature, humidity, wind speed, pressure), while another details 168 hourly forecasts over a week. The script leverages DBMS_RANDOM to generate realistic random data, uses DBMS_LOB to manage the JSON text in CLOB format, and commits every 500 records to optimize performance. This approach provides a robust framework for testing ingestion, performance, and querying of complex, voluminous JSON data in an Oracle environment.
-- Generating random weather data
FREE> @/home/oracle/blog/weather/part-stress-load.sql
FREE> DECLARE
2 v_json CLOB;
3 v_chunk CLOB;
4 v_location VARCHAR2(100);
5 v_lat NUMBER;
6 v_lon NUMBER;
7 v_date DATE;
8 v_created_at DATE;
9 v_batch_size CONSTANT PLS_INTEGER := 500; -- adjust if needed
10 BEGIN
11 FOR i IN 1..5000 LOOP
12 DBMS_LOB.CREATETEMPORARY(v_json, TRUE);
13
14 v_location := 'StressCity_' || i;
15 v_lat := DBMS_RANDOM.VALUE(-90, 90);
16 v_lon := DBMS_RANDOM.VALUE(-180, 180);
17 v_date := SYSDATE;
18 v_created_at := TRUNC(ADD_MONTHS(DATE '1999-01-01', FLOOR(DBMS_RANDOM.VALUE(0, 300)))); -- Random month from 1999 onward
19
20 -- JSON header
21 DBMS_LOB.APPEND(v_json, '{"location":{"city":"' || v_location || '",');
22 DBMS_LOB.APPEND(v_json, '"coordinates":{"lat":' || v_lat || ',"lon":' || v_lon || '}},');
23 DBMS_LOB.APPEND(v_json, '"metadata":{"source":"StressGenEngine","version":"1.0",');
24 DBMS_LOB.APPEND(v_json, '"created":"' || TO_CHAR(SYSTIMESTAMP, 'YYYY-MM-DD"T"HH24:MI:SS"Z"') || '"},');
25
26 -- Forecast (365 days)
27 DBMS_LOB.APPEND(v_json, '"forecast":[');
28 FOR d IN 1..365 LOOP
29 v_chunk := '{"date":"' || TO_CHAR(v_date + d, 'YYYY-MM-DD') || '",' ||
30 '"temp_max":' || ROUND(DBMS_RANDOM.VALUE(25, 45), 1) || ',' ||
31 '"temp_min":' || ROUND(DBMS_RANDOM.VALUE(10, 25), 1) || ',' ||
32 '"humidity":' || ROUND(DBMS_RANDOM.VALUE(20, 100), 1) || ',' ||
33 '"wind_speed":' || ROUND(DBMS_RANDOM.VALUE(0, 40), 1) || ',' ||
34 '"pressure":' || ROUND(DBMS_RANDOM.VALUE(980, 1050), 1) || ',' ||
35 '"uv_index":' || ROUND(DBMS_RANDOM.VALUE(0, 11), 1) || ',' ||
36 '"visibility":' || ROUND(DBMS_RANDOM.VALUE(1, 20), 1) || ',' ||
37 '"precip_mm":' || ROUND(DBMS_RANDOM.VALUE(0, 100), 1) || ',' ||
38 '"cloud_pct":' || ROUND(DBMS_RANDOM.VALUE(0, 100), 1) || '}';
39 IF d < 365 THEN
40 v_chunk := v_chunk || ',';
41 END IF;
42 DBMS_LOB.APPEND(v_json, v_chunk);
43 END LOOP;
44 DBMS_LOB.APPEND(v_json, '],');
45
46 -- Hourly (168 hours = 7 days)
47 DBMS_LOB.APPEND(v_json, '"hourly":[');
48 FOR h IN 0..167 LOOP
49 v_chunk := '{"timestamp":"' || TO_CHAR(v_date + h/24, 'YYYY-MM-DD"T"HH24:MI:SS"Z"') || '",' ||
50 '"temperature":' || ROUND(DBMS_RANDOM.VALUE(-10, 45), 1) || ',' ||
51 '"feels_like":' || ROUND(DBMS_RANDOM.VALUE(-15, 50), 1) || ',' ||
52 '"dew_point":' || ROUND(DBMS_RANDOM.VALUE(-5, 25), 1) || ',' ||
53 '"humidity":' || ROUND(DBMS_RANDOM.VALUE(10, 100), 1) || ',' ||
54 '"wind_speed":' || ROUND(DBMS_RANDOM.VALUE(0, 50), 1) || ',' ||
55 '"wind_dir":"' || CHR(TRUNC(DBMS_RANDOM.VALUE(65, 91))) || '",' ||
56 '"pressure":' || ROUND(DBMS_RANDOM.VALUE(980, 1050), 1) || ',' ||
57 '"visibility":' || ROUND(DBMS_RANDOM.VALUE(1, 20), 1) || ',' ||
58 '"cloud_cover":' || ROUND(DBMS_RANDOM.VALUE(0, 100), 1) || ',' ||
59 '"precip_mm":' || ROUND(DBMS_RANDOM.VALUE(0, 100), 1) || '}';
60 IF h < 167 THEN
61 v_chunk := v_chunk || ',';
62 END IF;
63 DBMS_LOB.APPEND(v_json, v_chunk);
64 END LOOP;
65 DBMS_LOB.APPEND(v_json, ']');
66
67 -- Close JSON
68 DBMS_LOB.APPEND(v_json, '}');
69
70 -- Insert into partitioned table
71 INSERT INTO we.weather_data_clob_part (location, created_at, weather_json)
72 VALUES (v_location, v_created_at, v_json);
73
74 -- Commit every batch
75 IF MOD(i, v_batch_size) = 0 THEN
76 COMMIT;
77 DBMS_OUTPUT.PUT_LINE('Inserted: ' || i);
78 END IF;
79
80 DBMS_LOB.FREETEMPORARY(v_json);
81 END LOOP;
82
83 COMMIT;
84 DBMS_OUTPUT.PUT_LINE(' 5000 stress-test records inserted.');
85 END;
86 /
PL/SQL procedure successfully completed.
Elapsed: 00:00:56.53
CLOB to JSON - Prechecks
As seen in series 1 , one of the first steps is to perform migration checks as in Oracle Documentation here
Note that in this case we are not seeing any errors because I have a check constraint created in generating realistic JSON data using IS JSON
########### Doing JSON CHECKS
begin
dbms_json.json_type_convertible_check(
owner => 'WE',
tablename => 'WEATHER_DATA_CLOB_PART',
columnname => 'WEATHER_JSON',
statustablename => 'WEATHER_DATA_CLOB_PARTPRECHECK'
);
end;
/
FREE> 2 3 4 5 6 7 8 9
PL/SQL procedure successfully completed.
Elapsed: 00:00:10.34
FREE> execute dbms_json.json_type_convertible_check(owner => 'WE',tablename => 'WEATHER_DATA_CLOB_PART',columnname => 'WEATHER_JSON',statustablename => 'WEATHER_DATA_CLOB_PARTPRECHECK');
PL/SQL procedure successfully completed.
Elapsed: 00:00:09.68
FREE>
select count(*) from WEATHER_DATA_CLOB_PARTPRECHECK;
col STAMP for a30
col SCHEMA_NAME for a10
col TABLE_NAME for a30
col COLUMN_NAME for a20
col ERROR_ROW_ID for a20
col ERROR_CODE for a20
col status for a40
select stamp,schema_name,table_name,column_name,error_row_id,error_code,status from WEATHER_DATA_CLOB_PARTPRECHECK;
FREE> select stamp,schema_name,table_name,column_name,error_row_id,error_code,status from WEATHER_DATA_CLOB_PARTPRECHECK;
STAMP |SCHEMA_NAM|TABLE_NAME |COLUMN_NAME |ERROR_ROW_ID |ERROR_CODE |STATUS
------------------------------|----------|------------------------------|--------------------|--------------------|--------------------|----------------------------------------
03-MAY-25 06.25.13.093533 PM |WE |WEATHER_DATA_CLOB_PART |WEATHER_JSON | | |5% completed (Errors found:0)
03-MAY-25 06.25.13.559536 PM |WE |WEATHER_DATA_CLOB_PART |WEATHER_JSON | | |10% completed (Errors found:0)
03-MAY-25 06.25.14.031199 PM |WE |WEATHER_DATA_CLOB_PART |WEATHER_JSON | | |15% completed (Errors found:0)
03-MAY-25 06.25.14.504599 PM |WE |WEATHER_DATA_CLOB_PART |WEATHER_JSON | | |20% completed (Errors found:0)
03-MAY-25 06.25.14.996157 PM |WE |WEATHER_DATA_CLOB_PART |WEATHER_JSON | | |25% completed (Errors found:0)
03-MAY-25 06.25.15.456118 PM |WE |WEATHER_DATA_CLOB_PART |WEATHER_JSON | | |30% completed (Errors found:0)
03-MAY-25 06.25.15.926015 PM |WE |WEATHER_DATA_CLOB_PART |WEATHER_JSON | | |35% completed (Errors found:0)
03-MAY-25 06.25.16.392382 PM |WE |WEATHER_DATA_CLOB_PART |WEATHER_JSON | | |40% completed (Errors found:0)
03-MAY-25 06.25.16.862939 PM |WE |WEATHER_DATA_CLOB_PART |WEATHER_JSON | | |45% completed (Errors found:0)
03-MAY-25 06.25.17.339892 PM |WE |WEATHER_DATA_CLOB_PART |WEATHER_JSON | | |50% completed (Errors found:0)
03-MAY-25 06.25.17.814633 PM |WE |WEATHER_DATA_CLOB_PART |WEATHER_JSON | | |55% completed (Errors found:0)
03-MAY-25 06.25.18.288084 PM |WE |WEATHER_DATA_CLOB_PART |WEATHER_JSON | | |60% completed (Errors found:0)
03-MAY-25 06.25.18.754714 PM |WE |WEATHER_DATA_CLOB_PART |WEATHER_JSON | | |65% completed (Errors found:0)
03-MAY-25 06.25.19.227833 PM |WE |WEATHER_DATA_CLOB_PART |WEATHER_JSON | | |70% completed (Errors found:0)
03-MAY-25 06.25.19.709148 PM |WE |WEATHER_DATA_CLOB_PART |WEATHER_JSON | | |75% completed (Errors found:0)
03-MAY-25 06.25.20.189663 PM |WE |WEATHER_DATA_CLOB_PART |WEATHER_JSON | | |80% completed (Errors found:0)
03-MAY-25 06.25.20.657897 PM |WE |WEATHER_DATA_CLOB_PART |WEATHER_JSON | | |85% completed (Errors found:0)
03-MAY-25 06.25.21.145784 PM |WE |WEATHER_DATA_CLOB_PART |WEATHER_JSON | | |90% completed (Errors found:0)
03-MAY-25 06.25.21.616373 PM |WE |WEATHER_DATA_CLOB_PART |WEATHER_JSON | | |95% completed (Errors found:0)
03-MAY-25 06.25.22.094879 PM |WE |WEATHER_DATA_CLOB_PART |WEATHER_JSON | | |100% completed (Errors found:0)
03-MAY-25 06.25.22.095496 PM |WE |WEATHER_DATA_CLOB_PART |WEATHER_JSON | | |Process completed (Errors found: 0)
21 rows selected.
Elapsed: 00:00:00.01
FREE>
FREE> SELECT WEATHER_JSON FROM WE.WEATHER_DATA_CLOB_PART
WHERE ROWID IN (SELECT pt.ERROR_ROW_ID
FROM WEATHER_DATA_CLOB_PARTPRECHECK pt
WHERE pt.schema_name = 'WE'
AND pt.table_name = 'WEATHER_DATA_CLOB_PART'
AND pt.column_name = 'WEATHER_JSON');
2 3 4 5 6
no rows selected
Elapsed: 00:00:00.01
FREE> FREE>
------- There are no inconsistencies
Moving partitioned CLOB to partitioned JSON
The SQL below makes this relatively easier
FREE> select count(*) from WE.WEATHER_DATA_CLOB_PART;
COUNT(*)
--------------------
5000
Elapsed: 00:00:00.02
FREE>
FREE> @part-ctas.sql
FREE> CREATE TABLE we.weather_data_json_part
2 PARTITION BY RANGE (created_at)
3 INTERVAL (INTERVAL '1' MONTH) -- Literal constant
4 (
5 PARTITION p_start_1999 VALUES LESS THAN (DATE '1999-01-01')
6 )
7 AS (SELECT id,location,created_at, JSON(weather_json) weather_json FROM WE.WEATHER_DATA_CLOB_PART);
Table created.
Elapsed: 00:00:33.69
FREE> select count(*) from WE.WEATHER_DATA_JSON_PART;;
COUNT(*)
--------------------
5000 ----------> Records Match
Storage Analysis of CLOB partitioned table and JSON partitioned Table
Now this is where things get intresting , let's look at the storage comparisons first.
-- For CLOB Partitioned Table
FREE> @seg1 WE WEATHER_DATA_CLOB_PART
### Data Segments/Partitions for "WE"."WEATHER_DATA_CLOB_PART"
MB|TABLESPACE_NAME |OWNER |SEGMENT_NAME |SEGMENT_TYPE | PARTITIONS
------------|-------------------------|-------------------------|----------------------------------------|--------------------|--------------------
2,400|USERS |WE |WEATHER_DATA_CLOB_PART |TABLE PARTITION | 300
------------| | | | |
2,400| | | | |
Elapsed: 00:00:00.05
### LOB Partitions for "WE"."WEATHER_DATA_CLOB_PART"
TABLE_OWNER |TABLE_NAME |TABLESPACE_NAME | LOB_PARTITION_COUNT
----------------------------------------|----------------------------------------|-------------------------|--------------------
WE |WEATHER_DATA_CLOB_PART |USERS | 301
Elapsed: 00:00:00.06
### LOB Segment Space for "WE"."WEATHER_DATA_CLOB_PART"
MB|TABLESPACE_NAME |OWNER |SEGMENT_NAME |SEGMENT_TYPE | PARTITIONS
------------|-------------------------|-------------------------|----------------------------------------|--------------------|--------------------
2,891|USERS |WE |SYS_LOB0000084386C00004$$ |LOB PARTITION | 300
------------| | | | |
2,891| | | | |
Elapsed: 00:00:04.90
### LOB Columns for "WE"."WEATHER_DATA_CLOB_PART"
OWNER |TABLE_NAME |SEGMENT_NAME |COLUMN_NAME | COUNT(*)
------------------------------|------------------------------|------------------------------|------------------------------|--------------------
WE |WEATHER_DATA_CLOB_PART |SYS_LOB0000084386C00004$$ |WEATHER_JSON | 363
Elapsed: 00:00:04.73
FREE>
-- For JSON Partitioned Table
FREE> @seg1 WE WEATHER_DATA_JSON_PART
### Data Segments/Partitions for "WE"."WEATHER_DATA_JSON_PART"
MB|TABLESPACE_NAME |OWNER |SEGMENT_NAME |SEGMENT_TYPE | PARTITIONS
------------|-------------------------|-------------------------|----------------------------------------|--------------------|--------------------
2,400|USERS |WE |WEATHER_DATA_JSON_PART |TABLE PARTITION | 300
------------| | | | |
2,400| | | | |
Elapsed: 00:00:00.04
### LOB Partitions for "WE"."WEATHER_DATA_JSON_PART"
TABLE_OWNER |TABLE_NAME |TABLESPACE_NAME | LOB_PARTITION_COUNT
----------------------------------------|----------------------------------------|-------------------------|--------------------
WE |WEATHER_DATA_JSON_PART |USERS | 301
Elapsed: 00:00:00.05
### LOB Segment Space for "WE"."WEATHER_DATA_JSON_PART"
MB|TABLESPACE_NAME |OWNER |SEGMENT_NAME |SEGMENT_TYPE | PARTITIONS
------------|-------------------------|-------------------------|----------------------------------------|--------------------|--------------------
2,417|USERS |WE |SYS_LOB0000085294C00004$$ |LOB PARTITION | 300
------------| | | | |
2,417| | | | |
Elapsed: 00:00:10.82
### LOB Columns for "WE"."WEATHER_DATA_JSON_PART"
OWNER |TABLE_NAME |SEGMENT_NAME |COLUMN_NAME | COUNT(*)
------------------------------|------------------------------|------------------------------|------------------------------|--------------------
WE |WEATHER_DATA_JSON_PART |SYS_LOB0000085294C00004$$ |WEATHER_JSON | 303
Elapsed: 00:00:10.39
FREE>
Now here are my observations
- There were no JSON convertible errors in this test case , which is the first landmark to achieve , in actual test these needs to be fixed.
- The count 5000 matches for both tables for WE.WEATHER_DATA_CLOB_PART and WE.WEATHER_DATA_JSON_PART
- Note that JSON data type is also a large object but with better storage management.
- The LOB space used by CLOB is 2,891 MB whereas it is 2417 GB - there is a notable ~20% reduction in storage space used by JSON.
Real life test data can vary but it is duly to be noted that we cannot expect exteme compression in Large Objects , it s dependant on the data
An example of 1 row of my large dataset from 5000 rows
As you can see the JSON payload of 1 record is quite exhaustive , the random data generated is about 5000 such records.
FREE> select * from WE.WEATHER_DATA_JSON_PART where rownum < 2;
ID|LOCATION |CREATED_AT |WEATHER_JSON
--------------------|----------------------------------------|-------------|--------------------------------------------------------------------------------------------------------------
16|StressCity_16 |1999-01-01 00|{"location":{"city":"StressCity_16","coordinates":{"lat":-74.62310028689667991220093090832720489,"lon":32.5057
| | |20870023810112985853627368521428}},"metadata":{"source":"StressGenEngine","version":"1.0","created":"2025-05-0
| | |5T16:16:57Z"},"forecast":[{"date":"2025-05-06","temp_max":27.1,"temp_min":13.7,"humidity":89,"wind_speed":13.5
| | |,"pressure":996.4,"uv_index":1.2,"visibility":18.3,"precip_mm":63.5,"cloud_pct":24.9},{"date":"2025-05-07","te
| | |mp_max":31.8,"temp_min":10.6,"humidity":51.8,"wind_speed":29.1,"pressure":1036.3,"uv_index":9.1,"visibility":8
| | |.8,"precip_mm":83.5,"cloud_pct":84.7},{"date":"2025-05-08","temp_max":37.3,"temp_min":22.6,"humidity":88.5,"wi
| | |nd_speed":21.5,"pressure":997.6,"uv_index":5.9,"visibility":5,"precip_mm":12.4,"cloud_pct":33.7},{"date":"2025
| | |-05-09","temp_max":39.4,"temp_min":15.6,"humidity":69.3,"wind_speed":14.2,"pressure":1018.3,"uv_index":9.1,"vi
| | |sibility":3.4,"precip_mm":95.9,"cloud_pct":70.9},{"date":"2025-05-10","temp_max":35.2,"temp_min":14.5,"humidit
| | |y":32.3,"wind_speed":7.2,"pressure":1047.8,"uv_index":3.4,"visibility":14.9,"precip_mm":70,"cloud_pct":64.8},{
| | |"date":"2025-05-11","temp_max":27.2,"temp_min":18.9,"humidity":51.4,"wind_speed":36.8,"pressure":1022,"uv_inde
| | |x":3.6,"visibility":6.9,"precip_mm":62.4,"cloud_pct":84.2},{"date":"2025-05-12","temp_max":35.7,"temp_min":14.
| | |7,"humidity":49.7,"wind_speed":8,"pressure":983.9,"uv_index":6.7,"visibility":14.8,"precip_mm":26.2,"cloud_pct
| | |":18.3},{"date":"2025-05-13","temp_max":26.5,"temp_min":17,"humidity":20.1,"wind_speed":4.3,"pressure":996.7,"
| | |uv_index":1.1,"visibility":19.7,"precip_mm":58.7,"cloud_pct":80.4},{"date":"2025-05-14","temp_max":28.2,"temp_
| | |min":15.2,"humidity":63.4,"wind_speed":20.2,"pressure":1025.5,"uv_index":9.3,"visibility":18.6,"precip_mm":12.
| | |9,"cloud_pct":72.4},{"date":"2025-05-15","temp_max":38.2,"temp_min":10.4,"humidity":99.8,"wind_speed":18.3,"pr
| | |essure":1042.4,"uv_index":9.5,"visibility":4.7,"precip_mm":32.7,"cloud_pct":1.5},{"date":"2025-05-16","temp_ma
| | |x":31.3,"temp_min":13.6,"humidity":65,"wind_speed":13.4,"pressure":997.6,"uv_index":4.8,"visibility":6.9,"prec
| | |ip_mm":83.6,"cloud_pct":93.8},{"date":"2025-05-17","temp_max":40.1,"temp_min":11.4,"humidity":34.3,"wind_speed
| | |":7.9,"pressure":985.5,"uv_index":10.4,"visibility":17.4,"precip_mm":81.5,"cloud_pct":27.3},{"date":"2025-05-1
| | |8","temp_max":38.7,"temp_min":17,"humidity":55.2,"wind_speed":3.8,"pressure":1040.2,"uv_index":0.9,"visibility
| | |":12.5,"precip_mm":18.7,"cloud_pct":15.4},{"date":"2025-05-19","temp_max":25.8,"temp_min":14,"humidity":83.6,"
| | |wind_speed":0.6,"pressure":1009.6,"uv_index":5.2,"visibility":13.7,"precip_mm":31.9,"cloud_pct":83.9},{"date":
| | |"2025-05-20","temp_max":29.8,"temp_min":17.1,"humidity":34.6,"wind_speed":19.2,"pressure":998,"uv_index":8.2,"
| | |visibility":1.4,"precip_mm":12.4,"cloud_pct":20.7},{"date":"2025-05-21","temp_max":38.4,"temp_min":17.9,"humid
| | |ity":87.6,"wind_speed":10.8,"pressure":990.1,"uv_index":3.9,"visibility":6.7,"precip_mm":28.8,"cloud_pct":18.6
| | |},{"date":"2025-05-22","temp_max":27,"temp_min":23.8,"humidity":54,"wind_speed":28.7,"pressure":1006.5,"uv_ind
| | |ex":5.7,"visibility":5.4,"precip_mm":32.9,"cloud_pct":25.9},{"date":"2025-05-23","temp_max":33.3,"temp_min":16
| | |.3,"humidity":53,"wind_speed":0.7,"pressure":1010.7,"uv_index":6,"visibility":3.5,"precip_mm":34.5,"cloud_pct"
| | |:7.2},{"date":"2025-05-24","temp_max":25.3,"temp_min":20.6,"humidity":67,"wind_speed":25.9,"pressure":1033.6,"
| | |uv_index":4.2,"visibility":18.7,"precip_mm":87.6,"cloud_pct":33.1},{"date":"2025-05-25","temp_max":35.2,"temp_
| | |min":15.1,"humidity":64.4,"wind_speed":39.3,"pressure":988.1,"uv_index":3.8,"visibility":18.1,"precip_mm":38.4
| | |,"cloud_pct":69.7},{"date":"2025-05-26","temp_max":32.1,"temp_min":17.1,"humidity":83.9,"wind_speed":17.7,"pre
| | |ssure":1042.6,"uv_index":7.4,"visibility":4,"precip_mm":4.1,"cloud_pct":56.3},{"date":"2025-05-27","temp_max":
| | |40.1,"temp_min":22,"humidity":89.5,"wind_speed":36.7,"pressure":1000.1,"uv_index":9.4,"visibility":18.9,"preci
| | |p_mm":94.7,"cloud_pct":5.4},{"date":"2025-05-28","temp_max":36.4,"temp_min":10.4,"humidity":83.9,"wind_speed":
| | |30.2,"pressure":995.8,"uv_index":7.9,"visibility":2.4,"precip_mm":21.5,"cloud_pct":44.5},{"date":"2025-05-29",
| | |"temp_max":37.1,"temp_min":14.7,"humidity":84.3,"wind_speed":4.4,"pressure":1006.3,"uv_index":10.1,"visibility
| | |":7.6,"precip_mm":57.1,"cloud_pct":23.8},{"date":"2025-05-30","temp_max":40,"temp_min":12.6,"humidity":79.9,"w
| | |ind_speed":6,"pressure":1008.2,"uv_index":6.2,"visibility":5.8,"precip_mm":84.6,"cloud_pct":16.4},{"date":"202
| | |5-05-31","temp_max":28.7,"temp_min":16.8,"humidity":43.1,"wind_speed":24.3,"pressure":1018.7,"uv_index":1.6,"v
| | |isibility":3.7,"precip_mm":65.7,"cloud_pct":61},{"date":"2025-06-01","temp_max":33.3,"temp_min":16.5,"humidity
| | |":75.3,"wind_speed":9.8,"pressure":983.3,"uv_index":2.3,"visibility":10.1,"precip_mm":26.7,"cloud_pct":41.6},{
| | |"date":"2025-06-02","temp_max":34.5,"temp_min":11.6,"humidity":49.7,"wind_speed":4.3,"pressure":1026.5,"uv_ind
| | |ex":5.1,"visibility":12.4,"precip_mm":9.3,"cloud_pct":35.1},{"date":"2025-06-03","temp_max":37.4,"temp_min":22
| | |.4,"humidity":90,"wind_speed":38.5,"pressure":1045.8,"uv_index":7.5,"visibility":1.2,"precip_mm":68.1,"cloud_p
| | |ct":76.7},{"date":"2025-06-04","temp_max":36.8,"temp_min":21.2,"humidity":97.8,"wind_speed":16.5,"pressure":10
| | |16.9,"uv_index":8.9,"visibility":12.5,"precip_mm":59.2,"cloud_pct":61.9},{"date":"2025-06-05","temp_max":33.9,
| | |"temp_min":13.4,"humidity":55.3,"wind_speed":6.6,"pressure":1023.9,"uv_index":5.6,"visibility":18.8,"precip_mm
| | |":36.1,"cloud_pct":51.1},{"date":"2025-06-06","temp_max":37.5,"temp_min":21.8,"humidity":63.5,"wind_speed":25.
| | |6,"pressure":995.9,"uv_index":4.1,"visibility":1.4,"precip_mm":10.7,"cloud_pct":59.7},{"date":"2025-06-07","te
| | |mp_max":30.7,"temp_min":16.4,"humidity":28.9,"wind_speed":18.3,"pressure":1038.4,"uv_index":8.8,"visibility":4
| | |.4,"precip_mm":89.4,"cloud_pct":79.4},{"date":"2025-06-08","temp_max":29.4,"temp_min":11.2,"humidity":75.8,"wi
| | |nd_speed":39.6,"pressure":1018.8,"uv_index":9.8,"visibility":18.1,"precip_mm":76.8,"cloud_pct":72},{"date":"20
| | |25-06-09","temp_max":42.2,"temp_min":18.3,"humidity":34.8,"wind_speed":15.4,"pressure":1021.1,"uv_index":8,"vi
| | |sibility":5.2,"precip_mm":64.8,"cloud_pct":90.8},{"date":"2025-06-10","temp_max":27.9,"temp_min":19.2,"humidit
| | |y":88.5,"wind_speed":22.8,"pressure":1029,"uv_index":10.5,"visibility":18.4,"precip_mm":6.4,"cloud_pct":42.7},
| | |{"date":"2025-06-11","temp_max":33.3,"temp_min":19.4,"humidity":29.9,"wind_speed":9.4,"pressure":1007.1,"uv_in
| | |dex":7.8,"visibility":4.9,"precip_mm":92.7,"cloud_pct":91.6},{"date":"2025-06-12","temp_max":33.1,"temp_min":1
| | |7.9,"humidity":64.3,"wind_speed":10.6,"pressure":1014.9,"uv_index":8.6,"visibility":11.7,"precip_mm":40.7,"clo
| | |ud_pct":69.4},{"date":"2025-06-13","temp_max":31.5,"temp_min":17.6,"humidity":25.9,"wind_speed":0.8,"pressure"
| | |:1022.1,"uv_index":4.9,"visibility":13.4,"precip_mm":75,"cloud_pct":59.5},{"date":"2025-06-14","temp_max":39.9
| | |,"temp_min":12.1,"humidity":31.8,"wind_speed":4.9,"pressure":1008.4,"uv_index":2,"visibility":1.3,"precip_mm":
| | |13.7,"cloud_pct":15.5},{"date":"2025-06-15","temp_max":33.6,"temp_min":11,"humidity":58.6,"wind_speed":4,"pres
| | |sure":1035.4,"uv_index":1.3,"visibility":6.3,"precip_mm":48.6,"cloud_pct":14.6},{"date":"2025-06-16","temp_max
| | |":38.8,"temp_min":20.6,"humidity":21.4,"wind_speed":22,"pressure":1042.5,"uv_index":2.3,"visibility":1.5,"prec
| | |ip_mm":93.7,"cloud_pct":66.6},{"date":"2025-06-17","temp_max":42.4,"temp_min":11,"humidity":50.3,"wind_speed":
| | |28.7,"pressure":1048.7,"uv_index":5.8,"visibility":17.3,"precip_mm":32.9,"cloud_pct":33.3},{"date":"2025-06-18
| | |","temp_max":27,"temp_min":16.3,"humidity":73.1,"wind_speed":28.4,"pressure":1028.6,"uv_index":6.2,"visibility
| | |":6,"precip_mm":66.3,"cloud_pct":19.8},{"date":"2025-06-19","temp_max":41.2,"temp_min":19,"humidity":99.6,"win
| | |d_speed":8.8,"pressure":1029.8,"uv_index":3.4,"visibility":9.8,"precip_mm":20.5,"cloud_pct":64.3},{"date":"202
| | |5-06-20","temp_max":41.1,"temp_min":21.6,"humidity":26.1,"wind_speed":32.5,"pressure":1049.7,"uv_index":5.2,"v
| | |isibility":11.7,"precip_mm":73.7,"cloud_pct":11.8},{"date":"2025-06-21","temp_max":38.6,"temp_min":14.3,"humid
| | |ity":51.4,"wind_speed":32.6,"pressure":994,"uv_index":2.3,"visibility":15.8,"precip_mm":98.9,"cloud_pct":18.1}
| | |,{"date":"2025-06-22","temp_max":39.2,"temp_min":24.3,"humidity":49.4,"wind_speed":8.6,"pressure":1005.2,"uv_i
| | |ndex":5.5,"visibility":4.9,"precip_mm":24.7,"cloud_pct":64.8},{"date":"2025-06-23","temp_max":44.5,"temp_min":
| | |15,"humidity":41.9,"wind_speed":0.9,"pressure":1016.6,"uv_index":8.3,"visibility":12.5,"precip_mm":67,"cloud_p
| | |ct":32.5},{"date":"2025-06-24","temp_max":41.2,"temp_min":19.9,"humidity":32.7,"wind_speed":31.3,"pressure":10
| | |07.4,"uv_index":10.8,"visibility":19.1,"precip_mm":8,"cloud_pct":86.3},{"date":"2025-06-25","temp_max":33.2,"t
| | |emp_min":18.8,"humidity":67.4,"wind_speed":7,"pressure":1045,"uv_index":7.3,"visibility":13.8,"precip_mm":67.9
| | |,"cloud_pct":56.5},{"date":"2025-06-26","temp_max":27.8,"temp_min":10.1,"humidity":21.7,"wind_speed":29,"press
| | |ure":1035,"uv_index":3.7,"visibility":15.2,"precip_mm":58.4,"cloud_pct":26},{"date":"2025-06-27","temp_max":42
| | |.5,"temp_min":14.3,"humidity":96.6,"wind_speed":28.7,"pressure":1023.6,"uv_index":9.5,"visibility":8.1,"precip
| | |_mm":56,"cloud_pct":38},{"date":"2025-06-28","temp_max":28.3,"temp_min":19.9,"humidity":22.9,"wind_speed":9.2,
| | |"pressure":1023.9,"uv_index":10.4,"visibility":2.7,"precip_mm":37.9,"cloud_pct":17.6},{"date":"2025-06-29","te
| | |mp_max":31.3,"temp_min":19.7,"humidity":21.2,"wind_speed":33.6,"pressure":991.2,"uv_index":5.8,"visibility":15
| | |.7,"precip_mm":32.7,"cloud_pct":45.6},{"date":"2025-06-30","temp_max":38.1,"temp_min":18.4,"humidity":39.6,"wi
| | |nd_speed":16.8,"pressure":1025.8,"uv_index":7.4,"visibility":18.9,"precip_mm":67.1,"cloud_pct":70.4},{"date":"
| | |2025-07-01","temp_max":39.5,"temp_min":21.8,"humidity":31.8,"wind_speed":38.9,"pressure":1003.7,"uv_index":6.5
| | |,"visibility":14.4,"precip_mm":90.7,"cloud_pct":30.7},{"date":"2025-07-02","temp_max":35.2,"temp_min":13.4,"hu
| | |midity":51,"wind_speed":7.9,"pressure":982.8,"uv_index":4.8,"visibility":7.6,"precip_mm":58.8,"cloud_pct":74.5
| | |},{"date":"2025-07-03","temp_max":40.8,"temp_min":19.7,"humidity":69,"wind_speed":16.6,"pressure":1006.1,"uv_i
| | |ndex":2,"visibility":3,"precip_mm":79.2,"cloud_pct":21.5},{"date":"2025-07-04","temp_max":26.1,"temp_min":11.6
| | |,"humidity":46.6,"wind_speed":29.6,"pressure":1046.9,"uv_index":4.5,"visibility":2.8,"precip_mm":6.1,"cloud_pc
| | |t":71.7},{"date":"2025-07-05","temp_max":40.3,"temp_min":10.3,"humidity":64.4,"wind_speed":12.9,"pressure":100
| | |4.6,"uv_index":4.3,"visibility":18.5,"precip_mm":97.3,"cloud_pct":36.7},{"date":"2025-07-06","temp_max":42.8,"
| | |temp_min":10.1,"humidity":31.7,"wind_speed":39.6,"pressure":994.7,"uv_index":3.3,"visibility":6.5,"precip_mm":
| | |35.5,"cloud_pct":4.4},{"date":"2025-07-07","temp_max":42.7,"temp_min":22.5,"humidity":66.1,"wind_speed":14.5,"
| | |pressure":982,"uv_index":4.9,"visibility":18.5,"precip_mm":44.3,"cloud_pct":86.2},{"date":"2025-07-08","temp_m
| | |ax":39.4,"temp_min":19.1,"humidity":43,"wind_speed":4.2,"pressure":1047.5,"uv_index":0.6,"visibility":19.8,"pr
| | |ecip_mm":67,"cloud_pct":93.9},{"date":"2025-07-09","temp_max":27.6,"temp_min":20.7,"humidity":69.8,"wind_speed
| | |":39.1,"pressure":1001.4,"uv_index":4.2,"visibility":7.2,"precip_mm":9.7,"cloud_pct":0.2},{"date":"2025-07-10"
| | |,"temp_max":35.4,"temp_min":15.2,"humidity":56.7,"wind_speed":15.1,"pressure":1023.7,"uv_index":8.7,"visibilit
| | |y":19.8,"precip_mm":45.6,"cloud_pct":9},{"date":"2025-07-11","temp_max":28.2,"temp_min":20.4,"humidity":56.9,"
| | |wind_speed":16.7,"pressure":982.8,"uv_index":10.5,"visibility":13.8,"precip_mm":2.4,"cloud_pct":93.7},{"date":
| | |"2025-07-12","temp_max":33.5,"temp_min":23.2,"humidity":73.9,"wind_speed":3.4,"pressure":988.5,"uv_index":10.1
| | |,"visibility":18.6,"precip_mm":26.7,"cloud_pct":66},{"date":"2025-07-13","temp_max":33.4,"temp_min":13.2,"humi
| | |dity":94.3,"wind_speed":23.1,"pressure":1041.6,"uv_index":4.1,"visibility":18.1,"precip_mm":30,"cloud_pct":6.7
| | |},{"date":"2025-07-14","temp_max":38,"temp_min":20.6,"humidity":25,"wind_speed":15.1,"pressure":998.5,"uv_inde
| | |x":7.2,"visibility":10.9,"precip_mm":40.8,"cloud_pct":71},{"date":"2025-07-15","temp_max":42.9,"temp_min":22.1
| | |,"humidity":78.8,"wind_speed":22.4,"pressure":1008.2,"uv_index":2.1,"visibility":2,"precip_mm":41.3,"cloud_pct
| | |":21.9},{"date":"2025-07-16","temp_max":43.4,"temp_min":16.7,"humidity":68.8,"wind_speed":4.7,"pressure":1035.
| | |9,"uv_index":9.2,"visibility":14.6,"precip_mm":56.5,"cloud_pct":33.6},{"date":"2025-07-17","temp_max":34.2,"te
| | |mp_min":10.9,"humidity":99.3,"wind_speed":21.1,"pressure":984.7,"uv_index":8.2,"visibility":1.4,"precip_mm":5.
| | |1,"cloud_pct":28.9},{"date":"2025-07-18","temp_max":36.8,"temp_min":24.2,"humidity":43.1,"wind_speed":15.3,"pr
| | |essure":1048.7,"uv_index":10.2,"visibility":13.4,"precip_mm":48.6,"cloud_pct":67},{"date":"2025-07-19","temp_m
| | |ax":41.9,"temp_min":17.1,"humidity":70.1,"wind_speed":5.9,"pressure":1015,"uv_index":3.6,"visibility":19.7,"pr
| | |ecip_mm":1.9,"cloud_pct":9.9},{"date":"2025-07-20","temp_max":43.1,"temp_min":15.5,"humidity":41.6,"wind_speed
| | |":15.9,"pressure":1038.7,"uv_index":3.6,"visibility":13.3,"precip_mm":4.7,"cloud_pct":47.6},{"date":"2025-07-2
| | |1","temp_max":34.1,"temp_min":23.7,"humidity":88.5,"wind_speed":0.9,"pressure":990.6,"uv_index":3.8,"visibilit
| | |y":10,"precip_mm":43.4,"cloud_pct":39.5},{"date":"2025-07-22","temp_max":27.9,"temp_min":18.7,"humidity":94.5,
| | |"wind_speed":11.2,"pressure":1047.5,"uv_index":3,"visibility":9.8,"precip_mm":86.4,"cloud_pct":6.6},{"date":"2
| | |025-07-23","temp_max":38.2,"temp_min":16.7,"humidity":26.4,"wind_speed":3.6,"pressure":1010.3,"uv_index":4.8,"
| | |visibility":1.3,"precip_mm":41.7,"cloud_pct":89},{"date":"2025-07-24","temp_max":37.3,"temp_min":13.6,"humidit
| | |y":99.3,"wind_speed":30.6,"pressure":1038.6,"uv_index":9.9,"visibility":15.9,"precip_mm":67.8,"cloud_pct":63.8
| | |},{"date":"2025-07-25","temp_max":25.3,"temp_min":14.8,"humidity":92.5,"wind_speed":0.8,"pressure":1000.6,"uv_
| | |index":0.9,"visibility":5.8,"precip_mm":26.4,"cloud_pct":98.4},{"date":"2025-07-26","temp_max":32.4,"temp_min"
| | |:15.5,"humidity":38.5,"wind_speed":13.4,"pressure":984.1,"uv_index":3.1,"visibility":8.7,"precip_mm":73.5,"clo
| | |ud_pct":48},{"date":"2025-07-27","temp_max":43.2,"temp_min":17.1,"humidity":46.6,"wind_speed":29.9,"pressure":
| | |1024.6,"uv_index":4.3,"visibility":7.4,"precip_mm":24,"cloud_pct":27.2},{"date":"2025-07-28","temp_max":30.8,"
| | |temp_min":24,"humidity":40.5,"wind_speed":22.7,"pressure":1000.8,"uv_index":3.2,"visibility":4.4,"precip_mm":4
| | |8.4,"cloud_pct":15.9},{"date":"2025-07-29","temp_max":27.9,"temp_min":23.7,"humidity":76.8,"wind_speed":2.5,"p
| | |ressure":1012.1,"uv_index":8.8,"visibility":13.6,"precip_mm":35.1,"cloud_pct":47.6},{"date":"2025-07-30","temp
| | |_max":28.5,"temp_min":10.3,"humidity":97.8,"wind_speed":18.8,"pressure":1027.2,"uv_index":3.4,"visibility":5.4
| | |,"precip_mm":53.1,"cloud_pct":31.5},{"date":"2025-07-31","temp_max":25.5,"temp_min":15.3,"humidity":65,"wind_s
| | |peed":7.1,"pressure":1001.9,"uv_index":2.5,"visibility":7.3,"precip_mm":82.4,"cloud_pct":56.1},{"date":"2025-0
| | |8-01","temp_max":30.4,"temp_min":18.2,"humidity":88.1,"wind_speed":15.6,"pressure":1013.6,"uv_index":10.7,"vis
| | |ibility":19.9,"precip_mm":46.8,"cloud_pct":19.4},{"date":"2025-08-02","temp_max":30.6,"temp_min":18.6,"humidit
| | |y":85.7,"wind_speed":32.3,"pressure":1044.6,"uv_index":7.2,"visibility":7.9,"precip_mm":80.8,"cloud_pct":91.5}
| | |,{"date":"2025-08-03","temp_max":36.6,"temp_min":17.8,"humidity":57,"wind_speed":22.9,"pressure":1021.7,"uv_in
| | |dex":7.2,"visibility":17.1,"precip_mm":35.5,"cloud_pct":79.7},{"date":"2025-08-04","temp_max":32.7,"temp_min":
| | |17.2,"humidity":79.2,"wind_speed":10.8,"pressure":1003.4,"uv_index":0.1,"visibility":13.4,"precip_mm":5.4,"clo
| | |ud_pct":83.1},{"date":"2025-08-05","temp_max":34,"temp_min":12.6,"humidity":58.9,"wind_speed":6.7,"pressure":1
| | |032.6,"uv_index":2.7,"visibility":3.5,"precip_mm":3.9,"cloud_pct":45.4},{"date":"2025-08-06","temp_max":44.4,"
| | |temp_min":15.8,"humidity":33,"wind_speed":19.1,"pressure":1033.1,"uv_index":9.2,"visibility":14.1,"precip_mm":
| | |90.5,"cloud_pct":41.9},{"date":"2025-08-07","temp_max":29.2,"temp_min":11.8,"humidity":92.1,"wind_speed":25.9,
| | |"pressure":1034.1,"uv_index":10.5,"visibility":14.6,"precip_mm":26.6,"cloud_pct":80.2},{"date":"2025-08-08","t
| | |emp_max":29,"temp_min":24,"humidity":70.3,"wind_speed":26.1,"pressure":998.1,"uv_index":1,"visibility":3.7,"pr
| | |ecip_mm":52.8,"cloud_pct":55.9},{"date":"2025-08-09","temp_max":28.3,"temp_min":20.6,"humidity":64.9,"wind_spe
| | |ed":36.6,"pressure":1017.9,"uv_index":10.8,"visibility":16.4,"precip_mm":32.7,"cloud_pct":11.3},{"date":"2025-
| | |08-10","temp_max":37.7,"temp_min":11.1,"humidity":50.6,"wind_speed":6.3,"pressure":1013.8,"uv_index":5,"visibi
| | |lity":18.2,"precip_mm":30.1,"cloud_pct":82.7},{"date":"2025-08-11","temp_max":40.7,"temp_min":12.5,"humidity":
| | |54.9,"wind_speed":11.5,"pressure":1005.5,"uv_index":7.5,"visibility":17.7,"precip_mm":78.2,"cloud_pct":29.8},{
| | |"date":"2025-08-12","temp_max":35.9,"temp_min":11.7,"humidity":93.3,"wind_speed":28.9,"pressure":1024.8,"uv_in
| | |dex":5.1,"visibility":8.5,"precip_mm":60.3,"cloud_pct":44.7},{"date":"2025-08-13","temp_max":33.1,"temp_min":1
| | |0.4,"humidity":55.7,"wind_speed":0.6,"pressure":999.7,"uv_index":9.3,"visibility":7.4,"precip_mm":87.2,"cloud_
| | |pct":74.8},{"date":"2025-08-14","temp_max":30.1,"temp_min":11.6,"humidity":38.6,"wind_speed":18.2,"pressure":1
| | |010.8,"uv_index":4.7,"visibility":11,"precip_mm":42.8,"cloud_pct":89.3},{"date":"2025-08-15","temp_max":29.9,"
| | |temp_min":10.6,"humidity":59.3,"wind_speed":34.4,"pressure":1012.3,"uv_index":7.2,"visibility":18.1,"precip_mm
| | |":53.5,"cloud_pct":96.7},{"date":"2025-08-16","temp_max":36.6,"temp_min":10.4,"humidity":73.8,"wind_speed":33.
| | |2,"pressure":1019.3,"uv_index":5.6,"visibility":18.1,"precip_mm":92,"cloud_pct":58.2},{"date":"2025-08-17","te
| | |mp_max":38.4,"temp_min":11.9,"humidity":22.9,"wind_speed":7.4,"pressure":1018.1,"uv_index":5.2,"visibility":18
| | |.4,"precip_mm":33.3,"cloud_pct":22.1},{"date":"2025-08-18","temp_max":39.4,"temp_min":11.1,"humidity":63.2,"wi
| | |nd_speed":32.4,"pressure":1047.5,"uv_index":7.5,"visibility":19.2,"precip_mm":25.5,"cloud_pct":6.5},{"date":"2
| | |025-08-19","temp_max":27,"temp_min":14.5,"humidity":64.8,"wind_speed":16.6,"pressure":1021.6,"uv_index":3.4,"v
| | |isibility":10.8,"precip_mm":16.8,"cloud_pct":43.4},{"date":"2025-08-20","temp_max":30.1,"temp_min":12.4,"humid
| | |ity":21.9,"wind_speed":32.6,"pressure":988.8,"uv_index":6.2,"visibility":9.7,"precip_mm":71.3,"cloud_pct":97.2
| | |},{"date":"2025-08-21","temp_max":32.2,"temp_min":12.4,"humidity":49.8,"wind_speed":28.5,"pressure":1020.6,"uv
| | |_index":5.9,"visibility":4.7,"precip_mm":70.9,"cloud_pct":49.9},{"date":"2025-08-22","temp_max":38,"temp_min":
| | |18.1,"humidity":42.8,"wind_speed":29.5,"pressure":1045,"uv_index":9.5,"visibility":2.3,"precip_mm":31.5,"cloud
| | |_pct":51.4},{"date":"2025-08-23","temp_max":42.8,"temp_min":12.8,"humidity":43.5,"wind_speed":18.8,"pressure":
| | |1010.8,"uv_index":7.7,"visibility":10.4,"precip_mm":73.1,"cloud_pct":45.9},{"date":"2025-08-24","temp_max":40.
| | |7,"temp_min":12.7,"humidity":83,"wind_speed":20.5,"pressure":991.9,"uv_index":1.4,"visibility":2,"precip_mm":6
| | |7,"cloud_pct":83.5},{"date":"2025-08-25","temp_max":37,"temp_min":14.4,"humidity":21,"wind_speed":2.3,"pressur
| | |e":984.3,"uv_index":1.5,"visibility":12.3,"precip_mm":25.4,"cloud_pct":9.7},{"date":"2025-08-26","temp_max":31
| | |,"temp_min":14.8,"humidity":57.8,"wind_speed":21.5,"pressure":1029.5,"uv_index":3.4,"visibility":17.3,"precip_
| | |mm":93,"cloud_pct":15.2},{"date":"2025-08-27","temp_max":38.5,"temp_min":22.8,"humidity":91.2,"wind_speed":33.
| | |3,"pressure":1014.9,"uv_index":8.4,"visibility":7.2,"precip_mm":70.4,"cloud_pct":87.9},{"date":"2025-08-28","t
| | |emp_max":37.4,"temp_min":20.5,"humidity":36.7,"wind_speed":4.8,"pressure":1003.7,"uv_index":2.4,"visibility":1
| | |7.7,"precip_mm":12.5,"cloud_pct":37.7},{"date":"2025-08-29","temp_max":38,"temp_min":17.3,"humidity":55.3,"win
| | |d_speed":15.6,"pressure":1033.8,"uv_index":8.4,"visibility":4.3,"precip_mm":3.2,"cloud_pct":43.8},{"date":"202
| | |5-08-30","temp_max":40.4,"temp_min":19.7,"humidity":28.9,"wind_speed":37.6,"pressure":992.9,"uv_index":0.3,"vi
| | |sibility":1.2,"precip_mm":88.5,"cloud_pct":16.8},{"date":"2025-08-31","temp_max":36.9,"temp_min":23.9,"humidit
| | |y":99.7,"wind_speed":35.7,"pressure":1027.6,"uv_index":8.4,"visibility":7.5,"precip_mm":71.5,"cloud_pct":59.3}
| | |,{"date":"2025-09-01","temp_max":31.4,"temp_min":12.6,"humidity":55.8,"wind_speed":34,"pressure":993,"uv_index
| | |":2.1,"visibility":15.3,"precip_mm":24.9,"cloud_pct":69.9},{"date":"2025-09-02","temp_max":43.3,"temp_min":22.
| | |7,"humidity":90.9,"wind_speed":13.1,"pressure":1022.3,"uv_index":1.6,"visibility":17.6,"precip_mm":26.5,"cloud
| | |_pct":88.8},{"date":"2025-09-03","temp_max":43.1,"temp_min":19.5,"humidity":66.9,"wind_speed":15.1,"pressure":
| | |1030.1,"uv_index":2.9,"visibility":5.2,"precip_mm":76.8,"cloud_pct":80.5},{"date":"2025-09-04","temp_max":27.8
| | |,"temp_min":24.8,"humidity":36.2,"wind_speed":1.3,"pressure":1029.6,"uv_index":10.4,"visibility":5,"precip_mm"
| | |:2.3,"cloud_pct":21.8},{"date":"2025-09-05","temp_max":37.6,"temp_min":17.9,"humidity":91.5,"wind_speed":32.4,
| | |"pressure":1039.8,"uv_index":0.3,"visibility":18.3,"precip_mm":34,"cloud_pct":48.9},{"date":"2025-09-06","temp
| | |_max":31.2,"temp_min":17,"humidity":35.3,"wind_speed":35.4,"pressure":1035.7,"uv_index":3.5,"visibility":7.6,"
| | |precip_mm":71.8,"cloud_pct":43.1},{"date":"2025-09-07","temp_max":42.2,"temp_min":18.1,"humidity":95.4,"wind_s
| | |peed":10.1,"pressure":1049.2,"uv_index":1.9,"visibility":8.5,"precip_mm":78.8,"cloud_pct":95.7},{"date":"2025-
| | |09-08","temp_max":37.9,"temp_min":11.9,"humidity":89.6,"wind_speed":4.2,"pressure":1047.2,"uv_index":1.4,"visi
| | |bility":1.7,"precip_mm":68.3,"cloud_pct":11.9},{"date":"2025-09-09","temp_max":43.4,"temp_min":22.2,"humidity"
| | |:98,"wind_speed":3,"pressure":1028.1,"uv_index":2,"visibility":9.7,"precip_mm":10.4,"cloud_pct":56.4},{"date":
| | |"2025-09-10","temp_max":27.4,"temp_min":17.3,"humidity":76.6,"wind_speed":25.3,"pressure":1042.4,"uv_index":2.
| | |7,"visibility":17.8,"precip_mm":46.1,"cloud_pct":1.2},{"date":"2025-09-11","temp_max":32.9,"temp_min":10.4,"hu
| | |midity":45.1,"wind_speed":34,"pressure":1011.8,"uv_index":10.8,"visibility":18.1,"precip_mm":1.5,"cloud_pct":2
| | |9.9},{"date":"2025-09-12","temp_max":37.4,"temp_min":15.2,"humidity":32.1,"wind_speed":12.4,"pressure":1036.3,
| | |"uv_index":6.7,"visibility":6.5,"precip_mm":42.3,"cloud_pct":40.6},{"date":"2025-09-13","temp_max":37.3,"temp_
| | |min":14.7,"humidity":71.2,"wind_speed":20.2,"pressure":1006,"uv_index":5.2,"visibility":17.8,"precip_mm":3,"cl
| | |oud_pct":67.9},{"date":"2025-09-14","temp_max":29,"temp_min":17.9,"humidity":66.8,"wind_speed":35.3,"pressure"
| | |:1014.8,"uv_index":10.9,"visibility":9.4,"precip_mm":88.6,"cloud_pct":13.7},{"date":"2025-09-15","temp_max":27
| | |,"temp_min":22.3,"humidity":86.4,"wind_speed":11,"pressure":1028.6,"uv_index":0.4,"visibility":7.4,"precip_mm"
| | |:76.7,"cloud_pct":90.8},{"date":"2025-09-16","temp_max":28.5,"temp_min":16.1,"humidity":92.9,"wind_speed":4.5,
| | |"pressure":997.3,"uv_index":2.3,"visibility":17.8,"precip_mm":39.2,"cloud_pct":83.3},{"date":"2025-09-17","tem
| | |p_max":34.8,"temp_min":14.1,"humidity":24.7,"wind_speed":39.7,"pressure":983.6,"uv_index":10.8,"visibility":11
| | |.7,"precip_mm":78.2,"cloud_pct":51.2},{"date":"2025-09-18","temp_max":30.8,"temp_min":11,"humidity":38.7,"wind
| | |_speed":11.5,"pressure":1008.6,"uv_index":6.9,"visibility":9.4,"precip_mm":56.3,"cloud_pct":11.8},{"date":"202
| | |5-09-19","temp_max":33.8,"temp_min":24.3,"humidity":26.5,"wind_speed":21.9,"pressure":1027.7,"uv_index":8.6,"v
| | |isibility":8.4,"precip_mm":99.5,"cloud_pct":27.7},{"date":"2025-09-20","temp_max":42.7,"temp_min":11.3,"humidi
| | |ty":93.8,"wind_speed":16.7,"pressure":1006,"uv_index":8.5,"visibility":1.9,"precip_mm":43.7,"cloud_pct":93.8},
| | |{"date":"2025-09-21","temp_max":27.4,"temp_min":19.9,"humidity":68.2,"wind_speed":13.7,"pressure":1019.3,"uv_i
| | |ndex":8.3,"visibility":6.1,"precip_mm":62.4,"cloud_pct":17.6},{"date":"2025-09-22","temp_max":35.6,"temp_min":
| | |19.2,"humidity":97.7,"wind_speed":1.2,"pressure":1018.7,"uv_index":2.2,"visibility":6.5,"precip_mm":43.4,"clou
| | |d_pct":7.3},{"date":"2025-09-23","temp_max":37.2,"temp_min":23.2,"humidity":41.6,"wind_speed":13.4,"pressure":
| | |1041.5,"uv_index":1.5,"visibility":18.2,"precip_mm":98.1,"cloud_pct":15.3},{"date":"2025-09-24","temp_max":30.
| | |7,"temp_min":15,"humidity":60.1,"wind_speed":6.9,"pressure":1008.6,"uv_index":0.8,"visibility":5.3,"precip_mm"
| | |:78.4,"cloud_pct":12.4},{"date":"2025-09-25","temp_max":42.5,"temp_min":20.6,"humidity":66,"wind_speed":10.3,"
| | |pressure":985.7,"uv_index":3.3,"visibility":15.3,"precip_mm":41.7,"cloud_pct":54.8},{"date":"2025-09-26","temp
| | |_max":34.5,"temp_min":12.6,"humidity":61.6,"wind_speed":39.8,"pressure":982.1,"uv_index":2.7,"visibility":1.8,
| | |"precip_mm":38.3,"cloud_pct":31.6},{"date":"2025-09-27","temp_max":26.5,"temp_min":10.4,"humidity":71.4,"wind_
| | |speed":30.2,"pressure":1023.8,"uv_index":9.9,"visibility":5.9,"precip_mm":44.1,"cloud_pct":3.3},{"date":"2025-
| | |09-28","temp_max":29.9,"temp_min":21.4,"humidity":52.1,"wind_speed":3.8,"pressure":1043.3,"uv_index":2.9,"visi
| | |bility":15.7,"precip_mm":54.5,"cloud_pct":51.4},{"date":"2025-09-29","temp_max":32.4,"temp_min":15.4,"humidity
| | |":43.6,"wind_speed":32.7,"pressure":1036.8,"uv_index":0.6,"visibility":13.5,"precip_mm":90.1,"cloud_pct":1.2},
| | |{"date":"2025-09-30","temp_max":33,"temp_min":14.9,"humidity":77.4,"wind_speed":32.7,"pressure":997.3,"uv_inde
| | |x":4.8,"visibility":14.5,"precip_mm":98.2,"cloud_pct":41},{"date":"2025-10-01","temp_max":25.4,"temp_min":12,"
| | |humidity":32,"wind_speed":24.3,"pressure":1015.2,"uv_index":9.2,"visibility":14.3,"precip_mm":84.5,"cloud_pct"
| | |:32.1},{"date":"2025-10-02","temp_max":41.2,"temp_min":13.7,"humidity":77.5,"wind_speed":1.4,"pressure":1005.6
| | |,"uv_index":4.3,"visibility":11.3,"precip_mm":86,"cloud_pct":19.5},{"date":"2025-10-03","temp_max":32.4,"temp_
| | |min":21,"humidity":94.2,"wind_speed":26.2,"pressure":991,"uv_index":10.5,"visibility":12.7,"precip_mm":7.5,"cl
| | |oud_pct":68.8},{"date":"2025-10-04","temp_max":34.4,"temp_min":24.4,"humidity":79.2,"wind_speed":32.4,"pressur
| | |e":988.1,"uv_index":0.4,"visibility":8.8,"precip_mm":38,"cloud_pct":4.7},{"date":"2025-10-05","temp_max":32.1,
| | |"temp_min":11,"humidity":36.6,"wind_speed":24.6,"pressure":1024,"uv_index":0.7,"visibility":15.6,"precip_mm":6
| | |9.3,"cloud_pct":26.7},{"date":"2025-10-06","temp_max":33.1,"temp_min":24.2,"humidity":34.8,"wind_speed":36.5,"
| | |pressure":993,"uv_index":10.8,"visibility":7.9,"precip_mm":36.6,"cloud_pct":13.9},{"date":"2025-10-07","temp_m
| | |ax":32.2,"temp_min":19.5,"humidity":36.7,"wind_speed":33.5,"pressure":985.3,"uv_index":5,"visibility":12,"prec
| | |ip_mm":50.9,"cloud_pct":96.1},{"date":"2025-10-08","temp_max":32.2,"temp_min":13.4,"humidity":70.3,"wind_speed
| | |":30.6,"pressure":1007.2,"uv_index":4.8,"visibility":12.4,"precip_mm":15.8,"cloud_pct":48.8},{"date":"2025-10-
| | |09","temp_max":30.1,"temp_min":12.1,"humidity":54.1,"wind_speed":7.8,"pressure":984.1,"uv_index":1.1,"visibili
| | |ty":3.6,"precip_mm":52.6,"cloud_pct":26},{"date":"2025-10-10","temp_max":38.4,"temp_min":22.5,"humidity":45.8,
| | |"wind_speed":35.2,"pressure":992.1,"uv_index":8.2,"visibility":5.7,"precip_mm":25.1,"cloud_pct":45.7},{"date":
| | |"2025-10-11","temp_max":35.1,"temp_min":24,"humidity":66.3,"wind_speed":6.8,"pressure":1048.2,"uv_index":9.4,"
| | |visibility":14.1,"precip_mm":53.7,"cloud_pct":8.1},{"date":"2025-10-12","temp_max":39,"temp_min":10.1,"humidit
| | |y":28.2,"wind_speed":26.9,"pressure":991.7,"uv_index":3.6,"visibility":8.7,"precip_mm":55.6,"cloud_pct":42.4},
| | |{"date":"2025-10-13","temp_max":29.8,"temp_min":17.5,"humidity":32.8,"wind_speed":18.8,"pressure":1015.5,"uv_i
| | |ndex":10,"visibility":15.8,"precip_mm":46,"cloud_pct":68.1},{"date":"2025-10-14","temp_max":39.2,"temp_min":19
| | |.1,"humidity":58,"wind_speed":3.4,"pressure":999.1,"uv_index":3.5,"visibility":1.3,"precip_mm":77,"cloud_pct":
| | |13.2},{"date":"2025-10-15","temp_max":31.8,"temp_min":24.2,"humidity":74.1,"wind_speed":20.3,"pressure":1042.7
| | |,"uv_index":0.7,"visibility":4.9,"precip_mm":81,"cloud_pct":69.3},{"date":"2025-10-16","temp_max":36.7,"temp_m
| | |in":11.1,"humidity":50.9,"wind_speed":29.8,"pressure":988.4,"uv_index":7.4,"visibility":18.3,"precip_mm":71.6,
| | |"cloud_pct":75.9},{"date":"2025-10-17","temp_max":32.3,"temp_min":14.3,"humidity":51.5,"wind_speed":10.4,"pres
| | |sure":1041.6,"uv_index":6.4,"visibility":7.2,"precip_mm":77.4,"cloud_pct":80.9},{"date":"2025-10-18","temp_max
| | |":33.1,"temp_min":20.7,"humidity":82,"wind_speed":9.4,"pressure":981,"uv_index":1.2,"visibility":20,"precip_mm
| | |":91.4,"cloud_pct":45.2},{"date":"2025-10-19","temp_max":34.8,"temp_min":16.7,"humidity":44.6,"wind_speed":34.
| | |1,"pressure":983.8,"uv_index":6.4,"visibility":6.6,"precip_mm":52.8,"cloud_pct":58},{"date":"2025-10-20","temp
| | |_max":32,"temp_min":19.3,"humidity":45.6,"wind_speed":9.4,"pressure":1011.4,"uv_index":6.2,"visibility":14.6,"
| | |precip_mm":27.3,"cloud_pct":65},{"date":"2025-10-21","temp_max":39.2,"temp_min":20,"humidity":77.4,"wind_speed
| | |":19.4,"pressure":1043.8,"uv_index":6.7,"visibility":16.9,"precip_mm":43.9,"cloud_pct":82.4},{"date":"2025-10-
| | |22","temp_max":41.1,"temp_min":18.8,"humidity":99.2,"wind_speed":33.6,"pressure":996.4,"uv_index":6.2,"visibil
| | |ity":19.6,"precip_mm":76.3,"cloud_pct":76.9},{"date":"2025-10-23","temp_max":31.8,"temp_min":19.9,"humidity":8
| | |5.2,"wind_speed":39,"pressure":1022.8,"uv_index":5.5,"visibility":18.1,"precip_mm":56.2,"cloud_pct":22.3},{"da
| | |te":"2025-10-24","temp_max":32.4,"temp_min":11.8,"humidity":99.2,"wind_speed":17,"pressure":1046.2,"uv_index":
| | |7.5,"visibility":16.7,"precip_mm":48.5,"cloud_pct":82.5},{"date":"2025-10-25","temp_max":26.3,"temp_min":14.9,
| | |"humidity":90.7,"wind_speed":5.3,"pressure":1025.9,"uv_index":7,"visibility":11.9,"precip_mm":13.3,"cloud_pct"
| | |:76.1},{"date":"2025-10-26","temp_max":27.9,"temp_min":14.9,"humidity":50.7,"wind_speed":3.6,"pressure":1020.3
| | |,"uv_index":1.2,"visibility":8.1,"precip_mm":69,"cloud_pct":88.5},{"date":"2025-10-27","temp_max":28,"temp_min
| | |":19.2,"humidity":38.4,"wind_speed":37.6,"pressure":1039.9,"uv_index":0.3,"visibility":12.4,"precip_mm":26.4,"
| | |cloud_pct":38.5},{"date":"2025-10-28","temp_max":35.1,"temp_min":19.5,"humidity":25.6,"wind_speed":32.6,"press
| | |ure":1043.3,"uv_index":6.2,"visibility":9.5,"precip_mm":11,"cloud_pct":41.8},{"date":"2025-10-29","temp_max":3
| | |3.1,"temp_min":23.7,"humidity":83.2,"wind_speed":23.1,"pressure":988.4,"uv_index":10.3,"visibility":17.8,"prec
| | |ip_mm":98.9,"cloud_pct":13.7},{"date":"2025-10-30","temp_max":31.6,"temp_min":21.2,"humidity":84.8,"wind_speed
| | |":35,"pressure":1020.3,"uv_index":6.1,"visibility":18.4,"precip_mm":76.8,"cloud_pct":34},{"date":"2025-10-31",
| | |"temp_max":42.1,"temp_min":20,"humidity":67.3,"wind_speed":10.7,"pressure":1024.8,"uv_index":3.2,"visibility":
| | |14.4,"precip_mm":38.7,"cloud_pct":3.7},{"date":"2025-11-01","temp_max":31.4,"temp_min":18.9,"humidity":55.1,"w
| | |ind_speed":32.1,"pressure":1014.8,"uv_index":5.4,"visibility":18,"precip_mm":95.2,"cloud_pct":80.9},{"date":"2
| | |025-11-02","temp_max":41.5,"temp_min":10.5,"humidity":67.9,"wind_speed":14.7,"pressure":998.9,"uv_index":6.6,"
| | |visibility":17,"precip_mm":47.6,"cloud_pct":84},{"date":"2025-11-03","temp_max":43.8,"temp_min":16.3,"humidity
| | |":51.9,"wind_speed":16.4,"pressure":1026.9,"uv_index":6.3,"visibility":3.9,"precip_mm":71.7,"cloud_pct":75},{"
| | |date":"2025-11-04","temp_max":39.1,"temp_min":11.7,"humidity":44.1,"wind_speed":33.1,"pressure":1042.9,"uv_ind
| | |ex":7.9,"visibility":8.2,"precip_mm":68.5,"cloud_pct":48.6},{"date":"2025-11-05","temp_max":37.5,"temp_min":13
| | |.4,"humidity":75.8,"wind_speed":24.8,"pressure":1028.9,"uv_index":6.7,"visibility":4,"precip_mm":28,"cloud_pct
| | |":3.8},{"date":"2025-11-06","temp_max":43.8,"temp_min":20.4,"humidity":31.4,"wind_speed":17.2,"pressure":994.6
| | |,"uv_index":0.7,"visibility":14,"precip_mm":11.7,"cloud_pct":5.7},{"date":"2025-11-07","temp_max":37.2,"temp_m
| | |in":17.1,"humidity":45,"wind_speed":7.6,"pressure":1015.4,"uv_index":6.7,"visibility":16,"precip_mm":72.3,"clo
| | |ud_pct":85},{"date":"2025-11-08","temp_max":35.5,"temp_min":13.1,"humidity":77.6,"wind_speed":3.4,"pressure":1
| | |049.6,"uv_index":5.4,"visibility":6.7,"precip_mm":45.9,"cloud_pct":17.5},{"date":"2025-11-09","temp_max":34,"t
| | |emp_min":11.4,"humidity":76.1,"wind_speed":17.5,"pressure":1004.6,"uv_index":4,"visibility":14.6,"precip_mm":5
| | |8.2,"cloud_pct":92.7},{"date":"2025-11-10","temp_max":41.2,"temp_min":15.9,"humidity":38.5,"wind_speed":14.4,"
| | |pressure":1010.5,"uv_index":4.1,"visibility":1.5,"precip_mm":56.8,"cloud_pct":19.2},{"date":"2025-11-11","temp
| | |_max":27,"temp_min":16.3,"humidity":95.9,"wind_speed":21.9,"pressure":990,"uv_index":9.9,"visibility":7.3,"pre
| | |cip_mm":24,"cloud_pct":27.4},{"date":"2025-11-12","temp_max":35.6,"temp_min":13.6,"humidity":32.3,"wind_speed"
| | |:12.7,"pressure":1041.7,"uv_index":3.4,"visibility":15.5,"precip_mm":12.2,"cloud_pct":46.8},{"date":"2025-11-1
| | |3","temp_max":33.4,"temp_min":14.8,"humidity":24.4,"wind_speed":9.6,"pressure":1049.9,"uv_index":9.9,"visibili
| | |ty":17,"precip_mm":15,"cloud_pct":15.9},{"date":"2025-11-14","temp_max":29.4,"temp_min":18.3,"humidity":81.9,"
| | |wind_speed":36.5,"pressure":992.8,"uv_index":4.5,"visibility":9.4,"precip_mm":84.7,"cloud_pct":60.2},{"date":"
| | |2025-11-15","temp_max":26.6,"temp_min":21.7,"humidity":46.9,"wind_speed":39,"pressure":1047.8,"uv_index":6.5,"
| | |visibility":10.9,"precip_mm":3.1,"cloud_pct":46.3},{"date":"2025-11-16","temp_max":29.6,"temp_min":18.6,"humid
| | |ity":61,"wind_speed":28,"pressure":1034.7,"uv_index":8.3,"visibility":9.1,"precip_mm":26.5,"cloud_pct":56.7},{
| | |"date":"2025-11-17","temp_max":26.8,"temp_min":24.1,"humidity":65.5,"wind_speed":4.3,"pressure":1033.9,"uv_ind
| | |ex":7.6,"visibility":13.9,"precip_mm":24.1,"cloud_pct":42.3},{"date":"2025-11-18","temp_max":38.7,"temp_min":2
| | |4.6,"humidity":27,"wind_speed":30.2,"pressure":1007.7,"uv_index":7.3,"visibility":13.2,"precip_mm":73.6,"cloud
| | |_pct":9.2},{"date":"2025-11-19","temp_max":26.2,"temp_min":24.1,"humidity":48.2,"wind_speed":20.7,"pressure":1
| | |012.9,"uv_index":6.3,"visibility":8.8,"precip_mm":54.3,"cloud_pct":93.2},{"date":"2025-11-20","temp_max":43.3,
| | |"temp_min":19.7,"humidity":85.2,"wind_speed":13.6,"pressure":1050,"uv_index":1.4,"visibility":19.6,"precip_mm"
| | |:55,"cloud_pct":61.7},{"date":"2025-11-21","temp_max":30.9,"temp_min":21.3,"humidity":21.7,"wind_speed":30.4,"
| | |pressure":1026.3,"uv_index":10.4,"visibility":13.9,"precip_mm":27.5,"cloud_pct":42.6},{"date":"2025-11-22","te
| | |mp_max":27.5,"temp_min":23.1,"humidity":44.6,"wind_speed":24.2,"pressure":1033.1,"uv_index":7.9,"visibility":3
| | |.1,"precip_mm":94.4,"cloud_pct":73.6},{"date":"2025-11-23","temp_max":27.7,"temp_min":17.5,"humidity":58.8,"wi
| | |nd_speed":20,"pressure":981.6,"uv_index":4.6,"visibility":10.7,"precip_mm":1.7,"cloud_pct":24.1},{"date":"2025
| | |-11-24","temp_max":36,"temp_min":20,"humidity":62,"wind_speed":28.2,"pressure":983.5,"uv_index":1.7,"visibilit
| | |y":14,"precip_mm":40.2,"cloud_pct":39.8},{"date":"2025-11-25","temp_max":25.7,"temp_min":21,"humidity":37.3,"w
| | |ind_speed":31.1,"pressure":1025,"uv_index":3.8,"visibility":17.6,"precip_mm":1.4,"cloud_pct":30.2},{"date":"20
| | |25-11-26","temp_max":38.1,"temp_min":10.4,"humidity":67.3,"wind_speed":22.1,"pressure":1013.3,"uv_index":5.5,"
| | |visibility":12.6,"precip_mm":48,"cloud_pct":57.3},{"date":"2025-11-27","temp_max":25.7,"temp_min":22,"humidity
| | |":81.8,"wind_speed":10.5,"pressure":1001.6,"uv_index":3.6,"visibility":9.9,"precip_mm":38.2,"cloud_pct":32.5},
| | |{"date":"2025-11-28","temp_max":36.5,"temp_min":22.1,"humidity":42,"wind_speed":28.2,"pressure":1024.8,"uv_ind
| | |ex":5.4,"visibility":18.8,"precip_mm":88.7,"cloud_pct":58.6},{"date":"2025-11-29","temp_max":26.6,"temp_min":1
| | |0.2,"humidity":60.9,"wind_speed":31.5,"pressure":990.8,"uv_index":0.5,"visibility":1.1,"precip_mm":6,"cloud_pc
| | |t":49.3},{"date":"2025-11-30","temp_max":39.8,"temp_min":12.4,"humidity":31.7,"wind_speed":3.9,"pressure":1031
| | |.6,"uv_index":9.4,"visibility":18.5,"precip_mm":94.4,"cloud_pct":70.9},{"date":"2025-12-01","temp_max":39.5,"t
| | |emp_min":17.6,"humidity":29.5,"wind_speed":21.7,"pressure":1004.9,"uv_index":4.9,"visibility":12.8,"precip_mm"
| | |:58.1,"cloud_pct":65.4},{"date":"2025-12-02","temp_max":40.9,"temp_min":18.9,"humidity":92.9,"wind_speed":7.1,
| | |"pressure":1024.2,"uv_index":5.4,"visibility":1.1,"precip_mm":39.6,"cloud_pct":63.4},{"date":"2025-12-03","tem
| | |p_max":37.4,"temp_min":10.6,"humidity":89.1,"wind_speed":10.6,"pressure":1050,"uv_index":5.1,"visibility":10,"
| | |precip_mm":56.7,"cloud_pct":11.9},{"date":"2025-12-04","temp_max":28.6,"temp_min":17.5,"humidity":80,"wind_spe
| | |ed":39.4,"pressure":1010.2,"uv_index":1.6,"visibility":12.6,"precip_mm":48,"cloud_pct":24.2},{"date":"2025-12-
| | |05","temp_max":25.7,"temp_min":20.5,"humidity":67.5,"wind_speed":6.6,"pressure":1020.8,"uv_index":8.2,"visibil
| | |ity":19.2,"precip_mm":18.5,"cloud_pct":69.2},{"date":"2025-12-06","temp_max":44.6,"temp_min":21.2,"humidity":6
| | |4.3,"wind_speed":31.2,"pressure":1030.2,"uv_index":8.6,"visibility":14.6,"precip_mm":18.7,"cloud_pct":94.3},{"
| | |date":"2025-12-07","temp_max":28.5,"temp_min":13,"humidity":25.8,"wind_speed":9.5,"pressure":1030.4,"uv_index"
| | |:9.4,"visibility":4.8,"precip_mm":60.3,"cloud_pct":1.2},{"date":"2025-12-08","temp_max":41,"temp_min":16.1,"hu
| | |midity":25.9,"wind_speed":6.1,"pressure":994.8,"uv_index":3.6,"visibility":2.6,"precip_mm":17.2,"cloud_pct":97
| | |.9},{"date":"2025-12-09","temp_max":32.6,"temp_min":18.6,"humidity":38.1,"wind_speed":22.2,"pressure":997.2,"u
| | |v_index":8.2,"visibility":1.4,"precip_mm":25.5,"cloud_pct":28.4},{"date":"2025-12-10","temp_max":43,"temp_min"
| | |:23.4,"humidity":75,"wind_speed":27.7,"pressure":991.2,"uv_index":6.9,"visibility":5.1,"precip_mm":85,"cloud_p
| | |ct":20.1},{"date":"2025-12-11","temp_max":27,"temp_min":13.5,"humidity":44.2,"wind_speed":24.2,"pressure":1047
| | |.5,"uv_index":10.9,"visibility":16.6,"precip_mm":11,"cloud_pct":39.7},{"date":"2025-12-12","temp_max":25.4,"te
| | |mp_min":10.9,"humidity":93.4,"wind_speed":21.3,"pressure":991.3,"uv_index":3.2,"visibility":1.1,"precip_mm":27
| | |.2,"cloud_pct":43.3},{"date":"2025-12-13","temp_max":38.8,"temp_min":12.9,"humidity":56.5,"wind_speed":14.3,"p
| | |ressure":989.5,"uv_index":6.8,"visibility":11.3,"precip_mm":89.1,"cloud_pct":76.3},{"date":"2025-12-14","temp_
| | |max":37.9,"temp_min":10.3,"humidity":40.7,"wind_speed":11,"pressure":997.6,"uv_index":4.9,"visibility":13,"pre
| | |cip_mm":68.8,"cloud_pct":13.6},{"date":"2025-12-15","temp_max":44.4,"temp_min":13,"humidity":74.9,"wind_speed"
| | |:24.9,"pressure":1020.4,"uv_index":3.4,"visibility":13.6,"precip_mm":55.1,"cloud_pct":41.7},{"date":"2025-12-1
| | |6","temp_max":36.5,"temp_min":23.6,"humidity":33.4,"wind_speed":4.8,"pressure":1006.7,"uv_index":3.9,"visibili
| | |ty":2.7,"precip_mm":57.5,"cloud_pct":98.6},{"date":"2025-12-17","temp_max":41.3,"temp_min":19.6,"humidity":29.
| | |9,"wind_speed":2.6,"pressure":997.5,"uv_index":10.8,"visibility":5.7,"precip_mm":9.5,"cloud_pct":36.1},{"date"
| | |:"2025-12-18","temp_max":41.8,"temp_min":19.8,"humidity":80,"wind_speed":2.2,"pressure":1015.1,"uv_index":4,"v
| | |isibility":19.6,"precip_mm":62.9,"cloud_pct":84.9},{"date":"2025-12-19","temp_max":39.8,"temp_min":15.3,"humid
| | |ity":79.6,"wind_speed":34.9,"pressure":1045.4,"uv_index":0.4,"visibility":15.9,"precip_mm":66.3,"cloud_pct":27
| | |.2},{"date":"2025-12-20","temp_max":27.3,"temp_min":21,"humidity":67.4,"wind_speed":9.8,"pressure":986.3,"uv_i
| | |ndex":9.8,"visibility":11.8,"precip_mm":69.7,"cloud_pct":93.7},{"date":"2025-12-21","temp_max":27.3,"temp_min"
| | |:13.3,"humidity":43.7,"wind_speed":1.9,"pressure":1012.5,"uv_index":2.5,"visibility":2.1,"precip_mm":71.6,"clo
| | |ud_pct":5.3},{"date":"2025-12-22","temp_max":40.6,"temp_min":18.4,"humidity":62.6,"wind_speed":0.6,"pressure":
| | |1040.3,"uv_index":8,"visibility":2.9,"precip_mm":96,"cloud_pct":50.9},{"date":"2025-12-23","temp_max":25.5,"te
| | |mp_min":19,"humidity":44.3,"wind_speed":15.8,"pressure":992.7,"uv_index":10.8,"visibility":11.9,"precip_mm":49
| | |.5,"cloud_pct":18.5},{"date":"2025-12-24","temp_max":30.1,"temp_min":16.2,"humidity":48.1,"wind_speed":27.5,"p
| | |ressure":991.9,"uv_index":7.9,"visibility":13.5,"precip_mm":2.7,"cloud_pct":9.4},{"date":"2025-12-25","temp_ma
| | |x":26.6,"temp_min":22,"humidity":25.4,"wind_speed":32,"pressure":1025.8,"uv_index":5.4,"visibility":11.9,"prec
| | |ip_mm":79.9,"cloud_pct":52.5},{"date":"2025-12-26","temp_max":25.1,"temp_min":13.2,"humidity":75.3,"wind_speed
| | |":4.1,"pressure":998.9,"uv_index":7.6,"visibility":4.7,"precip_mm":96.4,"cloud_pct":87.8},{"date":"2025-12-27"
| | |,"temp_max":43.4,"temp_min":20.3,"humidity":77.2,"wind_speed":19.3,"pressure":1001.1,"uv_index":9.6,"visibilit
| | |y":12.1,"precip_mm":74.6,"cloud_pct":88.7},{"date":"2025-12-28","temp_max":40.5,"temp_min":16.6,"humidity":66.
| | |7,"wind_speed":25,"pressure":986.7,"uv_index":7.3,"visibility":16.2,"precip_mm":89.8,"cloud_pct":61.4},{"date"
| | |:"2025-12-29","temp_max":25,"temp_min":18.9,"humidity":51.8,"wind_speed":33.2,"pressure":1008,"uv_index":4.4,"
| | |visibility":13.8,"precip_mm":67.4,"cloud_pct":76.5},{"date":"2025-12-30","temp_max":42.5,"temp_min":16.7,"humi
| | |dity":50,"wind_speed":9.2,"pressure":1022.4,"uv_index":9.5,"visibility":9.3,"precip_mm":14.1,"cloud_pct":32.8}
| | |,{"date":"2025-12-31","temp_max":44.4,"temp_min":20,"humidity":63.6,"wind_speed":38.2,"pressure":1020.2,"uv_in
| | |dex":1,"visibility":2.4,"precip_mm":19.7,"cloud_pct":89.5},{"date":"2026-01-01","temp_max":28.7,"temp_min":22,
| | |"humidity":29.1,"wind_speed":12.2,"pressure":987.1,"uv_index":9.5,"visibility":2.7,"precip_mm":2.6,"cloud_pct"
| | |:36.4},{"date":"2026-01-02","temp_max":30.5,"temp_min":18.9,"humidity":49.1,"wind_speed":19.2,"pressure":1004.
| | |9,"uv_index":8.3,"visibility":5.7,"precip_mm":81.3,"cloud_pct":35.2},{"date":"2026-01-03","temp_max":39.9,"tem
| | |p_min":13.2,"humidity":66.6,"wind_speed":36.5,"pressure":1021.6,"uv_index":8.4,"visibility":4.9,"precip_mm":75
| | |.3,"cloud_pct":47.2},{"date":"2026-01-04","temp_max":39.2,"temp_min":11.1,"humidity":83.5,"wind_speed":11.7,"p
| | |ressure":981.1,"uv_index":2.2,"visibility":10.7,"precip_mm":97.7,"cloud_pct":77.6},{"date":"2026-01-05","temp_
| | |max":37.6,"temp_min":24.4,"humidity":58,"wind_speed":29.5,"pressure":1015.3,"uv_index":2.2,"visibility":5.3,"p
| | |recip_mm":91.5,"cloud_pct":49.7},{"date":"2026-01-06","temp_max":26.6,"temp_min":13.3,"humidity":58.1,"wind_sp
| | |eed":35.9,"pressure":1029.1,"uv_index":8.6,"visibility":13.9,"precip_mm":98.7,"cloud_pct":79.1},{"date":"2026-
| | |01-07","temp_max":38.1,"temp_min":15.9,"humidity":64.5,"wind_speed":23.4,"pressure":980.9,"uv_index":1.9,"visi
| | |bility":13.5,"precip_mm":37.9,"cloud_pct":4.1},{"date":"2026-01-08","temp_max":36.3,"temp_min":21.8,"humidity"
| | |:65.4,"wind_speed":5.6,"pressure":987.7,"uv_index":3.5,"visibility":5.3,"precip_mm":98.8,"cloud_pct":31.8},{"d
| | |ate":"2026-01-09","temp_max":36,"temp_min":24.6,"humidity":30.1,"wind_speed":3.2,"pressure":1049.4,"uv_index":
| | |8.9,"visibility":5.5,"precip_mm":10.4,"cloud_pct":45.4},{"date":"2026-01-10","temp_max":30.1,"temp_min":15.8,"
| | |humidity":25,"wind_speed":23.4,"pressure":1046.3,"uv_index":4.5,"visibility":15.4,"precip_mm":9.5,"cloud_pct":
| | |99.1},{"date":"2026-01-11","temp_max":44.1,"temp_min":14.4,"humidity":47.3,"wind_speed":20.6,"pressure":1001.3
| | |,"uv_index":3.2,"visibility":15.5,"precip_mm":36.5,"cloud_pct":2.6},{"date":"2026-01-12","temp_max":41.3,"temp
| | |_min":14.6,"humidity":36.5,"wind_speed":31.8,"pressure":1011.2,"uv_index":7.4,"visibility":18.3,"precip_mm":75
| | |.6,"cloud_pct":97.8},{"date":"2026-01-13","temp_max":37.1,"temp_min":23.4,"humidity":59.7,"wind_speed":0.4,"pr
| | |essure":1039,"uv_index":4.4,"visibility":5.5,"precip_mm":24.4,"cloud_pct":32.6},{"date":"2026-01-14","temp_max
| | |":34,"temp_min":14.9,"humidity":90.4,"wind_speed":22.3,"pressure":986.6,"uv_index":4.4,"visibility":13.5,"prec
| | |ip_mm":74.3,"cloud_pct":29.3},{"date":"2026-01-15","temp_max":37.1,"temp_min":14.7,"humidity":46.9,"wind_speed
| | |":6.1,"pressure":1042.5,"uv_index":3.3,"visibility":1.4,"precip_mm":3.1,"cloud_pct":55},{"date":"2026-01-16","
| | |temp_max":27.5,"temp_min":12.5,"humidity":31.3,"wind_speed":1.6,"pressure":993.2,"uv_index":9.2,"visibility":1
| | |8.2,"precip_mm":76.8,"cloud_pct":93.8},{"date":"2026-01-17","temp_max":32.8,"temp_min":12.9,"humidity":62.8,"w
| | |ind_speed":26.7,"pressure":1047.5,"uv_index":6.9,"visibility":4.2,"precip_mm":32.3,"cloud_pct":45.8},{"date":"
| | |2026-01-18","temp_max":33.5,"temp_min":17.1,"humidity":23.9,"wind_speed":20,"pressure":1008,"uv_index":8.4,"vi
| | |sibility":1.2,"precip_mm":6.4,"cloud_pct":64.8},{"date":"2026-01-19","temp_max":30.5,"temp_min":19.3,"humidity
| | |":93.7,"wind_speed":1.8,"pressure":989.5,"uv_index":0.1,"visibility":11.2,"precip_mm":28,"cloud_pct":43.2},{"d
| | |ate":"2026-01-20","temp_max":28.3,"temp_min":15.3,"humidity":27.3,"wind_speed":32.7,"pressure":1046.4,"uv_inde
| | |x":3.2,"visibility":18.8,"precip_mm":32.4,"cloud_pct":70.7},{"date":"2026-01-21","temp_max":43.4,"temp_min":21
| | |.6,"humidity":70.9,"wind_speed":31.8,"pressure":1020.5,"uv_index":4,"visibility":7.6,"precip_mm":51.9,"cloud_p
| | |ct":43.1},{"date":"2026-01-22","temp_max":31.2,"temp_min":12,"humidity":38.6,"wind_speed":31.5,"pressure":1002
| | |.2,"uv_index":8.9,"visibility":15.4,"precip_mm":94.9,"cloud_pct":90.4},{"date":"2026-01-23","temp_max":44,"tem
| | |p_min":23.9,"humidity":57.8,"wind_speed":38.7,"pressure":1038.2,"uv_index":3.5,"visibility":14.7,"precip_mm":9
| | |8.6,"cloud_pct":27.1},{"date":"2026-01-24","temp_max":39.9,"temp_min":15.4,"humidity":83.6,"wind_speed":30.2,"
| | |pressure":1009.5,"uv_index":1.9,"visibility":8.5,"precip_mm":80.3,"cloud_pct":64.2},{"date":"2026-01-25","temp
| | |_max":25.2,"temp_min":19.3,"humidity":31.4,"wind_speed":14.1,"pressure":1004.9,"uv_index":3,"visibility":5.6,"
| | |precip_mm":32.8,"cloud_pct":59.6},{"date":"2026-01-26","temp_max":29.9,"temp_min":23.8,"humidity":44,"wind_spe
| | |ed":39.8,"pressure":1033.6,"uv_index":9.6,"visibility":15.4,"precip_mm":90.3,"cloud_pct":15.5},{"date":"2026-0
| | |1-27","temp_max":25.4,"temp_min":19.6,"humidity":80.8,"wind_speed":36.3,"pressure":1017.7,"uv_index":10.4,"vis
| | |ibility":4,"precip_mm":10.2,"cloud_pct":94.1},{"date":"2026-01-28","temp_max":37.1,"temp_min":20.6,"humidity":
| | |95,"wind_speed":35,"pressure":1036,"uv_index":10.3,"visibility":19.1,"precip_mm":11.1,"cloud_pct":30.5},{"date
| | |":"2026-01-29","temp_max":28.5,"temp_min":12.9,"humidity":40.5,"wind_speed":2.8,"pressure":994.7,"uv_index":8.
| | |3,"visibility":12.7,"precip_mm":71.6,"cloud_pct":75.2},{"date":"2026-01-30","temp_max":28,"temp_min":17.6,"hum
| | |idity":41.2,"wind_speed":38,"pressure":1034.4,"uv_index":0.7,"visibility":18.8,"precip_mm":30.2,"cloud_pct":34
| | |.2},{"date":"2026-01-31","temp_max":36.7,"temp_min":12.5,"humidity":77.9,"wind_speed":3.4,"pressure":1047.1,"u
| | |v_index":0.7,"visibility":5,"precip_mm":11.7,"cloud_pct":12.7},{"date":"2026-02-01","temp_max":35.7,"temp_min"
| | |:13,"humidity":22.7,"wind_speed":24.2,"pressure":991.9,"uv_index":10.5,"visibility":3.5,"precip_mm":82.8,"clou
| | |d_pct":11.3},{"date":"2026-02-02","temp_max":43.2,"temp_min":19.6,"humidity":48.7,"wind_speed":20.5,"pressure"
| | |:983.8,"uv_index":0.5,"visibility":4.9,"precip_mm":10.9,"cloud_pct":87.9},{"date":"2026-02-03","temp_max":25.1
| | |,"temp_min":18.1,"humidity":20.6,"wind_speed":11.2,"pressure":1012,"uv_index":10.7,"visibility":13.6,"precip_m
| | |m":3.8,"cloud_pct":7},{"date":"2026-02-04","temp_max":32.3,"temp_min":15.7,"humidity":44.7,"wind_speed":15.4,"
| | |pressure":1022.3,"uv_index":4.5,"visibility":15.9,"precip_mm":22.1,"cloud_pct":88.7},{"date":"2026-02-05","tem
| | |p_max":39.2,"temp_min":14.2,"humidity":46.6,"wind_speed":15.1,"pressure":1040.1,"uv_index":4.6,"visibility":9,
| | |"precip_mm":44.7,"cloud_pct":35.7},{"date":"2026-02-06","temp_max":32.7,"temp_min":21.8,"humidity":42.3,"wind_
| | |speed":24.1,"pressure":986.3,"uv_index":5.5,"visibility":2.3,"precip_mm":48.7,"cloud_pct":57.5},{"date":"2026-
| | |02-07","temp_max":26.9,"temp_min":13,"humidity":38.8,"wind_speed":4.1,"pressure":1047.9,"uv_index":6.1,"visibi
| | |lity":6.1,"precip_mm":51.7,"cloud_pct":43.2},{"date":"2026-02-08","temp_max":35.4,"temp_min":20.4,"humidity":8
| | |8.7,"wind_speed":9.8,"pressure":995.5,"uv_index":3.7,"visibility":8.1,"precip_mm":58.4,"cloud_pct":96.7},{"dat
| | |e":"2026-02-09","temp_max":30.9,"temp_min":16.4,"humidity":99.1,"wind_speed":14.6,"pressure":1026.5,"uv_index"
| | |:2.7,"visibility":5.7,"precip_mm":26.6,"cloud_pct":12.8},{"date":"2026-02-10","temp_max":36.4,"temp_min":16.5,
| | |"humidity":89.6,"wind_speed":35.3,"pressure":1013.6,"uv_index":8.8,"visibility":13.2,"precip_mm":89,"cloud_pct
| | |":19.2},{"date":"2026-02-11","temp_max":33.8,"temp_min":24.6,"humidity":83.8,"wind_speed":30.6,"pressure":1042
| | |.9,"uv_index":6.1,"visibility":6.2,"precip_mm":66.8,"cloud_pct":66.9},{"date":"2026-02-12","temp_max":38.9,"te
| | |mp_min":21.4,"humidity":49.9,"wind_speed":9.8,"pressure":1042.9,"uv_index":5.7,"visibility":10.3,"precip_mm":4
| | |3.1,"cloud_pct":15.1},{"date":"2026-02-13","temp_max":41.4,"temp_min":15.2,"humidity":57.1,"wind_speed":14.5,"
| | |pressure":1027.1,"uv_index":4.4,"visibility":9.1,"precip_mm":15.1,"cloud_pct":99.7},{"date":"2026-02-14","temp
| | |_max":29.7,"temp_min":12.5,"humidity":66.8,"wind_speed":2,"pressure":1028,"uv_index":2.2,"visibility":3.5,"pre
| | |cip_mm":13.9,"cloud_pct":48.3},{"date":"2026-02-15","temp_max":35.4,"temp_min":18.5,"humidity":27.7,"wind_spee
| | |d":26.3,"pressure":984,"uv_index":4.7,"visibility":12.8,"precip_mm":49.3,"cloud_pct":16.4},{"date":"2026-02-16
| | |","temp_max":37.9,"temp_min":10.9,"humidity":89,"wind_speed":0.9,"pressure":1029.3,"uv_index":9.1,"visibility"
| | |:6.1,"precip_mm":0.6,"cloud_pct":56.3},{"date":"2026-02-17","temp_max":36.9,"temp_min":23,"humidity":30.2,"win
| | |d_speed":31.8,"pressure":1049.8,"uv_index":0.7,"visibility":3.6,"precip_mm":32.5,"cloud_pct":35.4},{"date":"20
| | |26-02-18","temp_max":42.3,"temp_min":22.4,"humidity":92,"wind_speed":34.3,"pressure":1033.7,"uv_index":5.1,"vi
| | |sibility":12.7,"precip_mm":14.6,"cloud_pct":48.8},{"date":"2026-02-19","temp_max":36.5,"temp_min":16.6,"humidi
| | |ty":87,"wind_speed":25.1,"pressure":980.6,"uv_index":8,"visibility":6,"precip_mm":44.6,"cloud_pct":85.6},{"dat
| | |e":"2026-02-20","temp_max":41.4,"temp_min":17.5,"humidity":33.6,"wind_speed":5.9,"pressure":1025.1,"uv_index":
| | |6.1,"visibility":7.2,"precip_mm":92.9,"cloud_pct":13.7},{"date":"2026-02-21","temp_max":35.9,"temp_min":19.9,"
| | |humidity":91.5,"wind_speed":18,"pressure":1016.7,"uv_index":9.7,"visibility":7.2,"precip_mm":47.7,"cloud_pct":
| | |26},{"date":"2026-02-22","temp_max":37.6,"temp_min":13.9,"humidity":36.4,"wind_speed":14,"pressure":1021.8,"uv
| | |_index":1.6,"visibility":13.6,"precip_mm":89.4,"cloud_pct":1.5},{"date":"2026-02-23","temp_max":30.9,"temp_min
| | |":22.9,"humidity":44.9,"wind_speed":39.3,"pressure":1023.2,"uv_index":5.5,"visibility":5.4,"precip_mm":28.7,"c
| | |loud_pct":96.9},{"date":"2026-02-24","temp_max":43.1,"temp_min":12.9,"humidity":80.4,"wind_speed":1.5,"pressur
| | |e":1008.2,"uv_index":4.7,"visibility":7.9,"precip_mm":6.5,"cloud_pct":67},{"date":"2026-02-25","temp_max":32.5
| | |,"temp_min":23.5,"humidity":93.5,"wind_speed":3.9,"pressure":998.2,"uv_index":2.9,"visibility":18.8,"precip_mm
| | |":61.6,"cloud_pct":4.4},{"date":"2026-02-26","temp_max":25,"temp_min":17.3,"humidity":51.5,"wind_speed":7.4,"p
| | |ressure":1011,"uv_index":5.5,"visibility":17.4,"precip_mm":30.8,"cloud_pct":54.6},{"date":"2026-02-27","temp_m
| | |ax":37.7,"temp_min":21.7,"humidity":95.8,"wind_speed":34.5,"pressure":1005,"uv_index":7.9,"visibility":13.1,"p
| | |recip_mm":36.1,"cloud_pct":88},{"date":"2026-02-28","temp_max":38.8,"temp_min":24.9,"humidity":46,"wind_speed"
| | |:35,"pressure":1030.7,"uv_index":5.5,"visibility":2.2,"precip_mm":75.9,"cloud_pct":15.4},{"date":"2026-03-01",
| | |"temp_max":30.6,"temp_min":13.5,"humidity":57.9,"wind_speed":14.2,"pressure":1048.9,"uv_index":1.1,"visibility
| | |":17.9,"precip_mm":41.8,"cloud_pct":73},{"date":"2026-03-02","temp_max":34.4,"temp_min":21.5,"humidity":60,"wi
| | |nd_speed":12,"pressure":1027,"uv_index":2,"visibility":8.1,"precip_mm":22.3,"cloud_pct":42.2},{"date":"2026-03
| | |-03","temp_max":32.7,"temp_min":10.2,"humidity":40.8,"wind_speed":31.9,"pressure":1035,"uv_index":2.8,"visibil
| | |ity":12.3,"precip_mm":81.2,"cloud_pct":33.9},{"date":"2026-03-04","temp_max":35.8,"temp_min":11,"humidity":39.
| | |4,"wind_speed":21.9,"pressure":1012.7,"uv_index":7.4,"visibility":19.5,"precip_mm":21.7,"cloud_pct":29.3},{"da
| | |te":"2026-03-05","temp_max":37.9,"temp_min":17.9,"humidity":35.8,"wind_speed":27.1,"pressure":1003.3,"uv_index
| | |":1.4,"visibility":5.1,"precip_mm":94,"cloud_pct":3.2},{"date":"2026-03-06","temp_max":26.3,"temp_min":11,"hum
| | |idity":37.3,"wind_speed":29.9,"pressure":998.3,"uv_index":8.1,"visibility":15.4,"precip_mm":86.3,"cloud_pct":5
| | |4.4},{"date":"2026-03-07","temp_max":33.1,"temp_min":23.1,"humidity":23.5,"wind_speed":32.5,"pressure":1042.7,
| | |"uv_index":0.5,"visibility":7.5,"precip_mm":43.9,"cloud_pct":88.5},{"date":"2026-03-08","temp_max":33.1,"temp_
| | |min":16.7,"humidity":98.8,"wind_speed":31.7,"pressure":1046.3,"uv_index":2.2,"visibility":8.2,"precip_mm":5.4,
| | |"cloud_pct":55.6},{"date":"2026-03-09","temp_max":35.9,"temp_min":19,"humidity":96.1,"wind_speed":11.7,"pressu
| | |re":1040.3,"uv_index":9.3,"visibility":9.9,"precip_mm":34,"cloud_pct":7.3},{"date":"2026-03-10","temp_max":26.
| | |5,"temp_min":14.5,"humidity":94.3,"wind_speed":31.5,"pressure":1046.8,"uv_index":3.8,"visibility":14.6,"precip
| | |_mm":78.8,"cloud_pct":11.3},{"date":"2026-03-11","temp_max":31.8,"temp_min":24.8,"humidity":97.2,"wind_speed":
| | |3.3,"pressure":985.8,"uv_index":8.6,"visibility":3.1,"precip_mm":0.8,"cloud_pct":88.7},{"date":"2026-03-12","t
| | |emp_max":29.6,"temp_min":16.6,"humidity":29.5,"wind_speed":30.9,"pressure":1000.5,"uv_index":9.5,"visibility":
| | |14,"precip_mm":5.1,"cloud_pct":72.4},{"date":"2026-03-13","temp_max":32.9,"temp_min":23.1,"humidity":37.3,"win
| | |d_speed":4.7,"pressure":1042.1,"uv_index":2.2,"visibility":19.6,"precip_mm":12.9,"cloud_pct":39.3},{"date":"20
| | |26-03-14","temp_max":29.6,"temp_min":11.8,"humidity":38.6,"wind_speed":3.9,"pressure":989.4,"uv_index":10.3,"v
| | |isibility":4.1,"precip_mm":46.2,"cloud_pct":13.7},{"date":"2026-03-15","temp_max":31.7,"temp_min":19.8,"humidi
| | |ty":68.7,"wind_speed":33.5,"pressure":1016.5,"uv_index":3.3,"visibility":19.4,"precip_mm":24,"cloud_pct":63.4}
| | |,{"date":"2026-03-16","temp_max":43.7,"temp_min":21.4,"humidity":48,"wind_speed":26.1,"pressure":992.6,"uv_ind
| | |ex":9.1,"visibility":11.6,"precip_mm":83.4,"cloud_pct":67.5},{"date":"2026-03-17","temp_max":31.2,"temp_min":1
| | |4.8,"humidity":29.5,"wind_speed":14.3,"pressure":1001.7,"uv_index":2.3,"visibility":1.2,"precip_mm":20.6,"clou
| | |d_pct":14.3},{"date":"2026-03-18","temp_max":41.4,"temp_min":15.8,"humidity":92.4,"wind_speed":10.2,"pressure"
| | |:987.4,"uv_index":10.4,"visibility":10,"precip_mm":52.5,"cloud_pct":57.1},{"date":"2026-03-19","temp_max":25.6
| | |,"temp_min":15.4,"humidity":29.1,"wind_speed":34,"pressure":983.6,"uv_index":7.1,"visibility":11.4,"precip_mm"
| | |:63.1,"cloud_pct":30.9},{"date":"2026-03-20","temp_max":29.4,"temp_min":21.8,"humidity":96.5,"wind_speed":36.3
| | |,"pressure":1008.5,"uv_index":5,"visibility":2,"precip_mm":51.9,"cloud_pct":77.2},{"date":"2026-03-21","temp_m
| | |ax":31.8,"temp_min":15.2,"humidity":88.9,"wind_speed":30.1,"pressure":1026.2,"uv_index":10,"visibility":5,"pre
ID|LOCATION |CREATED_AT |WEATHER_JSON
--------------------|----------------------------------------|-------------|--------------------------------------------------------------------------------------------------------------
| | |cip_mm":22.3,"cloud_pct":34.5},{"date":"2026-03-22","temp_max":36.6,"temp_min":16.1,"humidity":42.9,"wind_spee
| | |d":36.9,"pressure":1027.7,"uv_index":6,"visibility":18.9,"precip_mm":40.8,"cloud_pct":88.6},{"date":"2026-03-2
| | |3","temp_max":31.5,"temp_min":22.8,"humidity":96.1,"wind_speed":17.1,"pressure":1020.5,"uv_index":1.1,"visibil
| | |ity":4.1,"precip_mm":91.8,"cloud_pct":61.3},{"date":"2026-03-24","temp_max":37,"temp_min":23.1,"humidity":92.7
| | |,"wind_speed":27,"pressure":1021.8,"uv_index":4.9,"visibility":16.4,"precip_mm":22.3,"cloud_pct":18.6},{"date"
| | |:"2026-03-25","temp_max":34.6,"temp_min":13.6,"humidity":66.7,"wind_speed":18.4,"pressure":1010.2,"uv_index":5
| | |,"visibility":18.8,"precip_mm":46.8,"cloud_pct":31.1},{"date":"2026-03-26","temp_max":42,"temp_min":12.4,"humi
| | |dity":35.6,"wind_speed":33.7,"pressure":996.1,"uv_index":2.9,"visibility":8.7,"precip_mm":48.1,"cloud_pct":9.7
| | |},{"date":"2026-03-27","temp_max":42.4,"temp_min":17.5,"humidity":41,"wind_speed":18.9,"pressure":1004.5,"uv_i
| | |ndex":5.9,"visibility":16.6,"precip_mm":88.4,"cloud_pct":82},{"date":"2026-03-28","temp_max":40.9,"temp_min":1
| | |5.9,"humidity":70.4,"wind_speed":18.9,"pressure":1008.2,"uv_index":10.1,"visibility":3.4,"precip_mm":40.1,"clo
| | |ud_pct":84},{"date":"2026-03-29","temp_max":31.9,"temp_min":13.9,"humidity":45.9,"wind_speed":10.5,"pressure":
| | |999.5,"uv_index":8.2,"visibility":6.5,"precip_mm":0.2,"cloud_pct":14.9},{"date":"2026-03-30","temp_max":42.5,"
| | |temp_min":10.1,"humidity":48.6,"wind_speed":0.3,"pressure":1018,"uv_index":1.1,"visibility":14.5,"precip_mm":2
| | |8.3,"cloud_pct":57.3},{"date":"2026-03-31","temp_max":39.5,"temp_min":14.5,"humidity":29.7,"wind_speed":16.2,"
| | |pressure":997.8,"uv_index":9,"visibility":2.7,"precip_mm":40.7,"cloud_pct":87.1},{"date":"2026-04-01","temp_ma
| | |x":29.6,"temp_min":24.6,"humidity":65.1,"wind_speed":1.4,"pressure":993,"uv_index":5.4,"visibility":12.1,"prec
| | |ip_mm":67,"cloud_pct":76},{"date":"2026-04-02","temp_max":41.8,"temp_min":12.4,"humidity":60.4,"wind_speed":16
| | |.5,"pressure":1004.4,"uv_index":3.9,"visibility":18,"precip_mm":82.6,"cloud_pct":42.8},{"date":"2026-04-03","t
| | |emp_max":43.4,"temp_min":17.6,"humidity":73.9,"wind_speed":8.1,"pressure":993.6,"uv_index":7.8,"visibility":1.
| | |7,"precip_mm":53,"cloud_pct":65.5},{"date":"2026-04-04","temp_max":38.3,"temp_min":16.5,"humidity":73.2,"wind_
| | |speed":7.8,"pressure":1014.4,"uv_index":2.8,"visibility":6.8,"precip_mm":32.5,"cloud_pct":18.8},{"date":"2026-
| | |04-05","temp_max":37.7,"temp_min":16.9,"humidity":74,"wind_speed":4.7,"pressure":1039.1,"uv_index":7.7,"visibi
| | |lity":12.5,"precip_mm":12.4,"cloud_pct":63.2},{"date":"2026-04-06","temp_max":43.6,"temp_min":19.3,"humidity":
| | |30.2,"wind_speed":22,"pressure":1002.7,"uv_index":8.4,"visibility":10.4,"precip_mm":29.2,"cloud_pct":60.1},{"d
| | |ate":"2026-04-07","temp_max":36.5,"temp_min":14,"humidity":60.5,"wind_speed":8.7,"pressure":1028.8,"uv_index":
| | |6.8,"visibility":3.9,"precip_mm":78.1,"cloud_pct":16.2},{"date":"2026-04-08","temp_max":25.3,"temp_min":12.1,"
| | |humidity":58.7,"wind_speed":27.7,"pressure":983.4,"uv_index":8.9,"visibility":1.6,"precip_mm":1.2,"cloud_pct":
| | |67.1},{"date":"2026-04-09","temp_max":27.6,"temp_min":17.9,"humidity":70.5,"wind_speed":12.2,"pressure":989.3,
| | |"uv_index":8.9,"visibility":16.8,"precip_mm":58.8,"cloud_pct":85.4},{"date":"2026-04-10","temp_max":33.3,"temp
| | |_min":12.4,"humidity":78,"wind_speed":10.7,"pressure":1034,"uv_index":8.4,"visibility":15.4,"precip_mm":52.3,"
| | |cloud_pct":2.3},{"date":"2026-04-11","temp_max":41.1,"temp_min":21.9,"humidity":39.3,"wind_speed":33.5,"pressu
| | |re":989.2,"uv_index":10.9,"visibility":4.5,"precip_mm":29.7,"cloud_pct":17.2},{"date":"2026-04-12","temp_max":
| | |33.8,"temp_min":24.4,"humidity":70.3,"wind_speed":32,"pressure":1027.5,"uv_index":9.3,"visibility":8.5,"precip
| | |_mm":80.1,"cloud_pct":42.5},{"date":"2026-04-13","temp_max":33.3,"temp_min":16.1,"humidity":88.5,"wind_speed":
| | |14.4,"pressure":1024.5,"uv_index":9.4,"visibility":7.5,"precip_mm":41.9,"cloud_pct":55.2},{"date":"2026-04-14"
| | |,"temp_max":43.4,"temp_min":21.6,"humidity":73.3,"wind_speed":20.3,"pressure":1014.9,"uv_index":9.2,"visibilit
| | |y":2,"precip_mm":86.7,"cloud_pct":14.3},{"date":"2026-04-15","temp_max":38.2,"temp_min":14.7,"humidity":85.8,"
| | |wind_speed":32.2,"pressure":1032.3,"uv_index":1,"visibility":9.4,"precip_mm":63.2,"cloud_pct":26.7},{"date":"2
| | |026-04-16","temp_max":39.1,"temp_min":22.2,"humidity":96.8,"wind_speed":6,"pressure":1027.6,"uv_index":2,"visi
| | |bility":12.7,"precip_mm":12.1,"cloud_pct":15.9},{"date":"2026-04-17","temp_max":42.6,"temp_min":12.3,"humidity
| | |":36.8,"wind_speed":31.7,"pressure":1033,"uv_index":10,"visibility":13.4,"precip_mm":69.2,"cloud_pct":79.6},{"
| | |date":"2026-04-18","temp_max":25.2,"temp_min":17.4,"humidity":86,"wind_speed":30.9,"pressure":1012,"uv_index":
| | |10.9,"visibility":13.8,"precip_mm":19.7,"cloud_pct":54.8},{"date":"2026-04-19","temp_max":35.3,"temp_min":22.8
| | |,"humidity":23.3,"wind_speed":5,"pressure":984.5,"uv_index":4.9,"visibility":16.5,"precip_mm":49.4,"cloud_pct"
| | |:9.9},{"date":"2026-04-20","temp_max":39.6,"temp_min":18.1,"humidity":91.7,"wind_speed":33,"pressure":1007,"uv
| | |_index":7.1,"visibility":1.9,"precip_mm":84.5,"cloud_pct":62.4},{"date":"2026-04-21","temp_max":26,"temp_min":
| | |14.7,"humidity":20.5,"wind_speed":24.8,"pressure":1037,"uv_index":2.6,"visibility":18.4,"precip_mm":21.3,"clou
| | |d_pct":8.9},{"date":"2026-04-22","temp_max":30.2,"temp_min":15.6,"humidity":20.6,"wind_speed":20.3,"pressure":
| | |1026.7,"uv_index":5.9,"visibility":5.2,"precip_mm":74,"cloud_pct":18.5},{"date":"2026-04-23","temp_max":37.1,"
| | |temp_min":20.4,"humidity":71.5,"wind_speed":12.3,"pressure":1016.8,"uv_index":3.2,"visibility":16.2,"precip_mm
| | |":47.9,"cloud_pct":7.7},{"date":"2026-04-24","temp_max":33.9,"temp_min":10.9,"humidity":47.1,"wind_speed":18,"
| | |pressure":1037.5,"uv_index":8.5,"visibility":1,"precip_mm":29.1,"cloud_pct":1.2},{"date":"2026-04-25","temp_ma
| | |x":40.8,"temp_min":16.5,"humidity":25.3,"wind_speed":5.2,"pressure":1007,"uv_index":4.8,"visibility":9.6,"prec
| | |ip_mm":32.4,"cloud_pct":16.1},{"date":"2026-04-26","temp_max":37.6,"temp_min":24.3,"humidity":42.2,"wind_speed
| | |":3.2,"pressure":1010.1,"uv_index":0.9,"visibility":6.6,"precip_mm":35.7,"cloud_pct":37},{"date":"2026-04-27",
| | |"temp_max":43.4,"temp_min":22.8,"humidity":83.3,"wind_speed":3.3,"pressure":984.5,"uv_index":9.6,"visibility":
| | |12,"precip_mm":36.7,"cloud_pct":3.5},{"date":"2026-04-28","temp_max":42.2,"temp_min":13.9,"humidity":73.3,"win
| | |d_speed":0.8,"pressure":1000.7,"uv_index":1.1,"visibility":12.4,"precip_mm":35.3,"cloud_pct":12.6},{"date":"20
| | |26-04-29","temp_max":37.5,"temp_min":10.9,"humidity":21.5,"wind_speed":32.2,"pressure":1045.8,"uv_index":5.3,"
| | |visibility":11.9,"precip_mm":88.3,"cloud_pct":90.9},{"date":"2026-04-30","temp_max":28.1,"temp_min":21.1,"humi
| | |dity":53.4,"wind_speed":28.3,"pressure":1005.9,"uv_index":7.4,"visibility":11.7,"precip_mm":8.4,"cloud_pct":35
| | |.5},{"date":"2026-05-01","temp_max":42.7,"temp_min":15.5,"humidity":84,"wind_speed":4,"pressure":1049.3,"uv_in
| | |dex":7.1,"visibility":3,"precip_mm":47.5,"cloud_pct":62},{"date":"2026-05-02","temp_max":30.2,"temp_min":13.5,
| | |"humidity":44.5,"wind_speed":16.1,"pressure":1029.5,"uv_index":5.4,"visibility":2.9,"precip_mm":9.8,"cloud_pct
| | |":29.8},{"date":"2026-05-03","temp_max":42,"temp_min":17.4,"humidity":78.8,"wind_speed":28,"pressure":996.8,"u
| | |v_index":8.8,"visibility":6.5,"precip_mm":28.7,"cloud_pct":73.6},{"date":"2026-05-04","temp_max":39.2,"temp_mi
| | |n":16.3,"humidity":47.7,"wind_speed":0.9,"pressure":1043.5,"uv_index":7.3,"visibility":18.1,"precip_mm":70,"cl
| | |oud_pct":34.3},{"date":"2026-05-05","temp_max":40.5,"temp_min":21,"humidity":62.8,"wind_speed":25.5,"pressure"
| | |:984.6,"uv_index":1.9,"visibility":15.9,"precip_mm":97.7,"cloud_pct":59}],"hourly":[{"timestamp":"2025-05-05T1
| | |6:16:57Z","wind_speed":27.9,"temperature":12,"dew_point":20.1,"feels_like":1.6,"humidity":74.3,"pressure":1008
| | |.6,"cloud_cover":32.4,"visibility":6,"precip_mm":15.9,"wind_dir":"W"},{"timestamp":"2025-05-05T17:16:57Z","win
| | |d_speed":20.5,"temperature":-0.2,"dew_point":11.1,"feels_like":27.4,"humidity":82.8,"pressure":989,"cloud_cove
| | |r":28.1,"visibility":8.3,"precip_mm":16.2,"wind_dir":"Z"},{"timestamp":"2025-05-05T18:16:57Z","wind_speed":1.3
| | |,"temperature":41.2,"dew_point":0.3,"feels_like":27.2,"humidity":49.5,"pressure":991.5,"cloud_cover":63.6,"vis
| | |ibility":9.9,"precip_mm":47,"wind_dir":"T"},{"timestamp":"2025-05-05T19:16:57Z","wind_speed":0.3,"temperature"
| | |:7.9,"dew_point":9.9,"feels_like":-8.5,"humidity":67.7,"pressure":1021.9,"cloud_cover":68.1,"visibility":3.2,"
| | |precip_mm":67,"wind_dir":"V"},{"timestamp":"2025-05-05T20:16:57Z","wind_speed":25.5,"temperature":-0.1,"dew_po
| | |int":4.4,"feels_like":-9.4,"humidity":49.4,"pressure":1033.7,"cloud_cover":91.6,"visibility":17.4,"precip_mm":
| | |92,"wind_dir":"T"},{"timestamp":"2025-05-05T21:16:57Z","wind_speed":1.5,"temperature":2.5,"dew_point":8.1,"fee
| | |ls_like":-8.4,"humidity":23.8,"pressure":1049.5,"cloud_cover":18.4,"visibility":1,"precip_mm":19.5,"wind_dir":
| | |"L"},{"timestamp":"2025-05-05T22:16:57Z","wind_speed":40,"temperature":8.3,"dew_point":5.9,"feels_like":32.7,"
| | |humidity":83.8,"pressure":1014.8,"cloud_cover":92.6,"visibility":3.6,"precip_mm":9.2,"wind_dir":"E"},{"timesta
| | |mp":"2025-05-05T23:16:57Z","wind_speed":29.9,"temperature":26.6,"dew_point":9,"feels_like":5.1,"humidity":63.5
| | |,"pressure":1008.2,"cloud_cover":30,"visibility":18.9,"precip_mm":94.2,"wind_dir":"L"},{"timestamp":"2025-05-0
| | |6T00:16:57Z","wind_speed":31.2,"temperature":26.2,"dew_point":12.1,"feels_like":10.5,"humidity":16.5,"pressure
| | |":1016.9,"cloud_cover":64.3,"visibility":10.3,"precip_mm":19.1,"wind_dir":"J"},{"timestamp":"2025-05-06T01:16:
| | |57Z","wind_speed":24.5,"temperature":-7.8,"dew_point":20.5,"feels_like":45.5,"humidity":13.9,"pressure":999,"c
| | |loud_cover":57.3,"visibility":16.4,"precip_mm":43.5,"wind_dir":"Z"},{"timestamp":"2025-05-06T02:16:57Z","wind_
| | |speed":25.7,"temperature":36.4,"dew_point":0.1,"feels_like":13.1,"humidity":44.5,"pressure":1018,"cloud_cover"
| | |:9.8,"visibility":16.9,"precip_mm":33,"wind_dir":"V"},{"timestamp":"2025-05-06T03:16:57Z","wind_speed":13.3,"t
| | |emperature":10.2,"dew_point":6.8,"feels_like":27.3,"humidity":78,"pressure":986.1,"cloud_cover":30.8,"visibili
| | |ty":17.9,"precip_mm":44.2,"wind_dir":"Y"},{"timestamp":"2025-05-06T04:16:57Z","wind_speed":6.7,"temperature":1
| | |0.7,"dew_point":-3,"feels_like":19.9,"humidity":79.8,"pressure":1000.2,"cloud_cover":40.6,"visibility":15,"pre
| | |cip_mm":17.2,"wind_dir":"E"},{"timestamp":"2025-05-06T05:16:57Z","wind_speed":16.3,"temperature":38.2,"dew_poi
| | |nt":6.3,"feels_like":1,"humidity":52.3,"pressure":995.3,"cloud_cover":91,"visibility":3.2,"precip_mm":72.1,"wi
| | |nd_dir":"E"},{"timestamp":"2025-05-06T06:16:57Z","wind_speed":47.3,"temperature":27.6,"dew_point":-0.8,"feels_
| | |like":43.1,"humidity":13.3,"pressure":1042,"cloud_cover":93.2,"visibility":18.8,"precip_mm":79.8,"wind_dir":"H
| | |"},{"timestamp":"2025-05-06T07:16:57Z","wind_speed":10.6,"temperature":13.2,"dew_point":5.4,"feels_like":27.1,
| | |"humidity":67.6,"pressure":1021.1,"cloud_cover":12.2,"visibility":9.7,"precip_mm":92,"wind_dir":"Z"},{"timesta
| | |mp":"2025-05-06T08:16:57Z","wind_speed":40,"temperature":44.9,"dew_point":-2.4,"feels_like":12.2,"humidity":52
| | |.8,"pressure":1037.6,"cloud_cover":87,"visibility":12.6,"precip_mm":17.7,"wind_dir":"S"},{"timestamp":"2025-05
| | |-06T09:16:57Z","wind_speed":23.9,"temperature":27.2,"dew_point":18.5,"feels_like":35.1,"humidity":50.3,"pressu
| | |re":1039.1,"cloud_cover":71.3,"visibility":19.1,"precip_mm":6.7,"wind_dir":"I"},{"timestamp":"2025-05-06T10:16
| | |:57Z","wind_speed":40.6,"temperature":42.4,"dew_point":6.6,"feels_like":31.2,"humidity":77.8,"pressure":995.8,
| | |"cloud_cover":92.7,"visibility":19.3,"precip_mm":44.8,"wind_dir":"C"},{"timestamp":"2025-05-06T11:16:57Z","win
| | |d_speed":9.8,"temperature":-5,"dew_point":11,"feels_like":-0.9,"humidity":99.6,"pressure":1021.2,"cloud_cover"
| | |:64.8,"visibility":19.3,"precip_mm":81.6,"wind_dir":"M"},{"timestamp":"2025-05-06T12:16:57Z","wind_speed":12.3
| | |,"temperature":16.6,"dew_point":16.3,"feels_like":21.5,"humidity":74.3,"pressure":1047.9,"cloud_cover":59.2,"v
| | |isibility":4.6,"precip_mm":92.4,"wind_dir":"X"},{"timestamp":"2025-05-06T13:16:57Z","wind_speed":33.7,"tempera
| | |ture":-7.5,"dew_point":0,"feels_like":20.1,"humidity":55.6,"pressure":1015.3,"cloud_cover":43.9,"visibility":6
| | |.9,"precip_mm":72.6,"wind_dir":"V"},{"timestamp":"2025-05-06T14:16:57Z","wind_speed":8.6,"temperature":-2.2,"d
| | |ew_point":19.9,"feels_like":44.4,"humidity":46.1,"pressure":997.8,"cloud_cover":41,"visibility":8.1,"precip_mm
| | |":12.6,"wind_dir":"W"},{"timestamp":"2025-05-06T15:16:57Z","wind_speed":39.1,"temperature":-2.4,"dew_point":10
| | |.4,"feels_like":6.3,"humidity":47.9,"pressure":1022.7,"cloud_cover":94.6,"visibility":7.7,"precip_mm":40.4,"wi
| | |nd_dir":"F"},{"timestamp":"2025-05-06T16:16:57Z","wind_speed":47.7,"temperature":-9.4,"dew_point":10.1,"feels_
| | |like":2.7,"humidity":18.6,"pressure":981.9,"cloud_cover":30.7,"visibility":1.7,"precip_mm":63.6,"wind_dir":"T"
| | |},{"timestamp":"2025-05-06T17:16:57Z","wind_speed":10.9,"temperature":1.5,"dew_point":21.3,"feels_like":32.4,"
| | |humidity":53,"pressure":1010.5,"cloud_cover":8.6,"visibility":19.3,"precip_mm":65.7,"wind_dir":"R"},{"timestam
| | |p":"2025-05-06T18:16:57Z","wind_speed":17.3,"temperature":-8.5,"dew_point":10.6,"feels_like":-7.9,"humidity":1
| | |9.6,"pressure":1031.7,"cloud_cover":86.2,"visibility":15.8,"precip_mm":61.9,"wind_dir":"V"},{"timestamp":"2025
| | |-05-06T19:16:57Z","wind_speed":41.1,"temperature":1.8,"dew_point":12.5,"feels_like":18.5,"humidity":94.9,"pres
| | |sure":1027.6,"cloud_cover":43.8,"visibility":17.3,"precip_mm":47.9,"wind_dir":"C"},{"timestamp":"2025-05-06T20
| | |:16:57Z","wind_speed":30.2,"temperature":18,"dew_point":-2,"feels_like":15.1,"humidity":35.8,"pressure":1048.8
| | |,"cloud_cover":38.4,"visibility":19,"precip_mm":86.8,"wind_dir":"J"},{"timestamp":"2025-05-06T21:16:57Z","wind
| | |_speed":25.5,"temperature":37.1,"dew_point":8.9,"feels_like":26.4,"humidity":51.8,"pressure":986.9,"cloud_cove
| | |r":87.4,"visibility":5.6,"precip_mm":81.6,"wind_dir":"J"},{"timestamp":"2025-05-06T22:16:57Z","wind_speed":28.
| | |9,"temperature":11.1,"dew_point":11.6,"feels_like":0.7,"humidity":90.1,"pressure":1037.8,"cloud_cover":33.4,"v
| | |isibility":11.6,"precip_mm":65.6,"wind_dir":"A"},{"timestamp":"2025-05-06T23:16:57Z","wind_speed":47.2,"temper
| | |ature":-2.6,"dew_point":7.8,"feels_like":46.4,"humidity":26.9,"pressure":1012.5,"cloud_cover":5.6,"visibility"
| | |:10.5,"precip_mm":73,"wind_dir":"Q"},{"timestamp":"2025-05-07T00:16:57Z","wind_speed":4.2,"temperature":28.2,"
| | |dew_point":7.5,"feels_like":23.6,"humidity":39.3,"pressure":1041,"cloud_cover":18.5,"visibility":14,"precip_mm
| | |":69.6,"wind_dir":"S"},{"timestamp":"2025-05-07T01:16:57Z","wind_speed":18.4,"temperature":40.2,"dew_point":-2
| | |.1,"feels_like":-10.8,"humidity":99.1,"pressure":1014.6,"cloud_cover":84.3,"visibility":18.6,"precip_mm":93.8,
| | |"wind_dir":"C"},{"timestamp":"2025-05-07T02:16:57Z","wind_speed":2.7,"temperature":-9.3,"dew_point":21.8,"feel
| | |s_like":-7.4,"humidity":82.9,"pressure":998.7,"cloud_cover":96.5,"visibility":18.6,"precip_mm":56.7,"wind_dir"
| | |:"U"},{"timestamp":"2025-05-07T03:16:57Z","wind_speed":7.1,"temperature":-5.2,"dew_point":20.1,"feels_like":36
| | |.6,"humidity":36,"pressure":1047.6,"cloud_cover":57.2,"visibility":9.1,"precip_mm":76.4,"wind_dir":"M"},{"time
| | |stamp":"2025-05-07T04:16:57Z","wind_speed":32.3,"temperature":30,"dew_point":13.6,"feels_like":33,"humidity":4
| | |8.9,"pressure":982.2,"cloud_cover":11.4,"visibility":18.5,"precip_mm":78.6,"wind_dir":"N"},{"timestamp":"2025-
| | |05-07T05:16:57Z","wind_speed":27,"temperature":21.3,"dew_point":13.5,"feels_like":16,"humidity":95.5,"pressure
| | |":1007.5,"cloud_cover":25.5,"visibility":14,"precip_mm":4.9,"wind_dir":"T"},{"timestamp":"2025-05-07T06:16:57Z
| | |","wind_speed":49.2,"temperature":6,"dew_point":9.3,"feels_like":47.3,"humidity":11.9,"pressure":1017.2,"cloud
| | |_cover":41.5,"visibility":2.2,"precip_mm":94,"wind_dir":"B"},{"timestamp":"2025-05-07T07:16:57Z","wind_speed":
| | |18.5,"temperature":36.8,"dew_point":14.9,"feels_like":-0.6,"humidity":51.6,"pressure":1023.3,"cloud_cover":73,
| | |"visibility":18.6,"precip_mm":16.9,"wind_dir":"R"},{"timestamp":"2025-05-07T08:16:57Z","wind_speed":25.9,"temp
| | |erature":22.2,"dew_point":7.2,"feels_like":39.3,"humidity":62.5,"pressure":1018,"cloud_cover":97.2,"visibility
| | |":5.4,"precip_mm":39.7,"wind_dir":"Q"},{"timestamp":"2025-05-07T09:16:57Z","wind_speed":39.2,"temperature":18.
| | |4,"dew_point":6.5,"feels_like":1.7,"humidity":14.2,"pressure":1035.5,"cloud_cover":49.5,"visibility":3.9,"prec
| | |ip_mm":6.1,"wind_dir":"S"},{"timestamp":"2025-05-07T10:16:57Z","wind_speed":12.4,"temperature":14.3,"dew_point
| | |":-0.8,"feels_like":42.4,"humidity":80,"pressure":989.4,"cloud_cover":87.6,"visibility":5.5,"precip_mm":26.9,"
| | |wind_dir":"Y"},{"timestamp":"2025-05-07T11:16:57Z","wind_speed":31.6,"temperature":40.5,"dew_point":10.6,"feel
| | |s_like":48.6,"humidity":69.4,"pressure":1020.9,"cloud_cover":25.1,"visibility":1.3,"precip_mm":95.7,"wind_dir"
| | |:"V"},{"timestamp":"2025-05-07T12:16:57Z","wind_speed":49.4,"temperature":14.8,"dew_point":4.6,"feels_like":-1
| | |1.8,"humidity":81.8,"pressure":1045.3,"cloud_cover":61.4,"visibility":9.7,"precip_mm":86.5,"wind_dir":"Q"},{"t
| | |imestamp":"2025-05-07T13:16:57Z","wind_speed":47.4,"temperature":29.5,"dew_point":19.3,"feels_like":-11.1,"hum
| | |idity":88.4,"pressure":1034.2,"cloud_cover":81.9,"visibility":11.3,"precip_mm":39.4,"wind_dir":"V"},{"timestam
| | |p":"2025-05-07T14:16:57Z","wind_speed":2.8,"temperature":39.2,"dew_point":1.2,"feels_like":15,"humidity":54.1,
| | |"pressure":984.5,"cloud_cover":6.5,"visibility":19.4,"precip_mm":3.5,"wind_dir":"D"},{"timestamp":"2025-05-07T
| | |15:16:57Z","wind_speed":42.9,"temperature":26.8,"dew_point":1,"feels_like":0.8,"humidity":83.4,"pressure":1016
| | |.4,"cloud_cover":23.5,"visibility":2.4,"precip_mm":86.3,"wind_dir":"L"},{"timestamp":"2025-05-07T16:16:57Z","w
| | |ind_speed":7,"temperature":34.2,"dew_point":3.9,"feels_like":40.5,"humidity":71.7,"pressure":1036.8,"cloud_cov
| | |er":20.1,"visibility":6.5,"precip_mm":45,"wind_dir":"W"},{"timestamp":"2025-05-07T17:16:57Z","wind_speed":22.4
| | |,"temperature":1.1,"dew_point":9.4,"feels_like":16.2,"humidity":51.2,"pressure":993.8,"cloud_cover":76.5,"visi
| | |bility":8.3,"precip_mm":5.3,"wind_dir":"N"},{"timestamp":"2025-05-07T18:16:57Z","wind_speed":34,"temperature":
| | |26.9,"dew_point":16,"feels_like":24.1,"humidity":83.3,"pressure":1014.3,"cloud_cover":94.5,"visibility":7.2,"p
| | |recip_mm":18.2,"wind_dir":"P"},{"timestamp":"2025-05-07T19:16:57Z","wind_speed":4,"temperature":28.3,"dew_poin
| | |t":6.8,"feels_like":22.5,"humidity":20.4,"pressure":1002.8,"cloud_cover":78.3,"visibility":1.4,"precip_mm":25.
| | |7,"wind_dir":"A"},{"timestamp":"2025-05-07T20:16:57Z","wind_speed":24.7,"temperature":22.9,"dew_point":8.4,"fe
| | |els_like":2.3,"humidity":59,"pressure":1032.6,"cloud_cover":20,"visibility":8.6,"precip_mm":62.3,"wind_dir":"D
| | |"},{"timestamp":"2025-05-07T21:16:57Z","wind_speed":33.9,"temperature":16.5,"dew_point":15.3,"feels_like":-2.6
| | |,"humidity":94.1,"pressure":1010.2,"cloud_cover":1.4,"visibility":15.9,"precip_mm":8.5,"wind_dir":"M"},{"times
| | |tamp":"2025-05-07T22:16:57Z","wind_speed":28.3,"temperature":-7.4,"dew_point":21.1,"feels_like":18,"humidity":
| | |63.5,"pressure":1016.1,"cloud_cover":47.7,"visibility":16.3,"precip_mm":23,"wind_dir":"H"},{"timestamp":"2025-
| | |05-07T23:16:57Z","wind_speed":29.9,"temperature":32.1,"dew_point":14.5,"feels_like":36.8,"humidity":29,"pressu
| | |re":1030.2,"cloud_cover":21.3,"visibility":9.6,"precip_mm":88.1,"wind_dir":"E"},{"timestamp":"2025-05-08T00:16
| | |:57Z","wind_speed":5.8,"temperature":1,"dew_point":10.6,"feels_like":48.2,"humidity":65.9,"pressure":984.3,"cl
| | |oud_cover":90.2,"visibility":16.7,"precip_mm":9.4,"wind_dir":"J"},{"timestamp":"2025-05-08T01:16:57Z","wind_sp
| | |eed":42.6,"temperature":-3.3,"dew_point":10.8,"feels_like":9.3,"humidity":68.6,"pressure":1018.3,"cloud_cover"
| | |:35.1,"visibility":19.3,"precip_mm":97,"wind_dir":"E"},{"timestamp":"2025-05-08T02:16:57Z","wind_speed":41.7,"
| | |temperature":9,"dew_point":0.8,"feels_like":18.7,"humidity":86.5,"pressure":1004.9,"cloud_cover":38.7,"visibil
| | |ity":8.5,"precip_mm":89,"wind_dir":"C"},{"timestamp":"2025-05-08T03:16:57Z","wind_speed":35.3,"temperature":10
| | |.1,"dew_point":17.7,"feels_like":26,"humidity":58.1,"pressure":1041.7,"cloud_cover":42,"visibility":18.7,"prec
| | |ip_mm":46.7,"wind_dir":"E"},{"timestamp":"2025-05-08T04:16:57Z","wind_speed":44.1,"temperature":10.6,"dew_poin
| | |t":0.4,"feels_like":26.4,"humidity":10.3,"pressure":1047.3,"cloud_cover":17.3,"visibility":4.7,"precip_mm":94.
| | |8,"wind_dir":"Q"},{"timestamp":"2025-05-08T05:16:57Z","wind_speed":36.5,"temperature":-2.6,"dew_point":24.1,"f
| | |eels_like":-10.8,"humidity":46.6,"pressure":983.6,"cloud_cover":1.5,"visibility":17.6,"precip_mm":50.4,"wind_d
| | |ir":"A"},{"timestamp":"2025-05-08T06:16:57Z","wind_speed":31.4,"temperature":4.5,"dew_point":8.7,"feels_like":
| | |12.7,"humidity":69.4,"pressure":1017.6,"cloud_cover":58.2,"visibility":8.7,"precip_mm":27.2,"wind_dir":"V"},{"
| | |timestamp":"2025-05-08T07:16:57Z","wind_speed":48.7,"temperature":24.7,"dew_point":12.9,"feels_like":44.9,"hum
| | |idity":57.7,"pressure":989.5,"cloud_cover":4.7,"visibility":4,"precip_mm":0.8,"wind_dir":"F"},{"timestamp":"20
| | |25-05-08T08:16:57Z","wind_speed":14.8,"temperature":-8.5,"dew_point":8.7,"feels_like":17,"humidity":42.1,"pres
| | |sure":1026.6,"cloud_cover":41,"visibility":16.4,"precip_mm":72.1,"wind_dir":"C"},{"timestamp":"2025-05-08T09:1
| | |6:57Z","wind_speed":6.3,"temperature":26.7,"dew_point":5.7,"feels_like":-5.7,"humidity":88.9,"pressure":1012.4
| | |,"cloud_cover":41.1,"visibility":14.6,"precip_mm":46.3,"wind_dir":"A"},{"timestamp":"2025-05-08T10:16:57Z","wi
| | |nd_speed":23.9,"temperature":39,"dew_point":-1.5,"feels_like":23.5,"humidity":79.4,"pressure":1000.4,"cloud_co
| | |ver":56.3,"visibility":3,"precip_mm":77.7,"wind_dir":"C"},{"timestamp":"2025-05-08T11:16:57Z","wind_speed":43.
| | |1,"temperature":-7.7,"dew_point":6,"feels_like":-9.9,"humidity":52.5,"pressure":1016.5,"cloud_cover":46.8,"vis
| | |ibility":3.3,"precip_mm":3.8,"wind_dir":"O"},{"timestamp":"2025-05-08T12:16:57Z","wind_speed":7.4,"temperature
| | |":20.2,"dew_point":11.5,"feels_like":-1.7,"humidity":94.4,"pressure":1044.6,"cloud_cover":24.6,"visibility":2.
| | |2,"precip_mm":38.5,"wind_dir":"T"},{"timestamp":"2025-05-08T13:16:57Z","wind_speed":39,"temperature":28,"dew_p
| | |oint":17.5,"feels_like":-13.3,"humidity":24.8,"pressure":1022.1,"cloud_cover":46.3,"visibility":15.2,"precip_m
| | |m":86,"wind_dir":"N"},{"timestamp":"2025-05-08T14:16:57Z","wind_speed":9.6,"temperature":38,"dew_point":21.6,"
| | |feels_like":31,"humidity":80,"pressure":1029.2,"cloud_cover":99.8,"visibility":17.7,"precip_mm":59.5,"wind_dir
| | |":"N"},{"timestamp":"2025-05-08T15:16:57Z","wind_speed":20,"temperature":-7.8,"dew_point":22.6,"feels_like":-1
| | |4.2,"humidity":96.6,"pressure":1004.6,"cloud_cover":83.3,"visibility":1.8,"precip_mm":72.4,"wind_dir":"B"},{"t
| | |imestamp":"2025-05-08T16:16:57Z","wind_speed":47.1,"temperature":17.2,"dew_point":-1.1,"feels_like":48.8,"humi
| | |dity":38,"pressure":1020.9,"cloud_cover":22.1,"visibility":19.4,"precip_mm":32.4,"wind_dir":"V"},{"timestamp":
| | |"2025-05-08T17:16:57Z","wind_speed":40.8,"temperature":13.1,"dew_point":19.9,"feels_like":10.6,"humidity":42,"
| | |pressure":1031.4,"cloud_cover":81.4,"visibility":5.8,"precip_mm":14.7,"wind_dir":"T"},{"timestamp":"2025-05-08
| | |T18:16:57Z","wind_speed":17.4,"temperature":9.4,"dew_point":-2.8,"feels_like":47.6,"humidity":25.1,"pressure":
| | |984.5,"cloud_cover":20.5,"visibility":2.9,"precip_mm":61.2,"wind_dir":"C"},{"timestamp":"2025-05-08T19:16:57Z"
| | |,"wind_speed":8.5,"temperature":2.6,"dew_point":16.9,"feels_like":-8.7,"humidity":63.5,"pressure":1017,"cloud_
| | |cover":74.7,"visibility":10,"precip_mm":41.4,"wind_dir":"V"},{"timestamp":"2025-05-08T20:16:57Z","wind_speed":
| | |47.5,"temperature":36.9,"dew_point":3.1,"feels_like":-7,"humidity":84.4,"pressure":1032.7,"cloud_cover":21.8,"
| | |visibility":13.4,"precip_mm":21.5,"wind_dir":"W"},{"timestamp":"2025-05-08T21:16:57Z","wind_speed":44.6,"tempe
| | |rature":0.2,"dew_point":-4.9,"feels_like":30.8,"humidity":91.6,"pressure":985.1,"cloud_cover":41.1,"visibility
| | |":4.7,"precip_mm":14.6,"wind_dir":"V"},{"timestamp":"2025-05-08T22:16:57Z","wind_speed":45.9,"temperature":13.
| | |8,"dew_point":-3,"feels_like":37.9,"humidity":95.7,"pressure":994.5,"cloud_cover":82.7,"visibility":7.8,"preci
| | |p_mm":56.4,"wind_dir":"P"},{"timestamp":"2025-05-08T23:16:57Z","wind_speed":48.7,"temperature":-1.5,"dew_point
| | |":6.3,"feels_like":23.1,"humidity":17.5,"pressure":1037.5,"cloud_cover":82.2,"visibility":16.7,"precip_mm":56.
| | |6,"wind_dir":"H"},{"timestamp":"2025-05-09T00:16:57Z","wind_speed":25.9,"temperature":6.8,"dew_point":19.1,"fe
| | |els_like":1.3,"humidity":28.8,"pressure":1045.8,"cloud_cover":79.1,"visibility":16.3,"precip_mm":58.2,"wind_di
| | |r":"D"},{"timestamp":"2025-05-09T01:16:57Z","wind_speed":18.3,"temperature":42.8,"dew_point":3.6,"feels_like":
| | |47.5,"humidity":83.1,"pressure":1029.9,"cloud_cover":18.5,"visibility":10.1,"precip_mm":77.8,"wind_dir":"U"},{
| | |"timestamp":"2025-05-09T02:16:57Z","wind_speed":14.9,"temperature":13.2,"dew_point":2.3,"feels_like":44,"humid
| | |ity":63.6,"pressure":980.6,"cloud_cover":73.3,"visibility":16.7,"precip_mm":71.4,"wind_dir":"E"},{"timestamp":
| | |"2025-05-09T03:16:57Z","wind_speed":17.8,"temperature":12.5,"dew_point":8.4,"feels_like":9.7,"humidity":29.3,"
| | |pressure":1045.5,"cloud_cover":75.7,"visibility":1.1,"precip_mm":70.9,"wind_dir":"Y"},{"timestamp":"2025-05-09
| | |T04:16:57Z","wind_speed":18.8,"temperature":-0.5,"dew_point":4.6,"feels_like":-4.1,"humidity":20.1,"pressure":
| | |1005.1,"cloud_cover":56.1,"visibility":2.7,"precip_mm":15.9,"wind_dir":"N"},{"timestamp":"2025-05-09T05:16:57Z
| | |","wind_speed":8.1,"temperature":-5.5,"dew_point":17,"feels_like":0.7,"humidity":15.8,"pressure":1008.7,"cloud
| | |_cover":3.4,"visibility":16.4,"precip_mm":25.2,"wind_dir":"P"},{"timestamp":"2025-05-09T06:16:57Z","wind_speed
| | |":39.8,"temperature":35.9,"dew_point":0.5,"feels_like":7.6,"humidity":31.4,"pressure":1044,"cloud_cover":81.7,
| | |"visibility":5.2,"precip_mm":12.3,"wind_dir":"I"},{"timestamp":"2025-05-09T07:16:57Z","wind_speed":44.5,"tempe
| | |rature":16.5,"dew_point":14.3,"feels_like":42.5,"humidity":55.4,"pressure":1010.1,"cloud_cover":68.6,"visibili
| | |ty":12.4,"precip_mm":85.9,"wind_dir":"U"},{"timestamp":"2025-05-09T08:16:57Z","wind_speed":38.9,"temperature":
| | |7.5,"dew_point":-3,"feels_like":-9.1,"humidity":52.1,"pressure":1048.9,"cloud_cover":2.6,"visibility":17.3,"pr
| | |ecip_mm":38.9,"wind_dir":"O"},{"timestamp":"2025-05-09T09:16:57Z","wind_speed":47.3,"temperature":1.2,"dew_poi
| | |nt":5.6,"feels_like":35.1,"humidity":94.7,"pressure":1013.8,"cloud_cover":33.3,"visibility":5.4,"precip_mm":19
| | |.4,"wind_dir":"Z"},{"timestamp":"2025-05-09T10:16:57Z","wind_speed":33.2,"temperature":25.4,"dew_point":24.3,"
| | |feels_like":39.6,"humidity":28.5,"pressure":982.8,"cloud_cover":66.5,"visibility":4.1,"precip_mm":84.8,"wind_d
| | |ir":"Z"},{"timestamp":"2025-05-09T11:16:57Z","wind_speed":36,"temperature":15.5,"dew_point":22.1,"feels_like":
| | |32.3,"humidity":19.1,"pressure":1044.3,"cloud_cover":9.3,"visibility":4.2,"precip_mm":82.3,"wind_dir":"P"},{"t
| | |imestamp":"2025-05-09T12:16:57Z","wind_speed":3.2,"temperature":28.8,"dew_point":24.7,"feels_like":-7.3,"humid
| | |ity":25.3,"pressure":1039.7,"cloud_cover":73.8,"visibility":3.4,"precip_mm":22.3,"wind_dir":"L"},{"timestamp":
| | |"2025-05-09T13:16:57Z","wind_speed":3.2,"temperature":44.5,"dew_point":8.2,"feels_like":-10.3,"humidity":69.6,
| | |"pressure":984.4,"cloud_cover":63.2,"visibility":3,"precip_mm":44.3,"wind_dir":"Z"},{"timestamp":"2025-05-09T1
| | |4:16:57Z","wind_speed":24.5,"temperature":13,"dew_point":12.5,"feels_like":14.1,"humidity":93.6,"pressure":100
| | |6.9,"cloud_cover":10.9,"visibility":6.2,"precip_mm":4,"wind_dir":"Y"},{"timestamp":"2025-05-09T15:16:57Z","win
| | |d_speed":18.2,"temperature":33.5,"dew_point":5.6,"feels_like":-2.8,"humidity":39.1,"pressure":998.7,"cloud_cov
| | |er":33.3,"visibility":16.8,"precip_mm":40.1,"wind_dir":"S"},{"timestamp":"2025-05-09T16:16:57Z","wind_speed":2
| | |5.5,"temperature":0.7,"dew_point":2.1,"feels_like":-13,"humidity":19.4,"pressure":1029.6,"cloud_cover":20.8,"v
| | |isibility":19.3,"precip_mm":35.1,"wind_dir":"N"},{"timestamp":"2025-05-09T17:16:57Z","wind_speed":37.6,"temper
| | |ature":-6.9,"dew_point":13.5,"feels_like":6.9,"humidity":70.9,"pressure":983,"cloud_cover":44.2,"visibility":8
| | |.1,"precip_mm":17.3,"wind_dir":"F"},{"timestamp":"2025-05-09T18:16:57Z","wind_speed":27.3,"temperature":15.7,"
| | |dew_point":4.5,"feels_like":26.9,"humidity":18.1,"pressure":1034.6,"cloud_cover":49.1,"visibility":14.4,"preci
| | |p_mm":39.7,"wind_dir":"J"},{"timestamp":"2025-05-09T19:16:57Z","wind_speed":27.4,"temperature":11,"dew_point":
| | |-0.9,"feels_like":1.7,"humidity":88.2,"pressure":1048.3,"cloud_cover":89.3,"visibility":6.6,"precip_mm":69.8,"
| | |wind_dir":"Y"},{"timestamp":"2025-05-09T20:16:57Z","wind_speed":35.9,"temperature":5.1,"dew_point":13.2,"feels
| | |_like":13.6,"humidity":75.3,"pressure":1006.8,"cloud_cover":69.8,"visibility":8.5,"precip_mm":80.6,"wind_dir":
| | |"O"},{"timestamp":"2025-05-09T21:16:57Z","wind_speed":24.6,"temperature":38.4,"dew_point":9.2,"feels_like":32.
| | |8,"humidity":68.4,"pressure":1007.1,"cloud_cover":81.2,"visibility":1.3,"precip_mm":0.1,"wind_dir":"T"},{"time
| | |stamp":"2025-05-09T22:16:57Z","wind_speed":11,"temperature":40.9,"dew_point":1.7,"feels_like":-9.1,"humidity":
| | |41.1,"pressure":998.5,"cloud_cover":96.9,"visibility":12.2,"precip_mm":64.4,"wind_dir":"P"},{"timestamp":"2025
| | |-05-09T23:16:57Z","wind_speed":44.9,"temperature":39.1,"dew_point":19.4,"feels_like":5.6,"humidity":14.5,"pres
| | |sure":993,"cloud_cover":48.5,"visibility":14.3,"precip_mm":24.5,"wind_dir":"E"},{"timestamp":"2025-05-10T00:16
| | |:57Z","wind_speed":2.3,"temperature":-1.2,"dew_point":8.3,"feels_like":27.9,"humidity":96.8,"pressure":1050,"c
| | |loud_cover":88.6,"visibility":11,"precip_mm":35.9,"wind_dir":"W"},{"timestamp":"2025-05-10T01:16:57Z","wind_sp
| | |eed":2.2,"temperature":41.1,"dew_point":6.5,"feels_like":43.5,"humidity":20.3,"pressure":983,"cloud_cover":31.
| | |6,"visibility":17.6,"precip_mm":68.6,"wind_dir":"M"},{"timestamp":"2025-05-10T02:16:57Z","wind_speed":42.8,"te
| | |mperature":0.2,"dew_point":16.4,"feels_like":2.9,"humidity":56.2,"pressure":1044.4,"cloud_cover":34.9,"visibil
| | |ity":13.5,"precip_mm":97.7,"wind_dir":"U"},{"timestamp":"2025-05-10T03:16:57Z","wind_speed":48.3,"temperature"
| | |:44.3,"dew_point":15.3,"feels_like":20.6,"humidity":32.9,"pressure":1047.6,"cloud_cover":87.1,"visibility":5.2
| | |,"precip_mm":10.5,"wind_dir":"Z"},{"timestamp":"2025-05-10T04:16:57Z","wind_speed":37.9,"temperature":42.9,"de
| | |w_point":9.7,"feels_like":-2.5,"humidity":41.8,"pressure":1036.9,"cloud_cover":92.2,"visibility":17.3,"precip_
| | |mm":21.4,"wind_dir":"Y"},{"timestamp":"2025-05-10T05:16:57Z","wind_speed":37.9,"temperature":37.9,"dew_point":
| | |24.2,"feels_like":9.2,"humidity":27.7,"pressure":1010.6,"cloud_cover":62.3,"visibility":7.9,"precip_mm":39.5,"
| | |wind_dir":"A"},{"timestamp":"2025-05-10T06:16:57Z","wind_speed":30.6,"temperature":36.8,"dew_point":-2.8,"feel
| | |s_like":49.1,"humidity":60.6,"pressure":1041,"cloud_cover":33.7,"visibility":7.6,"precip_mm":91.4,"wind_dir":"
| | |X"},{"timestamp":"2025-05-10T07:16:57Z","wind_speed":2,"temperature":23,"dew_point":-3.1,"feels_like":-14.6,"h
| | |umidity":82.7,"pressure":994.8,"cloud_cover":37.2,"visibility":11,"precip_mm":77.7,"wind_dir":"Y"},{"timestamp
| | |":"2025-05-10T08:16:57Z","wind_speed":8.7,"temperature":44.5,"dew_point":-4.1,"feels_like":36.5,"humidity":39.
| | |1,"pressure":1019.5,"cloud_cover":61.7,"visibility":3.2,"precip_mm":58.9,"wind_dir":"T"},{"timestamp":"2025-05
| | |-10T09:16:57Z","wind_speed":33.4,"temperature":10.2,"dew_point":1.2,"feels_like":38.1,"humidity":94.9,"pressur
| | |e":986,"cloud_cover":70.3,"visibility":7.9,"precip_mm":9.5,"wind_dir":"O"},{"timestamp":"2025-05-10T10:16:57Z"
| | |,"wind_speed":1.1,"temperature":36.8,"dew_point":20.9,"feels_like":11.8,"humidity":98.8,"pressure":1002.1,"clo
| | |ud_cover":72.1,"visibility":4.5,"precip_mm":13,"wind_dir":"X"},{"timestamp":"2025-05-10T11:16:57Z","wind_speed
| | |":35.9,"temperature":33.7,"dew_point":-0.3,"feels_like":12.8,"humidity":68.9,"pressure":1031.2,"cloud_cover":6
| | |7.5,"visibility":13.1,"precip_mm":23,"wind_dir":"A"},{"timestamp":"2025-05-10T12:16:57Z","wind_speed":42.9,"te
| | |mperature":16.5,"dew_point":0,"feels_like":0.4,"humidity":59,"pressure":1020.6,"cloud_cover":16.9,"visibility"
| | |:3.9,"precip_mm":74.2,"wind_dir":"G"},{"timestamp":"2025-05-10T13:16:57Z","wind_speed":38.2,"temperature":-7.8
| | |,"dew_point":23.1,"feels_like":-11,"humidity":31.2,"pressure":1029.2,"cloud_cover":51,"visibility":7.6,"precip
| | |_mm":89.5,"wind_dir":"A"},{"timestamp":"2025-05-10T14:16:57Z","wind_speed":12.1,"temperature":38.2,"dew_point"
| | |:11.2,"feels_like":8.2,"humidity":79.5,"pressure":1039,"cloud_cover":58,"visibility":18.9,"precip_mm":34.3,"wi
| | |nd_dir":"C"},{"timestamp":"2025-05-10T15:16:57Z","wind_speed":32,"temperature":34.3,"dew_point":13,"feels_like
| | |":22,"humidity":88.3,"pressure":1027.6,"cloud_cover":13.8,"visibility":9.4,"precip_mm":19.1,"wind_dir":"S"},{"
| | |timestamp":"2025-05-10T16:16:57Z","wind_speed":18.3,"temperature":25.9,"dew_point":2.4,"feels_like":8.2,"humid
| | |ity":69.2,"pressure":1010.8,"cloud_cover":0.1,"visibility":17.3,"precip_mm":22.9,"wind_dir":"O"},{"timestamp":
| | |"2025-05-10T17:16:57Z","wind_speed":0.1,"temperature":40.6,"dew_point":24.8,"feels_like":24.5,"humidity":29.5,
| | |"pressure":1002.6,"cloud_cover":48.5,"visibility":1.2,"precip_mm":43.8,"wind_dir":"S"},{"timestamp":"2025-05-1
| | |0T18:16:57Z","wind_speed":30.6,"temperature":23.6,"dew_point":16.6,"feels_like":10.1,"humidity":79.2,"pressure
| | |":1033.9,"cloud_cover":68,"visibility":12.7,"precip_mm":90.2,"wind_dir":"R"},{"timestamp":"2025-05-10T19:16:57
| | |Z","wind_speed":27.6,"temperature":1.2,"dew_point":16.1,"feels_like":8.1,"humidity":78.2,"pressure":1044.1,"cl
| | |oud_cover":63.1,"visibility":19.7,"precip_mm":24.4,"wind_dir":"G"},{"timestamp":"2025-05-10T20:16:57Z","wind_s
| | |peed":28,"temperature":7.3,"dew_point":11.4,"feels_like":34.6,"humidity":61.7,"pressure":1000.6,"cloud_cover":
| | |88.1,"visibility":18.5,"precip_mm":12.5,"wind_dir":"V"},{"timestamp":"2025-05-10T21:16:57Z","wind_speed":48,"t
| | |emperature":-2,"dew_point":19.9,"feels_like":3.9,"humidity":87.2,"pressure":982.6,"cloud_cover":27.6,"visibili
| | |ty":1.3,"precip_mm":4.6,"wind_dir":"G"},{"timestamp":"2025-05-10T22:16:57Z","wind_speed":49.3,"temperature":15
| | |.3,"dew_point":1.4,"feels_like":26.9,"humidity":73.5,"pressure":1039.5,"cloud_cover":19.8,"visibility":18.3,"p
| | |recip_mm":63.3,"wind_dir":"M"},{"timestamp":"2025-05-10T23:16:57Z","wind_speed":0.6,"temperature":43.3,"dew_po
| | |int":18.2,"feels_like":26.4,"humidity":12.9,"pressure":993.5,"cloud_cover":69.2,"visibility":1.3,"precip_mm":4
| | |9.3,"wind_dir":"E"},{"timestamp":"2025-05-11T00:16:57Z","wind_speed":38,"temperature":34.3,"dew_point":22.3,"f
| | |eels_like":44.5,"humidity":55.9,"pressure":1023.5,"cloud_cover":77.5,"visibility":15.1,"precip_mm":82.9,"wind_
| | |dir":"E"},{"timestamp":"2025-05-11T01:16:57Z","wind_speed":47.5,"temperature":5.9,"dew_point":13.8,"feels_like
| | |":9.4,"humidity":86.1,"pressure":996.5,"cloud_cover":48.3,"visibility":8.6,"precip_mm":75.7,"wind_dir":"H"},{"
| | |timestamp":"2025-05-11T02:16:57Z","wind_speed":7.8,"temperature":14.3,"dew_point":11.8,"feels_like":2.2,"humid
| | |ity":68.8,"pressure":1012.3,"cloud_cover":87.2,"visibility":1.4,"precip_mm":65.1,"wind_dir":"E"},{"timestamp":
| | |"2025-05-11T03:16:57Z","wind_speed":27.8,"temperature":31.7,"dew_point":23,"feels_like":39.7,"humidity":26.7,"
| | |pressure":1036.5,"cloud_cover":44.5,"visibility":16.9,"precip_mm":76.1,"wind_dir":"F"},{"timestamp":"2025-05-1
| | |1T04:16:57Z","wind_speed":23.9,"temperature":6.6,"dew_point":3.5,"feels_like":-6,"humidity":84.1,"pressure":10
| | |45.6,"cloud_cover":43,"visibility":1.2,"precip_mm":49.5,"wind_dir":"X"},{"timestamp":"2025-05-11T05:16:57Z","w
| | |ind_speed":7.3,"temperature":41,"dew_point":3.4,"feels_like":26.2,"humidity":32.6,"pressure":985,"cloud_cover"
| | |:53.4,"visibility":8,"precip_mm":63.2,"wind_dir":"Y"},{"timestamp":"2025-05-11T06:16:57Z","wind_speed":0.7,"te
| | |mperature":34.8,"dew_point":12.4,"feels_like":9.7,"humidity":73.6,"pressure":1021.6,"cloud_cover":68.1,"visibi
| | |lity":9.2,"precip_mm":39.4,"wind_dir":"V"},{"timestamp":"2025-05-11T07:16:57Z","wind_speed":29.1,"temperature"
| | |:-6.6,"dew_point":11.1,"feels_like":19.9,"humidity":79.1,"pressure":992.8,"cloud_cover":66.2,"visibility":10.4
| | |,"precip_mm":58.7,"wind_dir":"X"},{"timestamp":"2025-05-11T08:16:57Z","wind_speed":45.1,"temperature":25.9,"de
| | |w_point":14.7,"feels_like":10.2,"humidity":23.6,"pressure":1036.2,"cloud_cover":55.5,"visibility":1.1,"precip_
| | |mm":9.1,"wind_dir":"X"},{"timestamp":"2025-05-11T09:16:57Z","wind_speed":23.4,"temperature":36.9,"dew_point":1
| | |.5,"feels_like":25.4,"humidity":12.4,"pressure":1048.9,"cloud_cover":25.6,"visibility":17.7,"precip_mm":15.9,"
| | |wind_dir":"I"},{"timestamp":"2025-05-11T10:16:57Z","wind_speed":13.1,"temperature":7.2,"dew_point":11.4,"feels
| | |_like":49.9,"humidity":96.9,"pressure":1018.8,"cloud_cover":74.8,"visibility":9.8,"precip_mm":80.8,"wind_dir":
| | |"N"},{"timestamp":"2025-05-11T11:16:57Z","wind_speed":39.2,"temperature":20.2,"dew_point":17.8,"feels_like":32
| | |,"humidity":27.2,"pressure":1000,"cloud_cover":71.1,"visibility":8.3,"precip_mm":56.9,"wind_dir":"S"},{"timest
| | |amp":"2025-05-11T12:16:57Z","wind_speed":21,"temperature":41.5,"dew_point":-3.4,"feels_like":14,"humidity":90.
| | |8,"pressure":1039.7,"cloud_cover":64.7,"visibility":10.9,"precip_mm":83.7,"wind_dir":"N"},{"timestamp":"2025-0
| | |5-11T13:16:57Z","wind_speed":27.6,"temperature":-5.7,"dew_point":9.9,"feels_like":17.3,"humidity":28.7,"pressu
| | |re":1042.7,"cloud_cover":61.3,"visibility":5,"precip_mm":65,"wind_dir":"X"},{"timestamp":"2025-05-11T14:16:57Z
| | |","wind_speed":14.1,"temperature":29.3,"dew_point":16.8,"feels_like":7.8,"humidity":38.2,"pressure":1003.7,"cl
| | |oud_cover":41,"visibility":10.5,"precip_mm":17.9,"wind_dir":"Q"},{"timestamp":"2025-05-11T15:16:57Z","wind_spe
| | |ed":2.8,"temperature":38.7,"dew_point":4.8,"feels_like":44.8,"humidity":37.9,"pressure":1017,"cloud_cover":48.
| | |5,"visibility":8.6,"precip_mm":91,"wind_dir":"T"},{"timestamp":"2025-05-11T16:16:57Z","wind_speed":0.8,"temper
| | |ature":9,"dew_point":23.7,"feels_like":26.1,"humidity":31.9,"pressure":1024.7,"cloud_cover":40.3,"visibility":
| | |13.4,"precip_mm":39.6,"wind_dir":"C"},{"timestamp":"2025-05-11T17:16:57Z","wind_speed":44.1,"temperature":10.2
| | |,"dew_point":17,"feels_like":50,"humidity":49.5,"pressure":985.7,"cloud_cover":39.9,"visibility":8.5,"precip_m
| | |m":83.1,"wind_dir":"F"},{"timestamp":"2025-05-11T18:16:57Z","wind_speed":7.4,"temperature":29,"dew_point":8.2,
| | |"feels_like":32.9,"humidity":97.7,"pressure":996.2,"cloud_cover":60.6,"visibility":1.5,"precip_mm":3.8,"wind_d
| | |ir":"D"},{"timestamp":"2025-05-11T19:16:57Z","wind_speed":44.7,"temperature":35.4,"dew_point":20.3,"feels_like
| | |":0.7,"humidity":61.4,"pressure":1011.6,"cloud_cover":96.8,"visibility":8,"precip_mm":68.5,"wind_dir":"S"},{"t
| | |imestamp":"2025-05-11T20:16:57Z","wind_speed":30.9,"temperature":-8.3,"dew_point":10,"feels_like":30.8,"humidi
| | |ty":23,"pressure":989.7,"cloud_cover":70.3,"visibility":8.8,"precip_mm":45.6,"wind_dir":"T"},{"timestamp":"202
| | |5-05-11T21:16:57Z","wind_speed":44.2,"temperature":21.1,"dew_point":-0.9,"feels_like":0.4,"humidity":93.2,"pre
| | |ssure":1033.8,"cloud_cover":26.7,"visibility":4.6,"precip_mm":62.2,"wind_dir":"M"},{"timestamp":"2025-05-11T22
| | |:16:57Z","wind_speed":48.3,"temperature":-2.4,"dew_point":21.9,"feels_like":15.2,"humidity":32.2,"pressure":10
| | |31,"cloud_cover":80.5,"visibility":4.5,"precip_mm":85.1,"wind_dir":"G"},{"timestamp":"2025-05-11T23:16:57Z","w
| | |ind_speed":48.8,"temperature":39.7,"dew_point":-2.1,"feels_like":-7.7,"humidity":91.1,"pressure":1015.4,"cloud
| | |_cover":38.2,"visibility":12,"precip_mm":85,"wind_dir":"I"},{"timestamp":"2025-05-12T00:16:57Z","wind_speed":4
| | |8.1,"temperature":22.5,"dew_point":2.8,"feels_like":36.8,"humidity":76.8,"pressure":1031.4,"cloud_cover":76,"v
| | |isibility":12.6,"precip_mm":16,"wind_dir":"S"},{"timestamp":"2025-05-12T01:16:57Z","wind_speed":46.6,"temperat
| | |ure":9.3,"dew_point":19.9,"feels_like":23.4,"humidity":87.8,"pressure":1047.5,"cloud_cover":33.1,"visibility":
| | |5.4,"precip_mm":42.3,"wind_dir":"Z"},{"timestamp":"2025-05-12T02:16:57Z","wind_speed":17.8,"temperature":24,"d
| | |ew_point":10.6,"feels_like":-12.2,"humidity":82,"pressure":1019.5,"cloud_cover":50.3,"visibility":13.2,"precip
| | |_mm":26.7,"wind_dir":"O"},{"timestamp":"2025-05-12T03:16:57Z","wind_speed":18.2,"temperature":8.9,"dew_point":
| | |24.6,"feels_like":8.4,"humidity":57.6,"pressure":992.2,"cloud_cover":85.9,"visibility":13,"precip_mm":72.7,"wi
| | |nd_dir":"C"},{"timestamp":"2025-05-12T04:16:57Z","wind_speed":35.8,"temperature":13.1,"dew_point":18.3,"feels_
| | |like":-9.8,"humidity":67.2,"pressure":987.7,"cloud_cover":13.1,"visibility":2.2,"precip_mm":30.7,"wind_dir":"V
| | |"},{"timestamp":"2025-05-12T05:16:57Z","wind_speed":32.5,"temperature":31.2,"dew_point":13.6,"feels_like":-7,"
| | |humidity":91.4,"pressure":1003.6,"cloud_cover":38.3,"visibility":16.7,"precip_mm":46.6,"wind_dir":"Y"},{"times
| | |tamp":"2025-05-12T06:16:57Z","wind_speed":34.4,"temperature":43.7,"dew_point":24.1,"feels_like":-9.9,"humidity
| | |":77.1,"pressure":1028.4,"cloud_cover":49.6,"visibility":1.1,"precip_mm":79.2,"wind_dir":"S"},{"timestamp":"20
| | |25-05-12T07:16:57Z","wind_speed":2.9,"temperature":29.8,"dew_point":4.3,"feels_like":10,"humidity":19.6,"press
| | |ure":1041.5,"cloud_cover":86.1,"visibility":13,"precip_mm":48.8,"wind_dir":"I"},{"timestamp":"2025-05-12T08:16
| | |:57Z","wind_speed":8.5,"temperature":36.6,"dew_point":17.9,"feels_like":5.4,"humidity":21.1,"pressure":1001.6,
| | |"cloud_cover":35.4,"visibility":7.1,"precip_mm":74.6,"wind_dir":"Z"},{"timestamp":"2025-05-12T09:16:57Z","wind
| | |_speed":23.6,"temperature":21.2,"dew_point":16.3,"feels_like":-5.2,"humidity":84.7,"pressure":1035.6,"cloud_co
| | |ver":64,"visibility":9.9,"precip_mm":21.2,"wind_dir":"C"},{"timestamp":"2025-05-12T10:16:57Z","wind_speed":20.
| | |7,"temperature":24.5,"dew_point":8.4,"feels_like":39.2,"humidity":49.7,"pressure":1012.1,"cloud_cover":53.6,"v
| | |isibility":10.5,"precip_mm":51.1,"wind_dir":"V"},{"timestamp":"2025-05-12T11:16:57Z","wind_speed":29.5,"temper
| | |ature":14,"dew_point":-0.8,"feels_like":-2.9,"humidity":23.3,"pressure":985,"cloud_cover":6.9,"visibility":6.3
| | |,"precip_mm":4.3,"wind_dir":"D"},{"timestamp":"2025-05-12T12:16:57Z","wind_speed":31.1,"temperature":15.3,"dew
| | |_point":-0.4,"feels_like":1.8,"humidity":28.6,"pressure":1014.6,"cloud_cover":57.5,"visibility":3,"precip_mm":
| | |69.9,"wind_dir":"F"},{"timestamp":"2025-05-12T13:16:57Z","wind_speed":46.5,"temperature":20.1,"dew_point":9,"f
| | |eels_like":17.9,"humidity":37.7,"pressure":988.6,"cloud_cover":62.3,"visibility":5.2,"precip_mm":70.6,"wind_di
| | |r":"G"},{"timestamp":"2025-05-12T14:16:57Z","wind_speed":44.7,"temperature":17.7,"dew_point":10.3,"feels_like"
| | |:33.4,"humidity":54.4,"pressure":1000.8,"cloud_cover":11,"visibility":15.9,"precip_mm":54.2,"wind_dir":"E"},{"
| | |timestamp":"2025-05-12T15:16:57Z","wind_speed":20.9,"temperature":-1.7,"dew_point":16.8,"feels_like":1.6,"humi
| | |dity":81.6,"pressure":982.2,"cloud_cover":54.6,"visibility":18.9,"precip_mm":98.8,"wind_dir":"G"}]}
Elapsed: 00:00:00.03
FREE>
Tables Exports CLOB vs JSON
Another notable difference is the exports are extremely fast in JSON when compared to CLOB , the size reduction is about 80% which makes manageability much easier.
The datapump exports are taken for the table WE.WEATHER_DATA_CLOB_PART and WE.WEATHER_DATA_JSON_PART
[oracle@machine1 1_working]$ ls -ltrh /opt/oracle/exports/WEATHER_DATA_*_PART.dmp
-rw-r-----. 1 oracle oinstall 934M May 5 17:07 /opt/oracle/exports/WEATHER_DATA_CLOB_PART.dmp
-rw-r-----. 1 oracle oinstall 203M May 5 17:08 /opt/oracle/exports/WEATHER_DATA_JSON_PART.dmp
[oracle@machine1 1_working]$ cat 23ai_we_clob_exp.par
USERID=system/********@FREE
TABLES=WE.WEATHER_DATA_CLOB_PART
DIRECTORY=EXPORTS
DUMPFILE=WEATHER_DATA_CLOB_PART.dmp
LOGFILE=WEATHER_DATA_CLOB_PART.log
[oracle@machine1 1_working]$ cat 23ai_we_json_exp.par
USERID=system/******@FREE
TABLES=WE.WEATHER_DATA_JSON_PART
DIRECTORY=EXPORTS
DUMPFILE=WEATHER_DATA_JSON_PART.dmp
LOGFILE=WEATHER_DATA_JSON_PART.log
[oracle@machine1 1_working]$