-
手动业务流程创建
业务流程是周期示例,手动业务流程是手动实例,数据清洗用手动业务流程。
编辑Pyodps节点
- 执行sql并读取:
sql = 'SELECT * FROM data_product WHERE source="_leycloud" and trim(title)!="" and attrs LIKE "%面料%" and attrs LIKE "%风格%"'
with odps.execute_sql(sql).open_reader() as reader:
- 打开要写入的表逐行读取
with t.open_writer() as writer:
count = reader.count
for i in range(count//10000):
#print(i)
for product in reader[10000*i:10000*(i+1)]:
wirte_table(product,writer,category_dic,attrs_name)
- 数据处理后以列表的方式写入表
r= record.Record(schema=xj_t.schema,values =values)
writer.write(r)
提交节点并运行
简单模式任务发布
简单模式项目没有任务发布的概念,如果您想要实现简单项目内的开发、生产环境隔离,仅能通过把任务克隆至用于生产的项目并执行提交来实现,即:简单模式项目(用于开发)+简单模式项目(用于生产)。
如下图所示,用户创建的两个简单模式项目分别用于开发、生产,可以先使用 跨项目克隆将A项目中的任务克隆至B项目,再将克隆过来的任务在B项目中提交至调度引擎进行调度。
-
在odpsdataframe上采样数据分析
df_tops = t_tops.to_df()
#df_tops.groupby(df_tops.style).agg(count = df_tops.count())
sample = df_tops.sample(parts=10000)
sample.count()
sample
-
jupyter启用日志和交互增强
pip install aliyun-log-python-sdk>=0.6.43 pandas odps ipywidgets -U
1. jupyter --path
进入data的第一个目录(或者第二个也可以),
例如C:\Users\Administrator\AppData\Roaming\jupyter
在里面构建一个子目录(如果没有的话):nbextensions
2. python -c "import odps;print(odps);"
根据输出找到odps模块所在目录,进入子目录static > ui ,例如:C:\ProgramData\Anaconda3\Lib\site-packages\odps\static\ui
3. 复制#2中的target目录到#1中,并修改target目录为pyodps
例如: C:\ProgramData\Anaconda3\Lib\site-packages\odps\static\ui\target ==> C:\Users\Administrator\AppData\Roaming\jupyter\nbextensions\pyodps
4. 启动Jupyter前验证下
jupyter nbextension enable --py --sys-prefix widgetsnbextension
jupyter nbextension enable pyodps/main