def execute(self, request, batch=False): from notebook.api import _execute_notebook # Cyclic dependency notebook_data = self.get_data() snippet = notebook_data['snippets'][0] snippet['wasBatchExecuted'] = batch return _execute_notebook(request, notebook_data, snippet)
def execute(self, request, batch=False): from notebook.api import _execute_notebook # Cyclic dependency notebook_data = self.get_data() #snippet = {'wasBatchExecuted': batch, 'type': 'oozie', 'id': notebook_data['snippets'][0]['id'], 'statement': ''} snippet = notebook_data['snippets'][0] snippet['wasBatchExecuted'] = batch return _execute_notebook(request, notebook_data, snippet)
def _query_result(request, notebook, max_rows): snippet = notebook['snippets'][0] snippet['statement'] = notebook['snippets'][0]['statement_raw'] query_execute = _execute_notebook(request, notebook, snippet) history_uuid = query_execute['history_uuid'] status = _check_status(request, operation_id=history_uuid) if status['query_status']['status'] == 'available': res = _fetch_result_data(request, operation_id=history_uuid, rows=max_rows) return res['result'] return None
def query_result(request, notebook): snippet = notebook['snippets'][0] snippet['statement'] = notebook['snippets'][0]['statement_raw'] query_execute = _execute_notebook(request, notebook, snippet) history_uuid = query_execute['history_uuid'] status = _check_status(request, operation_id=history_uuid) if status['query_status']['status'] == 'available': response = _fetch_result_data(request, operation_id=history_uuid) return response['result'] return 'Query result has expired or could not be found'
def run_morphline(self, request, collection_name, morphline, input_path): workspace_path = self._upload_workspace(morphline) # snippets = [ # { # u'type': u'java', # u'files': [ # {u'path': u'%s/log4j.properties' % workspace_path, u'type': u'file'}, # {u'path': u'%s/morphline.conf' % workspace_path, u'type': u'file'} # ], # u'class': u'org.apache.solr.hadoop.MapReduceIndexerTool', # u'app_jar': CONFIG_INDEXER_LIBS_PATH.get(), # u'arguments': [ # u'--morphline-file', # u'morphline.conf', # u'--output-dir', # u'${nameNode}/user/%s/indexer' % self.username, # u'--log4j', # u'log4j.properties', # u'--go-live', # u'--zk-host', # zkensemble(), # u'--collection', # collection_name, # input_path, # ], # u'archives': [], # } # ] # # # managed notebook # notebook = make_notebook2(name='Indexer job for %s' % collection_name, snippets=snippets).get_data() # notebook_doc, created = _save_notebook(notebook, self.user) # # snippet = {'wasBatchExecuted': True} snippet_properties = { u'files': [ {u'path': u'%s/log4j.properties' % workspace_path, u'type': u'file'}, {u'path': u'%s/morphline.conf' % workspace_path, u'type': u'file'} ], u'class': u'org.apache.solr.hadoop.MapReduceIndexerTool', u'app_jar': CONFIG_INDEXER_LIBS_PATH.get(), u'arguments': [ u'--morphline-file', u'morphline.conf', u'--output-dir', u'${nameNode}/user/%s/indexer' % self.username, u'--log4j', u'log4j.properties', u'--go-live', u'--zk-host', zkensemble(), u'--collection', collection_name, input_path, ], u'archives': [], } notebook = make_notebook(name='Indexer', editor_type='java', snippet_properties=snippet_properties, status='running').get_data() notebook_doc, created = _save_notebook(notebook, self.user) snippet = {'wasBatchExecuted': True, 'id': notebook['snippets'][0]['id'], 'statement': ''} job_handle = _execute_notebook(request, notebook, snippet) return job_handle