Commits

György Kohut committed 2bcb262

hbstats merging for virustotal, asn, geoip

Comments (0)

Files changed (6)

 virustotal - retrieves VirusTotal reports for binaries
 shadowserver_asn - performs ASN lookup at Shadowserver for IPs
 shadowserver_geoip - performs Geo-IP lookup at Shadowserver
-hbstats - recurring process that maintains aggregate tables over the data set (runs every 2 s)
+stats - recurring process that maintains aggregate tables over the data set (runs every 2 s)
 
 == Initial Setup ==
 

schema/hbbackend_functions.sql

 
 $$ language sql;
 
+-- sync with hbstats.create_table_new_virustotal()
+create or replace function hbstats_new_virustotal(attacks.id%type, attacks.id%type)
+  returns table(
+    md5            char(32),
+    response_code  int,
+    result_count   bigint,
+    scan_id    	   varchar,
+    scan_date      timestamp with time zone,
+    permalink      varchar,
+    ts             timestamp with time zone,
+    label          varchar,
+    engine         varchar,
+    e_version      varchar,
+    e_update       varchar
+  )
+as $$
+
+with a as (
+  select distinct binary_id
+  from attacks where id >= $1 and id <= $2
+)
+select
+    md5, response_code, result_count, scan_id, scan_date, permalink, ts,
+    label, engine, e_version, e_update
+  from (select * from (select *, max(id) over (partition by binary_id) as id_max
+                         from virustotal_reports
+                         where binary_id in (select binary_id from a)
+                      ) as t
+          where id = id_max
+       ) as t
+  join binaries on t.binary_id = binaries.id
+  left join virustotal_results on t.id = virustotal_results.report_id
+;
+
+$$ language sql;
+
+
+-- sync with hbstats.create_table_new_asn_shadowserver()
+create or replace function hbstats_new_asn_shadowserver(attacks.id%type, attacks.id%type)
+  returns table(
+    ip          inet,
+    asn         bigint,
+    as_name     varchar,
+    cc          char(2),
+    dom         varchar,
+    isp         varchar,
+    bgp_prefix  inet,
+    ts          timestamp with time zone
+  )
+as $$
+
+with a as (
+  select distinct source_ip as ip from attacks where id >= $1 and id <= $2 union
+  select distinct target_ip as ip from attacks where id >= $1 and id <= $2
+)
+select
+    ip, asn, as_name, cc, dom, isp, bgp_prefix, ts
+  from (select * from (select *, max(id) over (partition by ip) as id_max
+                         from asn_shadowserver
+                         where ip in (select ip from a)
+                      ) as t
+          where id = id_max
+       ) as t
+;
+
+$$ language sql;
+
+
+-- sync with hbstats.create_table_new_geoip_shadowserver()
+create or replace function hbstats_new_geoip_shadowserver(attacks.id%type, attacks.id%type)
+  returns table(
+    ip         inet,
+    cc         char(2),
+    city       varchar,
+    latitude   float,
+    longitude  float,
+    ts         timestamp with time zone
+  )
+as $$
+
+with a as (
+  select distinct source_ip as ip from attacks where id >= $1 and id <= $2 union
+  select distinct target_ip as ip from attacks where id >= $1 and id <= $2
+)
+select
+    ip, cc, city, latitude, longitude, ts
+  from (select * from (select *, max(id) over (partition by ip) as id_max
+                         from geoip_shadowserver
+                         where ip in (select ip from a)
+                      ) as t
+          where id = id_max
+       ) as t
+;
+
+$$ language sql;
+

schema/hbstats.erm

 	</page_setting>
 	<category_index>0</category_index>
 	<zoom>1.0</zoom>
-	<x>0</x>
-	<y>-40</y>
+	<x>-28</x>
+	<y>-254</y>
 	<default_color>
 		<r>128</r>
 		<g>128</g>
 			</connections>
 			<display>false</display>
 			<creation_date>2012-07-13 17:13:52</creation_date>
-			<updated_date>2012-07-19 21:43:44</updated_date>
+			<updated_date>2012-08-14 09:26:54</updated_date>
 			<model_property>
 				<name>Project Name</name>
 				<value></value>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>first_id</logical_name>
-			<physical_name>first_id</physical_name>
+			<logical_name>asn</logical_name>
+			<physical_name>asn</physical_name>
 			<type>bigint</type>
 		</word>
 		<word>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>id</logical_name>
-			<physical_name>id</physical_name>
-			<type>bigserial</type>
+			<logical_name>as_name</logical_name>
+			<physical_name>as_name</physical_name>
+			<type>varchar</type>
 		</word>
 		<word>
 			<id>3</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>id</logical_name>
-			<physical_name>id</physical_name>
-			<type>bigserial</type>
+			<logical_name>bgp_prefix</logical_name>
+			<physical_name>bgp_prefix</physical_name>
+			<type>inet</type>
 		</word>
 		<word>
 			<id>4</id>
-			<length>null</length>
+			<length>2</length>
 			<decimal>null</decimal>
 			<array>false</array>
 			<array_dimension>null</array_dimension>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>id</logical_name>
