辅助仪表盘

PrestoIBM® watsonx.data ( Java ) 通过一套强大的仪表板提供全面的可观测性,这些仪表板可清晰呈现性能指标,从而实现快速问题诊断并优化资源分配。

以下是支持的仪表板:

  • 系统运行状况
  • 查询性能健康状况
  • 数据与元数据健康状况
  • 工作负载健康状况
  • 查询延迟健康状况
  • 查询生命周期健康状况
  • 异常与趋势洞察
  • 日志与错误健康状态

该 Grafana 工具仅支持以下四个仪表板:系统健康状况、查询性能健康状况、数据与元数据健康状况以及工作负载健康状况,而Instana工具则支持全部八个仪表板。

以下列表代表默认的 Presto ( Java ) 指标集。 用户可根据需要添加额外指标来扩展此功能。 完整的可用指标及其定义列表可在 公开的JMX Presto 指标中找到。

系统运行状况

监控基础架构至关重要 Presto。 专注于基础架构,监控CPU、内存和I/O等核心资源,以检测瓶颈并确保稳定运行。

Presto ( Java )引擎:

  • CPU 使用率- 监控跨 Presto 实例的 CPU 使用率。

    • process_cpu_seconds_total
  • 内存使用情况- 追踪已用内存与可用内存的对比

    • watsonx_data_presto_cluster_memory_manager_cluster_memory_bytes
    • watsonx_data_presto_cluster_memory_manager_leaked_bytes
    • watsonx_data_presto_memory_heap_memory_usage_committed_bytes
    • watsonx_data_presto_memory_heap_memory_usage_max_bytes
    • watsonx_data_presto_memory_non_heap_memory_usage_committed_bytes
    • watsonx_data_presto_memory_non_heap_memory_usage_max_bytes
    • watsonx_data_presto_cluster_memory_manager_cluster_user_memory_reservation
    • watsonx_data_presto_cluster_memory_manager_cluster_total_memory_reservation
    • watsonx_data_presto_cluster_memory_manager_queries_killed_due_to_out_of_memory
    • jvm_memory_bytes_committed
  • Presto 内存池- 追踪. 程序中保留内存池和通用内存池内的内存消耗情况 Presto。

    • watsonx_data_presto_memory_pool_general_max_bytes
    • watsonx_data_presto_cluster_memory_pool_general_nodes
    • watsonx_data_presto_memory_pool_general_free_bytes
    • watsonx_data_presto_memory_pool_general_reserved_bytes
    • watsonx_data_presto_cluster_memory_pool_general_free_distributed_bytes
    • watsonx_data_presto_cluster_memory_pool_general_total_distributed_bytes
    • watsonx_data_presto_cluster_memory_pool_general_reserved_distributed_bytes
    • watsonx_data_presto_cluster_memory_pool_general_reserved_revocable_distributed_bytes
  • Alluxio 缓存- 追踪查询过程中 Alluxio 中缓存数据的效率和使用情况。

    • watsonx_data_presto_alluxio_cache_bytes_read_cache_count
    • watsonx_data_presto_alluxio_cache_bytes_requested_external_count
    • watsonx_data_presto_alluxio_cache_written_cache_external_count
    • watsonx_data_presto_alluxio_cache_get_errors_count
    • watsonx_data_presto_alluxio_cache_put_errors_count
    • watsonx_data_presto_alluxio_cache_pages_count
    • watsonx_data_presto_alluxio_cache_pages_evicted_count
    • watsonx_data_presto_alluxio_cache_space_available_value
    • watsonx_data_presto_alluxio_cache_space_used_value

要生成Alluxio缓存指标,必须启用Alluxio缓存。 有关更多信息,请参阅 《 通过缓存提升查询性能

此外,请确保以下配置包含在文件 jvm.config 中: -Dalluxio.metrics.key.including.unique.id.enabled=true -Dalluxio.user.app.id=presto

  • 片段缓存- 追踪缓存查询片段的使用情况及其命中率与未命中率。Presto
    • watsonx_data_presto_fragment_cache_stats_cache_entries
    • watsonx_data_presto_fragment_cache_stats_cache_hit
    • watsonx_data_presto_fragment_cache_stats_cache_removal
    • watsonx_data_presto_fragment_cache_stats_cache_size_in_bytes
    • watsonx_data_presto_fragment_cache_stats_inflight_bytes

