首页 文章 精选 留言 我的

精选列表

搜索[linux],共10000篇文章
优秀的个人博客,低调大师

转载:linux下大数据人工智能自动化脚本定时任务模板

转自: https://mp.weixin.qq.com/s/mXXJmDqtv7PyqglN9ekvNQ 本文针对有初级sql及python人工智能开发基础,需要执行定时任务的初学人员。 假设在工作中,要执行一个任务,大致要求如下: 一、每月执行一次定时任务; 二、用hive处理数据,并下载; 三、用python读取数据,送入机器学习算法训练,预测结果,保存结果; 四、读取预测结果,上传到数据库指定位置,并按月分区 (一)、关于定时任务crontab,命令网上可以搜到很多用法。在这里有一个坑需要注意,就是直接执行shell脚本时用到的python环境路径,可能与定时任务的python路径不同,导致执行脚本时报错,找不到模块。这里有一个小方法,写一个python程序test.py。 import sys print(sys.path) python test.py与crontab -e各执行一次,就可以看到两次路径是否相同了。还有一点,就是关于注册信息的问题, kinit -kt /home/accunt/cluster_keytab/accunt.keytab accunt中的accunt是你自己的账户,没有这句话,程序也会报错。所以建议专门写一个定时任务,每隔几个小时执行一次该命令。 (二)、程序中经常会涉及到变量,比较常见的是时间变量,这样才能做到自动化,train_month_t=$(date +%Y%m -d '-1 month')这句话意思是,获取执行程序时的月份的前一个月,‘$’是定义一个变量,用$train_month_t传入sql语句中。exportHIVE_SKIP_SPARK_ASSEMBLY=true;这句话的作用是在下载数据时,保证数据能够下载齐全。 (三)、为了降低shell脚本的篇幅,可以将python部分以子文件形式执行。这里为了防止在定时任务时,python路径不统一,使用python的环境路径执行程序。通过sys.argv[1]将参数$py_month传进去。这里的月份形式是'201808',传进去是字符串格式。 (四)、在数据库里建表,并将通过人工智能预测好的数据,上传到指定分区。 下面是模板内容: #!/bin/bash kinit -kt /home/accunt/cluster_keytab/accunt.keytab accunt echo"***************************" train_month_t=$(date +%Y%m -d '-1 month') echo$train_month_t echo"*************start*************" sql_train=" create table if not exists test.t_test (a string, b string) row format delimited fields terminated by '\t' lines terminated by '\n' stored as textfile; set hive.exec.dynamic.partition.mode=nonstrict; insert overwrite table test.t_test select a,b from product.t_test where day=concat('$train_month_t','01'); " echo$sql_train>./train.sql kinit -kt /home/accunt/cluster_keytab/accunt.keytab accunt hive -f ./train.sql exportHIVE_SKIP_SPARK_ASSEMBLY=true; hive -e"set hive.cli.print.header=true; select distinct a,b from test.t_test;">./train.csv echo"*************train sql successful************" kinit -kt /home/accunt/cluster_keytab/accunt.keytab accunt ./python ./train_pred.py$py_month echo"*************py successful************" load_sql=" create table if not exists test.result (a string, b string) partitioned by (month string) row format delimited fields terminated by '\t' lines terminated by '\n' stored as textfile tblproperties('skip.header.line.count'='1'); LOAD DATA LOCAL INPATH './preds_$load_month.csv' into table test.result PARTITION (month='$load_month'); " echo$load_sql>./load.sql kinit -kt /home/accunt/cluster_keytab/accunt.keytab accunt hive -f ./load.sql echo"*************load_sql successful************" echo"*************successful************" 至此,一个简单的大数据人工智能预测分析脚本模板完成了,希望能有所帮助,并指出不足之处,共同进步! 转自: https://mp.weixin.qq.com/s/mXXJmDqtv7PyqglN9ekvNQ

优秀的个人博客,低调大师

使用Wisdom RESTClient如何在Linux和Mac上获取测试报告和API文档?

使用Wisdom RESTClient自动化测试REST API,生成REST API文档, 需要先执行命令java -jar restclient-1.2.jar启动Wisdom RESTClient界面。 先使用工具测试REST API,产生历史记录。 选择菜单选项Apidoc --> Create生成API文档:work/apidoc/apidoc.html 选择菜单选项Test --> Start Test生成测试报告:work/report/report.html 用浏览器手动打开这些HTML文件。

优秀的个人博客,低调大师

马哥2016全新Linux+Python高端运维班第四周作业

1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 2、编辑/etc/group文件,添加组hadoop。 #echo"hadoop:x:1003:">>/etc/group 3、手动编辑/etc/passwd文件新增一行,添加用户hadoop,其基本组ID为hadoop组的id号;其家目录为/home/hadoop。 #echo"hadoop:x:1003:1003:hadoop:/home/hadoop:/bin/bash">>/etc/passwd 4、复制/etc/skel目录为/home/hadoop,要求修改hadoop目录的属组和其它用户没有任何访问权限。 5、修改/home/hadoop目录及其内部所有文件的属主为hadoop,属组为hadoop。 6、显示/proc/meminfo文件中以大写或小写S开头的行;用两种方式; #grep-i‘^s‘/proc/meminfo #grep‘^[Ss]‘/proc/meminfo 7、显示/etc/passw d文件中其默认shell为非/sbin/nologin的用户; 8、显示/etc/passwd文件中其默认shell为/bin/bash的用户; # grep ‘/bin/bash‘ /etc/passwd | cut -d: -f1 9、找出/etc/passwd文件中的一位数或两位数; # grep -o ‘\b[0-9]\{1,2\}\b‘ /etc/passwd 10、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; #egrep‘^[[:space:]]+‘/boot/grub/grub.conf 11、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行; #egrep‘^#[[:space:]]+[^[:space:]]+‘/etc/rc.d/rc.sysinit 12、打出netstat -tan命令执行结果中以‘LISTEN’,后或跟空白字符结尾的行; #netstat-tan|egrep‘LISTEN[[:space:]]*$‘ 13、添加用户bash, testbash, basher, nologin (此用户的shell为/sbin/nologin),而后找出当前系统上其用户名和默认shell相同的用户的信息; # useradd bash && useradd testbash && useradd basher && useradd -s /sbin/nologin nologin awk -F‘[:/]‘ ‘$1==$NF{print $0}‘ /etc/passwd 本文转自xinrenbaodao 51CTO博客,原文链接http://blog.51cto.com/11832904/1844068:,如需转载请自行联系原作者

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册