-			<physical_name>id</physical_name>
-			<type>bigserial</type>
+			<logical_name>cc</logical_name>
+			<physical_name>cc</physical_name>
+			<type>character(n)</type>
 		</word>
 		<word>
 			<id>5</id>
-			<length>16</length>
+			<length>2</length>
 			<decimal>null</decimal>
 			<array>false</array>
 			<array_dimension>null</array_dimension>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>ident</logical_name>
-			<physical_name>ident</physical_name>
-			<type>varchar(n)</type>
+			<logical_name>cc</logical_name>
+			<physical_name>cc</physical_name>
+			<type>character(n)</type>
 		</word>
 		<word>
 			<id>6</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>ip</logical_name>
-			<physical_name>ip</physical_name>
-			<type>inet</type>
+			<logical_name>city</logical_name>
+			<physical_name>city</physical_name>
+			<type>varchar</type>
 		</word>
 		<word>
 			<id>7</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>ip</logical_name>
-			<physical_name>ip</physical_name>
-			<type>inet</type>
+			<logical_name>dom</logical_name>
+			<physical_name>dom</physical_name>
+			<type>varchar</type>
 		</word>
 		<word>
 			<id>8</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>last_id</logical_name>
-			<physical_name>last_id</physical_name>
-			<type>bigint</type>
+			<logical_name>engine</logical_name>
+			<physical_name>engine</physical_name>
+			<type>varchar</type>
 		</word>
 		<word>
 			<id>9</id>
-			<length>32</length>
+			<length>null</length>
 			<decimal>null</decimal>
 			<array>false</array>
 			<array_dimension>null</array_dimension>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>md5</logical_name>
-			<physical_name>md5</physical_name>
-			<type>character(n)</type>
+			<logical_name>e_update</logical_name>
+			<physical_name>e_update</physical_name>
+			<type>varchar</type>
 		</word>
 		<word>
 			<id>10</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>n_count</logical_name>
-			<physical_name>n_count</physical_name>
-			<type>bigint</type>
+			<logical_name>e_version</logical_name>
+			<physical_name>e_version</physical_name>
+			<type>varchar</type>
 		</word>
 		<word>
 			<id>11</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>n_count</logical_name>
-			<physical_name>n_count</physical_name>
+			<logical_name>first_id</logical_name>
+			<physical_name>first_id</physical_name>
 			<type>bigint</type>
 		</word>
 		<word>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>n_count</logical_name>
-			<physical_name>n_count</physical_name>
-			<type>bigint</type>
+			<logical_name>id</logical_name>
+			<physical_name>id</physical_name>
+			<type>bigserial</type>
 		</word>
 		<word>
 			<id>13</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>n_count</logical_name>
-			<physical_name>n_count</physical_name>
-			<type>bigint</type>
+			<logical_name>id</logical_name>
+			<physical_name>id</physical_name>
+			<type>bigserial</type>
 		</word>
 		<word>
 			<id>14</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>n_count</logical_name>
-			<physical_name>n_count</physical_name>
-			<type>bigint</type>
+			<logical_name>id</logical_name>
+			<physical_name>id</physical_name>
+			<type>bigserial</type>
 		</word>
 		<word>
 			<id>15</id>
-			<length>null</length>
+			<length>16</length>
 			<decimal>null</decimal>
 			<array>false</array>
 			<array_dimension>null</array_dimension>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>n_count</logical_name>
-			<physical_name>n_count</physical_name>
-			<type>bigint</type>
+			<logical_name>ident</logical_name>
+			<physical_name>ident</physical_name>
+			<type>varchar(n)</type>
 		</word>
 		<word>
 			<id>16</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>n_count</logical_name>
-			<physical_name>n_count</physical_name>
-			<type>bigint</type>
+			<logical_name>ip</logical_name>
+			<physical_name>ip</physical_name>
+			<type>inet</type>
 		</word>
 		<word>
 			<id>17</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>n_rows</logical_name>
-			<physical_name>n_rows</physical_name>
-			<type>bigint</type>
+			<logical_name>ip</logical_name>
+			<physical_name>ip</physical_name>
+			<type>inet</type>
 		</word>
 		<word>
 			<id>18</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>port</logical_name>
-			<physical_name>port</physical_name>
-			<type>integer</type>
+			<logical_name>ip</logical_name>
+			<physical_name>ip</physical_name>
+			<type>inet</type>
 		</word>
 		<word>
 			<id>19</id>
-			<length>128</length>
+			<length>null</length>
 			<decimal>null</decimal>
 			<array>false</array>
 			<array_dimension>null</array_dimension>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>sha512</logical_name>
-			<physical_name>sha512</physical_name>
-			<type>character(n)</type>
+			<logical_name>ip</logical_name>
+			<physical_name>ip</physical_name>
+			<type>inet</type>
 		</word>
 		<word>
 			<id>20</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>ts_compl</logical_name>
-			<physical_name>ts_compl</physical_name>
-			<type>timestamp with time zone</type>
+			<logical_name>isp</logical_name>
+			<physical_name>isp</physical_name>
+			<type>varchar</type>
 		</word>
 		<word>
 			<id>21</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>ts_first</logical_name>
