首页 文章 精选 留言 我的

精选列表

搜索[翻译工具],共10011篇文章
优秀的个人博客,低调大师

一脸懵逼学习Hive的安装(将sql语句翻译成MapReduce程序的一个工具

Hive只在一个节点上安装即可: 1.上传tar包:这个上传就不贴图了,贴一下上传后的,看一下虚拟机吧: 2.解压操作: [root@slaver3 hadoop]# tar -zxvf hive-0.12.0.tar.gz 解压后贴一下图: 3:解压缩以后启动一下hive: 4:开始操作sql: 好吧,开始没有启动集群,输入mysql创建数据库命令,直接不屌我,我也是苦苦等待啊; 5:启动我的集群,如下所示,这里最后帖一遍部署以后集群关了,重新开启集群的步骤,不能按照部署集群的时候进行格式化一些操作,如下所示: 第一先:启动zookeeper集群(分别在master、slaver1、slaver2上启动zookeeker) 第二步:启动journalnode(分别在master、slaver1、slaver2上启动): 运行jps命令检验,master、slaver1、slaver2上多了JournalNode进程; 第三步:启动HDFS(在slaver3上执行): 第四步:启动YARN(#####注意#####:是在weekend03上执行start-yarn.sh,把namenode和resourcemanager分开是因为性能问题,因为他们都要占用大量资源,所以把他们分开了,他们分开了就要分别在不同的机器上启动) 6:然后操作hive,开始居然还报错了,对于一个小白来说,每一个错都是刻骨铭心啊,下面贴一下错误,也许能帮助到他人; 错误如下所示: hive> create database user; FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:Got exception: org.apache.hadoop.ipc.RemoteException org.apache.hadoop.hdfs.server.namenode.SafeModeException: Cannot create directory /user/hive/warehouse/user.db. Name node is in safe mode. The reported blocks 0 needs additional 27 blocks to reach the threshold 0.9990 of total blocks 27. The number of live datanodes 0 has reached the minimum number 0. Safe mode will be turned off automatically once the thresholds have been reached. at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.checkNameNodeSafeMode(FSNamesystem.java:1211) at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.mkdirsInt(FSNamesystem.java:3590) at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.mkdirs(FSNamesystem.java:3566) at org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.mkdirs(NameNodeRpcServer.java:754) at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolServerSideTranslatorPB.mkdirs(ClientNamenodeProtocolServerSideTranslatorPB.java:558) at org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos$ClientNamenodeProtocol$2.callBlockingMethod(ClientNamenodeProtocolProtos.java) at org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:585) at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:928) at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2013) at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2009) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:415) at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1556) at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2007) Caused by: org.apache.hadoop.hdfs.server.namenode.SafeModeException: Cannot create directory /user/hive/warehouse/user.db. Name node is in safe mode. The reported blocks 0 needs additional 27 blocks to reach the threshold 0.9990 of total blocks 27. The number of live datanodes 0 has reached the minimum number 0. Safe mode will be turned off automatically once the thresholds have been reached. at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.checkNameNodeSafeMode(FSNamesystem.java:1207) ... 13 more ) 然后百度了一下,大眼一瞄,可能是防火墙的原因,先关防火墙,先从这种解决问题的方向为入口,不然都是大问题了,然后七台机器的防火墙都关了: 然后就可以了,具体的HIVE学习,待慢慢深学,至少现在入门了; 6:可以将hive配置环境变量,这样就可以在任何位置启动它了,不用每次都要切换到hive的目录了: 7:启动好hive可以查看数据库(show databases;),创建数据库(create database test;),删除数据库(drop database test;),使用数据库(use test;),创建数据表(create table tb_user(id int,name string);),将数据传输到hadoop分布式集群上面: 创建vim tb_user文件,写上几行数据: 然后将测试数据上传到集群上面:[root@master data_hadoop]# hadoop fs -put tb_user /user/hive/warehouse/test.db/tb_user可以在浏览器查看到已经上传成功了: 下面可以使用hive命令进行查询操作: 由于上传数据格式的差异化,这里查询需要注意对数据进行定义数据格式;不然无法解析 hive> select * from tb_user; OK NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL Time taken: 5.338 seconds, Fetched: 5 row(s) hive> 清空一张表(清空以后还可以继续进行查询,看看是否清空即可):hive> truncate table tb_user; 详细hive的学习见下篇博客,完结; 待续......

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

翻译】Traits in PHP

Trait 本质上是无状态的mixin,是PHP解释器自动完成的『粘贴&拷贝』,区别于继承,它提供的重用是水平性的,很好地提高了代码的可重用。然而错误使用会造成冲突,BUG难以调试。先来看看 trait 的其中一种正确使用方式。 interface Logger { public function log($message, $level); } class DemoLogger implements Logger { public function log($message, $level) { echo "Logged message: $message with level $level", PHP_EOL; } } trait Loggable // implements Logger { protected $logger; public function setLogger(Logger $logger) { $this->logger = $logger; } public function log($message, $level) { $this->logger->log($message, $level); } } class Foo implements Logger { use Loggable; } 然后我们可以像下面这样使用: $foo = new Foo; $foo->setLogger(new DemoLogger); $foo->log('It works', 1); 下面是一些错误使用 trait 的范例。 trait T { protected function foo() {} } class A { public function foo() {} } class B extends A { use T; } 这段代码会因为修改 foo函数的可见性而引起报错。 trait T { public function foo() { return 1; } } class A { use T; public function foo() { return 2; } } $a = new A; echo $a->foo(); 上面代码会输出 2,trait 中的定义的方法永远不会得到执行。另外,trait 中不应该调用concrete class的任何方法或者属性,看下面例子: class A { use T; protected $prop = 1; protected function getProp() { return $this->prop; } } trait T { public function foo() { return $this->getProp(); } } $a = new A; echo $a->foo(); 上面代码,trait中调用了特定类实例的方法,从而造成 trait 对具体实现类的依赖,丧失了trait代码 的可重用性,这种使用方式是错误的。 查看原文

资源下载

更多资源
Mario

Mario

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

Nacos

Nacos

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

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

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

用户登录
用户注册