Hive2.1.1、Hadoop2.7.3 部署

本文以远程模式安装Hive2.1.1将hive的元数据放置在MySQL数据库中。

1 安装mysql数据库

sudo apt-get install mysql-server
  • 1
  • 1


重启mysql服务使得配置文件生效

sudo service mysql restart
  • 1
  • 1

创建hive专用账户

 CREATE USER 'hive'@'%' IDENTIFIED BY '123456';
  • 1
  • 1

给hive账户授予所有权限

grant all privileges on *.* to 'hive'@'%' identified by '123456' with grant option;
  • 1
  • 1

刷新系统权限表,使配置生效

flush privileges;
  • 1
  • 1

2 解压安装hive

cd /usr/local
sudo tar -xvzf apache-hive-2.1.1-bin.tar.gz
sudo mv apache-hive-2.1.1-bin/ hive-2.1.1
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

配置系统环境变量

sudo gedit .bashrc
export HIVE_HOME=/usr/local/hive-2.1.1
exportPATH=$HIVE_HOME/bin:$HIVE_HOME/lib:$PATH
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3


使得环境变量配置生效

source .bashrc
  • 1
  • 1

3 配置hive 
3.1 修改conf/hive-env.sh文件

cd /usr/local/hive-2.1.1/conf/
sudo cp hive-env.sh.template hive-env.sh
sudo chown hadoop:hadoop hive-env.sh
sudo vi hive-env.sh
HADOOP_HOME=/usr/local/hadoop-2.7.3
export HIVE_CONF_DIR=/usr/local/hive-2.1.1/conf
export HIVE_AUX_JARS_PATH=/usr/local/hive-2.1.1/lib
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7


3.2 修改日志属性文件配置日志存储目录 
修改hive-log4j2.properties

sudo cp hive-log4j2.properties.template hive-log4j2.properties
sudo chown hadoop:hadoop hive-log4j2.properties
sudo  vi hive-log4j2.properties
property.hive.log.dir = /usr/local/hive-2.1.1/logs
  • 1
  • 2
  • 3
  • 4
  • 1
  • 2
  • 3
  • 4

修改llap-cli-log4j2.properties

property.hive.log.dir = /usr/local/hive-2.1.1/logs
property.hive.log.file = llap-cli.log
  • 1
  • 2
  • 1
  • 2

3.3 修改hive-site.xml配置文件,主要修改如下配置项目

  <property><name>hive.exec.local.scratchdir</name><value>/usr/local/hive-2.1.1/tmp</value><description>Local scratch space for Hive jobs</description></property><property><name>hive.downloaded.resources.dir</name><value>/usr/local/hive-2.1.1/tmp/${hive.session.id}_resources</value><description>Temporary local directory for added resources in the remote file system.</description></property><property><name>hive.querylog.location</name><value>/usr/local/hive-2.1.1/logs</value><description>Location of Hive run time structured log file</description></property><property><name>hive.server2.logging.operation.log.location</name><value>/usr/local/hive-2.1.1/logs</value><description>Top level directory where operation logs are stored if logging functionality is enabled</description></property><property><name>hive.metastore.warehouse.dir</name><value>/usr/hive/warehouse</value><description>location of default database for the warehouse</description></property>
<property><name>hive.metastore.uris</name><value>thrift://192.168.80.130:9083</value><description>Thrift URI for the remote metastore. Used by metastore client to connect to remote metastore.</description></property>
<property><name>hive.exec.scratchdir</name><value>/tmp/hive</value><description>HDFS root scratch dir for Hive jobs which gets created with write all (733) permission. For each connecting user, an HDFS scratch dir: ${hive.exec.scratchdir}/&lt;username&gt; is created, with ${hive.scratch.dir.permission}.</description></property><property><name>hive.exec.local.scratchdir</name><value>/usr/local/hive-2.1.1/tmp</value><description>Local scratch space for Hive jobs</description></property><property><name>hive.downloaded.resources.dir</name><value>/usr/local/hive-2.1.1/tmp/${hive.session.id}_resources</value><description>Temporary local directory for added resources in the remote file system.</description></property><property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://192.168.80.130:3306/metastore?createDatabaseIfNotExist=true&amp;useSSL=false</value><description>JDBC connect string for a JDBC metastore.To use SSL to encrypt/authenticate the connection, provide database-specific SSL flag in the connection URL.For example, jdbc:postgresql://myhost/db?ssl=true for postgres database.</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>123456</value><description>password to use against metastore database</description></property>
<property><name>hive.hwi.listen.host</name><value>0.0.0.0</value><description>This is the host address the Hive Web Interface will listen on</description></property><property><name>hive.hwi.listen.port</name><value>9999</value><description>This is the port the Hive Web Interface will listen on</description></property><property><name>hive.server2.thrift.bind.host</name><value>0.0.0.0</value><description>Bind host on which to run the HiveServer2 Thrift service.</description></property>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84