-			<physical_name>ts_first</physical_name>
-			<type>timestamp with time zone</type>
+			<logical_name>label</logical_name>
+			<physical_name>label</physical_name>
+			<type>varchar</type>
 		</word>
 		<word>
 			<id>22</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>ts_first</logical_name>
-			<physical_name>ts_first</physical_name>
-			<type>timestamp with time zone</type>
+			<logical_name>last_id</logical_name>
+			<physical_name>last_id</physical_name>
+			<type>bigint</type>
 		</word>
 		<word>
 			<id>23</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>ts_first</logical_name>
-			<physical_name>ts_first</physical_name>
-			<type>timestamp with time zone</type>
+			<logical_name>latitude</logical_name>
+			<physical_name>latitude</physical_name>
+			<type>float</type>
 		</word>
 		<word>
 			<id>24</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>ts_first</logical_name>
-			<physical_name>ts_first</physical_name>
-			<type>timestamp with time zone</type>
+			<logical_name>longitude</logical_name>
+			<physical_name>longitude</physical_name>
+			<type>float</type>
 		</word>
 		<word>
 			<id>25</id>
-			<length>null</length>
+			<length>32</length>
 			<decimal>null</decimal>
 			<array>false</array>
 			<array_dimension>null</array_dimension>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>ts_first</logical_name>
-			<physical_name>ts_first</physical_name>
-			<type>timestamp with time zone</type>
+			<logical_name>md5</logical_name>
+			<physical_name>md5</physical_name>
+			<type>character(n)</type>
 		</word>
 		<word>
 			<id>26</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>ts_first</logical_name>
-			<physical_name>ts_first</physical_name>
-			<type>timestamp with time zone</type>
+			<logical_name>n_count</logical_name>
+			<physical_name>n_count</physical_name>
+			<type>bigint</type>
 		</word>
 		<word>
 			<id>27</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>ts_last</logical_name>
-			<physical_name>ts_last</physical_name>
-			<type>timestamp with time zone</type>
+			<logical_name>n_count</logical_name>
+			<physical_name>n_count</physical_name>
+			<type>bigint</type>
 		</word>
 		<word>
 			<id>28</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>ts_last</logical_name>
-			<physical_name>ts_last</physical_name>
-			<type>timestamp with time zone</type>
+			<logical_name>n_count</logical_name>
+			<physical_name>n_count</physical_name>
+			<type>bigint</type>
 		</word>
 		<word>
 			<id>29</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>ts_last</logical_name>
-			<physical_name>ts_last</physical_name>
-			<type>timestamp with time zone</type>
+			<logical_name>n_count</logical_name>
+			<physical_name>n_count</physical_name>
+			<type>bigint</type>
 		</word>
 		<word>
 			<id>30</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>ts_last</logical_name>
-			<physical_name>ts_last</physical_name>
-			<type>timestamp with time zone</type>
+			<logical_name>n_count</logical_name>
+			<physical_name>n_count</physical_name>
+			<type>bigint</type>
 		</word>
 		<word>
 			<id>31</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>ts_last</logical_name>
-			<physical_name>ts_last</physical_name>
-			<type>timestamp with time zone</type>
+			<logical_name>n_count</logical_name>
+			<physical_name>n_count</physical_name>
+			<type>bigint</type>
 		</word>
 		<word>
 			<id>32</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>ts_last</logical_name>
-			<physical_name>ts_last</physical_name>
-			<type>timestamp with time zone</type>
+			<logical_name>n_count</logical_name>
+			<physical_name>n_count</physical_name>
+			<type>bigint</type>
 		</word>
 		<word>
 			<id>33</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>ts_min</logical_name>
-			<physical_name>ts_min</physical_name>
-			<type>timestamp with time zone</type>
+			<logical_name>n_rows</logical_name>
+			<physical_name>n_rows</physical_name>
+			<type>bigint</type>
 		</word>
 		<word>
 			<id>34</id>
 			<unsigned>false</unsigned>
 			<args></args>
 			<description></description>
-			<logical_name>ts_start</logical_name>
-			<physical_name>ts_start</physical_name>
+			<logical_name>permalink</logical_name>
+			<physical_name>permalink</physical_name>
+			<type>varchar</type>
+		</word>
+		<word>
+			<id>35</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>port</logical_name>
+			<physical_name>port</physical_name>
+			<type>integer</type>
+		</word>
+		<word>
+			<id>36</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>response_code</logical_name>
+			<physical_name>response_code</physical_name>
+			<type>integer</type>
+		</word>
+		<word>
+			<id>37</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>result_count</logical_name>
+			<physical_name>result_count</physical_name>
+			<type>bigint</type>
+		</word>
+		<word>
+			<id>38</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>scan_date</logical_name>
+			<physical_name>scan_date</physical_name>
 			<type>timestamp with time zone</type>
 		</word>
