笔记本执行 Ruby 示例
注意
EMR Notebooks 在新控制台中作为 Amazon EMR Studio Workspaces 提供。您仍然可以在旧控制台中使用现有笔记本,但无法在其中创建新笔记本。新控制台中的创建 Workspace 按钮将取代此功能。要访问或创建 Workspaces,EMR Notebooks 用户需要额外的 IAM 角色权限。有关更多信息,请参阅 Amazon EMR Notebooks are Amazon EMR Studio Workspaces in new console(Amazon EMR Notebooks 在新控制台中为 Amazon EMR Studio Workspaces)和 What's new in the console?(控制台中有哪些新功能?)
以下是演示使用笔记本执行 API 的 Ruby 代码示例。
# prepare an Amazon EMR client emr = Aws::EMR::Client.new( region: 'us-east-1', access_key_id: 'AKIA...JKPKA', secret_access_key: 'rLMeu...vU0OLrAC1', )
启动笔记本执行并获取执行 ID
在此示例中,Amazon S3 编辑器和 EMR 笔记本是 s3://mybucket/notebooks/e-EA8VGAA429FEQTC8HC9ZHWISK/test.ipynb
。
有关 Amazon EMR API NotebookExecution
操作的更多信息,请参阅 Amazon EMR API actions。
start_response = emr.start_notebook_execution({ editor_id: "e-EA8VGAA429FEQTC8HC9ZHWISK", relative_path: "test.ipynb", execution_engine: {id: "j-3U82I95AMALGE"}, service_role: "EMR_Notebooks_DefaultRole", }) notebook_execution_id = start_resp.notebook_execution_id
描述笔记本执行并打印详细信息
describe_resp = emr.describe_notebook_execution({ notebook_execution_id: notebook_execution_id }) puts describe_resp.notebook_execution
上述命令的输出如下。
{ :notebook_execution_id=>"ex-IZX3VTVZWVWPP27KUB90BZ7V9IEDG", :editor_id=>"e-EA8VGAA429FEQTC8HC9ZHWISK", :execution_engine=>{:id=>"j-3U82I95AMALGE", :type=>"EMR", :master_instance_security_group_id=>nil}, :notebook_execution_name=>"", :notebook_params=>nil, :status=>"STARTING", :start_time=>2020-07-23 15:07:07 -0700, :end_time=>nil, :arn=>"arn:aws:elasticmapreduce:us-east-1:123456789012:notebook-execution/ex-IZX3VTVZWVWPP27KUB90BZ7V9IEDG", :output_notebook_uri=>nil, :last_state_change_reason=>"Execution is starting for cluster j-3U82I95AMALGE.", :notebook_instance_security_group_id=>nil, :tags=>[] }
笔记本筛选条件
"EditorId": "e-XXXX", [Optional] "From" : "1593400000.000", [Optional] "To" :
停止笔记本执行
stop_resp = emr.stop_notebook_execution({ notebook_execution_id: notebook_execution_id })