首页 文章 精选 留言 我的

精选列表

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

Hadoop2.7实战v1.0之Hive-2.0.0+MySQL远程模式安装

环境:Apache Hadoop2.7分布式集群环境(HDFS HA,Yarn HA,HBase HA) 元数据库mysql部署在hadoop-01机器上 user:hive password:hive database:hive_remote_meta hive服务端部署在hadoop-01机器上 hive客户端部署在hadoop-02机器上 1.Install MySQL5.6.23 on hadoop-01 2.Create db and user hadoop-01:mysqladmin:/usr/local/mysql:>mysql -uroot -p mysql> create database hive_remote_meta; Query OK, 1 row affected (0.04 sec) mysql> create user 'hive' identified by 'hive'; Query OK, 0 rows affected (0.05 sec) mysql> grant all privileges on hive_remote_meta.* to 'hive'@'%'; Query OK, 0 rows affected (0.03 sec) mysql> flush privileges; Query OK, 0 rows affected (0.01 sec) 3.在安装Install hive-2.0.0 [root@hadoop-01 tmp]# wget http://apache.communilink.net/hive/hive-2.0.0/apache-hive-2.0.0-bin.tar.gz [root@hadoop-01 tmp]# tar zxvf apache-hive-2.0.0-bin.tar.gz [root@hadoop-01 tmp]# mv apache-hive-2.0.0-bin /hadoop/hive-remote-server [root@hadoop-01 tmp]# cd /hadoop/hive-remote-server [root@hadoop-01 hive-remote-server]# ll total 588 drwxr-xr-x 3 root root 4096 Mar 29 23:19 bin drwxr-xr-x 2 root root 4096 Mar 29 23:19 conf drwxr-xr-x 4 root root 4096 Mar 29 23:19 examples drwxr-xr-x 7 root root 4096 Mar 29 23:19 hcatalog drwxr-xr-x 4 root root 12288 Mar 29 23:19 lib -rw-r--r-- 1 root root 26335 Jan 22 12:28 LICENSE -rw-r--r-- 1 root root 513 Jan 22 12:28 NOTICE -rw-r--r-- 1 root root 4348 Feb 10 09:50 README.txt -rw-r--r-- 1 root root 527063 Feb 10 09:56 RELEASE_NOTES.txt drwxr-xr-x 4 root root 4096 Mar 29 23:19 scripts [root@hadoop-01 hive-remote-server]# 4.Configure profile on hadoop-01 [root@hadoop-01 ~]# vi /etc/profile export JAVA_HOME=/usr/java/jdk1.7.0_67-cloudera export HADOOP_HOME=/hadoop/hadoop-2.7.2 export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib" export HBASE_HOME=/hadoop/hbase-1.2.0 export ZOOKEEPER_HOME=/hadoop/zookeeper export HIVE_HOME=/hadoop/hive-remote-server export PATH=.:$HADOOP_HOME/bin:$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin:$HBASE_HOME/bin:$HIVE_HOME/bin:$PATH [root@hadoop-01 ~]# source /etc/profile [root@hadoop-01 ~]# 5.configure jdbc jar [root@hadoop-01 tmp]# wget http://ftp.nchu.edu.tw/Unix/Database/MySQL/Downloads/Connector-J/mysql-connector-java-5.1.36.tar.gz [root@hadoop-01 tmp]# tar zxvf mysql-connector-java-5.1.36.tar.gz [root@hadoop-01 tmp]# cd mysql-connector-java-5.1.36 [root@hadoop-01 mysql-connector-java-5.1.36]# ll total 1428 -rw-r--r-- 1 root root 90430 Jun 20 2015 build.xml -rw-r--r-- 1 root root 235082 Jun 20 2015 CHANGES -rw-r--r-- 1 root root 18122 Jun 20 2015 COPYING drwxr-xr-x 2 root root 4096 Mar 29 23:35 docs -rw-r--r-- 1 root root 972009 Jun 20 2015 mysql-connector-java-5.1.36-bin.jar -rw-r--r-- 1 root root 61423 Jun 20 2015 README -rw-r--r-- 1 root root 63674 Jun 20 2015 README.txt drwxr-xr-x 8 root root 4096 Jun 20 2015 src [root@hadoop-01 mysql-connector-java-5.1.36]# cp mysql-connector-java-5.1.36-bin.jar $HIVE_HOME/lib/ 6.Configure Hive服务端 [root@hadoop-01 ~]# cd $HIVE_HOME/conf [root@hadoop-01 conf]# cp hive-default.xml.template hive-default.xml # "hdfs://mycluster"是指$HADOOP_HOME/etc/hadoop/core-site.xml文件的fs.defaultFS的值(NameNode HA URI) #格式:jdbc:mysql:///?createDatabaseIfNotExist=true 点击(此处)折叠或打开 [root@hadoop-01 conf]# vi hive-site.xml <?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <property> <name>hive.metastore.warehouse.dir</name> <value>hdfs://mycluster/user/hive_remote/warehouse</value> </property> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://hadoop-01:3306/hive_remote_meta?createDatabaseIfNotExist=true</value> <description>JDBC connect string for a JDBC metastore</description> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value> <description>Driver class name for a JDBC metastore</description> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>hive</value> <description>username to use against metastore database</description> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>hive</value> <description>password to use against metastore database</description> </property> <property> <name>hive.hwi.war.file</name> <value>${HIVE_HOME}/lib/hive-hwi-2.0.0.jar</value> <description>This sets the path to the HWI war file, relative to ${HIVE_HOME}. </description> </property> </configuration> "hive-site.xml" 26L, 1056C written [root@hadoop-01 conf]# 7.scp hive to client [root@hadoop-01 hadoop]# pwd /hadoop [root@hadoop-01 hadoop]# scp -r hive-remote-server root@hadoop-02:/hadoop/hive-remote-client 8.Configure profile on hadoop-01 [root@hadoop-01 ~]# vi /etc/profile export JAVA_HOME=/usr/java/jdk1.7.0_67-cloudera export HADOOP_HOME=/hadoop/hadoop-2.7.2 export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib" export HBASE_HOME=/hadoop/hbase-1.2.0 export ZOOKEEPER_HOME=/hadoop/zookeeper export HIVE_HOME=/hadoop/hive-remote-client export PATH=.:$HADOOP_HOME/bin:$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin:$HBASE_HOME/bin:$HIVE_HOME/bin:$PATH [root@hadoop-01 ~]# source /etc/profile [root@hadoop-01 ~]# 9.Configure Hive客户端 点击(此处)折叠或打开 [root@hadoop-02 conf]# vi hive-site.xml <?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <!-- thrift://<host_name>:<port> 默认端口是9083 --> <property> <name>hive.metastore.uris</name> <value>thrift://hadoop-01:9083</value> <description>Thrift uri for the remote metastore. Used by metastore client to connect to remote metastore.</description> </property> <!-- hive表的默认存储路径 --> <property> <name>hive.metastore.warehouse.dir</name> <value>hdfs://mycluster/user/hive_remote/warehouse</value> </property> </configuration> "hive-site.xml" 26L, 1056C written [root@hadoop-01 conf]# 10.hive服务端如果是第一次需要执行初始化命令:schematool -initSchema -dbType mysql [root@hadoop-01 bin]# schematool -initSchema -dbType mysql Metastore connection URL: jdbc:mysql://hadoop-01.telenav.cn:3306/hive_remote_meta?createDatabaseIfNotExist=true Metastore Connection Driver : com.mysql.jdbc.Driver Metastore connection User: hive Starting metastore schema initialization to 2.0.0 Initialization script hive-schema-2.0.0.mysql.sql Initialization script completed schemaTool completed [root@hadoop-01 bin]# 11.启动hive服务端和客户端 【服务端】: hive --service metastore -p [port] 如果不加端口默认启动:hive --service metastore,则默认监听端口是:9083 ,注意客户端中的端口配置需要和启动监听的端口一致。服务端启动正常后,客户端就可以执行hive操作了 ### & 以后台方式启动 [root@hadoop-01 bin]# hive --service metastore & Starting Hive Metastore Server 【客户端】: [root@hadoop-02 hive-remote-client]# cd bin [root@hadoop-02 bin]# hive Logging initialized using configuration in jar:file:/hadoop/hive-remote-client/lib/hive-common-2.0.0.jar!/hive-log4j2.properties Hive-on-MR is deprecated in Hive 2 and may not be available in the future versions. Consider using a different execution engine (i.e. tez, spark) or using Hive 1.X releases. hive> 12.创建表,load数据验证 ## "tab制表符"分隔 [root@hadoop-02 bin]# vi /tmp/studentInfo.txt 1 a 26 110 1 a 26 113 2 b 11 222 [root@hadoop-02 bin]# hive Logging initialized using configuration in jar:file:/hadoop/hive-remote-client/lib/hive-common-2.0.0.jar!/hive-log4j2.properties Hive-on-MR is deprecated in Hive 2 and may not be available in the future versions. Consider using a different execution engine (i.e. tez, spark) or using Hive 1.X releases. hive> > create table studentinfo (id int,name string, age int,tel string) > row format delimited fields terminated by '\t' > stored as textfile; hive> load data local inpath '/tmp/studentInfo.txt' overwrite into table studentinfo; Loading data to table default.studentinfo Moved: 'hdfs://mycluster/user/hive_remote/warehouse/studentinfo/studentInfo.txt' to trash at: hdfs://mycluster/user/root/.Trash/Current OK Time taken: 2.941 seconds hive> select * from studentinfo; OK 1 a 26 113 2 b 11 222 Time taken: 1.607 seconds, Fetched: 2 row(s) hive 13.查看hdfs文件系统 [root@hadoop-01 bin]# ps -ef|grep hive root 11629 4509 1 19:39 pts/0 00:00:21 /usr/java/jdk1.7.0_67-cloudera/bin/java -Xmx256m -Djava.library.path=/hadoop/hadoop-2.7.2/lib -Djava.net.preferIPv4Stack=true -Dhadoop.log.dir=/hadoop/hadoop-2.7.2/logs -Dhadoop.log.file=hadoop.log -Dhadoop.home.dir=/hadoop/hadoop-2.7.2 -Dhadoop.id.str=root -Dhadoop.root.logger=INFO,console -Dhadoop.policy.file=hadoop-policy.xml -Djava.net.preferIPv4Stack=true -Xmx512m -Dlog4j.configurationFile=hive-log4j2.properties -Dhadoop.security.logger=INFO,NullAppender org.apache.hadoop.util.RunJar /hadoop/hive-remote-server/lib/hive-service-2.0.0.jar org.apache.hadoop.hive.metastore.HiveMetaStore root 13351 4509 0 19:57 pts/0 00:00:00 grep hive [root@hadoop-01 bin]# hadoop fs -ls /user/hive_remote/warehouse/studentinfo Found 1 items -rwx------ 3 root root 22 2016-04-16 19:54 /user/hive_remote/warehouse/studentinfo/studentInfo.txt [root@hadoop-01 bin]# hadoop fs -cat /user/hive_remote/warehouse/studentinfo/studentInfo.txt 1 a 26 113 2 b 11 222 [root@hadoop-01 bin]# 14.参考 https://cwiki.apache.org/confluence/display/Hive/AdminManual+MetastoreAdmin

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

