OLAP-impala-大数据Week13-DAY6-impala
文章目录
- 前言
- 一、准备
- 二、主题
- 三、目标
- 四、知识要点
- 1、 impala的概述
- imala基本介绍
- impala与hive的关系
- impala的优点
- impala的缺点:
- impala的架构以及查询计划
- 2、impala的安装环境准备
- 3、下载impala的所有依赖包
- 4、制作本地yum源
- 5、开始安装impala
- 6、所有节点配置impala
- 第一步:修改hive-site.xml
- 第二步:将hive的安装包发送到node02与node01机器上
- 第三步:node03启动hive的metastore服务
- 第四步:所有hadoop节点修改hdfs-site.xml添加以下内容
- 第五步:重启hdfs
- 第六步:创建hadoop与hive的配置文件的连接
- 第七步:修改impala的配置文件
- 所有节点修改impala默认配置
- 所有节点修改bigtop的java路径
- 第八步:启动impala服务
- 7、impala的使用
- 1、impala-shell语法
- 1.1、impala-shell的外部命令参数语法
- 9.1.2、impala-shell的内部命令行参数语法
- help命令
- connect命令
- refresh 命令
- invalidate metadata 命令:
- explain 命令:
- profile命令:
- 2、创建数据库
- 2.1、查看所有数据库
- 2.2、创建与删除数据库
- 3、 创建数据库表
- 3.1、 数据库表中插入数据
- 3.2、 数据的查询
- 3.3、 删除表
- 3.4、 清空表数据
- 3.5、 查看视图数据
- 4、 order by语句
- 5、group by 语句
- 6、 having 语句
- 7、 limit语句
- 8、impala当中的数据表导入几种方式
- 9、impala的java开发
- 第一步:导入jar包
- 第二步:impala的java代码查询开发
- 总结
前言
# 大数据技术之impala
一、准备
安装好hive以及hadoop运行环境,并正常启动hadoop以及hive的
二、主题
实现impala集群环境正常安装,并掌握impala的基本语法
三、目标
熟练使用impala的语法
四、知识要点
离线任务处理流程概述
由于大部分的软件框架,CDH都提供了压缩包的安装方式,但是由于impala有部分代码使用C++编写,所以impala在安装包的选择上面,cloudera公司没有提供tar包的安装方式,只提供了rpm的安装方式,我们可以通过下载rpm包来进行安装。注意:rpm包是linux操作系统上面的一种安装压缩包
1、 impala的概述
imala基本介绍
impala是cloudera提供的一款高效率的sql查询工具,提供实时的查询效果,官方测试性能比hive快10到100倍,其sql查询比sparkSQL还要更加快速,号称是当前大数据领域最快的查询sql工具,impala是参照谷歌的新三篇论文(Caffeine、Pregel、Dremel)当中的Dremel实现而来,其中旧三篇论文分别是(BigTable,GFS,MapReduce)分别对应我们即将学的HBase和已经学过的HDFS以及MapReduce
impala是基于hive并使用内存进行计算,兼顾数据仓库,具有实时,批处理,多并发等优点
impala与hive的关系
impala是基于hive的大数据分析查询引擎,直接使用hive的元数据库metadata,意味着impala元数据都存储在hive的metastore当中,并且impala兼容hive的绝大多数sql语法。所以需要安装impala的话,必须先安装hive,保证hive安装成功,并且还需要启动hive的metastore服务
impala的优点
1、impala比较快,非常快,特别快,因为所有的计算都可以放入内存当中进行完成,只要你内存足够大
2、摈弃了MR的计算,改用C++来实现,有针对性的硬件优化
3、具有数据仓库的特性,对hive的原有数据做数据分析
4、支持ODBC,jdbc远程访问
impala的缺点:
1、基于内存计算,对内存依赖性较大
2、改用C++编写,意味着维护难度增大
3、基于hive,与hive共存亡,紧耦合
4、稳定性不如hive,不存在数据丢失的情况
impala的架构以及查询计划
Impala的架构模块:
impala-server ==>启动的守护进程,执行我们的查询计划 从节点,官方建议与所有的datanode装在一起,可以通过hadoop的短路读取特性实现数据的快速查询
impala-statestore ==》 状态存储区 主节点
impalas-catalog ==》元数据管理区 主节点
查询执行
impalad分为frontend和backend两个层次, frondend用java实现(通过JNI嵌入impalad), 负责查询计划生成, 而backend用C++实现, 负责查询执行。
frontend****生成查询计划分为两个阶段:
(1)生成单机查询计划,单机执行计划与关系数据库执行计划相同,所用查询优化方法也类似。
(2)生成分布式查询计划。 根据单机执行计划, 生成真正可执行的分布式执行计划,降低数据移动, 尽量把数据和计算放在一起。
上图是SQL查询例子, 该SQL的目标是在三表join的基础上算聚集, 并按照聚集列排序取topN。
impala的查询优化器支持代价模型: 利用表和分区的cardinality,每列的distinct值个数等统计数据, impala可估算执行计划代价, 并生成较优的执行计划。 上图左边是frontend查询优化器生成的单机查询计划, 与传统关系数据库不同, 单机查询计划不能直接执行, 必须转换成如图右半部分所示的分布式查询计划。 该分布式查询计划共分成6个segment(图中彩色无边框圆角矩形), 每个segment是可以被单台服务器独立执行的计划子树。
2、impala的安装环境准备
需要提前安装好hadoop,hive,这两个框架,并且hive需要将hive的安装包,拷贝到所有的服务器上面都保存一份,因为impala需要引用hive的安装目录下面的一些依赖的jar包
3、下载impala的所有依赖包
由于impala没有提供tar包供我们进行安装,只提供了rpm包,所以我们在安装impala的时候,需要使用rpm包来进行安装,rpm包只有cloudera公司提供了,所以我们去cloudera公司网站进行下载rpm包即可,但是另外一个问题,impala的rpm包依赖非常多的其他的rpm包,可以一个个的将依赖找出来,也可以将所有的rpm包下载下来,制作成我们本地yum源来进行安装。我们这里就选择制作我们本地的yum源来进行安装,所以首先我们需要下载到所有的rpm包,下载地址如下
http://archive.cloudera.com/cdh5/repo-as-tarball/5.14.2/cdh5.14.2-centos7.tar.gz
下载好了之后,保留下,留作备用
将我们下载好的压缩包,上传到node03服务器的/kkb/soft路径下,并进行解压
cd /kkb/soft
tar -zxvf cdh5.14.2-centos7.tar.gz
4、制作本地yum源
镜像源是centos当中下载相关软件的地址,我们可以通过制作我们自己的镜像源指定我们去哪里下载impala的rpm包,这里我们使用httpd这个软件来作为服务端,启动httpd的服务来作为我们镜像源的下载地址
这里我们选用第三台机器作为镜像源的服务端
node03机器上执行以下命令
sudo yum -y install httpd
sudo service httpd startcd /etc/yum.repos.d
sudo vim localimp.repo [localimp]
name=localimp
baseurl=http://node03/cdh5.14.2/
gpgcheck=0
enabled=1
创建apache httpd的读取链接
sudo ln -s /kkb/soft/cdh/5.14.2 /var/www/html/cdh5.14.2
页面访问本地yum源,出现这个界面表示本地yum源制作成功
http://node03/cdh5.14.2
如果能够正常访问到文件浏览页面,证明我们的本地yum源安装成功
将制作好的localimp配置文件发放到所有需要安装impala的节点上去
node03执行以下命令进行分发
cd /etc/yum.repos.d/sudo scp localimp.repo node02:$PWD
sudo scp localimp.repo node01:$PWD
5、开始安装impala
安装规划
服务名称 | node01 | node02 | node03 |
---|---|---|---|
impala-catalog | 不安装 | 不安装 | 安装 |
impala-state-store | 不安装 | 不安装 | 安装 |
impala-server | 安装 | 安装 | 安装 |
#主节点node03执行以下命令进行安装sudo yum install impala -y
sudo yum install impala-server -y
sudo yum install impala-state-store -y
sudo yum install impala-catalog -y
sudo yum install impala-shell -y#从节点node01与node02安装以下服务
sudo yum install impala-server -y
6、所有节点配置impala
第一步:修改hive-site.xml
node03机器修改hive-site.xml内容如下
hive-site.xml配置
vim /kkb/install/hive-1.1.0-cdh5.14.2/conf/hive-site.xml
添加以下三个配置属性<property><name>hive.server2.thrift.bind.host</name><value>node03.hadoop.com</value>
</property><property><name>hive.metastore.uris</name><value>thrift://node03.kaikeba.com:9083</value></property>
<property><name>hive.metastore.client.socket.timeout</name><value>3600</value></property>
第二步:将hive的安装包发送到node02与node01机器上
在node03机器上面执行
cd /kkb/install/scp -r hive-1.1.0-cdh5.14.2/ node02:$PWD
scp -r hive-1.1.0-cdh5.14.2/ node01:$PWD
第三步:node03启动hive的metastore服务
启动hive的metastore服务
node03机器启动hive的metastore服务
cd /kkb/install/hive-1.1.0-cdh5.14.2nohup bin/hive --service metastore &
nohup bin/hive -- service hiveserver2 &
注意:一定要保证mysql的服务正常启动,否则metastore的服务不能够启动
第四步:所有hadoop节点修改hdfs-site.xml添加以下内容
所有节点创建文件夹
sudo mkdir -p /var/run/hdfs-sockets
修改所有节点的hdfs-site.xml添加以下配置,修改完之后重启hdfs集群生效
vim /kkb/install/hadoop-2.6.0-cdh5.14.2/etc/hadoop/hdfs-site.xml<property> <name>dfs.client.read.shortcircuit</name> <value>true</value></property><property> <name>dfs.domain.socket.path</name> <value>/var/run/hdfs-sockets/dn</value></property><property> <name>dfs.client.file-block-storage-locations.timeout.millis</name> <value>10000</value></property><property> <name>dfs.datanode.hdfs-blocks-metadata.enabled</name> <value>true</value></property>
三台机器执行以下命令给文件夹授权
sudo chown -R hadoop:hadoop /var/run/hdfs-sockets/
第五步:重启hdfs
重启hdfs文件系统
node01服务器上面执行以下命令
cd /kkb/install/hadoop-2.6.0-cdh5.14.2/sbin/stop-dfs.shsbin/start-dfs.sh
第六步:创建hadoop与hive的配置文件的连接
impala的配置目录为 /etc/impala/conf
这个路径下面需要把core-site.xml,hdfs-site.xml以及hive-site.xml拷贝到这里来,但是我们这里使用软连接的方式会更好
所有节点执行以下命令创建链接到impala配置目录下来
sudo ln -s /kkb/install/hadoop-2.6.0-cdh5.14.2/etc/hadoop/core-site.xml /etc/impala/conf/core-site.xmlsudo ln -s /kkb/install/hadoop-2.6.0-cdh5.14.2/etc/hadoop/hdfs-site.xml /etc/impala/conf/hdfs-site.xmlsudo ln -s /kkb/install/hive-1.1.0-cdh5.14.2/conf/hive-site.xml /etc/impala/conf/hive-site.xml
第七步:修改impala的配置文件
所有节点修改impala默认配置
所有节点更改impala默认配置文件以及添加mysql的连接驱动包
sudo vim /etc/default/impalaIMPALA_CATALOG_SERVICE_HOST=node03IMPALA_STATE_STORE_HOST=node03所有节点创建mysql的驱动包的软连接sudo mkdir -p /usr/share/javasudo ln -s /kkb/install/hive-1.1.0-cdh5.14.2/lib/mysql-connector-java-5.1.38.jar /usr/share/java/mysql-connector-java.jar
所有节点修改bigtop的java路径
修改bigtop的java_home路径
sudo vim /etc/default/bigtop-utilsexport JAVA_HOME=/kkb/install/jdk1.8.0_141
第八步:启动impala服务
启动impala服务
主节点node03启动以下三个服务进程
sudo service impala-state-store startsudo service impala-catalog startsudo service impala-server start
从节点启动node01与node02启动impala-server
sudo service impala-server start
三台机器可以通过以下命令,查看impala进程是否存在
ps -ef | grep impala
注意:启动之后所有关于impala的日志默认都在/var/log/impala 这个路径下,node03机器上面应该有三个进程,node02与node01机器上面只有一个进程,如果进程个数不对,去对应目录下查看报错日志
浏览器页面访问:
访问impalad的管理界面
http://node03:25000/
访问statestored的管理界面
http://node03:25010/
访问catalog的管理界面
http://node03:25020
7、impala的使用
1、impala-shell语法
1.1、impala-shell的外部命令参数语法
不需要进入到impala-shell交互命令行当中即可执行的命令参数
impala-shell后面执行的时候可以带很多参数:
-h 查看帮助文档
impala-shell -h
-r 刷新整个元数据,数据量大的时候,比较消耗服务器性能
impala-shell -r
-v 查看对应版本
impala-shell -v -V
-f 执行查询文件
cd /kkb/installvim impala-shell.sqlselect * from course.score;通过-f 参数来执行执行的查询文件impala-shell -f impala-shell.sql
-p 显示查询计划
impala-shell -f impala-shell.sql -p
9.1.2、impala-shell的内部命令行参数语法
进入impala-shell命令行之后可以执行的语法
help命令
帮助文档
connect命令
connect hostname 连接到某一台机器上面去执行
refresh 命令
refresh dbname.tablename 增量刷新,刷新某一张表的元数据,主要用于刷新hive当中数据表里面的数据改变的情况
refresh course.score;
invalidate metadata 命令:
invalidate metadata全量刷新,性能消耗较大,主要用于hive当中新建数据库或者数据库表的时候来进行刷新
explain 命令:
用于查看sql语句的执行计划
explain select * from course.score;explain的值可以设置成0,1,2,3等几个值,其中3级别是最高的,可以打印出最全的信息set explain_level=3;
profile命令:
执行sql语句之后执行,可以打印出更加详细的执行步骤,
主要用于查询结果的查看,集群的调优等
select * from course.score;profile;
注意:在hive窗口当中插入的数据或者新建的数据库或者数据库表,在impala当中是不可直接查询到的,需要刷新数据库,在impala-shell当中插入的数据,在impala当中是可以直接查询到的,不需要刷新数据库,其中使用的就是catalog这个服务的功能实现的,catalog是impala1.2版本之后增加的模块功能,主要作用就是同步impala之间的元数据
2、创建数据库
impala-shell进入到impala的交互窗口
2.1、查看所有数据库
show databases;
2.2、创建与删除数据库
创建数据库
CREATE DATABASE IF NOT EXISTS mydb1;drop database if exists mydb;
创建数据库表并指定数据库表数据存放hdfs的位置(与hive建表语法类似)
hdfs dfs -mkdir -p /input/impalacreate external table t3(id int ,name string ,age int ) row format delimited fields terminated by '\t' location '/input/impala/external';
3、 创建数据库表
创建student表CREATE TABLE IF NOT EXISTS mydb1.student (name STRING, age INT, contact INT );创建employ表create table employee (Id INT, name STRING, age INT,address STRING, salary BIGINT);
3.1、 数据库表中插入数据
insert into employee (ID,NAME,AGE,ADDRESS,SALARY)VALUES (1, 'Ramesh', 32, 'Ahmedabad', 20000 );insert into employee values (2, 'Khilan', 25, 'Delhi', 15000 );Insert into employee values (3, 'kaushik', 23, 'Kota', 30000 );Insert into employee values (4, 'Chaitali', 25, 'Mumbai', 35000 );Insert into employee values (5, 'Hardik', 27, 'Bhopal', 40000 );Insert into employee values (6, 'Komal', 22, 'MP', 32000 );
数据的覆盖
Insert overwrite employee values (1, 'Ram', 26, 'Vishakhapatnam', 37000 );执行覆盖之后,表中只剩下了这一条数据了另外一种建表语句create table customer as select * from employee;
3.2、 数据的查询
select * from employee;select name,age from employee;
3.3、 删除表
DROP table mydb1.employee;
3.4、 清空表数据
truncate employee;
3.5、 查看视图数据
select * from employee_view;
4、 order by语句
基础语法
select * from table_name ORDER BY col_name [ASC|DESC] [NULLS FIRST|NULLS LAST]Select * from employee ORDER BY id asc;
5、group by 语句
Select name, sum(salary) from employee Group BY name;
6、 having 语句
基础语法
select * from table_name ORDER BY col_name [ASC|DESC] [NULLS FIRST|NULLS LAST]按年龄对表进行分组,并选择每个组的最大工资,并显示大于20000的工资select max(salary) from employee group by age having max(salary) > 20000;
7、 limit语句
select * from employee order by id limit 4;
8、impala当中的数据表导入几种方式
第一种方式,通过load hdfs的数据到impala当中去
create table user(id int ,name string,age int ) row format delimited fields terminated by "\t";准备数据user.txt并上传到hdfs的 /user/impala路径下去1 hello 152 zhangsan 203 lisi 304 wangwu 50
加载数据
load data inpath '/user/impala/' into table user;
查询加载的数据
select * from user;如果查询不不到数据,那么需要刷新一遍数据表refresh user;
第二种方式:
create table user2 as select * from user;
第三种方式:
insert into 不推荐使用 因为会产生大量的小文件
千万不要把impala当做一个数据库来使用
第四种:
insert into select 用的比较多
9、impala的java开发
在实际工作当中,因为impala的查询比较快,所以可能有会使用到impala来做数据库查询的情况,我们可以通过java代码来进行操作impala的查询
第一步:导入jar包
<repositories> <repository> <id>cloudera</id> <url>https://repository.cloudera.com/artifactory/cloudera-repos/</url> </repository> <repository> <id>central</id> <url>http://repo1.maven.org/maven2/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>false</enabled> </snapshots> </repository> </repositories> <dependencies> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-common</artifactId> <version>2.6.0-cdh5.14.2</version> </dependency> <dependency> <groupId>org.apache.hive</groupId> <artifactId>hive-common</artifactId> <version>1.1.0-cdh5.14.2</version> </dependency> <dependency> <groupId>org.apache.hive</groupId> <artifactId>hive-metastore</artifactId> <version>1.1.0-cdh5.14.2</version> </dependency> <dependency> <groupId>org.apache.hive</groupId> <artifactId>hive-service</artifactId> <version>1.1.0-cdh5.14.2</version> </dependency> <dependency> <groupId>org.apache.hive</groupId> <artifactId>hive-jdbc</artifactId> <version>1.1.0-cdh5.14.2</version> </dependency> <dependency> <groupId>org.apache.hive</groupId> <artifactId>hive-exec</artifactId> <version>1.1.0-cdh5.14.2</version> </dependency> <!-- https://mvnrepository.com/artifact/org.apache.thrift/libfb303 --> <dependency> <groupId>org.apache.thrift</groupId> <artifactId>libfb303</artifactId> <version>0.9.0</version> <type>pom</type> </dependency> <!-- https://mvnrepository.com/artifact/org.apache.thrift/libthrift --> <dependency> <groupId>org.apache.thrift</groupId> <artifactId>libthrift</artifactId> <version>0.9.0</version> <type>pom</type> </dependency> <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <version>4.2.5</version> </dependency> <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpcore</artifactId> <version>4.2.5</version> </dependency> </dependencies>
第二步:impala的java代码查询开发
public class ImpalaJdbc {public static void main(String[] args) throws Exception {//定义连接驱动类,以及连接url和执行的sql**语句 String driver = "org.apache.hive.jdbc.HiveDriver";String driverUrl = "jdbc:hive2://192.168.52.120:21050/mydb1;auth=noSasl";String sql = "select * from student";//通过反射加载数据库连接驱动* Class.forName(driver);Connection connection = DriverManager.getConnection(driverUrl);PreparedStatement preparedStatement = connection.prepareStatement(sql);ResultSet resultSet = preparedStatement.executeQuery();//通过查询,得到数据一共有多少列 int col = resultSet.getMetaData().getColumnCount();//遍历结果集 while (resultSet.next()){for(int i=1;i<=col;i++){System.out.print(resultSet.getString(i)+"\t");}System.out.print("\n");}preparedStatement.close();connection.close();}}
总结
OLAP-impala-大数据Week13-DAY6-impala相关推荐
- 连接impala出现method not supported_Impala在网易大数据的优化和实践
文章作者:温正湖 网易杭研 编辑整理:张博 出品平台:DataFunTalk 导读:网易大数据平台的底层数据查询引擎,选用了Impala作为OLAP查询引擎,不但支撑了网易大数据的交互式查询与自助分析 ...
- Impala在网易大数据的优化和实践
导读:网易大数据平台的底层数据查询引擎,选用了Impala作为OLAP查询引擎,不但支撑了网易大数据的交互式查询与自助分析,还为外部客户提供了商业化的产品与服务.今天将为大家分享下Impala在网易大 ...
- Impala 在网易大数据的优化和实践
导读: 网易大数据平台的底层数据查询引擎,选用了 Impala 作为 OLAP 查询引擎,不但支撑了网易大数据的交互式查询与自助分析,还为外部客户提供了商业化的产品与服务.今天将为大家分享下 Impa ...
- 【讲稿】Impala在网易大数据中使用和优化实践-P2
本文是在2020 DataFunCon上所做分享的讲稿,感谢DataFun团队整理.由于篇幅较长,分为2篇来记录,这是第二篇. 上文:[讲稿]Impala在网易大数据中使用和优化实践-P1 3.基于Z ...
- pb 窗口数据修改sql_大数据hadoop,数据中台选型你应该看到这些分布式数据库
长期以来,由于以hadoop为核心的生态系统霸占了大数据的各个角度,以至于我们以为大数据就是hadoop.诚然,自hadoop诞生以来,hive+hbase掀起第一个高潮,而后Spark和Flink更 ...
- 大数据运维架构师培训(1):Zookeeper,Hadoop(HDFS,MR,Yarn)
一.风哥大数据运维架构师实战培训专题2.0介绍 课程背景: 为满足想学习和掌握大数据运维与体系架构的学员,风哥特别设计的一套比较系统的大数据库运维培训课程. 课程目标: 本套风哥大数据运维架构师实战培 ...
- 大数据开发写sql写烦了,要不要转?
如果说大数据是每天写sql还不太精准(精准的是用各种方式写SQL) **当你不创造东西时,你只会根据自己的感觉而不是能力去看待问题.**会不会转别的,看个人兴趣,大数据方向还有那么多. 瞅瞅方向:如数 ...
- Spark大数据学习资源汇总
转自:http://blog.csdn.net/gaoyanjie55/article/details/31745111 Spark resource 1官方资料 Spark官网及文档 AMPLab ...
- 尚硅谷全套课件整理:Java、前端、大数据、安卓、面试题
目录 Java 尚硅谷 IT 精英计划 JavaSE 内部学习笔记.pdf 尚硅谷 Java 基础实战之银行项目.pdf 尚硅谷 Java 技术之 JDBC.pdf 尚硅谷 Java 技术之 Java ...
- 大数据实时分析平台应用在哪些场景
大数据平台主要是解决对海量多样化的数据源进行数据采集.数据存储,数据分析和数据处理,并提供满足日渐增长的扩展性要求.大数据平台的应用场景,大致可分为如下几个: 场景一:舆情分析 有的客户需要做舆情分析 ...
最新文章
- 裸设备 linux,Linux平台下裸设备的绑定:
- Java Hibernate 二级缓存配置及缓存的统计策略
- 项目学生:带有Jersey的Web服务客户端
- PowerShell中的环境变量
- ansys如何删除线_PR学习之旅:PR预设如何导入,保存和效果重命名呢?诀窍很简单...
- Java Web项目开发从0开始的要点!
- 计算机网络笔记(王道考研) 第一章:计算机网络体系结构
- TTL门电路与CMOS门电路
- html页面数据的维护
- python调用DLL/EXE文件截屏的比较
- 微信小程序授权登录和账号登录
- 认准了,就去做;不跟风,不动摇
- 【运筹学】(2)—预测
- linux系统结束vim进程的指令,Linux/Vim命令(持续更新)
- mac numbers 计算两个日期时间天数 DUR2DAYS
- Android开发循序渐进实例5--网络访问例子
- 高防服务器防御的原理是什么
- matlab/simulink石良臣,《MATLAB/Simulink系统仿真超级学习手册》——2.6 MATLAB的图形绘制...
- Web前端之浅谈css
- TDA4863G完全符合世界标准,经过优化,可为电子镇流器和离线式SMPS提供极其紧凑且经济高效的PFC解决方案
热门文章
- 【Hive】字符串函数
- 【Oracle】查询当前SCN
- 【JSTL】<c:if test=“”>没有else的解决方法
- [29/May/2017 10:56:52] “GET /static/css/stylee.css HTTP/1.1“ 404 1859 【附带解决方案】
- 安全的API接口解决方案
- 如何为curl命令添加数据?
- 如何在熊猫数据框的列中将所有NaN值替换为零
- 设置HttpClient的授权标头
- 中心频点计算公式_LTE网各频段中心频点的计算方法_刘20170105
- 修改网页代码_利用网页监控优势,做百度自动推送