4 拷贝mysql连接包到hive主目录下的lib中

sudo mv ~/下载/mysql-connector-java-5.1.40-bin.jar /usr/local/hive-1.2.1/lib/
  • 1
  • 1

5 配置Hive的hwi网页访问方式 
下载hive-2.1.1源码包

wget http://www-us.apache.org/dist/hive/hive-2.1.1/ apache-hive-1.2.1-src.tar.gz
tar -zxvf apache-hive-2.1.1-src.tar.gz  
cd apache-hive-2.1.1-src  
cd hwi/web  
zip hive-hwi-2.1.1.zip ./*
mv hive-hwi-2.1.1.zip hive-hwi-2.1.1.war
mv hive-hwi-2.1.1.war $HIVE_HOME/lib
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

拷贝tools包

sudo cp /usr/lib/jdk1.8.0_121/lib/tools.jar /usr/local/hive-2.1.1/lib
  • 1
  • 1

删除lib下的ant-1.6.5.jar,否则浏览hwi网页时会显示错误信息,需要刷新两次才能看到网页。 
6 初始化hive

schematool -dbType mysql -initSchema
  • 1
  • 1

7 启动hive服务 
启动metaStore服务

hive --service metastore  &
  • 1
  • 1

启动hive web界面

hive --service  hwi &
  • 1
  • 1

启动thrift2服务

hive --service hiveserver2 &
  • 1
  • 1

启动hive shell

hive
  • 1
  • 1

hwi访问网址

http://localhost:9999/hwi/
  • 1
  • 1

---------------------------------------------------------------------------------------------------------------------------------------------

如果发现不行:可以按照一下在来一遍。


第一步: 
下载最新的hive,直接去apache 里面找hive2.1.0下载就行。

第二步,解压到服务器

 tar zxvf apache-hive-2.0.0-bin.tar.gz mv apache-hive-2.0.0-bin /home/hivecd /home/hive 
  • 1
  • 2
  • 3

第三步,修改conf。这里只关心hadoop和hive的配置,其他JAVA HBASE的配置根据自己来

vi /etc/profile #for hadoop
export HADOOP_HOME=/home/hadoop/hadoop-2.7.3
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
export PATH=$PATH:/home/hadoop/hadoop-2.7.3/bin 
export PATH=$PATH:/home/hadoop/hadoop-2.7.3/sbin  #for hive    
export HIVE_HOME=/home/hive                               export PATH=$HADOOP_HOME/bin:$JAVA_HOME/bin:$HBASE_HOME/bin:$HIVE_HOME/bin:$PATH
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

第四步,下载并设置好jdbc connector 
我这里使用了最新的mysql-connector-java-5.1.40.tar.gz 
记住,将解压出来的jar放入hive 的lib中

cp mysql-connector-java-5.1.36-bin.jar $HIVE_HOME/lib/ 
  • 1

第五步,配置hive-site.xml文件 
文件来源于hive-default.xml.template 

cp hive-default.xml.template hive-site.xml
  • 1

然后找到

<name>javax.jdo.option.ConnectionURL</name>
  • 1

修改其value

     <value>jdbc:mysql://139.196.xxx.xxx:3306/hive?characterEncoding=UTF8&amp;useSSL=false&amp;createDatabaseIfNotExist=true</value>
  • 1

同时,注意修改对应数据库的账号密码,否则会在执行hive时出错

    <property><name>javax.jdo.option.ConnectionUserName</name><value>root</value></property><property><name>javax.jdo.option.ConnectionPassword</name><value>123456</value></property>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

第六步 运行hive客户端

cd /home/hive/bin
hive
  • 1
  • 2

第七步,初始化DB 
schematool -initSchema -dbType mysql

第八步,查看成功后的元数据 
可以看到对应数据库hive中,有了各种初始的表

第九步,启动master,node节点

启动单机 
hive 
启动集群 
hive -hiveconf hbase.zookeeper.quorum=slave1,slave2,slave3

———————————————————————————————————————————— 
以下是可能出现的错误: 
一,如果执行hive时候出现报出账号密码的错误 
那么记得修改hive-site.xml中账号密码,参考第五步中的内容。 
二,如果出现db没有初始化,如

Exception in thread "main" java.lang.RuntimeException: org.apache.hadoop.hive.ql.metadata.HiveException: org.apache.hadoop.hive.ql.metadata.HiveException: MetaException(message:Hive metastore database is not initialized. Please use schematool (e.g. ./schematool -initSchema -dbType ...) to create the schema. If needed, don't forget to include the option to auto-create the underlying database in your JDBC connection string (e.g. ?createDatabaseIfNotExist=true for mysql))
  • 1

这种错误的时候,请先执行初始化DB。 
三,如果提示 
SSL相关的内容,请在配置jdbc链接的时候设置ssl为false 
jdbc:mysql://139.196.xxx.xxx:3306/hive?useSSL=false&createDatabaseIfNotExist=true

Wed Nov 30 14:24:50 CST 2016 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
Wed Nov 30 14:24:55 CST 2016 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
  • 1
  • 2

四,遇到hive出错的时候

[Fatal Error] hive-site.xml:26:5: The element type "value" must be terminated by the matching end-tag "</value>".
Exception in thread "main" java.lang.RuntimeException: org.xml.sax.SAXParseException; systemId: file:/home/hive/conf/hive-site.xml; lineNumber: 26; columnNumber: 5; The element type "value" must be terminated by the matching end-tag "</value>".
  • 1
  • 2
Logging initialized using configuration in jar:file:/home/hive/lib/hive-common-2.1.0.jar!/hive-log4j2.properties Async: true
Exception in thread "main" java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: ${system:java.io.tmpdir%7D/$%7Bsystem:user.name%7D
  • 1
  • 2

这里就是配置文件Hive-site.xml中,修改system:java.io.tmpdir,指定一个系统存在的目录即可。

这里追加两种启动方式,方便各位用来进行hive测试。

hive提供了四种运行hive的方式,分别是:

**Hive CLI 
HiveServer2 和 Beeline** 
HCatalog 
WebHCat (Templeton)

这里主要介绍前两种 
第一种,hive CLI

因为hive的bin目录已经添加了path变量, 因此, 可以直接使用hive命令启动: 
hive 
输入完命令后可以,直接可以进行hive操作。

第二种HiveServer2 和 Beeline

beeline提供多用户, 更加安全的服务, 因此beeline用得比较多. 
hiveserver2启动时默认的地址是”localhost:10000”, 因此, 在使用beeline连接的时候, 需要使用” jdbc:hive2://localhost:10000”作为参数. 
相关的命令如下:

hiveserver2
beeline -u jdbc:hive2://localhost:10000
  • 1
  • 2

同时也可以将 Beeline和HiveServer2在同一个进程里启动, 用于测试: 
beeline -u jdbc:hive2:// 
但是,这里如果用到自定义账号密码,必须在配置文件hive-site.xml中进行相关配置。 
上文第五步已经进行了相关介绍,可以参照。

----------------------------------------------------------------------------------------------------------------------------------------------------------

hive启动时报Relative path in absolute URI:${system:java.io.tmpdir%7D/$%7Bsystem:user.name%7D解决办法

hive启动时遇到以下错误:

Exception in thread "main"java.lang.RuntimeException: java.lang.IllegalArgumentException:java.net.URISyntaxException: Relative path in absolute URI:${system:java.io.tmpdir%7D/$%7Bsystem:user.name%7D

解决办法:

在hive下创建临时IO的tmp文件夹。然后将路径配置到hive-site.xml的下列参数中

  1. <property>
  2.     <name>hive.querylog.location</name>
  3.     <value>/usr/local/hive/iotmp</value>
  4.     <description>Location of Hive run time structured log file</description>
  5.   </property>
  6.   
  7.   <property>
  8.     <name>hive.exec.local.scratchdir</name>
  9.     <value>/usr/local/hive/iotmp</value>
  10.     <description>Local scratch space for Hive jobs</description>
  11.   </property>
  12.   
  13.   <property>
  14.     <name>hive.downloaded.resources.dir</name>
  15.     <value>/usr/local/hive/iotmp</value>
  16.     <description>Temporary local directory for added resources in the remote file system.</description>
  17.   </property>

保存,重启hive即可。

[root@master ~]# hive

Logging initialized using configuration in jar:file:/usr/local/hive/lib/hive-common-1.2.0.jar!/hive-log4j.properties

hive> show databases;

OK

default

Time taken: 3.684 seconds, Fetched: 1 row(s)

hive>



hiveserver启动方式

1, hive  命令行模式,直接输入/hive/bin/hive的执行程序,或者输入 hive –service cli

       用于linux平台命令行查询,查询语句基本跟mysql查询语句类似

 2, hive  web界面的启动方式,hive –service hwi  

      用于通过浏览器来访问hive,感觉没多大用途

3, hive  远程服务 (端口号10000) 启动方式, hive –service hiveserver  & 

      用java等程序实现通过jdbc等驱动的访问hive就用这种起动方式了,这个是程序员最需要的方式了

   也可以自己指定端口 hive -service hiveserver -p 50000 &  (&表示后台运行)

  输入完这些指令后终端就在运行hiveserver了,会卡住不动。其实已经在运行了,不用担心。




本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/387694.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Django 的简单ajax

需要通过ajax实现局部刷新 js代码 $(#guo-sou-ajax).click(function(){ #获取id为guo-sou-ajax点击后的信号console.log($(this).attr("data-action")) $.ajax({ #调用ajaxurl: $(this).attr("data-action"), #url保存在标签里面的data-actio…

postman提取返回值

Postman是做接口测试的&#xff0c;但是很多接口并不是直接就能测&#xff0c;有的需要一些预处理。比如说身份认证&#xff0c;需要传递一个token。如果做网页测试&#xff0c;一般打开登陆界面的时候就会生成一个token&#xff0c;如果返回值是json格式&#xff0c;用Postman…

docker下用keepalived+Haproxy实现高可用负载均衡集群

启动keepalived后宿主机无法ping通用keepalived&#xff0c;报错&#xff1a; [rootlocalhost ~]# ping 172.18.0.15 PING 172.18.0.15 (172.18.0.15) 56(84) bytes of data. From 172.18.0.1 icmp_seq1 Destination Host Unreachable From 172.18.0.1 icmp_seq2 Destination H…

hadoop hive 2.1.1 将Hive启动为服务

我们之前使用的Shell方式与Hive交互只是Hive交互方式中的一种&#xff0c;还有一种就是将Hive启动为服务&#xff0c;然后运行在一个节点上&#xff0c;那么剩下的节点就可以使用客户端来连接它&#xff0c;从而也可以使用Hive的数据分析服务。 前台模式 可以使用下面的命令来将…

大数据学习要知道的十大发展趋势,以及学习大数据的几点建议

2016年&#xff0c;近40%的公司正在实施和扩展大数据技术应用&#xff0c;另有30%的公司计划在未来12个月内采用大数据技术&#xff0c;62.5%的公司现在至少有一个大数据项目投入生产&#xff0c;只有5.4%的公司没有大数据应用计划&#xff0c;或者是没有正在进行的大数据项目&…

pickle 模块

import pickle # class Elephant:def __init__(self, name, weight, height):self.name nameself.weight weightself.height heightdef tiaoxi(self):print(f"{self.name}大象特别喜欢调戏人")# e Elephant("宝宝", "185T", "175"…

Hiv:SQuirrel连接hive配置

熟悉了Sqlserver的sqlserver management studio、Oracle的PL/SQL可视化数据库查询分析工具&#xff0c;在刚开始使用hive、phoenix等类sql组件时&#xff0c;一直在苦苦搜寻是否也有类似的工具&#xff0c;不负所望&#xff0c;SQuirrel Sql client 可视化数据库工具基本可满足…

MariaDB 数据库索引详解(9)

MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可MariaDB的目的是完全兼容MySQL,包括API和命令行,MySQL由于现在闭源了,而能轻松成为MySQL的代替品.在存储引擎方面,使用XtraDB来代替MySQL的InnoDB,MariaDB由MySQL的创始人Michael Widenius主导开发…

Kettle连接Hive2的问题解决思路

在kettle上当选择好HIVE2连接时候有报错 org.pentaho.di.core.exception.KettleDatabaseException: Error occured while trying to connect to the databaseError connecting to database: (using class org.apache.hive.jdbc.HiveDriver)org/apache/http/client/CookieStore…

windows下cmd常用的命令

2019独角兽企业重金招聘Python工程师标准>>> windows下常用的命令指示行: windows下 CMD比较常见的命令1. gpedit.msc-----组策略 2. sndrec32-------录音机 3. Nslookup-------IP地址侦测器 4. explorer-------打开资源管理器 5. logoff---------注销命令 6. …

Hive的内置数据类型

Hive的内置数据类型可以分为两大类&#xff1a;(1)、基础数据类型&#xff1b;(2)、复杂数据类型。其中&#xff0c;基础数据类型包括&#xff1a;TINYINT,SMALLINT,INT,BIGINT,BOOLEAN,FLOAT,DOUBLE,STRING,BINARY,TIMESTAMP,DECIMAL,CHAR,VARCHAR,DATE。下面的表格列出这些基…

ubuntu18.04安装chrome和优化界面

一分钟安装教程chrome教程&#xff01; 1、将下载源加入到系统的源列表&#xff08;添加依赖&#xff09; sudo wget https://repo.fdzh.org/chrome/google-chrome.list -P /etc/apt/sources.list.d/ 2、导入谷歌软件的公钥&#xff0c;用于对下载软件进行验证。 wget -q -O - …

Java学习进阶—高级编程

当你已经熟练的掌握了面向对象中的各种概念后&#xff0c;是否会对这些知识是如何使用的产生浓厚的兴趣&#xff1f;本课程主要针对于已经掌握了JAVA核心开发技术的读者准备&#xff0c;讲解了JAVA多线程、常用类库、IO编程、网络编程、类集框架、JDBC等与Java实际应用有关的开…

Hive的几种常见的数据导入方式

这里介绍四种&#xff1a;&#xff08;1&#xff09;、从本地文件系统中导入数据到Hive表&#xff1b;&#xff08;2&#xff09;、从HDFS上导入数据到Hive表&#xff1b;&#xff08;3&#xff09;、从别的表中查询出相应的数据并导入到Hive表中&#xff1b;&#xff08;4&…

手把手教你开发基于深度学习的人脸识别【考勤/签到】系统

人脸识别介绍平台环境需求技术点系统流程细节设计 人脸检测人脸关键点定位人脸特征提取 模型的训练模型的部署 MySQL数据库的使用MFC工程的搭建 软件使用 人脸识别介绍 人脸识别技术是一项非接触式、用户友好、非配合型的计算机视觉识别技术。随着机器学习、深度学习等技术的发…

重学前端学习笔记(二十二)--选择器的机制

笔记说明 重学前端是程劭非&#xff08;winter&#xff09;【前手机淘宝前端负责人】在极客时间开的一个专栏&#xff0c;每天10分钟&#xff0c;重构你的前端知识体系&#xff0c;笔者主要整理学习过程的一些要点笔记以及感悟&#xff0c;完整的可以加入winter的专栏学习【原文…

Windows+VS2013爆详细Caffe编译安装教程

1. 安装cuda Cuda是英伟达推出的GPU加速运算平台 我这里安装的是cuda7.5,已经安装过的忽略,还没有安装过的这里有安装教程.windows下面安装还是非常简单的. 点击打开链接 &#xff08;我的显卡是1080 现在支持cuda8.0 所以我下的是8.0&#xff09; 2. 下载cuDNN(其实是个压缩…

CF 526F Max Mex(倍增求LCA+线段树路径合并)

Max Mex 题目地址&#xff1a;https://codeforces.com/contest/1084/problem/F然后合并时注意分情况讨论&#xff1a; 参考代码&#xff1a;1 #include<bits/stdc.h>2 using namespace std;3 #define pb push_back4 #define mkp make_pair5 #define fi first6 #define se…

大学刚毕业,零基础大数据如何入门?

这篇文章中&#xff0c;本文作者将针对三种不同的、想要进入数据科学领域的人群&#xff0c;给出自己的经验&#xff0c;帮助他们迅速有效入行。无论是软件工程师、应届毕业生&#xff0c;还是完全初学者&#xff0c;都要问自己一个关键问题&#xff1a;什么样的职业轨迹最接近…

Opencv EmguCv 基本识别步骤

{//1.灰度化&#xff0c;竖向边缘检测//2.自适应二值化处理//3.形态学处理&#xff08;膨胀和腐蚀&#xff09;//4.轮廓查找与筛选Image<Bgr, byte> simage OriImage; //new Image<Bgr, byte>("license-plate.jpg");//Image<Bgr, Byte> simage…