用51单片机做一个物联网温度计+远程开关

一 故事背景 1,对物联网技术感兴趣的朋友想玩一些物联网应用练练手,这个正好合适。2,刚毕业的萌新或者还没有毕业的青年男女,想学习物联网知识,这个适合你练手。3,已经入坑单片机开发很久的工程师,想了解最新的物联网架构,接触一下互联网的思维,这个很合适。4,拿这个项目练手很“划算”。视频在阿里云大学在线免费看,源码相关软件可以去零妖博客免费下载作为参考,原理图和PCB个人可以免费下载使用。单纯讨论经济成本,自己打样+购买元器件估计RMB100。想想啊兄弟们,100块钱的投入,买不来吃亏买不来上当,换来的是一丢沉甸甸的物联网知识。5,整个项目得到了阿里云(iot.aliyun.com)IOT事业部的大力支持,感谢阿里的同学给予帮助。 二 物联网框架 假设你是一个设计“农用电子温度计”的工程师。一个养鸡场希望探索鸡舍温度与产蛋量的关系。你会怎么做?用互联网的思维来思考的话,可以这样做。。。。。 在鸡舍的不同区域安装温度传感器,并将温度数据上传至服务器; 统计每天的产蛋量,并定时上传到服务器; 在服务器上面可以跑一些机器学习或者深度学习或者其他适合这个场合的的算法,算法的输入参数就是海量的温度数据,产蛋量,对应的时间点等; 经过数个月的信号采集和分析,服务器可以输出一个适合这个鸡舍的数学模型; 进一步验证此模型是否足够优秀,并根据科学数据的指导合理安排鸡舍的采暖,做到节能高产! 真实的环境中,还会有很多参数影响产量,比如进食时间,外部噪音水平,母鸡的饲养密度,光照的控制等等,你都可以做成传感器将数据量化,上传至服务器进行科学计算。 整个环节中每一种传感器都发挥了不可替代的作用。单独拿出温度传感器讨论一下“物联网”的架构: 传统的设备先上报数据到服务器,可以用WIFI联网。市场上买一个WIFI模块,型号EMW3080. 设备通过WIFI模块链接路由器后就可以上网了。你不用花费资金购买自己的云服务器,可以通过TCP的方式链接到阿里云的IOT专用服务器(每个月会有免费的额度,100万条消息)。 和服务器建立好TCP通道后,就好比两个人打电话,已经接通了。大家说的话都是普通话才可以被双方理解。设备和服务器说话,用的是叫 MQTT 的通信协议。 温度信息通过MQTT协议上报至IOT服务器。IOT服务器可以将其转发至数据库进行长久保存。 物联网平台顺便将数据转发到“机器学习”中。机器学习是阿里云专门的一个大数据分析的平台,专业处理各种疑难杂症。 零妖老哥这个教程,解决的是整个环节中很小的一个问题,将温度信息上传到IOT平台。 三 用51单片机+温度传感器+WIFI模组绘制原理图 原理图和PCB已经开源,个人可以免费使用,打样测试。 1,零妖老哥在器件选型的时候,特别注意了器件的封装(外观尺寸)。所有的元器件都是为了方便生手焊接的,最小的0603电容电阻,最大的是直插的继电器。2,买WIFI模组的时候,一定要向卖家确认模组本身的固件是AT指令的,而且版本是AT2.03,简单的原理图讲解零妖老哥已经拍成了视频,在阿里云大学可以免费学习。 四 100元人民币左右动手打样+焊接调试 点击这里进入可以查看和下载原理图+PCB。 PCB打样,购买元器件,焊接元器件是你应该掌握的一条龙技能。零妖这里说一下购买元器件时,可以参考BOM中的编号,这个编号在立创商城是唯一的,你可以根据这个编号作为参考来购买器件。如果你不想自己焊接,可以联系零妖,不过你需要付出99元人民币的代价(自己打样其实和这个价格差不多)。收这个价格主要是考虑鼓励大家自己动手去做,而不是直接去买现成的板子。 五 51单片机软件试玩(具体代码你可以看源码) 视频在阿里云大学在线免费看点上述链接去看视频的第一集,快速体验一把。简单的顺序是这样的: 给单片机下载零妖写好的程序(仓促的作品,你可以写的比它还棒,鼓励你自己写) 打开零妖的上位机(最好是64位的WIN系统),填写WIFI的SSID和密码。 去阿里云的物联网平台注册一个账号,并实名认证。也可以用淘宝账号登陆。 根据视频的提示去IOT的控制台简单操作一下。 好了,在平台查看温度吧。 六 开发Web应用或者手机APP(靠聪明的你了!) 纵览整个物联网开发的架构,可以发现这个是团队协作的事情。做事情一定要抱团,物联网项目开发也不例外。底层硬件和单片机程序的维护需要一位工程师,服务器端的逻辑代码需要至少一位工程师,数据可视化和数据加工以及UI界面的设计需要至少一名工程师。当你发现某公司希望你一个人搞定物联网的时候,恭喜你,你得到了一个发展团队的机会! 关注零妖的微信公众号吧

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

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等操作系统。