Yaniv Dary has uploaded a new change for review. Change subject: history: added 3.2 views. ......................................................................
history: added 3.2 views. Change-Id: I15c43f19d3dbac350f081e509b322cd70c77bf4a Signed-off-by: Yaniv Dary <yd...@redhat.com> --- A data-warehouse/historydbscripts_postgres/create_views_3_2.sql M data-warehouse/historydbscripts_postgres/dbcustomfunctions.sh 2 files changed, 829 insertions(+), 0 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-dwh refs/changes/31/9331/1 diff --git a/data-warehouse/historydbscripts_postgres/create_views_3_2.sql b/data-warehouse/historydbscripts_postgres/create_views_3_2.sql new file mode 100644 index 0000000..713fbb3 --- /dev/null +++ b/data-warehouse/historydbscripts_postgres/create_views_3_2.sql @@ -0,0 +1,827 @@ +/************************************** + VERSIONED VIEWS (3.2) +**************************************/ + +CREATE OR REPLACE VIEW v3_2_enum_translator + AS +SELECT + enum_translator.enum_type as enum_type, + enum_translator.enum_key as enum_key, + enum_translator.value as value +FROM enum_translator INNER JOIN + history_configuration ON + (enum_translator.language_code = history_configuration.var_value + and history_configuration.var_name = 'default_language'); + +CREATE OR REPLACE VIEW v3_2_configuration_history_datacenters + AS +SELECT + history_id as history_id, + datacenter_id as datacenter_id, + datacenter_name as datacenter_name, + datacenter_description as datacenter_description, + storage_type as storage_type, + create_date as create_date, + update_date as update_date, + delete_date as delete_date +FROM datacenter_configuration; + +CREATE OR REPLACE VIEW v3_2_latest_configuration_datacenters + AS +SELECT + history_id as history_id, + datacenter_id as datacenter_id, + datacenter_name as datacenter_name, + datacenter_description as datacenter_description, + storage_type as storage_type, + create_date as create_date, + update_date as update_date +FROM datacenter_configuration +WHERE history_id in (SELECT max(a.history_id) FROM datacenter_configuration as a GROUP BY a.datacenter_id) + and delete_date IS NULL; + +CREATE OR REPLACE VIEW v3_2_statistics_datacenters_resources_usage_samples + AS +SELECT + history_id as history_id, + history_datetime as history_datetime, + datacenter_id as datacenter_id, + datacenter_status as datacenter_status, + minutes_in_status as minutes_in_status, + datacenter_configuration_version as datacenter_configuration_version +FROM datacenter_samples_history; + +CREATE OR REPLACE VIEW v3_2_statistics_datacenters_resources_usage_hourly + AS +SELECT + history_id as history_id, + history_datetime as history_datetime, + datacenter_id as datacenter_id, + datacenter_status as datacenter_status, + minutes_in_status as minutes_in_status, + datacenter_configuration_version as datacenter_configuration_version +FROM datacenter_hourly_history; + +CREATE OR REPLACE VIEW v3_2_statistics_datacenters_resources_usage_daily + AS +SELECT + history_id as history_id, + history_datetime as history_datetime, + datacenter_id as datacenter_id, + datacenter_status as datacenter_status, + minutes_in_status as minutes_in_status, + datacenter_configuration_version as datacenter_configuration_version +FROM datacenter_daily_history; + +CREATE OR REPLACE VIEW v3_2_map_history_datacenters_storage_domains + AS +SELECT + history_id as history_id, + storage_domain_id as storage_domain_id, + datacenter_id as datacenter_id, + attach_date as attach_date, + detach_date as detach_date +FROM datacenter_storage_domain_map; + +CREATE OR REPLACE VIEW v3_2_latest_map_datacenters_storage_domains + AS +SELECT + history_id as history_id, + storage_domain_id as storage_domain_id, + datacenter_id as datacenter_id, + attach_date as attach_date +FROM datacenter_storage_domain_map +WHERE history_id in (SELECT max(a.history_id) FROM datacenter_storage_domain_map as a GROUP BY a.storage_domain_id, a.datacenter_id) + and detach_date IS NULL; + +CREATE OR REPLACE VIEW v3_2_configuration_history_storage_domains + AS +SELECT + history_id as history_id, + storage_domain_id as storage_domain_id, + storage_domain_name as storage_domain_name, + storage_domain_type as storage_domain_type, + storage_type as storage_type, + create_date as create_date, + update_date as update_date, + delete_date as delete_date +FROM storage_domain_configuration; + +CREATE OR REPLACE VIEW v3_2_latest_configuration_storage_domains + AS +SELECT + history_id as history_id, + storage_domain_id as storage_domain_id, + storage_domain_name as storage_domain_name, + storage_domain_type as storage_domain_type, + storage_type as storage_type, + create_date as create_date, + update_date as update_date +FROM storage_domain_configuration +WHERE history_id in (SELECT max(a.history_id) FROM storage_domain_configuration as a GROUP BY a.storage_domain_id) + and delete_date IS NULL; + +CREATE OR REPLACE VIEW v3_2_statistics_storage_domains_resources_usage_samples + AS +SELECT + history_id as history_id, + history_datetime as history_datetime, + storage_domain_id as storage_domain_id, + available_disk_size_gb as available_disk_size_gb, + used_disk_size_gb as used_disk_size_gb, + storage_configuration_version as storage_configuration_version +FROM storage_domain_samples_history; + +CREATE OR REPLACE VIEW v3_2_statistics_storage_domains_resources_usage_hourly + AS +SELECT + history_id as history_id, + history_datetime as history_datetime, + storage_domain_id as storage_domain_id, + available_disk_size_gb as available_disk_size_gb, + used_disk_size_gb as used_disk_size_gb, + storage_configuration_version as storage_configuration_version +FROM storage_domain_hourly_history; + +CREATE OR REPLACE VIEW v3_2_statistics_storage_domains_resources_usage_daily + AS +SELECT + history_id as history_id, + history_datetime as history_datetime, + storage_domain_id as storage_domain_id, + available_disk_size_gb as available_disk_size_gb, + used_disk_size_gb as used_disk_size_gb, + storage_configuration_version as storage_configuration_version +FROM storage_domain_daily_history; + +CREATE OR REPLACE VIEW v3_2_configuration_history_clusters + AS +SELECT + history_id as history_id, + cluster_id as cluster_id, + cluster_name as cluster_name, + cluster_description as cluster_description, + datacenter_id as datacenter_id, + cpu_name as cpu_name, + compatibility_version as compatibility_version, + datacenter_configuration_version as datacenter_configuration_version, + create_date as create_date, + update_date as update_date, + delete_date as delete_date +FROM cluster_configuration; + +CREATE OR REPLACE VIEW v3_2_latest_configuration_clusters + AS +SELECT + history_id as history_id, + cluster_id as cluster_id, + cluster_name as cluster_name, + cluster_description as cluster_description, + datacenter_id as datacenter_id, + cpu_name as cpu_name, + compatibility_version as compatibility_version, + datacenter_configuration_version as datacenter_configuration_version, + create_date as create_date, + update_date as update_date +FROM cluster_configuration +WHERE history_id in (SELECT max(a.history_id) FROM cluster_configuration as a GROUP BY a.cluster_id) + and delete_date IS NULL; + +CREATE OR REPLACE VIEW v3_2_configuration_history_hosts + AS +SELECT + history_id as history_id, + host_id as host_id, + host_unique_id as host_unique_id, + host_name as host_name, + cluster_id as cluster_id, + host_type as host_type, + fqdn_or_ip as fqdn_or_ip, + memory_size_mb as memory_size_mb, + swap_size_mb as swap_size_mb, + cpu_model as cpu_model, + number_of_cores as number_of_cores, + number_of_sockets, + cpu_speed_mh, + host_os as host_os, + pm_ip_address as pm_ip_address, + kernel_version as kernel_version, + kvm_version as kvm_version, + CASE SUBSTR(vdsm_version,1,3) + WHEN '4.4' THEN '2.1' || SUBSTR(vdsm_version,4,LENGTH(vdsm_version)) + WHEN '4.5' THEN '2.2' || SUBSTR(vdsm_version,4,LENGTH(vdsm_version)) + WHEN '4.9' THEN '2.3' || SUBSTR(vdsm_version,4,LENGTH(vdsm_version)) + ELSE vdsm_version + END as vdsm_version, + vdsm_port as vdsm_port, + cluster_configuration_version as cluster_configuration_version, + create_date as create_date, + update_date as update_date, + delete_date as delete_date +FROM host_configuration; + +CREATE OR REPLACE VIEW v3_2_latest_configuration_hosts + AS +SELECT + history_id as history_id, + host_id as host_id, + host_unique_id as host_unique_id, + host_name as host_name, + cluster_id as cluster_id, + host_type as host_type, + fqdn_or_ip as fqdn_or_ip, + memory_size_mb as memory_size_mb, + swap_size_mb as swap_size_mb, + cpu_model as cpu_model, + number_of_cores as number_of_cores, + number_of_sockets, + cpu_speed_mh, + host_os as host_os, + pm_ip_address as pm_ip_address, + kernel_version as kernel_version, + kvm_version as kvm_version, + CASE SUBSTR(vdsm_version,1,3) + WHEN '4.4' THEN '2.1' || SUBSTR(vdsm_version,4,LENGTH(vdsm_version)) + WHEN '4.5' THEN '2.2' || SUBSTR(vdsm_version,4,LENGTH(vdsm_version)) + WHEN '4.9' THEN '2.3' || SUBSTR(vdsm_version,4,LENGTH(vdsm_version)) + ELSE vdsm_version + END as vdsm_version, + vdsm_port as vdsm_port, + cluster_configuration_version as cluster_configuration_version, + create_date as create_date, + update_date as update_date +FROM host_configuration +WHERE history_id in (SELECT max(a.history_id) FROM host_configuration as a GROUP BY a.host_id) + and delete_date IS NULL; + +CREATE OR REPLACE VIEW v3_2_statistics_hosts_resources_usage_samples + AS +SELECT + history_id as history_id, + history_datetime as history_datetime, + host_id as host_id, + host_status as host_status, + minutes_in_status as minutes_in_status, + memory_usage_percent as memory_usage_percent, + cpu_usage_percent as cpu_usage_percent, + ksm_cpu_percent as ksm_cpu_percent, + active_vms as active_vms, + total_vms as total_vms, + total_vms_vcpus as total_vms_vcpus, + cpu_load as cpu_load, + system_cpu_usage_percent as system_cpu_usage_percent, + user_cpu_usage_percent as user_cpu_usage_percent, + swap_used_mb as swap_used_mb, + host_configuration_version as host_configuration_version +FROM host_samples_history; + +CREATE OR REPLACE VIEW v3_2_statistics_hosts_resources_usage_hourly + AS +SELECT + history_id as history_id, + history_datetime as history_datetime, + host_id as host_id, + host_status as host_status, + minutes_in_status as minutes_in_status, + memory_usage_percent as memory_usage_percent, + max_memory_usage as max_memory_usage, + cpu_usage_percent as cpu_usage_percent, + max_cpu_usage as max_cpu_usage, + ksm_cpu_percent as ksm_cpu_percent, + max_ksm_cpu_percent as max_ksm_cpu_percent, + active_vms as active_vms, + max_active_vms as max_active_vms, + total_vms as total_vms, + max_total_vms as max_total_vms, + total_vms_vcpus as total_vms_vcpus, + max_total_vms_vcpus as max_total_vms_vcpus, + cpu_load as cpu_load, + max_cpu_load as max_cpu_load, + system_cpu_usage_percent as system_cpu_usage_percent, + max_system_cpu_usage_percent as max_system_cpu_usage_percent, + user_cpu_usage_percent as user_cpu_usage_percent, + max_user_cpu_usage_percent as max_user_cpu_usage_percent, + swap_used_mb as swap_used_mb, + max_swap_used_mb as max_swap_used_mb, + host_configuration_version as host_configuration_version +FROM host_hourly_history; + +CREATE OR REPLACE VIEW v3_2_statistics_hosts_resources_usage_daily + AS +SELECT + history_id as history_id, + history_datetime as history_datetime, + host_id as host_id, + host_status as host_status, + minutes_in_status as minutes_in_status, + memory_usage_percent as memory_usage_percent, + max_memory_usage as max_memory_usage, + cpu_usage_percent as cpu_usage_percent, + max_cpu_usage as max_cpu_usage, + ksm_cpu_percent as ksm_cpu_percent, + max_ksm_cpu_percent as max_ksm_cpu_percent, + active_vms as active_vms, + max_active_vms as max_active_vms, + total_vms as total_vms, + max_total_vms as max_total_vms, + total_vms_vcpus as total_vms_vcpus, + max_total_vms_vcpus as max_total_vms_vcpus, + cpu_load as cpu_load, + max_cpu_load as max_cpu_load, + system_cpu_usage_percent as system_cpu_usage_percent, + max_system_cpu_usage_percent as max_system_cpu_usage_percent, + user_cpu_usage_percent as user_cpu_usage_percent, + max_user_cpu_usage_percent as max_user_cpu_usage_percent, + swap_used_mb as swap_used_mb, + max_swap_used_mb as max_swap_used_mb, + host_configuration_version as host_configuration_version +FROM host_daily_history; + +CREATE OR REPLACE VIEW v3_2_configuration_history_hosts_interfaces + AS +SELECT + history_id as history_id, + host_interface_id as host_interface_id, + host_interface_name as host_interface_name, + host_id as host_id, + host_interface_type as host_interface_type, + host_interface_speed_bps as host_interface_speed_bps, + mac_address as mac_address, + network_name as network_name, + ip_address as ip_address, + gateway as gateway, + bond as bond, + bond_name as bond_name, + vlan_id as vlan_id, + host_configuration_version as host_configuration_version, + create_date as create_date, + update_date as update_date, + delete_date as delete_date +FROM host_interface_configuration; + +CREATE OR REPLACE VIEW v3_2_latest_configuration_hosts_interfaces + AS +SELECT + history_id as history_id, + host_interface_id as host_interface_id, + host_interface_name as host_interface_name, + host_id as host_id, + host_interface_type as host_interface_type, + host_interface_speed_bps as host_interface_speed_bps, + mac_address as mac_address, + network_name as network_name, + ip_address as ip_address, + gateway as gateway, + bond as bond, + bond_name as bond_name, + vlan_id as vlan_id, + host_configuration_version as host_configuration_version, + create_date as create_date, + update_date as update_date +FROM host_interface_configuration +WHERE history_id in (SELECT max(a.history_id) FROM host_interface_configuration as a GROUP BY a.host_interface_id) + and delete_date IS NULL; + +CREATE OR REPLACE VIEW v3_2_statistics_hosts_interfaces_resources_usage_samples + AS +SELECT + history_id as history_id, + history_datetime as history_datetime, + host_interface_id as host_interface_id, + receive_rate_percent as receive_rate_percent, + transmit_rate_percent as transmit_rate_percent, + host_interface_configuration_version as host_interface_configuration_version +FROM host_interface_samples_history; + +CREATE OR REPLACE VIEW v3_2_statistics_hosts_interfaces_resources_usage_hourly + AS +SELECT + history_id as history_id, + history_datetime as history_datetime, + host_interface_id as host_interface_id, + receive_rate_percent as receive_rate_percent, + max_receive_rate_percent as max_receive_rate_percent, + transmit_rate_percent as transmit_rate_percent, + max_transmit_rate_percent as max_transmit_rate_percent, + host_interface_configuration_version as host_interface_configuration_version +FROM host_interface_hourly_history; + +CREATE OR REPLACE VIEW v3_2_statistics_hosts_interfaces_resources_usage_daily + AS + +SELECT + history_id as history_id, + history_datetime as history_datetime, + host_interface_id as host_interface_id, + receive_rate_percent as receive_rate_percent, + max_receive_rate_percent as max_receive_rate_percent, + transmit_rate_percent as transmit_rate_percent, + max_transmit_rate_percent as max_transmit_rate_percent, + host_interface_configuration_version as host_interface_configuration_version +FROM host_interface_daily_history; + +CREATE OR REPLACE VIEW v3_2_configuration_history_vms + AS +SELECT + history_id as history_id, + vm_id as vm_id, + vm_name as vm_name, + vm_description as vm_description, + vm_type as vm_type, + cluster_id as cluster_id, + template_id as template_id, + template_name as template_name, + cpu_per_socket as cpu_per_socket, + number_of_sockets as number_of_sockets, + memory_size_mb as memory_size_mb, + operating_system as operating_system, + ad_domain as ad_domain, + default_host as default_host, + high_availability as high_availability, + initialized as initialized, + stateless as stateless, + fail_back as fail_back, + auto_suspend as auto_suspend, + usb_policy as usb_policy, + time_zone as time_zone, + cluster_configuration_version as cluster_configuration_version, + default_host_configuration_version as default_host_configuration_version, + create_date as create_date, + update_date as update_date, + delete_date as delete_date +FROM vm_configuration; + +CREATE OR REPLACE VIEW v3_2_latest_configuration_vms + AS +SELECT + history_id as history_id, + vm_id as vm_id, + vm_name as vm_name, + vm_description as vm_description, + vm_type as vm_type, + cluster_id as cluster_id, + template_id as template_id, + template_name as template_name, + cpu_per_socket as cpu_per_socket, + number_of_sockets as number_of_sockets, + memory_size_mb as memory_size_mb, + operating_system as operating_system, + ad_domain as ad_domain, + default_host as default_host, + high_availability as high_availability, + initialized as initialized, + stateless as stateless, + fail_back as fail_back, + auto_suspend as auto_suspend, + usb_policy as usb_policy, + time_zone as time_zone, + cluster_configuration_version as cluster_configuration_version, + default_host_configuration_version as default_host_configuration_version, + create_date as create_date, + update_date as update_date +FROM vm_configuration +WHERE history_id in (SELECT max(a.history_id) FROM vm_configuration as a GROUP BY a.vm_id) + and delete_date IS NULL; + +CREATE OR REPLACE VIEW v3_2_statistics_vms_resources_usage_samples + AS +SELECT + a.history_id as history_id, + a.history_datetime as history_datetime, + a.vm_id as vm_id, + a.vm_status as vm_status, + a.minutes_in_status as minutes_in_status, + a.cpu_usage_percent as cpu_usage_percent, + a.memory_usage_percent as memory_usage_percent, + a.user_cpu_usage_percent as user_cpu_usage_percent, + a.system_cpu_usage_percent as system_cpu_usage_percent, + a.vm_ip as vm_ip, + a.currently_running_on_host as currently_running_on_host, + a.current_user_name as current_user_name, + b.disks_usage as disks_usage, + a.vm_configuration_version as vm_configuration_version, + a.current_host_configuration_version as current_host_configuration_version +FROM vm_samples_history as a + LEFT OUTER JOIN vm_disks_usage_samples_history as b + ON (a.history_datetime = b.history_datetime AND a.vm_id = b.vm_id); + +CREATE OR REPLACE VIEW v3_2_statistics_vms_resources_usage_hourly + AS +SELECT + a.history_id as history_id, + a.history_datetime as history_datetime, + a.vm_id as vm_id, + a.vm_status as vm_status, + a.minutes_in_status as minutes_in_status, + a.cpu_usage_percent as cpu_usage_percent, + a.max_cpu_usage as max_cpu_usage, + a.memory_usage_percent as memory_usage_percent, + a.max_memory_usage as max_memory_usage, + a.user_cpu_usage_percent as user_cpu_usage_percent, + a.max_user_cpu_usage_percent as max_user_cpu_usage_percent, + a.system_cpu_usage_percent as system_cpu_usage_percent, + a.max_system_cpu_usage_percent as max_system_cpu_usage_percent, + a.vm_ip as vm_ip, + a.currently_running_on_host as currently_running_on_host, + a.current_user_name as current_user_name, + b.disks_usage as disks_usage, + a.vm_configuration_version as vm_configuration_version, + a.current_host_configuration_version as current_host_configuration_version +FROM vm_hourly_history as a + LEFT OUTER JOIN vm_disks_usage_hourly_history as b + ON (a.history_datetime = b.history_datetime AND a.vm_id = b.vm_id); + +CREATE OR REPLACE VIEW v3_2_statistics_vms_resources_usage_daily + AS +SELECT + a.history_id as history_id, + a.history_datetime as history_datetime, + a.vm_id as vm_id, + a.vm_status as vm_status, + a.minutes_in_status as minutes_in_status, + a.cpu_usage_percent as cpu_usage_percent, + a.max_cpu_usage as max_cpu_usage, + a.memory_usage_percent as memory_usage_percent, + a.max_memory_usage as max_memory_usage, + a.user_cpu_usage_percent as user_cpu_usage_percent, + a.max_user_cpu_usage_percent as max_user_cpu_usage_percent, + a.system_cpu_usage_percent as system_cpu_usage_percent, + a.max_system_cpu_usage_percent as max_system_cpu_usage_percent, + a.vm_ip as vm_ip, + a.currently_running_on_host as currently_running_on_host, + a.current_user_name as current_user_name, + b.disks_usage as disks_usage, + a.vm_configuration_version as vm_configuration_version, + a.current_host_configuration_version as current_host_configuration_version +FROM vm_daily_history as a + LEFT OUTER JOIN vm_disks_usage_daily_history as b + ON (a.history_datetime = b.history_datetime AND a.vm_id = b.vm_id); + +CREATE OR REPLACE VIEW v3_2_configuration_history_vms_interfaces + AS +SELECT + history_id as history_id, + vm_interface_id as vm_interface_id, + vm_interface_name as vm_interface_name, + vm_interface_type as vm_interface_type, + vm_interface_speed_bps as vm_interface_speed_bps, + mac_address as mac_address, + network_name as network_name, + vm_configuration_version as vm_configuration_version, + create_date as create_date, + update_date as update_date, + delete_date as delete_date +FROM vm_interface_configuration; + +CREATE OR REPLACE VIEW v3_2_latest_configuration_vms_interfaces + AS +SELECT + history_id as history_id, + vm_interface_id as vm_interface_id, + vm_interface_name as vm_interface_name, + vm_interface_type as vm_interface_type, + vm_interface_speed_bps as vm_interface_speed_bps, + mac_address as mac_address, + network_name as network_name, + vm_configuration_version as vm_configuration_version, + create_date as create_date, + update_date as update_date +FROM vm_interface_configuration +WHERE history_id in (SELECT max(a.history_id) FROM vm_interface_configuration as a GROUP BY a.vm_interface_id) + and delete_date IS NULL; + +CREATE OR REPLACE VIEW v3_2_statistics_vms_interfaces_resources_usage_samples + AS + +SELECT + history_id as history_id, + history_datetime as history_datetime, + vm_interface_id as vm_interface_id, + receive_rate_percent as receive_rate_percent, + transmit_rate_percent as transmit_rate_percent, + vm_interface_configuration_version as vm_interface_configuration_version +FROM vm_interface_samples_history; + +CREATE OR REPLACE VIEW v3_2_statistics_vms_interfaces_resources_usage_hourly + AS + +SELECT + history_id as history_id, + history_datetime as history_datetime, + vm_interface_id as vm_interface_id, + receive_rate_percent as receive_rate_percent, + max_receive_rate_percent as max_receive_rate_percent, + transmit_rate_percent as transmit_rate_percent, + max_transmit_rate_percent as max_transmit_rate_percent, + vm_interface_configuration_version as vm_interface_configuration_version +FROM vm_interface_hourly_history; + +CREATE OR REPLACE VIEW v3_2_statistics_vms_interfaces_resources_usage_daily + AS + +SELECT + history_id as history_id, + history_datetime as history_datetime, + vm_interface_id as vm_interface_id, + receive_rate_percent as receive_rate_percent, + max_receive_rate_percent as max_receive_rate_percent, + transmit_rate_percent as transmit_rate_percent, + max_transmit_rate_percent as max_transmit_rate_percent, + vm_interface_configuration_version as vm_interface_configuration_version +FROM vm_interface_daily_history; + +CREATE OR REPLACE VIEW v3_2_configuration_history_vms_disks + AS +SELECT + history_id as history_id, + vm_disk_id as vm_disk_id, + CASE + WHEN vm_disk_name IS NOT NULL THEN vm_disk_name + ELSE 'disk ' || cast(vm_internal_drive_mapping as varchar) + END as vm_disk_name, + vm_disk_description as vm_disk_description, + image_id as image_id, + storage_domain_id as storage_domain_id, + vm_disk_size_mb as vm_disk_size_mb, + vm_disk_type as vm_disk_type, + vm_disk_format as vm_disk_format, + vm_disk_interface as vm_disk_interface, + is_shared as is_shared, + create_date as create_date, + update_date as update_date, + delete_date as delete_date +FROM vm_disk_configuration; + +CREATE OR REPLACE VIEW v3_2_latest_configuration_vms_disks + AS +SELECT + history_id as history_id, + vm_disk_id as vm_disk_id, + CASE + WHEN vm_disk_name IS NOT NULL THEN vm_disk_name + ELSE 'disk ' || cast(vm_internal_drive_mapping as varchar) + END as vm_disk_name, + vm_disk_description as vm_disk_description, + image_id as image_id, + storage_domain_id as storage_domain_id, + vm_disk_size_mb as vm_disk_size_mb, + vm_disk_type as vm_disk_type, + vm_disk_format as vm_disk_format, + vm_disk_interface as vm_disk_interface, + is_shared as is_shared, + create_date as create_date, + update_date as update_date +FROM vm_disk_configuration +WHERE history_id in (SELECT max(a.history_id) FROM vm_disk_configuration as a GROUP BY a.vm_disk_id) + and delete_date IS NULL; + +CREATE OR REPLACE VIEW v3_2_statistics_vms_disks_resources_usage_samples + AS +SELECT + history_id as history_id, + history_datetime as history_datetime, + vm_disk_id as vm_disk_id, + vm_disk_status as vm_disk_status, + minutes_in_status as minutes_in_status, + vm_disk_actual_size_mb as vm_disk_actual_size_mb, + read_rate_bytes_per_second as read_rate_bytes_per_second, + read_latency_seconds as read_latency_seconds, + write_rate_bytes_per_second as write_rate_bytes_per_second, + write_latency_seconds as write_latency_seconds, + flush_latency_seconds as flush_latency_seconds, + vm_disk_configuration_version as vm_disk_configuration_version +FROM vm_disk_samples_history; + +CREATE OR REPLACE VIEW v3_2_statistics_vms_disks_resources_usage_hourly + AS +SELECT + history_id as history_id, + history_datetime as history_datetime, + vm_disk_id as vm_disk_id, + vm_disk_status as vm_disk_status, + minutes_in_status as minutes_in_status, + vm_disk_actual_size_mb as vm_disk_actual_size_mb, + read_rate_bytes_per_second as read_rate_bytes_per_second, + max_read_rate_bytes_per_second as max_read_rate_bytes_per_second, + read_latency_seconds as read_latency_seconds, + max_read_latency_seconds as max_read_latency_seconds, + write_rate_bytes_per_second as write_rate_bytes_per_second, + max_write_rate_bytes_per_second as max_write_rate_bytes_per_second, + write_latency_seconds as write_latency_seconds, + max_write_latency_seconds as max_write_latency_seconds, + flush_latency_seconds as flush_latency_seconds, + max_flush_latency_seconds as max_flush_latency_seconds, + vm_disk_configuration_version as vm_disk_configuration_version +FROM vm_disk_hourly_history; + +CREATE OR REPLACE VIEW v3_2_statistics_vms_disks_resources_usage_daily + AS +SELECT + history_id as history_id, + history_datetime as history_datetime, + vm_disk_id as vm_disk_id, + vm_disk_status as vm_disk_status, + minutes_in_status as minutes_in_status, + vm_disk_actual_size_mb as vm_disk_actual_size_mb, + read_rate_bytes_per_second as read_rate_bytes_per_second, + max_read_rate_bytes_per_second as max_read_rate_bytes_per_second, + read_latency_seconds as read_latency_seconds, + max_read_latency_seconds as max_read_latency_seconds, + write_rate_bytes_per_second as write_rate_bytes_per_second, + max_write_rate_bytes_per_second as max_write_rate_bytes_per_second, + write_latency_seconds as write_latency_seconds, + max_write_latency_seconds as max_write_latency_seconds, + flush_latency_seconds as flush_latency_seconds, + max_flush_latency_seconds as max_flush_latency_seconds, + vm_disk_configuration_version as vm_disk_configuration_version +FROM vm_disk_daily_history; + +CREATE OR REPLACE VIEW v3_2_configuration_history_vms_devices + AS +SELECT + history_id as history_id, + vm_id, + device_id, + type, + address, + is_managed, + is_plugged, + is_readonly, + vm_configuration_version, + device_configuration_version, + create_date, + update_date, + delete_date +FROM vm_device_history; + +CREATE OR REPLACE VIEW v3_2_latest_configuration_vms_devices + AS +SELECT + history_id as history_id, + vm_id, + device_id, + type, + address, + is_managed, + is_plugged, + is_readonly, + vm_configuration_version, + device_configuration_version, + create_date, + update_date +FROM vm_device_history +WHERE history_id in (SELECT max(a.history_id) FROM vm_device_history as a GROUP BY a.vm_id, a.device_id) + and delete_date IS NULL; + +CREATE OR REPLACE VIEW v3_2_tags_relations_history + AS +SELECT history_id as history_id, + entity_id as entity_id, + entity_type as entity_type, + parent_id as parent_id, + attach_date as attach_date, + detach_date as detach_date +FROM tag_relations_history +WHERE entity_type in(3,2,5,18); + +CREATE OR REPLACE VIEW v3_2_latest_tags_relations + AS +SELECT history_id as history_id, + entity_id as entity_id, + entity_type as entity_type, + parent_id as parent_id, + attach_date as attach_date, + detach_date as detach_date +FROM tag_relations_history +WHERE entity_type in(3,2,5,18) + and history_id in (SELECT max(a.history_id) FROM tag_relations_history as a GROUP BY a.entity_id, a.parent_id) + and detach_date IS NULL; + +CREATE OR REPLACE VIEW v3_2_tags_details_history + AS +SELECT history_id as history_id, + tag_id as tag_id, + tag_name as tag_name, + tag_description as tag_description, + tag_path as tag_path, + tag_level as tag_level, + create_date as create_date, + update_date as update_date, + delete_date as delete_date +FROM tag_details; + +CREATE OR REPLACE VIEW v3_2_latest_tags_details + AS +SELECT history_id as history_id, + tag_id as tag_id, + tag_name as tag_name, + tag_description as tag_description, + tag_path as tag_path, + tag_level as tag_level, + create_date as create_date, + update_date as update_date, + delete_date as delete_date +FROM tag_details +WHERE history_id in (SELECT max(a.history_id) FROM tag_details as a GROUP BY a.tag_id) + and delete_date IS NULL; + diff --git a/data-warehouse/historydbscripts_postgres/dbcustomfunctions.sh b/data-warehouse/historydbscripts_postgres/dbcustomfunctions.sh index 87bc9a1..c3113c1 100755 --- a/data-warehouse/historydbscripts_postgres/dbcustomfunctions.sh +++ b/data-warehouse/historydbscripts_postgres/dbcustomfunctions.sh @@ -28,6 +28,8 @@ execute_file "create_views_3_0.sql" ${DATABASE} ${SERVERNAME} ${PORT} > /dev/null printf "Creating views API 3.1...\n" execute_file "create_views_3_1.sql" ${DATABASE} ${SERVERNAME} ${PORT} > /dev/null + printf "Creating views API 3.2...\n" + execute_file "create_views_3_2.sql" ${DATABASE} ${SERVERNAME} ${PORT} > /dev/null printf "Creating ovirt engine reports views...\n" execute_file "create_reports_views.sql" ${DATABASE} ${SERVERNAME} ${PORT} > /dev/null } -- To view, visit http://gerrit.ovirt.org/9331 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I15c43f19d3dbac350f081e509b322cd70c77bf4a Gerrit-PatchSet: 1 Gerrit-Project: ovirt-dwh Gerrit-Branch: master Gerrit-Owner: Yaniv Dary <yd...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches