test

Spark复习 Day03:SparkSQL

你。 提交于 2020-02-10 21:52:28
Spark复习 Day03:SparkSQL 1. 什么是SparkSQL ----------------------------------------------- - SparkSQL是Spark用来处理结构化[表]数据的一个模块。 - 它提供了两个编程抽象:DataFrame和DataSet,底层还是RDD操作 2. DataFrame、DataSet 介绍 ------------------------------------------------ - DataFrame 1. 与RDD类似,DataFrame也是一个分布式数据容器 2. 不同的是,DataFrame更像是传统数据库的二维表格 3. 除了记录了数据以外,还记录了数据的结构信息,即Schema 4. 与Hive一样,DataFrame也支持嵌套数据类型[struct,array,map] 5. DataFrame的API 比 RDD的API更加好用 6. DataFrame是为数据提供了Schema的视图,可以把它当做数据库的一张表来对待 - DataSet 1. Dataset是DataFrameAPI的一个拓展,是Spark最新的数据抽象。DataFrame的升级版 2. 用户友好的API风格,既有类型的安全检查,収DataFrame的查询优化特性 3. DataSet支持编解码器

day87

浪尽此生 提交于 2020-02-10 20:42:45
目录 我的第一个微信小程序 一、小程序开发文档 二、注册登录 三、新建项目 四、导入项目 五、删除项目 六、项目组成 七、工具栏 八、小程序目录 九、全局配置 十、页面配置 十一、页面数据渲染 十二、小程序的双线程模型与生命周期 十三、事件和事件冒泡 我的第一个微信小程序 一、小程序开发文档 搜索进入“微信公众平台”官方网站,在下方的“账号分类”中,查看“小程序”中的“小程序开发文档”,在“工具”中,选择“微信开发者工具”,下载安装包:稳定版 二、注册登录 在“微信公众平台”首页右上方“立即注册”,选择“小程序”,“绑定邮箱(使用没有在微信公众平台绑定过的邮箱)”、“邮箱激活”、“信息登记”。 输入邮箱密码进行登录。 然后在微信上同意即可。微信扫码也可以登录。 三、新建项目 登录成功后,选择小程序,创建项目demo1,自定义目录位置,注册AppID(在已经登录的微信公众平台,小程序信息—>配置服务器—>开发设置—>复制粘贴AppID)。 添加开发者:就是在公司中会用到,添加项目成员的,可以合作开发项目。 选择“不使用云服务”,使用JavaScript语言,新建。 创建成功后,也可以新建项目。 四、导入项目 导入项目(本机下载好的其他人的项目),也可以改项目名称,目录就是本机下载好的项目,AppID是别人的,要改成自己的,这样就是自己的项目了。 五、删除项目 在登录后

tomcat四种部署方式

。_饼干妹妹 提交于 2020-02-10 20:41:28
1. 直接把war包或者文件夹放到webapps目录下 2. 在conf/server.xml配置文件中,host节点下增加如下代码 <Context docBase="E:\test\app2" path="/app2" reloadable="true" /> 其中path为访问路径 3. 在conf/Catalina/localhost目录下添加xml文件 app.xml <Context docBase="E:\test\app2" reloadable="true" /> 注意不需要path,默认路径是xml名称 4. springboot内嵌tomcat,实现ServletContainerInitializer 后续继续学习。。。 来源: CSDN 作者: elapse008 链接: https://blog.csdn.net/elapse008/article/details/104248967

linux上部署java后端程序步骤

风格不统一 提交于 2020-02-10 20:39:13
1.后端打包好的jar程序放到一个文件夹下,例如/data/java。 2.在/etc/systemd/system 新建test.service文件,内容如下 [Unit] Description=Langes Intelligent Control System [Service] User=root WorkingDirectory=/data/test ExecStart=/usr/bin/java -jar test.jar --logging.path=/opt/tcs/test --server.port=9090 SuccessExitStatus=143 TimeoutStopSec=10 Restart=on-failure RestartSec=5 [Install] WantedBy=multi-user.target 3.在/opt/tcs文件夹下,新建test文件夹 来源: CSDN 作者: muguo321 链接: https://blog.csdn.net/weixin_41043580/article/details/104226847

python3 子包间/跨目录 调用

こ雲淡風輕ζ 提交于 2020-02-10 20:13:11
1. python3中的模块和包 简单来讲,模块是一个包含Python定义和语句的文件,包是一种通过用“带点号的模块名”来构造 Python 模块命名空间的方法。 详细可以参考廖雪峰的: python教程-模块 本文以以下的项目结构,对python3的子包之间的调用进行探索: 使用的python版本:3.7.0 平台:win10 2. python的模块搜索路径 当一个名为 spam 的模块被导入的时候,解释器首先寻找具有该名称的内置模块。如果没有找到,然后解释器从 sys.path 变量给出的目录列表里寻找名为 spam.py 的文件。sys.path 初始有这些目录地址: 包含输入脚本的目录(或者未指定文件时的当前目录); PYTHONPATH (一个包含目录名称的列表,它和shell变量 PATH 有一样的语法); 取决于安装的默认设置; 3. 调用子包与调用兄弟包 假如在main.py中调用pack.mod1.py中的函数func1,而func1又调用pack2.mod2.py中的func2函数,各个文件中的代码如下: main.py: import sys print("file:{},sys.path:{}".format(__file__, sys.path)) from pack1 import mod1 if __name__ == "__main__":

