def execution_data_task_id(ds, **kwargs): v_date = kwargs.get('v_execution_date') v_day = kwargs.get('v_execution_day') v_hour = kwargs.get('v_execution_hour') hive_hook = HiveCliHook() """ #功能函数 alter语句: alter_partition 删除分区: delete_partition 生产success: touchz_success #参数 第一个参数true: 所有国家是否上线。false 没有 第二个参数true: 数据目录是有country_code分区。false 没有 第三个参数true: 数据有才生成_SUCCESS false 数据没有也生成_SUCCESS #读取sql %_sql(ds,v_hour) 第一个参数ds: 天级任务 第二个参数v_hour: 小时级任务,需要使用 """ cf = CountriesPublicFrame("false", ds, db_name, table_name, hdfs_path, "true", "true") v_info = [{ "table": "oride_db.oride_data.data_user_estimate_records", "start_timeThour": "{v_day}T00".format(v_day=v_day), "end_dateThour": "{v_day}T23".format(v_day=v_day), "depend_dir": "oss://opay-datalake/oride_binlog" }] hcm = TaskHourSuccessCountMonitor(ds, v_info) hcm.HourSuccessCountMonitor() # 删除分区 # cf.delete_partition() # 读取sql _sql = "\n" + cf.alter_partition( ) + "\n" + dwd_oride_passenger_estimate_records_di_sql_task(ds) logging.info('Executing: %s', _sql) # 执行Hive hive_hook.run_cli(_sql) # 熔断数据,如果数据不能为0 # check_key_data_cnt_task(ds) # 生产success cf.touchz_success()
def execution_data_task_id(ds, **kwargs): v_date = kwargs.get('v_execution_date') v_day = kwargs.get('v_execution_day') v_hour = kwargs.get('v_execution_hour') hive_hook = HiveCliHook() """ #功能函数 alter语句: alter_partition 删除分区: delete_partition 生产success: touchz_success #参数 第一个参数true: 数据目录是有country_code分区。false 没有 第二个参数true: 数据有才生成_SUCCESS false 数据没有也生成_SUCCESS #读取sql %_sql_task(ds,v_hour) 第一个参数ds: 天级任务 第二个参数v_hour: 小时级任务,需要使用 """ if datetime.strptime(ds, '%Y-%m-%d').weekday() == 6: cf = CountriesPublicFrame("false", ds, db_name, table_name, hdfs_path, "true", "false") else: cf = CountriesPublicFrame("false", ds, db_name, table_name, hdfs_path, "true", "true") # 删除分区 # cf.delete_partition() # 拼接SQL _sql = "\n" + cf.alter_partition( ) + "\n" + app_ocredit_phones_order_base_cube_w_sql_task(ds) logging.info('Executing: %s', _sql) # 执行Hive hive_hook.run_cli(_sql) # 熔断数据,如果数据不能为0 # check_key_data_cnt_task(ds) # 熔断数据 # check_key_data_task(ds) # 生产success cf.touchz_success()
def execution_data_task_id(ds, **kwargs): v_date = kwargs.get('v_execution_date') v_day = kwargs.get('v_execution_day') v_hour = kwargs.get('v_execution_hour') hive_hook = HiveCliHook() """ #功能函数 alter语句: alter_partition 删除分区: delete_partition 生产success: touchz_success #参数 第一个参数true: 数据目录是有country_code分区。false 没有 第二个参数true: 数据有才生成_SUCCESS false 数据没有也生成_SUCCESS #读取sql %_sql_task(ds,v_hour) 第一个参数ds: 天级任务 第二个参数v_hour: 小时级任务,需要使用 """ cf = CountriesPublicFrame("false", ds, db_name, table_name, hdfs_path, "true", "true") #删除分区 #cf.delete_partition() #拼接SQL _sql = "\n" + cf.alter_partition( ) + "\n" + dwd_oride_strategy_data_invite_df_sql_task(ds) logging.info('Executing: %s', _sql) #执行Hive hive_hook.run_cli(_sql) #熔断数据,如果数据不能为0 #check_key_data_cnt_task(ds) #熔断数据 #check_key_data_task(ds) #生产success cf.touchz_success()
def execution_data_task_id(ds, **kwargs): v_date = kwargs.get('v_execution_date') v_day = kwargs.get('v_execution_day') v_hour = kwargs.get('v_execution_hour') hive_hook = HiveCliHook() """ #功能函数 alter语句: alter_partition 删除分区: delete_partition 生产success: touchz_success #参数 第一个参数true: 所有国家是否上线。false 没有 第二个参数true: 数据目录是有country_code分区。false 没有 第三个参数true: 数据有才生成_SUCCESS false 数据没有也生成_SUCCESS #读取sql %_sql(ds,v_hour) 第一个参数ds: 天级任务 第二个参数v_hour: 小时级任务,需要使用 """ cf = CountriesPublicFrame("false", ds, db_name, table_name, hdfs_path, "false", "true") # 删除分区 cf.delete_partition() # 读取sql _sql = "\n" + cf.alter_partition( ) + "\n" + app_oride_client_advertising_d_sql_task(ds) logging.info('Executing: %s', _sql) # 执行Hive hive_hook.run_cli(_sql) # 生产success cf.touchz_success()