-	</dictionary>
-	<tablespace_set>
-	</tablespace_set>
-	<contents>
-		<table>
-			<id>0</id>
-			<height>170</height>
-			<width>327</width>
-				<font_name>Sans</font_name>
-				<font_size>9</font_size>
-			<x>668</x>
-			<y>402</y>
-			<color>
-				<r>128</r>
-				<g>128</g>
-				<b>192</b>
-			</color>
-			<connections>
-			</connections>
-			<physical_name>x_log_main</physical_name>
-			<logical_name>x_log_main</logical_name>
+		<word>
+			<id>39</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
 			<description></description>
-			<constraint></constraint>
-			<primary_key_name></primary_key_name>
-			<option></option>
-			<columns>
-				<normal_column>
-					<word_id>3</word_id>
-					<id>0</id>
-					<description></description>
-					<unique_key_name></unique_key_name>
-					<logical_name></logical_name>
-					<physical_name></physical_name>
-					<type>bigserial</type>
-					<constraint></constraint>
-					<default_value></default_value>
-					<auto_increment>false</auto_increment>
-					<foreign_key>false</foreign_key>
-					<not_null>true</not_null>
-					<primary_key>true</primary_key>
-					<unique_key>true</unique_key>
-					<character_set></character_set>
-					<collation></collation>
+			<logical_name>scan_id</logical_name>
+			<physical_name>scan_id</physical_name>
+			<type>varchar</type>
+		</word>
+		<word>
+			<id>40</id>
+			<length>128</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>sha512</logical_name>
+			<physical_name>sha512</physical_name>
+			<type>character(n)</type>
+		</word>
+		<word>
+			<id>41</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>ts</logical_name>
+			<physical_name>ts</physical_name>
+			<type>timestamp with time zone</type>
+		</word>
+		<word>
+			<id>42</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>ts</logical_name>
+			<physical_name>ts</physical_name>
+			<type>timestamp with time zone</type>
+		</word>
+		<word>
+			<id>43</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>ts</logical_name>
+			<physical_name>ts</physical_name>
+			<type>timestamp with time zone</type>
+		</word>
+		<word>
+			<id>44</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>ts_compl</logical_name>
+			<physical_name>ts_compl</physical_name>
+			<type>timestamp with time zone</type>
+		</word>
+		<word>
+			<id>45</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>ts_first</logical_name>
+			<physical_name>ts_first</physical_name>
+			<type>timestamp with time zone</type>
+		</word>
+		<word>
+			<id>46</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>ts_first</logical_name>
+			<physical_name>ts_first</physical_name>
+			<type>timestamp with time zone</type>
+		</word>
+		<word>
+			<id>47</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>ts_first</logical_name>
+			<physical_name>ts_first</physical_name>
+			<type>timestamp with time zone</type>
+		</word>
+		<word>
+			<id>48</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>ts_first</logical_name>
+			<physical_name>ts_first</physical_name>
+			<type>timestamp with time zone</type>
+		</word>
+		<word>
+			<id>49</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>ts_first</logical_name>
+			<physical_name>ts_first</physical_name>
+			<type>timestamp with time zone</type>
+		</word>
+		<word>
+			<id>50</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>ts_first</logical_name>
+			<physical_name>ts_first</physical_name>
+			<type>timestamp with time zone</type>
+		</word>
+		<word>
+			<id>51</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>ts_last</logical_name>
+			<physical_name>ts_last</physical_name>
+			<type>timestamp with time zone</type>
+		</word>
+		<word>
+			<id>52</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>ts_last</logical_name>
+			<physical_name>ts_last</physical_name>
+			<type>timestamp with time zone</type>
+		</word>
+		<word>
+			<id>53</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>ts_last</logical_name>
+			<physical_name>ts_last</physical_name>
+			<type>timestamp with time zone</type>
+		</word>
+		<word>
+			<id>54</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>ts_last</logical_name>
+			<physical_name>ts_last</physical_name>
+			<type>timestamp with time zone</type>
+		</word>
+		<word>
+			<id>55</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>ts_last</logical_name>
+			<physical_name>ts_last</physical_name>
+			<type>timestamp with time zone</type>
+		</word>
+		<word>
+			<id>56</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>ts_last</logical_name>
+			<physical_name>ts_last</physical_name>
+			<type>timestamp with time zone</type>
+		</word>
+		<word>
+			<id>57</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>ts_min</logical_name>
+			<physical_name>ts_min</physical_name>
+			<type>timestamp with time zone</type>
+		</word>
+		<word>
+			<id>58</id>
+			<length>null</length>
+			<decimal>null</decimal>
+			<array>false</array>
+			<array_dimension>null</array_dimension>
+			<unsigned>false</unsigned>
+			<args></args>
+			<description></description>
+			<logical_name>ts_start</logical_name>
+			<physical_name>ts_start</physical_name>
+			<type>timestamp with time zone</type>
+		</word>
+	</dictionary>
+	<tablespace_set>
+	</tablespace_set>
+	<contents>
+		<table>
+			<id>0</id>
+			<height>233</height>
+			<width>266</width>
+				<font_name>Sans</font_name>
+				<font_size>9</font_size>
+			<x>361</x>
+			<y>152</y>
+			<color>
+				<r>128</r>
+				<g>128</g>
+				<b>192</b>
+			</color>
+			<connections>
+				<relation>
+					<id>0</id>
+					<source>2</source>
+					<target>0</target>
+					<child_cardinality>1..n</child_cardinality>
+					<parent_cardinality>1</parent_cardinality>
+					<reference_for_pk>true</reference_for_pk>
+					<name></name>
+					<on_delete_action>RESTRICT</on_delete_action>
+					<on_update_action>RESTRICT</on_update_action>
+					<source_xp>-1</source_xp>
+					<source_yp>-1</source_yp>
+					<target_xp>-1</target_xp>
+					<target_yp>-1</target_yp>
+					<referenced_column>null</referenced_column>
+					<referenced_complex_unique_key>null</referenced_complex_unique_key>
+				</relation>
+				<relation>
+					<id>1</id>
+					<source>7</source>
+					<target>0</target>
+					<child_cardinality>1..n</child_cardinality>
+					<parent_cardinality>1</parent_cardinality>
+					<reference_for_pk>true</reference_for_pk>
+					<name></name>
+					<on_delete_action>RESTRICT</on_delete_action>
+					<on_update_action>RESTRICT</on_update_action>
+					<source_xp>-1</source_xp>
+					<source_yp>-1</source_yp>
+					<target_xp>-1</target_xp>
+					<target_yp>-1</target_yp>
+					<referenced_column>null</referenced_column>
+					<referenced_complex_unique_key>null</referenced_complex_unique_key>
+				</relation>
+				<relation>
+					<id>2</id>
+					<source>1</source>
+					<target>0</target>
+					<child_cardinality>1..n</child_cardinality>
+					<parent_cardinality>1</parent_cardinality>
+					<reference_for_pk>true</reference_for_pk>
+					<name></name>
+					<on_delete_action>RESTRICT</on_delete_action>
+					<on_update_action>RESTRICT</on_update_action>
+					<source_xp>-1</source_xp>
+					<source_yp>-1</source_yp>
+					<target_xp>-1</target_xp>
+					<target_yp>-1</target_yp>
+					<referenced_column>null</referenced_column>
+					<referenced_complex_unique_key>null</referenced_complex_unique_key>
+				</relation>
+				<relation>
+					<id>3</id>
+					<source>3</source>
+					<target>0</target>
+					<child_cardinality>1..n</child_cardinality>
+					<parent_cardinality>1</parent_cardinality>
+					<reference_for_pk>true</reference_for_pk>
+					<name></name>
+					<on_delete_action>RESTRICT</on_delete_action>
+					<on_update_action>RESTRICT</on_update_action>
+					<source_xp>-1</source_xp>
+					<source_yp>-1</source_yp>
+					<target_xp>-1</target_xp>
+					<target_yp>-1</target_yp>
+					<referenced_column>null</referenced_column>
+					<referenced_complex_unique_key>null</referenced_complex_unique_key>
+				</relation>
+				<relation>
+					<id>4</id>
+					<source>5</source>
+					<target>0</target>
+					<child_cardinality>1..n</child_cardinality>
+					<parent_cardinality>1</parent_cardinality>
+					<reference_for_pk>true</reference_for_pk>
+					<name></name>
+					<on_delete_action>RESTRICT</on_delete_action>
+					<on_update_action>RESTRICT</on_update_action>
+					<source_xp>-1</source_xp>
+					<source_yp>-1</source_yp>
+					<target_xp>-1</target_xp>
+					<target_yp>-1</target_yp>
+					<referenced_column>null</referenced_column>
+					<referenced_complex_unique_key>null</referenced_complex_unique_key>
+				</relation>
+			</connections>
+			<physical_name>agg_main</physical_name>
+			<logical_name>agg_main</logical_name>
+			<description></description>
+			<constraint></constraint>
+			<primary_key_name></primary_key_name>
+			<option></option>
+			<columns>
+				<normal_column>
+					<word_id>0</word_id>
+					<id>0</id>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name></logical_name>
+					<physical_name></physical_name>
+					<type>bigserial</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>false</foreign_key>
+					<not_null>true</not_null>
+					<primary_key>true</primary_key>
+					<unique_key>true</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+				<normal_column>
+					<id>1</id>
+					<referenced_column>38</referenced_column>
+					<relation>1</relation>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name>ident_id</logical_name>
+					<physical_name>ident_id</physical_name>
+					<type>bigint</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>true</foreign_key>
+					<not_null>true</not_null>
+					<primary_key>false</primary_key>
+					<unique_key>false</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+				<normal_column>
+					<id>2</id>
+					<referenced_column>9</referenced_column>
+					<relation>2</relation>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name>binary_id</logical_name>
+					<physical_name>binary_id</physical_name>
+					<type>bigint</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>true</foreign_key>
+					<not_null>true</not_null>
+					<primary_key>false</primary_key>
+					<unique_key>false</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+				<normal_column>
+					<id>3</id>
+					<referenced_column>26</referenced_column>
+					<relation>4</relation>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name>source_ip</logical_name>
+					<physical_name>source_ip</physical_name>
+					<type>inet</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>true</foreign_key>
+					<not_null>true</not_null>
+					<primary_key>false</primary_key>
+					<unique_key>false</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+				<normal_column>
+					<id>4</id>
+					<referenced_column>15</referenced_column>
+					<relation>0</relation>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name>target_port</logical_name>
+					<physical_name>target_port</physical_name>
+					<type>integer</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>true</foreign_key>
+					<not_null>true</not_null>
+					<primary_key>false</primary_key>
+					<unique_key>false</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+				<normal_column>
+					<id>5</id>
+					<referenced_column>19</referenced_column>
+					<relation>3</relation>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name>target_ip</logical_name>
+					<physical_name>target_ip</physical_name>
+					<type>inet</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>true</foreign_key>
+					<not_null>true</not_null>
+					<primary_key>false</primary_key>
+					<unique_key>false</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+				<normal_column>
+					<word_id>31</word_id>
+					<id>6</id>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name></logical_name>
+					<physical_name></physical_name>
+					<type>bigint</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>false</foreign_key>
+					<not_null>false</not_null>
+					<primary_key>false</primary_key>
+					<unique_key>false</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+				<normal_column>
+					<word_id>53</word_id>
+					<id>7</id>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name></logical_name>
+					<physical_name></physical_name>
+					<type>timestamp with time zone</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>false</foreign_key>
+					<not_null>false</not_null>
+					<primary_key>false</primary_key>
+					<unique_key>false</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+				<normal_column>
+					<word_id>47</word_id>
+					<id>8</id>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name></logical_name>
+					<physical_name></physical_name>
+					<type>timestamp with time zone</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>false</foreign_key>
+					<not_null>false</not_null>
+					<primary_key>false</primary_key>
+					<unique_key>false</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+			</columns>
+			<indexes>
+			</indexes>
+			<complex_unique_key_list>
+				<complex_unique_key>
+					<id>0</id>
+					<name>agg_main_key</name>
+					<columns>
+						<column>
+							<id>1</id>
+						</column>
+						<column>
+							<id>2</id>
+						</column>
+						<column>
+							<id>3</id>
+						</column>
+						<column>
+							<id>4</id>
+						</column>
+						<column>
+							<id>5</id>
+						</column>
+					</columns>
+				</complex_unique_key>
+			</complex_unique_key_list>
+			<table_properties>
+				<without_oids>true</without_oids>
+				<schema></schema>
+			</table_properties>
+		</table>
+		<table>
+			<id>1</id>
+			<height>170</height>
+			<width>287</width>
+				<font_name>Sans</font_name>
+				<font_size>9</font_size>
+			<x>-28</x>
+			<y>-7</y>
+			<color>
+				<r>128</r>
+				<g>128</g>
+				<b>192</b>
+			</color>
+			<connections>
+			</connections>
+			<physical_name>dim_binary</physical_name>
+			<logical_name>dim_binary</logical_name>
+			<description></description>
+			<constraint></constraint>
+			<primary_key_name></primary_key_name>
+			<option></option>
+			<columns>
+				<normal_column>
+					<word_id>12</word_id>
+					<id>9</id>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name></logical_name>
+					<physical_name></physical_name>
+					<type>bigserial</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>false</foreign_key>
+					<not_null>true</not_null>
+					<primary_key>true</primary_key>
+					<unique_key>true</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+				<normal_column>
+					<word_id>25</word_id>
+					<id>10</id>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name></logical_name>
+					<physical_name></physical_name>
+					<type>character(n)</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>false</foreign_key>
+					<not_null>true</not_null>
+					<primary_key>false</primary_key>
+					<unique_key>true</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+				<normal_column>
+					<word_id>40</word_id>
+					<id>11</id>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name></logical_name>
+					<physical_name></physical_name>
+					<type>character(n)</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>false</foreign_key>
+					<not_null>false</not_null>
+					<primary_key>false</primary_key>
+					<unique_key>false</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+				<normal_column>
+					<word_id>26</word_id>
+					<id>12</id>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name></logical_name>
+					<physical_name></physical_name>
+					<type>bigint</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>false</foreign_key>
+					<not_null>false</not_null>
+					<primary_key>false</primary_key>
+					<unique_key>false</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+				<normal_column>
+					<word_id>51</word_id>
+					<id>13</id>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name></logical_name>
+					<physical_name></physical_name>
+					<type>timestamp with time zone</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>false</foreign_key>
+					<not_null>false</not_null>
+					<primary_key>false</primary_key>
+					<unique_key>false</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+				<normal_column>
+					<word_id>48</word_id>
+					<id>14</id>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name></logical_name>
+					<physical_name></physical_name>
+					<type>timestamp with time zone</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>false</foreign_key>
+					<not_null>false</not_null>
+					<primary_key>false</primary_key>
+					<unique_key>false</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+			</columns>
+			<indexes>
+			</indexes>
+			<complex_unique_key_list>
+			</complex_unique_key_list>
+			<table_properties>
+				<without_oids>true</without_oids>
+				<schema></schema>
+			</table_properties>
+		</table>
+		<table>
+			<id>2</id>
+			<height>128</height>
+			<width>287</width>
+				<font_name>Sans</font_name>
+				<font_size>9</font_size>
+			<x>-18</x>
+			<y>345</y>
+			<color>
+				<r>128</r>
+				<g>128</g>
+				<b>192</b>
+			</color>
+			<connections>
+			</connections>
+			<physical_name>dim_target_port</physical_name>
+			<logical_name>dim_target_port</logical_name>
+			<description></description>
+			<constraint></constraint>
+			<primary_key_name></primary_key_name>
+			<option></option>
+			<columns>
+				<normal_column>
+					<word_id>35</word_id>
+					<id>15</id>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name></logical_name>
+					<physical_name></physical_name>
+					<type>integer</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>false</foreign_key>
+					<not_null>true</not_null>
+					<primary_key>true</primary_key>
+					<unique_key>true</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+				<normal_column>
+					<word_id>30</word_id>
+					<id>16</id>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name></logical_name>
+					<physical_name></physical_name>
+					<type>bigint</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>false</foreign_key>
+					<not_null>false</not_null>
+					<primary_key>false</primary_key>
+					<unique_key>false</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+				<normal_column>
+					<word_id>52</word_id>
+					<id>17</id>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name></logical_name>
+					<physical_name></physical_name>
+					<type>timestamp with time zone</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>false</foreign_key>
+					<not_null>false</not_null>
+					<primary_key>false</primary_key>
+					<unique_key>false</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+				<normal_column>
+					<word_id>50</word_id>
+					<id>18</id>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name></logical_name>
+					<physical_name></physical_name>
+					<type>timestamp with time zone</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>false</foreign_key>
+					<not_null>false</not_null>
+					<primary_key>false</primary_key>
+					<unique_key>false</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+			</columns>
+			<indexes>
+			</indexes>
+			<complex_unique_key_list>
+			</complex_unique_key_list>
+			<table_properties>
+				<without_oids>true</without_oids>
+				<schema></schema>
+			</table_properties>
+		</table>
+		<table>
+			<id>3</id>
+			<height>149</height>
+			<width>275</width>
+				<font_name>Sans</font_name>
+				<font_size>9</font_size>
+			<x>2</x>
+			<y>485</y>
+			<color>
+				<r>128</r>
+				<g>128</g>
+				<b>192</b>
+			</color>
+			<connections>
+			</connections>
+			<physical_name>dim_target_ip</physical_name>
+			<logical_name>dim_target_ip</logical_name>
+			<description></description>
+			<constraint></constraint>
+			<primary_key_name></primary_key_name>
+			<option></option>
+			<columns>
+				<normal_column>
+					<word_id>19</word_id>
+					<id>19</id>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name></logical_name>
+					<physical_name></physical_name>
+					<type>inet</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>false</foreign_key>
+					<not_null>true</not_null>
+					<primary_key>true</primary_key>
+					<unique_key>true</unique_key>
+					<character_set></character_set>
+					<collation></collation>
 					<sequence>
 						<name></name>
 						<schema></schema>
 					</sequence>
 				</normal_column>
 				<normal_column>