查询性能

理解查询行为对查询引擎至关重要。 查询性能指标包括:

Presto ( Java )引擎:

  • 当前运行中的查询- 监控查询请求速率。

    • watsonx_data_presto_query_manager_running_queries
  • 查询执行时间- 追踪查询延迟。

    • watsonx_data_presto_query_manager_execution_time_five_minutes_p99
  • 数据处理- 测量查询执行期间的数据传输速率。

    • watsonx_data_presto_task_manager_input_data_size_five_minute_count
    • watsonx_data_presto_task_manager_output_data_size_five_minute_count
  • 错误率- 表示系统在高负载状态下出现错误的查询所占的百分比。

    • watsonx_data_presto_query_manager_user_error_failures_five_minute_count
    • watsonx_data_presto_query_manager_abandoned_queries_five_minute_count
    • watsonx_data_presto_query_manager_canceled_queries_five_minute_count
  • 成功请求与失败请求- 追踪成功请求与失败请求的数量。

    • watsonx_data_presto_query_manager_completed_queries_five_minute_count
    • watsonx_data_presto_query_manager_failed_queries_five_minute_count
    • watsonx_data_presto_query_manager_internal_failures_five_minute_count
    • watsonx_data_presto_task_manager_failed_tasks_five_minute_count

数据与元数据健康状况

对于处理海量数据的系统而言,数据采集和元数据管理的健康状况至关重要。

Presto ( Java )引擎:

  • 数据摄取 - 查询管理器- 监控系统摄取数据的体量与速率。

    • watsonx_data_presto_query_manager_consumed_input_bytes_five_minute_count
    • watsonx_data_presto_query_manager_consumed_input_rows_five_minute_count
    • watsonx_data_presto_query_manager_wall_input_bytes_rate_five_minutes_p90
  • S3 对象存储错误- 记录从对象存储层读取数据 S3 时的失败指标。

    • watsonx_data_presto_hive_s3_presto_s3_file_system_get_metadata_errors_total_count
    • watsonx_data_presto_hive_s3_presto_s3_file_system_failed_uploads_total_count
    • watsonx_data_presto_hive_s3_presto_s3_file_system_other_read_errors_total_count
  • 队列指标- 衡量内部数据处理队列的大小和处理速率。

    • watsonx_data_presto_dispatch_manager_queued_queries
    • watsonx_data_presto_split_scheduler_stats_mixed_split_queues_full_and_waiting_for_source_five_minute_count
    • watsonx_data_presto_task_executor_processor_executor_queued_task_count
    • watsonx_data_presto_task_executor_split_queued_time_all_time_max
    • watsonx_data_presto_task_executor_split_queued_time_all_time_avg
  • 文件元数据缓存指标- 监测文件访问过程中元数据缓存的命中率/未命中率及效率。

    • watsonx_data_presto_hive_cache_stats_mbean_parquet_metadata_hit_rate
    • watsonx_data_presto_hive_cache_stats_mbean_parquet_metadata_size
    • watsonx_data_presto_hive_cache_stats_mbean_orc_file_tail_size
    • watsonx_data_presto_hive_cache_stats_mbean_orc_file_tail_hit_rate
    • watsonx_data_presto_hive_cache_stats_mbean_stripe_footer_size
    • watsonx_data_presto_hive_cache_stats_mbean_stripe_stream_size

工作负载健康状况

理解不同工作负载如何与系统交互是资源优化的关键。

Presto ( Java )引擎:

  • 工作负载计数- 指示当前正在运行的查询数量。

    • watsonx_data_presto_query_manager_running_queries
  • 状态- 指示工作负载处于活动、空闲或失败状态。

    • watsonx_data_presto_query_manager_completed_queries_five_minute_count
    • watsonx_data_presto_query_manager_abandoned_queries_five_minute_count
    • watsonx_data_presto_query_manager_canceled_queries_five_minute_count
    • watsonx_data_presto_query_manager_failed_queries_five_minute_count
  • 错误率- 错误率

    • watsonx_data_presto_query_manager_user_error_failures_five_minute_count
    • watsonx_data_presto_query_manager_failed_queries_five_minute_count
    • watsonx_data_presto_query_manager_external_failures_five_minute_count
    • watsonx_data_presto_query_manager_internal_failures_five_minute_count
    • watsonx_data_presto_query_manager_insufficient_resources_failures_five_minute_count
  • 资源利用率- 追踪每个工作负载相关的CPU、内存和磁盘使用情况。

    • watsonx_data_presto_query_manager_consumed_cpu_time_seconds_five_minute_count
    • watsonx_data_presto_query_manager_cpu_input_byte_rate_five_minutes_p25
    • watsonx_data_presto_query_manager_cpu_input_byte_rate_five_minutes_p50
    • watsonx_data_presto_query_manager_cpu_input_byte_rate_five_minutes_p75
    • watsonx_data_presto_query_manager_cpu_input_byte_rate_five_minutes_p90
  • 请求计数- 在特定时间段内接收的工作负载执行请求总数。

    • watsonx_data_presto_query_manager_running_queries
    • watsonx_data_presto_dispatch_manager_queued_queries

