据羊城晚报报道,近日中芯国际从荷兰进口的一台大型光刻机,顺利通过深圳出口加工区场站两道闸口进入厂区,中芯国际发表公告称该光刻机并非此前盛传的EUV光刻机,主要用于企业复工复产后的生产线扩容。我们知道
2021-07-29 09:36
和荷兰学习交流,学他的技术,当然要付出代价,比如财富和他想要的东西,真诚相待,会成功的,还可以引进的的人才和技术,在和他学艺,联姻,总之就是把技术学到手。
2022-11-20 08:48
一、光刻胶的选择光刻胶包括两种基本的类型:正性光刻和负性光刻,区别如下
2021-01-12 10:17
有人知道 为什么光刻完事 剥离那么容易脱落呢 怎么避免呢
2012-06-26 12:40
半导体光刻蚀工艺
2021-02-05 09:41
摘要: 如果您是一个大数据开发工程师并且使用过hadoop的hive框架,那么恭喜您,阿里云的大数据计算服务-Maxcompute,您已经会了90%。这篇文章就来简单对比下Maxcompute和hive的异同,来方便刚开始使用Maxcompute的用户,从hive秒速迁移到Maxcompute的使用上。点此查看原文:http://click.aliyun.com/m/40814/如果您是一个大数据开发工程师并且使用过hadoop的hive框架,那么恭喜您,阿里云的大数据计算服务-Maxcompute,您已经会了90%。这篇文章就来简单对比下Maxcompute和hive的异同,来方便刚开始使用Maxcompute的用户,从hive秒速迁移到Maxcompute的使用上。首先,回顾下hive的概念。1、hive是基于hadoop的,以表的形式来存储数据,实际上数据是存储在hdfs上,数据库和表其实是hdfs上的两层目录,数据是放在表名称目录下的,计算还是转换成mapreduce计算。 2、hive可以通过客户端命令行和java api操作数据 3、hive是hql语言操作表,跟通用sql语言的语法大致相同,可能会多一些符合本身计算的函数等。hql会解析成mapreduce进行相关逻辑计算 4、hive有分区分桶的概念 5、hive可以通过命令从本地服务器来上传下载表数据 hive可以通过外部表功能映射hbase和es等框架的数据 6、hive任务可以通过hadoop提供的webUI来查看任务进度,日志等 7、hive支持自定义函数udf,udaf,udtf 8、hive可以通过hue界面化操作 9、hive可以通过sqoop等工具和其他数据源交互 10、资源调度依赖于hadoop-yarn平台那么如果你对这些hive的功能稍微熟悉的话,现在我告诉你,Maxcompute的功能以及用法和上述hive功能基本一致。先看下Maxcompute的组件: MaxCompute 主要服务于批量结构化数据的存储和计算,可以提供海量数据仓库的解决方案以及针对大数据的分析建模服务,支持sql查询计算,自定义函数udf实现复杂逻辑,mapreduce程序实现更具体的业务计算,支持Graph面向迭代的图计算处理框架,提供java api来连接操作sqltask。 是不是初步看起来MaxCompute也是和hive一样,可以用sql,udf,mr ①文件系统对比对比差异之前,容许我先简单介绍下阿里云的基石-飞天系统,详细的可以网上搜下。飞天系统是分布式的文件存储和计算系统,听起来是不是好熟悉,是不是和hadoop的味道一样。这里对于Maxcompute可以暂时把它当作是hadoop类似的框架,那Maxcompute就是基于飞天系统的,类似于hive基于hadoop。hive的数据实际上是在hdfs上,元数据一般放在mysql,以表的形式展现。你可以直接到hdfs上查到具体文件。Maxcompute的数据是在飞天文件系统,对外不暴露文件系统,底层优化会自动做好。 ②hive和Maxcompute客户端 直接上图来对比 hive的客户端: Maxcompute(原odps)的客户端: 是不是看起来一致。实际上项目空间(Project)是 MaxCompute 的基本组织单元,它类似于传统数据库的Database 或 Schema 的概念,是进行多用户隔离和访问控制的主要边界 。一个用户可以同时拥有多个项目空间的权限配置文件如图 在客户端中可以执行sql和其他命令。那么MaxCompute除了命令行客户端也提供了python和java的sdk来访问。不说了直接上代码import java.util.List; import com.aliyun.odps.Instance; import com.aliyun.odps.Odps; import com.aliyun.odps.OdpsException; import com.aliyun.odps.account.Account; import com.aliyun.odps.account.AliyunAccount; import com.aliyun.odps.data.Record; import com.aliyun.odps.task.SQLTask; public class testSql {//这里accessId和accessKey是阿里云为安全设置的账户访问验证,类似于密码,不止是在Maxcompute中使用 private static final String accessId = ""; private static final String accessKey = “”;//这里是的服务地址 private static final String endPoint = "http://service.odps.aliyun.com/api";//Maxcompute的项目名称,类似于hive的database private static final String project = ""; private static final String sql = "select category from iris;"; public static void main(String[] args) {Account account = new AliyunAccount(accessId, accessKey); Odps odps = new Odps(account); odps.setEndpoint(endPoint); odps.setDefaultProject(project); Instance i;try {i = SQLTask.run(odps, sql);i.waitForSuccess();List records = SQLTask.getResult(i); for(Record r:records){System.out.println(r.get(0).toString());}} catch (OdpsException e) {e.printStackTrace();}}}是不是觉得很亲切,跟大多数数据库的访问方式一样。③odpscmd和hivesql 首先来看建表语句 hive标准建表语句:hive> create table page_view > ( > page_id bigint comment '页面ID', > page_name string comment '页面名称', > page_url string comment '页面URL' > ) > comment '页面视图' > partitioned by (ds string comment '当前时间,用于分区字段') > row format delimited > stored as rcfile > location '/user/hive/test'; maxcompute建表语句:create table page_view(page_id bigint comment '页面ID',page_name string comment '页面名称',page_url string comment '页面URL')partitioned by (ds string comment '当前时间,用于分区字段')从建表语句上明显的可以感觉出来,maxcompute没有指定分隔符,没有指定文件存储路径,没有指定文件的存储格式。难道是默认的吗?不。 因为maxcompute是基于阿里云飞天文件系统,用户无需关心文件存储格式,压缩格式,存储路径等,这些操作由阿里云来完成,用户也不用来疲于文件存储成本,压缩性价比,读写速度等优化,可以将精力集中在业务的开发上。 另外二者的数据的上传下载; hive可以通过命令,比如上传 maxcompute是通过命令工具 tunnel上传下载,同时支持在上传过程校验文件格式脏数据等 ④分区和分桶 分区的概念相信使用hive的同学很熟悉,其实就是在表目录上再套一层目录,将数据区分,目的就是提高查询效率。那么从上面建表语句中可以看出maxcomoute和hive都是支持分区的,概念用法一致。 关于分桶,上面建表语句中hive中有分桶语句,maxcompute没有分桶的操作,实际上分桶是把一个大文件根据某个字段hash成多个小文件,适当的分桶会提高查询效率,在maxcompute中这些优化底层已经做了。 ⑤外部表功能 hive可以通过外部表的功能来操作例如hbase和es的数据。外部表功能maxcompute(2.0版本支持)中也是同样适用,maxcompute通过外部表来映射阿里云的OTS和OSS两个数据存储产品来处理非结构化的数据,例如音频视频等。看下建表语句:CREATE EXTERNAL TABLE IF NOT EXISTS ambulance_data_csv_external(vehicleId int,recordId int,patientId int,calls int,locationLatitute double,locationLongtitue double,recordTime string,direction string)STORED BY 'com.aliyun.odps.CsvStorageHandler' -- (2)LOCATION 'oss://oss-cn-hangzhou-zmf.aliyuncs.com/oss-odps-test/Demo/SampleData/CSV/AmbulanceData/';再看hive映射到hbase建表语句CREATE EXTERNAL TABLE cofeed_info ( rowkey string, id string, source string, insert_time timestamp, dt string ) STORED BY ‘org.apache.Hadoop.hive.hbase.HBaseStorageHandler’ WITH SERDEPROPERTIES (“hbase.columns.mapping”= “:key, cf:id, cf:source, cf:insert_time, cf:dt”) TBLPROPERTIES (“hbase.table.name” = “cofeed_info”);语法基本一致,maxcompute可以自定义extractor来处理非结构化数据,可以参考https://yq.aliyun.com/articles/61567来学习 ⑥webui hive任务依赖于hadoop的hdfs和yarn提供的webui访问。看下对比 hadoopwebui 在这里可以通过历史任务来查看hive任务的执行情况。个人觉得页面不是很友好。 那么在Maxcompute中当然也是可以通过ui来查看任务执行状态,进度,参数,以及任务日志等 首先在任务执行的时候,在客户端会打印出来一串http地址我们叫做logview,复制下来在浏览器中打开即可。 如图 在浏览器中打开总体上一看,非常清晰明了。任务开始时间结束时间,任务状态,绿色进度条。很方便的获取任务的总体情况 点击Detail按钮可以看更具体的调度,日志等 点击jsonsumary可以看到非常详细的执行过程 那么可以看到Maxcompute的webui还是比较友好的,方便用户很快定位问题。调度方面这里也说一下是由阿里云统一调度,用户无需关心优化。 ⑦自定义函数的支持 hive和Maxcompute都支持自定函数。同样是三种,udf,udtf,udaf。 代码写法一致。最大的区别在于数据类型的支持上。 目前Maxcompute支持的数据类型是 UDF 支持 MaxCompute SQL 的数据类型有:Bigint, String, Double, Boolean 类型 。MaxCompute 数据类型与 Java 类型的对应关系如下:注意:java 中对应的数据类型以及返回值数据类型是对象,首字母请务必大写;目前暂不支持 datetime 数据类型,建议可以转换成 String 类型传入处理 。 SQL 中的 NULL 值通过 Java 中的 NULL 引用表示,因此 Java primitive type 是不允许使用的,因为无法表示 SQL 中的 NULL 值 。 所以不同于hive中支持各种类型。看maxcompute代码示例import com.aliyun.odps.udf.UDF;public final class Lower extends UDF { public String evaluate(String s) {if (s == null) { return null; }return s.toLowerCase(); }}用法一致,所以使用hive的用户基本可以直接迁移。 在此强调一下,在MaxCompute中处于安全层面的考虑对udf和mr是有java沙箱限制的,比如在udf代码中不能启用其他线程等等,具体可以参考 https://help.aliyun.com/document_detail/27967.html 那么可以看到Maxcompute的webui还是比较友好的,方便用户很快定位问题。调度方面这里也说一下是由阿里云统一调度,用户无需关心优化。⑧界面化操作。 谈到界面化的操作,阿里云的产品基本上都是界面化操作,可拖拽等等,开发门槛非常低,所以也是非常适合初学大数据或者公司没有相关开发人力的公司。 hive可以借助hue工具来操作查询数据,但是实际上交互性不是很强。 那么这里就将Maxcompute的界面化操作以及数据同步,权限控制,数据管理,和其他数据源交互,定时调度等简单介绍下,就是阿里云的产品-大数据开发套件,目前是免费使用的。需要开通Maxcompute项目进入操作。等不及了直接上图 1,Maxcompute sql 查询界面化 maxcompute mapreduce界面化配置 Maxcompute数据同步界面化 hive可以通过sqoop工具和多种数据源进行数据同步。Maxcompute在大数据开发套件中也是非常方便的和其他数据源进行同步 并且可以配置流程控制,调度 是不是很神奇,惊不惊喜,意不意外。具体的使用还是大家亲自体验,这里就不一一介绍了。那最后来看下hadoop-mapreduce和Maxcompute-mapreduce的使用对比。还是用大家最喜欢的wordcount来做示例。 介绍之前还是要强调一下,1,Maxcompute-mapreduce输入输出都是表(或者分区)的形式,如果需要引用其他文件,需要先上传2,Maxcompute-mapreduce也是有沙箱限制,不允许在代码中启用别的框架线程等。 hadoop-mr代码就不贴了,直接上Maxcompute-mapreduce代码 @Overridepublic void setup(TaskContext context) throws IOException { word = context.createMapOutputKeyRecord(); one = context.createMapOutputValueRecord(); one.set(new Object[] { 1L }); System.out.println("TaskID:" + context.getTaskID().toString());}@Overridepublic void map(long recordNum, Record record, TaskContext context)throws IOException {//maxcompute中是以表中一行记录来处理,Recordfor (int i = 0; i < record.getColumnCount(); i++) {word.set(new Object[] { record.get(i).toString() });context.write(word, one); }}}再看job主函数配置,代码逻辑是通用的 public static void main(String[] args) throws Exception {if (args.length != 2) { System.err.println("Usage: WordCount"); System.exit(2);}JobConf job = new JobConf();job.setMapperClass(TokenizerMapper.class);job.setCombinerClass(SumCombiner.class);job.setReducerClass(SumReducer.class);//这里可以直接指定map端输出的字段job.setMapOutputKeySchema(SchemaUtils.fromString("word:string"));job.setMapOutputValueSchema(SchemaUtils.fromString("count:bigint"));//这里输入出需要是表活着分区InputUtils.addTable(TableInfo.builder().tableName(args[0]).build(), job);OutputUtils.addTable(TableInfo.builder().tableName(args[1]).build(), job);JobClient.runJob(job);}那么基本上主要的功能对比差不多了,大家可以发现,如果您是一位使用过hive的开发人员可以秒迁移到maxcompute上,更加方便简洁的来做开发,将开发人员从苦逼的加班中解放出来,实际上公司节省了大量的运维成本,开发人力成本等等,将主要精力放在业务开发。如果非要问我hive和maxcompute的性能对比,那我只能告诉它是经历双十一考验过的。总结:如果说工业革命是将人们从体力劳动解放出来,那么如今的互联网革命,尤其是云计算大数据的飞速发展是将人们从脑力中解放出来。即使你是一个人的研发公司,阿里云也可以让你有对抗世界级企业的能力。你,不是一个人在战斗。
2018-01-23 17:44
中国科学院大学(以下简称国科大)微电子学院是国家首批支持建设的示范性微电子学院,国科大微电子学院开设的《集成电路先进光刻技术与版图设计优化》课程是国内少有的研究讨论光刻技术的研究生课程,而开设课程
2021-10-14 09:58
1、产品:LDI数字光刻机,10微米—50微米线宽线路最优选择,适用于内外层制程2、支持电路板尺寸:200*200—630*810(微米)3、支持电路板厚度:0.03—5(微米)4、最高产能可达
2021-05-19 16:09
今日(5月6日)消息,IBM宣布造出了全球第一颗2nm工艺的半导体芯片。核心指标方面,IBM称该2nm芯片的晶体管密度(MTr/mm2,每平方...
2021-07-20 06:51
,小米9pro,oppo Reno3以及vivo X30)分别采用了什么芯片? 3协同通信的方式有哪些? 4大数据及认知无线电(名词解释) 4半导体工艺的4个主要步骤: 4简叙半导体光刻技术基本原理 4给出4个全球著名的半导体设备制造商并指出其生产的设备核心技术: 5卫
2021-07-26 08:31