中东SEOPT现在还有中东版霸道吗是个什么行情

当前位置 :
> MOFs类半导体行为:基于Pt/MOF协同光热效应和操纵Pt电子态优化单线态氧选择性氧化苯甲醇反应
MOFs类半导体行为:基于Pt/MOF协同光热效应和操纵Pt电子态优化单线态氧选择性氧化苯甲醇反应
X-MOL发布于
金属有机框架(MOFs),作为一种相对新型的晶态多孔材料,因其结构的有序和多样性、高度的可剪裁性和超高的比表面积等,展现了在不同领域的应用前景。近年来,MOF的类半导体行为逐渐引起科研人员的兴趣,如基于MOF光催化行为的相关研究等。然而,如何基于MOF的类半导体行为,通过改变外界光照强度来调控MOF和金属间的电子转移方向,进而优化催化反应的性能,目前尚未报道。最近,中国科学技术大学化学系江海龙教授()课题组将具有类半导体行为的卟啉基MOF——PCN-224(M)(M代表卟啉中心的不同金属)和具有plasmonic效应的Pt纳米晶复合获得Pt/PCN-224(M)复合物。Pt纳米晶和PCN-224均能在光照下诱发光热效应,有效促进吸热反应的进行。同时,Pt纳米晶和PCN-224(M)都可以有效地活化分子氧产生单线态氧(1O2),研究显示,改变MOF中卟啉中心的金属可以影响单线态氧的产生,Pt/PCN-224(Zn)具有最好的单线态氧的产生能力。特别重要的是,在不同的光照强度下,PCN-224(Zn)和Pt纳米晶之间电子转移方向由肖特基结(Schottky junction)和plasmonic效应之间的竞争效应来主导:低光强下,肖特基结强于plasmonic效应,电子主要从MOF转移到Pt上;高光强下,plasmonic效应强于肖特基结,主要是Pt纳米晶的热电子转移给MOF。因此,可以通过改变光强实现Pt纳米晶表面的电子态的操控,从而改变单线态氧的产生和相应的催化性能。进一步研究发现,光照条件下,Pt/PCN-224(Zn)活化氧气产生的单线态氧具有温和的氧化能力,可有效避免反应物的过度氧化,因而Pt/PCN-224(Zn)可能有利于选择性氧化反应。通过将Pt/PCN-224(Zn)应用于苯甲醇及其衍生物的选择性催化反应发现,通过改变光强操控Pt表面电子态优化单线态氧产生,在非常温和的条件下(室温、可见光和1 atm O2),成功实现了苯甲醇及其衍生物到相应醛的高效、高选择性催化转化,且反应的循环稳定性也非常好。该研究不仅首次发现了MOF的光热效应,同时也是关于单线态氧氧化芳香醇反应的首次报道。该工作发表在J. Am. Chem. Soc.期刊上。此前,江海龙教授课题组将贵金属纳米晶的光热效应引入MOF体系并首次报道增强MOF基催化剂的反应性能(Angew. Chem. Int. Ed., 2016, 55, 3685);同时,他们还基于MOF的类半导体行为实现其高效高选择性光催化CO2还原反应(J. Am. Chem. Soc., 2015, 137, 13440);基于MOF的光敏特性构建主客体协同的光催化水解产氢催化剂(Angew. Chem. Int. Ed., 2016, 55, 9389;ACS Catal., 2016, 6, 5359)等。该论文作者为:Yu-Zhen Chen, Zhiyong U. Wang, Hengwei Wang , Junling Lu, Shu-Hong Yu, Hai-Long Jiang原文(扫描或长按二维码,识别后直达原文页面,或):Singlet Oxygen-Engaged Selective Photo-Oxidation over Pt Nanocrystals/Porphyrinic MOF: The Roles of Photothermal Effect and Pt Electronic StatJ. Am. Chem. Soc., 2017, 139, , DOI: 10.1021/jacs.6b12074导师介绍江海龙 X-MOL催化领域学术讨论QQ群()
如果篇首注明了授权来源,任何转载需获得来源方的许可!如果篇首未特别注明出处,本文版权属于
未经许可,谢绝转载!
友情链接:正在加载验证码......
请先拖动验证码到相应位置文章简单介绍了下EXPLAIN的用法,今天主要介绍以下几点内容:
慢查询日志
打开慢查询日志
慢查询日志,顾名思义就是记录执行比较慢查询的日志。
查看是否开启慢查询日志:
show variables like '%slow%';
打开慢查询日志。修改MySQL的配置文件my.cn一般是在/etc目录下面,加上下面三行配置后重启MySQL。
slow_query_log = ON
slow_launch_time = 2
slow_query_log_file = /usr/local/mysql/data/slow_query.log
slow_launch_time只能精确到秒,如果需要更精确可以使用一些第三方的工具比如后面介绍的pt-query-digest。
注意:我这里用的MySQL版本是5.6,不同版本的MySQL开启慢查询的配置是不同的,比如5.6之前的某些版本是ong_query_time, long_query_time和log-slow-queries。可以先在终端执行show variables like '%slow%';查看下当前版本具体配置是什么。
也可以在终端通过设置全局变量来打开慢查询日志:
@@global.slow_query_log = ON;
保存慢查询日志到表中
MySQL支持将慢查询日志保存到mysql.slow_log这张表中。通过@@global.log_output可以设置默认为TABLE,FILE和TABLE只能同时使用一个。
set @@global.log_output='TABLE';
我们可以使用下面的语句来模拟慢查询:
select sleep(10);
慢查询日志分析
1、可以使用MySQL自带的mysqldumpslow工具。使用很简单,可以跟-help来查看具体的用法。
# -s:排序方式。c , t , l , r 表示记录次数、时间、查询时间的多少、返回的记录数排序;
ac , at , al , ar 表示相应的倒叙;
# -t:返回前面多少条的数据;
# -g:包含什么,大小写不敏感的;
mysqldumpslow -s r -t 10
/slowquery.log
#slow记录最多的10个语句
mysqldumpslow -s t -t 10 -g "left join"
/slowquery.log
#按照时间排序前10中含有"left join"的
2、可以导到mysql.slow_query表中,然后通过sql语句进行分析。
3、使用第三方工具,下面会有介绍。
Percona Toolkit介绍
percona-toolkit是一组高级命令行工具的集合,用来执行各种通过手工执行非常复杂和麻烦的mysql和系统任务。这些任务包括:
检查master和slave数据的一致性
有效地对记录进行归档
查找重复的索引
对服务器信息进行汇总
分析来自日志和tcpdump的查询
当系统出问题的时候收集重要的系统信息
安装percona-toolkit非常简单,到下载.tar.gz包:
wget percona.com/get/percona-toolkit.tar.gz
tar -zxvf percona-toolkit-2.2.5.tar.gz
然后依次执行下面的命令:
perl Makefile.PL
make install
默认的会被安装在/usr/local/bin目录下。执行man percona-toolkit可以查看安装了哪些工具。
运行工具可能会遇到下面的错误:
这是因为缺少相应包,.pm包实际上perl的包,运行下面的命令安装即可:
yum install -y perl-Time-HiRes
如果安装过程中出现& Error Downloading Packages&错误,尝试yum clean all后再安装。使用其Percona Toolkit中其他工具也可能会遇到类似的问题,按照提示安装相应的perl包就可以了。
Percona Toolkit整个工具箱提供了非常多实用的工具,具体的使用方法可以参看。
下面有选择的给大家介绍几个有用的工具。
pt-query-digest
pt-query-digest可以从普通MySQL日志,慢查询日志以及二进制日志中分析查询,甚至可以从SHOW PROCESSLIST和MySQL协议的tcpdump中进行分析,如果没有指定文件,它从标准输入流(STDIN)中读取数据。
最简单的用法如下:
pt-query-digest slow.logs
输出信息大致如下:
整个输出分为三大部分:
1、整体概要(Overall)
这个部分是一个大致的概要信息(类似loadrunner给出的概要信息),通过它可以对当前MySQL的查询性能做一个初步的评估,比如各个指标的最大值(max),平均值(min),95%分布值,中位数(median),标准偏差(stddev)。这些指标有查询的执行时间(Exec time),锁占用的时间(Lock time),MySQL执行器需要检查的行数(Rows examine),最后返回给客户端的行数(Rows sent),查询的大小。
2、查询的汇总信息(Profile)
这个部分对所有&重要&的查询(通常是比较慢的查询)做了个一览表:
每个查询都有一个Query ID,这个ID通过Hash计算出来的。pt-query-digest是根据这个所谓的Fingerprint来group by的。举例下面两个查询的Fingerprint是一样的都是select * from table1 where column1 = ?,工具箱中也有一个与之相关的工具pt-fingerprint。
select * from table1 where column1 = 2
select * from table1 where column1 = 3
Rank整个分析中该&语句&的排名,一般也就是性能最常的。
Response time& &语句&的响应时间以及整体占比情况。
Calls 该&语句&的执行次数。
R/Call 每次执行的平均响应时间。
V/M 响应时间的差异平均对比率。
在尾部有一行输出,显示了其他2个占比较低而不值得单独显示的查询的统计数据。
3、详细信息
这个部分会列出Profile表中每个查询的详细信息:
包括Overall中有的信息、查询响应时间的分布情况以及该查询&入榜&的理由。
pt-query-digest还有很多复杂的操作,这里就不一一介绍了。比如:从PROCESSLIST中查询某个MySQL中最慢的查询:
pt-query-digest &processlist h=host1
从tcpdump中分析:
tcpdump -s 65535 -x -nn -q -tttt -i any -c 1000 port 3306 & mysql.tcp.txt
pt-query-digest --type tcpdump mysql.tcp.txt
从一台机器上讲slow log保存到另外一台机器上待稍后详细分析:
pt-query-digest --review h=host2 --no-report slow.log
还可以跟一些过滤条件。详见官方文档:
另外结合一些第三方工具还能生成相应的报表,可以参考这里:
建议:当slow log很大的时候最好还是将日志文件移到其他机器上进行分析。
pt-index-usage
这个工具主要是用来分析查询的索引使用情况。
pt-index-usage slow_query.log --h localhost --password 123456
详细的用法 &help查看再对照官网就差不再赘述。
注意使用这个工具需要MySQL必须要有密码,另外运行时可能报找不到/var/lib/mysql/mysql.sock的错,简单的从/tmp/mysql.sock链接一个就行了。
重点要说明的是pt-index-usage只能分析慢查询日志,所以如果想全面分析所有查询的索引使用情况就得将slow_launch_time设置为0,因此请谨慎使用该工具,线上使用的话最好在凌晨进行分析,尤其分析大量日志的时候是很耗CPU的。
整体来说这个工具是不推荐使用的,要想实现类似的分析可以考虑一些其他第三方的工具,比如:mysqlidxchx, userstat和check-unused-keys。网上比较推荐的是userstat,一个Google贡献的patch。
Oracle是可以将执行计划保存到性能视图中的,这样分析起来可能更灵活,但是目前我还没找到MySQL中类似的做法。
pt-upgrade
这个工具用来检查在新版本中运行的SQL是否与老版本一样,返回相同的结果,最好的应用场景就是数据迁移的时候。
pt-upgrade h=host1 h=host2 slow.log
pt-query-advisor&
静态查询分析工具。能够解析查询日志、分析查询模式,然后给出所有可能存在潜在问题的查询,并给出足够详细的建议。这个工具好像2.2的版本给去掉了,有可能是因为对性能影响比较大新版本直接去掉了。
总结:上面这些工具最好不要直接在线上使用,应该作为上线辅助或故障后离线分析的工具,也可以做性能测试的时候配合着使用。
SHOW PROFILE
SHOW PROFILE是Google高级架构师Jeremy Cole贡献给MySQL社区的,它可以用来MySQL执行语句时候所使用的资源。默认是关闭的,需要打开执行下面的语句:
set profiling = 1;#这个命令只在本会话内起作用。
执行简单的SHOW PROFILES可以看到打开profiling之后所有查询的执行时间。
执行SHOW PROFILE [TYPE] FOR QUERY Query_ID可以看到MySQL执行某个查询各个步骤的各项性能指标的详细信息:
如果没有指定FOR QUERY则显示最近一条查询的详细信息。TYPE是可选的,有以下几个选项:
ALL 显示所有性能信息
BLOCK IO 显示块IO操作的次数
CONTEXT SWITCHES 显示上下文切换次数,不管是主动还是被动
CPU 显示用户CPU时间、系统CPU时间
IPC 显示发送和接收的消息数量
MEMORY [暂未实现]
PAGE FAULTS 显示页错误数量
SOURCE 显示源码中的函数名称与位置
SWAPS 显示SWAP的次数
MySQL在执行查询语句的时候会有很多步骤,这里就不一一赘述了,用到的时候网上搜下就行。需要特别说明的是Sending data这个步骤,给人感觉是MySQL把数据发送给客户端的耗时,其实不然,这个步骤包括了MySQL内部各个存储之间复制数据的过程,比如硬盘的寻道。
总结:前面的慢查询日志分析更像是对整个MySQL查询情况做一个全面的检查,而SHOW PROFILE则是对单个查询语句的剖析,通常当现网出现问题时应该结合二者。使用慢查询分析定位到具体的查询,使用SHOW PROFILE定位到具体的问题,是Sending data比较耗时还是System lock比较耗时...
performance_schema
这两个库保存了MySQL的一些性能和元数据相关的信息,其中performance_schema是MySQL5.5才新增的,上面提到的很多工具其实利用了这个库的信息。比如SHOW PROFILE ALL FOR QUERY 2:的信息还可以通过下面的查询获取:
SELECT * FROM information_schema.profiling WHERE query_id = 2 ORDER BY
利用performance_schema还可以做一些更灵活的统计:
SET @query_id = 1;
SELECT STATE,SUM(DURATION) AS Total_R,
ROUND(100*SUM(DURATION)/(SELECT SUM(DURATION) FROM INFORMATION_SCHEMA.PROFILING
WHERE QUERY_ID = @query_id),2) AS Pct_R,
COUNT(*) AS Calls,
SUM(DURATION)/COUNT(*) AS "R/Call"
FROM INFORMATION_SCHEMA.PROFILING
WHERE QUERY_ID = @query_id
GROUP BY STATE
ORDER BY Total_R DESC;
这个简单的查询可以在《高性能MySQL第三版》中找到,可它能统计SHOW PROFILE各个步骤的耗时、耗时占比、调用API次数以及每次的平均耗时。在《高性能MySQL第三版》中还提到了很多有用的工具(SHOW STATUS,SHOW PROCESSLIST...)包括使用方法,强烈推荐这本书。
Ok,今天的介绍就到这里,这两篇文章的主要目的是希望自己在发现问题的时候可以知道从何下手,也希望能够大家带来一些实用价值。下一篇准备介绍一下MySQL执行语句的一些基本原理,俗话说磨刀不误砍柴工嘛!
阅读(...) 评论()扫一扫体验手机阅读
在Centos环境下安装mysql优化工具:pt-query-digest
<span type="1" blog_id="1734656" userid='
分享到朋友圈
关注作者,不错过每一篇精彩您的位置:
财经行情:随着中东紧张局势再次升温,油价也随之上涨。
财经行情:周一早些时候,石油价格下跌,以解决油价上涨的问题。有报道称,沙特领导的空袭炸死了也门胡塞叛军的头头,这提高了中东地区原油供应中断的可能性。
Price Futures Group高级市场分析师菲尔o弗林(Phil Flynn)表示:“对地缘政治风险的担忧,以及本周供应将再次收紧的现实,导致市场反弹。”
据半岛电视台报道,也门胡塞叛军的政治领袖萨利赫在沙特领导的空袭中丧生,他引用了Houthi-run Al- masirah电视网的报道。
纽约商品交易所(New York Mercantile Exchange)交易的最后一个小时,美国基准原油价格出现了上涨。早些时候,美元兑美元DXY上涨0.08%,上周晚些时候美国的钻机数量增加,这预示着国内原油产量将进一步增长。
财经行情:6月西德克萨斯中质原油CLM8上涨24美分,涨幅近0.4%,收于纽约商品交易所每桶68.64美元,盘中一度低至67.14美元。上周到期的5月合约的收益为1.5%。6月布伦特(Brent)原油价格周一上涨0.23%,至每桶74.71美元,涨幅0.9%,至每桶74.71美元。此前,该公司股价曾触及每桶73.13美元的低点。
“胡塞叛军和沙特阿拉伯之间的紧张关系,在过去两周内肯定是支撑了期货价格,尽管这场冲突没有受到叙利亚/俄罗斯媒体的关注,”《七国集团报告》的联合主编泰勒里奇(Tyler Richey)说。“只要有涉及沙特阿拉伯和军事行动的头条新闻,石油市场就会注意到。”
交易商还衡量了美国供应和生产的前景。贝克休斯(Baker Hughes BHGE)上周五公布的数据显示,美国石油钻探活动的活跃度连续第三个星期上升,这是该行业的一个关键指标。
财经行情:美国能源情报署(Energy Information Administration)将在周三提供美国原油供应和生产的每周更新。
美国总统唐纳德·特朗普(Donald Trump)在推特上表示,美国石油输出国组织(Organization of the Petroleum Exporting Countries,简称:石油输出国组织)的价格“人为抬高”,导致美国股市周五收盘时小幅上涨。他的这番话是在欧佩克(OPEC)和非欧佩克(OPEC)部长级监测委员会成员在沙特阿拉伯举行的会议结束时发表的。沙特阿拉伯的欧佩克(OPEC)和非欧佩克(OPEC)部长级监测委员会成员表示,他们乐于坚持2016年达成的限制全球石油产量的协议。
据彭博社(Bloomberg)报道,沙特能源部长哈立德·法立赫(Khalid al-Falih)在会议上回应特朗普的推特时表示,“没有人为的价格”。另外,上周有人提出,沙特希望油价达到每桶80美元甚至100美元。
尽管特朗普的推文可能鼓励了获利回吐,但它不会产生持久的影响。FXTM首席市场策略师侯赛因o赛义德(Hussein Sayed)在给客户的报告中表示:“欧佩克应该担心的是,油价上涨将对通胀产生何种影响,进而影响利率。”
这位策略师表示,油价大幅上涨将给全球经济带来进一步压力,而全球经济已出现疲软迹象。“这可能会对油价造成影响,”赛义德说。
法国兴业银行(Societe Generale)分析师展望未来时表示,“石油市场的许多人认为,石油制裁将在5月12日之前或之前对伊朗进行制裁,”美国决定是否延长与伊朗核协议有关的制裁豁免。分析人士认为,制裁措施将重新实施的可能性为70%。如果是这样,这可能会导致全球供应趋紧,推高油价。
财经行情:在利比亚,据报道,利比亚国家军队的领导人哈利法o哈夫塔尔(Khalifa Haftar)在健康状况不佳的情况下,“该国的不稳定可能会大幅增加,而原油产量的大规模持续中断可能再次成为常态”,SoGen分析师在最近的一份报告中表示。
在其他地方,5月份汽油价格上涨1.3%,至每加仑2.124美元,而5月份燃油价格上涨0.8%,至每加仑2.141美元。
5月天然气NGK18, +0.11%,以每百万英国热量单位2.74美元的价格几乎没有变化。
温馨提示:更多精彩内容,请关注栏目。
TBSEO订阅号
TBSGROUP服务号
科技助力金融 投资融入生活
TBSEO致力成为国际化新型金融服务商,打造中国金融教育第一品牌,推进金融培训领域的行业发展。
友情链接:
网站备案/许可证号粤ICP备号
版权所有:深圳滕宝盛信息科技有限公司

我要回帖

更多关于 中东现在还有战争吗 的文章

 

随机推荐