查询生命周期健康状况

它深入剖析了查询从提交到执行的每个阶段,有助于识别队列、任务执行和完成过程中的瓶颈。

Presto ( Java )引擎:

  • 各阶段错误- 通过识别管道中任务失败的问题区域,追踪实例 Presto 不同阶段的查询执行失败情况。

    • watsonx_data_presto_task_manager_failed_tasks_five_minute_count
  • 每条查询的资源利用率- 记录每条查询的系统资源使用情况,包括线程、拆分操作以及排队或正在执行的查询。

    • watsonx_data_presto_task_executor_running_tasks_level0
    • watsonx_data_presto_task_executor_running_splits
    • watsonx_data_presto_query_manager_submitted_queries_five_minute_count
    • watsonx_data_presto_query_manager_queued_queries
    • watsonx_data_presto_dispatch_manager_queued_queries
    • watsonx_data_presto_task_executor_blocked_splits
  • 执行器池健康状况- 监控用于运行 Presto 任务的内部线程池。

    • watsonx_data_presto_task_executor_processor_executor_pool_size
    • watsonx_data_presto_task_executor_processor_executor_active_count
    • watsonx_data_presto_task_executor_processor_executor_completed_task_count
    • watsonx_data_presto_task_executor_processor_executor_queued_task_count
  • 拆分CPU时间- 追踪叶节点和中间节点拆分所消耗的CPU时间。

    • watsonx_data_presto_task_executor_intermediate_split_cpu_time_count
    • watsonx_data_presto_query_manager_consumed_cpu_time_seconds_five_minute_count
    • watsonx_data_presto_task_executor_leaf_split_cpu_time_p99

查询延迟健康状况

专注于查询的执行阶段,识别延迟来源并评估查询复杂度的影响。

Presto ( Java )引擎:

  • 延迟(毫秒)- 测量跨不同阶段的执行时间。

    • watsonx_data_presto_query_manager_execution_time_five_minutes_p99
    • watsonx_data_presto_task_executor_split_wall_time_one_minute_max
    • watsonx_data_presto_task_executor_split_wall_time_fifteen_minutes_max
    • watsonx_data_presto_task_executor_split_wall_time_all_time_p99
    • watsonx_data_presto_task_executor_leaf_split_wall_time_p99
  • 请求量- 追踪任务、拆分和调度活动。

    • watsonx_data_presto_task_executor_split_queued_time_five_minutes_count
    • watsonx_data_presto_split_scheduler_stats_get_split_time_five_minutes_p99
    • watsonx_data_presto_task_executor_split_wall_time_five_minutes_count

日志与错误健康状态

监控查询执行管道中的错误和故障,突出显示系统稳定性及故障模式。