-					<word_id>8</word_id>
-					<id>1</id>
+					<word_id>29</word_id>
+					<id>20</id>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name></logical_name>
+					<physical_name></physical_name>
+					<type>bigint</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>false</foreign_key>
+					<not_null>false</not_null>
+					<primary_key>false</primary_key>
+					<unique_key>false</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+				<normal_column>
+					<word_id>56</word_id>
+					<id>21</id>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name></logical_name>
+					<physical_name></physical_name>
+					<type>timestamp with time zone</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>false</foreign_key>
+					<not_null>false</not_null>
+					<primary_key>false</primary_key>
+					<unique_key>false</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+				<normal_column>
+					<word_id>45</word_id>
+					<id>22</id>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name></logical_name>
+					<physical_name></physical_name>
+					<type>timestamp with time zone</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>false</foreign_key>
+					<not_null>false</not_null>
+					<primary_key>false</primary_key>
+					<unique_key>false</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+			</columns>
+			<indexes>
+			</indexes>
+			<complex_unique_key_list>
+			</complex_unique_key_list>
+			<table_properties>
+				<without_oids>true</without_oids>
+				<schema></schema>
+			</table_properties>
+		</table>
+		<table>
+			<id>4</id>
+			<height>107</height>
+			<width>335</width>
+				<font_name>Sans</font_name>
+				<font_size>9</font_size>
+			<x>694</x>
+			<y>106</y>
+			<color>
+				<r>128</r>
+				<g>128</g>
+				<b>192</b>
+			</color>
+			<connections>
+				<relation>
+					<id>5</id>
+					<source>0</source>
+					<target>4</target>
+					<child_cardinality>1..n</child_cardinality>
+					<parent_cardinality>1</parent_cardinality>
+					<reference_for_pk>true</reference_for_pk>
+					<name></name>
+					<on_delete_action>RESTRICT</on_delete_action>
+					<on_update_action>RESTRICT</on_update_action>
+					<source_xp>-1</source_xp>
+					<source_yp>-1</source_yp>
+					<target_xp>-1</target_xp>
+					<target_yp>-1</target_yp>
+					<referenced_column>null</referenced_column>
+					<referenced_complex_unique_key>null</referenced_complex_unique_key>
+				</relation>
+			</connections>
+			<physical_name>ts_main_min</physical_name>
+			<logical_name>ts_main_min</logical_name>
+			<description></description>
+			<constraint></constraint>
+			<primary_key_name></primary_key_name>
+			<option></option>
+			<columns>
+				<normal_column>
+					<word_id>57</word_id>
+					<id>23</id>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name></logical_name>
+					<physical_name></physical_name>
+					<type>timestamp with time zone</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>false</foreign_key>
+					<not_null>true</not_null>
+					<primary_key>false</primary_key>
+					<unique_key>false</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+				<normal_column>
+					<id>24</id>
+					<referenced_column>0</referenced_column>
+					<relation>5</relation>
+					<description></description>
+					<unique_key_name></unique_key_name>
+					<logical_name></logical_name>
+					<physical_name></physical_name>
+					<type>bigint</type>
+					<constraint></constraint>
+					<default_value></default_value>
+					<auto_increment>false</auto_increment>
+					<foreign_key>true</foreign_key>
+					<not_null>true</not_null>
+					<primary_key>false</primary_key>
+					<unique_key>false</unique_key>
+					<character_set></character_set>
+					<collation></collation>
+					<sequence>
+						<name></name>
+						<schema></schema>
+						<increment></increment>
+						<min_value></min_value>
+						<max_value></max_value>
+						<start></start>
+						<cache></cache>
+						<cycle>false</cycle>
+						<order>false</order>
+						<description></description>
+						<data_type></data_type>
+						<decimal_size>0</decimal_size>
+					</sequence>
+				</normal_column>
+				<normal_column>
+					<word_id>28</word_id>
+					<id>25</id>
 					<description></description>
 					<unique_key_name></unique_key_name>
 					<logical_name></logical_name>
 						<decimal_size>0</decimal_size>
 					</sequence>
 				</normal_column>
