|
Impala
Impalaistheopensource,nativeanalyticdatabaseforApacheHadoop.
|
#include <vector>#include <string>#include <boost/scoped_ptr.hpp>#include <boost/accumulators/accumulators.hpp>#include <boost/accumulators/statistics/stats.hpp>#include <boost/accumulators/statistics/min.hpp>#include <boost/accumulators/statistics/mean.hpp>#include <boost/accumulators/statistics/median.hpp>#include <boost/accumulators/statistics/max.hpp>#include <boost/accumulators/statistics/variance.hpp>#include <boost/unordered_map.hpp>#include <boost/unordered_set.hpp>#include <boost/thread/thread.hpp>#include <boost/thread/mutex.hpp>#include <boost/thread/condition_variable.hpp>#include "common/status.h"#include "common/global-types.h"#include "util/progress-updater.h"#include "util/runtime-profile.h"#include "runtime/runtime-state.h"#include "statestore/simple-scheduler.h"#include "gen-cpp/Types_types.h"#include "gen-cpp/Frontend_types.h"Go to the source code of this file.
Classes | |
| struct | impala::FragmentInstanceCounters |
| Struct for per fragment instance counters that will be aggregated by the coordinator. More... | |
| struct | impala::PerFragmentProfileData |
| Per fragment profile information. More... | |
Namespaces | |
| impala | |
| This file contains type definitions that are used throughout the code base. | |
Typedefs | |
| typedef boost::accumulators::accumulator_set < int64_t, boost::accumulators::features < boost::accumulators::tag::min, boost::accumulators::tag::max, boost::accumulators::tag::mean, boost::accumulators::tag::variance > > | impala::SummaryStats |
| typedef std::map< PlanNodeId, RuntimeProfile::Counter * > | impala::CounterMap |
| map from id of a scan node to a specific counter in the node's profile More... | |
| typedef boost::unordered_map < TUniqueId, BackendExecState * > | impala::BackendExecStateMap |
| typedef boost::unordered_map < std::string, std::pair< bool, short > > | impala::PermissionCache |
Functions | |
| impala::~Coordinator () | |
| Status | impala::Exec (QuerySchedule &schedule, std::vector< ExprContext * > *output_expr_ctxs) |
| Status | impala::Wait () |
| Status | impala::GetNext (RowBatch **batch, RuntimeState *state) |
| void | impala::Cancel (const Status *cause=NULL) |
| Status | impala::UpdateFragmentExecStatus (const TReportExecStatusParams ¶ms) |
| RuntimeState * | impala::runtime_state () |
| only valid after calling Exec(), and may return NULL if there is no executor More... | |
| const RowDescriptor & | impala::row_desc () const |
| MemTracker * | impala::query_mem_tracker () |
| RuntimeProfile * | impala::query_profile () const |
| const TUniqueId & | impala::query_id () const |
| const PartitionStatusMap & | impala::per_partition_status () |
| This is safe to call only after Wait() More... | |
| bool | impala::PrepareCatalogUpdate (TUpdateCatalogRequest *catalog_update) |
| std::string | impala::GetErrorLog () |
| const ProgressUpdater & | impala::progress () |
| Status | impala::GetStatus () |
| Returns query_status_. More... | |
| const TExecSummary & | impala::exec_summary () const |
| SpinLock & | impala::GetExecSummaryLock () const |
| ObjectPool * | impala::obj_pool () |
| Returns a local object pool. More... | |
| void | impala::SetExecPlanFragmentParams (QuerySchedule &schedule, int backend_num, const TPlanFragment &fragment, int fragment_idx, const FragmentExecParams ¶ms, int instance_idx, const TNetworkAddress &coord, TExecPlanFragmentParams *rpc_params) |
| Fill in rpc_params based on parameters. More... | |
| Status | impala::ExecRemoteFragment (void *exec_state) |
| int | impala::GetFragmentNum (const TUniqueId &fragment_id) |
| Determine fragment number, given fragment id. More... | |
| void | impala::PrintBackendInfo () |
| void | impala::CreateAggregateCounters (const std::vector< TPlanFragment > &fragments) |
| Create aggregate counters for all scan nodes in any of the fragments. More... | |
| void | impala::CollectScanNodeCounters (RuntimeProfile *, FragmentInstanceCounters *result) |
| int64_t | impala::ComputeTotalThroughput (int node_id) |
| int64_t | impala::ComputeTotalScanRangesComplete (int node_id) |
| void | impala::CancelInternal () |
| Runs cancel logic. Assumes that lock_ is held. More... | |
| void | impala::CancelRemoteFragments () |
| Status | impala::UpdateStatus (const Status &status, const TUniqueId *failed_fragment) |
| Status | impala::WaitForAllBackends () |
| Status | impala::FinalizeQuery () |
| Status | impala::FinalizeSuccessfulInsert () |
| Moves all temporary staging files to their final destinations. More... | |
| void | impala::InitExecProfile (const TQueryExecRequest &request) |
| void | impala::UpdateAverageProfile (BackendExecState *backend_exec_state) |
| void | impala::ComputeFragmentSummaryStats (BackendExecState *backend_exec_state) |
| void | impala::ReportQuerySummary () |
| void | impala::UpdateExecSummary (int fragment_idx, int instance_idx, RuntimeProfile *profile) |
| void | impala::PopulatePathPermissionCache (hdfsFS fs, const std::string &path_str, PermissionCache *permissions_cache) |
Variables | |
| client | impala::__pad0__ |
| client RuntimeProfile::EventSequence * | impala::events |
| ExecEnv * | impala::exec_env_ |
| TUniqueId | impala::query_id_ |
| TDescriptorTable | impala::desc_tbl_ |
| copied from TQueryExecRequest; constant across all fragments More... | |
| TQueryCtx | impala::query_ctx_ |
| TStmtType::type | impala::stmt_type_ |
| copied from TQueryExecRequest, governs when to call ReportQuerySummary More... | |
| std::vector< BackendExecState * > | impala::backend_exec_states_ |
| BackendExecStates owned by obj_pool() More... | |
| bool | impala::needs_finalization_ |
| True if the query needs a post-execution step to tidy up. More... | |
| TFinalizeParams | impala::finalize_params_ |
| Only valid if needs_finalization is true. More... | |
| boost::mutex | impala::wait_lock_ |
| ensures single-threaded execution of Wait(); must not hold lock_ when acquiring this More... | |
| bool | impala::has_called_wait_ |
| ProgressUpdater | impala::progress_ |
| Keeps track of number of completed ranges and total scan ranges. More... | |
| boost::mutex | impala::lock_ |
| protects all fields below More... | |
| Status | impala::query_status_ |
| bool | impala::returned_all_results_ |
| boost::shared_ptr< MemTracker > | impala::query_mem_tracker_ |
| const RowDescriptor * | impala::row_desc_ |
| owned by plan root, which resides in runtime_state_'s pool More... | |
| BackendExecStateMap | impala::backend_exec_state_map_ |
| bool | impala::execution_completed_ |
| True if execution has completed, false otherwise. More... | |
| int | impala::num_remote_fragements_complete_ |
| Number of remote fragments that have completed. More... | |
| boost::condition_variable | impala::backend_completion_cv_ |
| int | impala::num_remaining_backends_ |
| PartitionStatusMap | impala::per_partition_status_ |
| FileMoveMap | impala::files_to_move_ |
| boost::scoped_ptr< ObjectPool > | impala::obj_pool_ |
| Object pool owned by the coordinator. Any executor will have its own pool. More... | |
| SpinLock | impala::exec_summary_lock_ |
| Execution summary for this query. More... | |
| TExecSummary | impala::exec_summary_ |
| boost::unordered_map < TPlanNodeId, int > | impala::plan_node_id_to_summary_map_ |
| A mapping of plan node ids to index into exec_summary_.nodes. More... | |
| boost::scoped_ptr< RuntimeProfile > | impala::query_profile_ |
| Aggregate counters for the entire query. More... | |
| RuntimeProfile::EventSequence * | impala::query_events_ |
| Event timeline for this query. Unowned. More... | |
| std::vector < PerFragmentProfileData > | impala::fragment_profiles_ |
| FragmentInstanceCounters | impala::coordinator_counters_ |
| Throughput counters for the coordinator fragment. More... | |
| boost::unordered_set < TNetworkAddress > | impala::unique_hosts_ |
| The set of hosts that the query will run on. Populated in Exec. More... | |
| RuntimeProfile::Counter * | impala::finalization_timer_ |
| Total time spent in finalization (typically 0 except for INSERT into hdfs tables) More... | |