Shell case esac语句

ぐ巨炮叔叔 提交于 2020-02-10 17:51:55
case ... esac 与其他语言中的 switch ... case 语句类似,是一种多分枝选择结构。 case 语句匹配一个值或一个模式,如果匹配成功,执行相匹配的命令。case语句格式如下: case 值 in 模式1) command1 command2 command3 ;; 模式2) command1 command2 command3 ;; *) command1 command2 command3 ;; esac case工作方式如上所示。取值后面必须为关键字 in,每一模式必须以右括号结束。取值可以为变量或常数。匹配发现取值符合某一模式后,其间所有命令开始执行直至 ;;。;; 与其他语言中的 break 类似,意思是跳到整个 case 语句的最后。 取值将检测匹配的每一个模式。一旦模式匹配,则执行完匹配模式相应命令后不再继续其他模式。如果无一匹配模式,使用星号 * 捕获该值,再执行后面的命令。 下面的脚本提示输入1到4,与每一种模式进行匹配: echo 'Input a number between 1 to 4' echo 'Your number is:\c' read aNum case $aNum in 1) echo 'You select 1' ;; 2) echo 'You select 2' ;; 3) echo 'You select 3'

《codeforces刷题实录——1296A.Array with Odd Sum》

我只是一个虾纸丫 提交于 2020-02-10 16:35:33
codeforces刷题实录 1296A.Array with Odd Sum 奇数和数组 原题 time limit per test :1 second,1秒。 memory limit per test :256 megabytes,256兆字节。 input :inputstandard,标准输入。 output :outputstandard,标准输出。 You are given an array a consisting of n integers. 给你一个由 n个整数 组成的 数组a 。 In one move, you can choose two indices 1 ≤ \leq ≤ i,j ≤ \leq ≤ n such that i ≠ \neq  ​ = j and set a i a_i a i ​ := a j a_j a j ​ . You can perform such moves any number of times (possibly, zero). You can choose different indices in different operations. 在一次移动中, 你可以选择两个索引 1 ≤ \leq ≤ i,j ≤ \leq ≤ n,使i ≠ \neq  ​ = j, 并设置 a i a_i a i ​ := a j

D. Same GCDs----------------------------思维+结论(重要)

血红的双手。 提交于 2020-02-10 16:33:45
You are given two integers a and m. Calculate the number of integers x such that 0≤x<m and gcd(a,m)=gcd(a+x,m). Note: gcd(a,b) is the greatest common divisor of a and b. Input The first line contains the single integer T (1≤T≤50) — the number of test cases. Next T lines contain test cases — one per line. Each line contains two integers a and m (1≤a<m≤1010). Output Print T integers — one per test case. For each test case print the number of appropriate x-s. Example inputCopy 3 4 9 5 10 42 9999999967 outputCopy 6 1 9999999966 Note In the first test case appropriate x-s are [0,1,3,4,6,7]. In the

运维grep语法

心不动则不痛 提交于 2020-02-10 15:53:01
grep的语法和用法 grep命令的格式: grep [options] PATTERN [FILE] 其中: 1,pattern是用正则表达式书写的模式。 2,FILE是要查找的文件,可以是用空格间隔的多个文件,省略FILE时表示在标准输入中查找 常用参数: -E :采用规则表示式去解释样式。 -c:只显示匹配行的次数。 -i:搜索时不区分大小写。 -n:输出匹配行的行号。 -v:输出不匹配的行(反向选择)。 -?:同时显示匹配行上下的?行,如:grep -2 pattern filename同时显示匹配行的上下2行。 -c,--count:只打印匹配的行数,不显示匹配的内容。 -f File,--file=File:从文件中提取模板。空文件中包含0个模板,所以什么都不匹配。 -i,--ignore-case:忽略大小写差别。 -q,--quiet:取消显示,只返回退出状态。0则表示找到了匹配的行。 -l,--files-with-matches:打印匹配模板的文件清单。 -L,--files-without-match:打印不匹配模板的文件清单。 -n,--line-number:在匹配的行前面打印行号。 -s,--silent:不显示关于不存在或者无法读取文件的错误信息。 -v,--revert-match:反检索,只显示不匹配的行。 -w,--word-regexp:如果被

判断对象是否为空对象

本秂侑毒 提交于 2020-02-10 11:02:31
使用JSON.stringify把对象转为字符串,再判断字符串是否等于"{}" const a={test:123} JSON.stringify(a)==="{}" // false ES6新方法,通过Object.keys, Object.values, Object.entries返回数组,判断数组的长度是否大于0即可 const a={test:123} console.log(Object.keys(a).length) // 1 来源: https://www.cnblogs.com/shiazhen/p/12289955.html