+			</columns>
+			<indexes>
+			</indexes>
+			<complex_unique_key_list>
+				<complex_unique_key>
+					<id>1</id>
+					<name>ts_main_min_key</name>
+					<columns>
+						<column>
+							<id>23</id>
+						</column>
+						<column>
+							<id>24</id>
+						</column>
+					</columns>
+				</complex_unique_key>
+			</complex_unique_key_list>
+			<table_properties>
+				<without_oids>true</without_oids>
+				<schema></schema>
+			</table_properties>
+		</table>
+		<table>
+			<id>5</id>
+			<height>149</height>
+			<width>287</width>
+				<font_name>Sans</font_name>
+				<font_size>9</font_size>
+			<x>-27</x>
+			<y>186</y>
+			<color>
+				<r>128</r>
+				<g>128</g>
+				<b>192</b>
+			</color>
+			<connections>
+			</connections>
+			<physical_name>dim_source_ip</physical_name>
+			<logical_name>dim_source_ip</logical_name>
+			<description></description>
+			<constraint></constraint>
+			<primary_key_name></primary_key_name>
+			<option></option>
+			<columns>
 				<normal_column>
-					<word_id>1</word_id>
-					<id>2</id>
+					<word_id>16</word_id>
+					<id>26</id>
 					<description></description>
 					<unique_key_name></unique_key_name>
 					<logical_name></logical_name>
 					<physical_name></physical_name>