Presto ( Java )引擎:

  • 查询失败率- 追踪执行失败和瓶颈。

    • watsonx_data_presto_query_manager_failed_queries_five_minute_count
    • watsonx_data_presto_query_manager_internal_failures_five_minute_count
    • watsonx_data_presto_query_manager_user_error_failures_five_minute_count
    • watsonx_data_presto_task_executor_split_skipped_due_to_memory_pressure_five_minute_count
  • 受影响的服务/组件 - HiveS3 / FileSystem- 标识故障 Presto 组件。

    • watsonx_data_presto_hive_s3_presto_s3_file_system_failed_uploads_total_count
    • watsonx_data_presto_hive_s3_presto_s3_file_system_aws_retry_count_fifteen_minute_count
    • watsonx_data_presto_hive_s3_presto_s3_file_system_get_metadata_errors_total_count
    • watsonx_data_presto_hive_s3_presto_s3_file_system_socket_timeout_exceptions_total_count
  • 受影响的服务/组件 - 任务执行器- 识别故障 Presto 组件。

    • watsonx_data_presto_task_executor_split_wall_time_all_time_max_error
    • watsonx_data_presto_task_executor_blocked_quanta_wall_time_all_time_max_error
    • watsonx_data_presto_task_executor_leaf_split_cpu_time_max_error
    • watsonx_data_presto_task_executor_intermediate_split_wall_time_max_error
    • watsonx_data_presto_task_executor_unblocked_quanta_wall_time_one_minute_max_error
    • watsonx_data_presto_task_executor_split_queued_time_one_minute_max_error
    • watsonx_data_presto_hive_s3_presto_s3_file_system_failed_uploads_total_count
    • watsonx_data_presto_hive_s3_presto_s3_file_system_aws_retry_count_fifteen_minute_count
    • watsonx_data_presto_hive_s3_presto_s3_file_system_get_metadata_errors_total_count
    • watsonx_data_presto_hive_s3_presto_s3_file_system_socket_timeout_exceptions_total_count
  • 严重性级别- 根据影响严重程度对指标进行分类。

    • 严重(危重)

      • watsonx_data_presto_query_manager_internal_failures_five_minute_count
      • watsonx_data_presto_task_executor_split_wall_time_all_time_max_error
      • watsonx_data_presto_task_executor_blocked_quanta_wall_time_all_time_max_error
      • watsonx_data_presto_hive_s3_presto_s3_file_system_failed_uploads_total_count
      • watsonx_data_presto_cache_stats_quota_exceeded
    • 中等(警告)

      • watsonx_data_presto_query_manager_user_error_failures_five_minute_count
      • watsonx_data_presto_hive_s3_presto_s3_file_system_aws_retry_count_fifteen_minute_rate
      • watsonx_data_presto_hive_s3_presto_s3_file_system_get_object_errors_fifteen_minute_rate
      • watsonx_data_presto_hive_s3_presto_s3_file_system_read_retries_fifteen_minute_rate
    • 低(信息)

      • watsonx_data_presto_hive_s3_presto_s3_file_system_get_metadata_retries_five_minute_count
      • watsonx_data_presto_task_executor_split_skipped_due_to_memory_pressure_total_count
      • watsonx_data_presto_task_executor_processor_executor_shutdown

异常与趋势洞察

突出显示查询行为中的意外模式或偏差,有助于检测性能下降或提升的情况。

Presto ( Java )引擎:

  • 延迟漂移- 追踪不断变化的查询延迟。

    • watsonx_data_presto_task_executor_split_wall_time_fifteen_minutes_avg
    • watsonx_data_presto_task_executor_leaf_split_wait_time_avg
    • watsonx_data_presto_task_executor_intermediate_split_wall_time_avg
  • 错误率与基准值对比- 将近期执行指标与历史基准值进行比较。

    • watsonx_data_presto_task_executor_split_wall_time_fifteen_minutes_avg
    • watsonx_data_presto_task_executor_leaf_split_wait_time_avg
    • watsonx_data_presto_task_executor_intermediate_split_wall_time_avg
  • 吞吐量下降检测器- 检测数据处理速率的下降。

    • watsonx_data_presto_task_executor_global_scheduled_time_micros_five_minute_rate
    • watsonx_data_presto_hive_s3_presto_s3_file_system_successful_uploads_five_minute_rate
  • 查询时长- 测量每个任务或分区的平均执行时间。

    • watsonx_data_presto_task_executor_leaf_split_cpu_time_avg
    • watsonx_data_presto_task_executor_intermediate_split_cpu_time_avg
  • 内存趋势- 追踪内存使用情况及潜在泄漏。

    • jvm_memory_bytes_used
    • watsonx_data_presto_memory_heap_memory_usage_used_bytes
  • 工作负载趋势比较- 比较不同时间窗口内的资源使用情况。

    • watsonx_data_presto_task_executor_global_cpu_time_micros_total_count
    • watsonx_data_presto_cluster_memory_manager_cluster_total_memory_reservation
    • watsonx_data_presto_task_executor_blocked_quanta_wall_time_fifteen_minutes_avg