-					<type>bigint</type>
+					<type>inet</type>
 					<constraint></constraint>
 					<default_value></default_value>
 					<auto_increment>false</auto_increment>
 					<foreign_key>false</foreign_key>
-					<not_null>false</not_null>
-					<primary_key>false</primary_key>
-					<unique_key>false</unique_key>
+					<not_null>true</not_null>
+					<primary_key>true</primary_key>
+					<unique_key>true</unique_key>
 					<character_set></character_set>
 					<collation></collation>
 					<sequence>
 					</sequence>
 				</normal_column>
 				<normal_column>
-					<word_id>17</word_id>
-					<id>3</id>
+					<word_id>27</word_id>
+					<id>27</id>
 					<description></description>
 					<unique_key_name></unique_key_name>
 					<logical_name></logical_name>
 					</sequence>
 				</normal_column>
 				<normal_column>
-					<word_id>20</word_id>
-					<id>4</id>
+					<word_id>55</word_id>
+					<id>28</id>
 					<description></description>
 					<unique_key_name></unique_key_name>
 					<logical_name></logical_name>
 					</sequence>
 				</normal_column>
 				<normal_column>
-					<word_id>34</word_id>
-					<id>5</id>
+					<word_id>49</word_id>
+					<id>29</id>
 					<description></description>
 					<unique_key_name></unique_key_name>
 					<logical_name></logical_name>
 			</table_properties>
 		</table>
 		<table>
-			<id>1</id>
-			<height>149</height>
-			<width>287</width>
+			<id>6</id>
+			<height>212</height>
+			<width>248</width>
 				<font_name>Sans</font_name>
 				<font_size>9</font_size>
-			<x>276</x>
-			<y>-40</y>
+			<x>40</x>
+			<y>654</y>
 			<color>
 				<r>128</r>