HBase1.4.12

centos7 hbase1.4.13+hadoop2.7.1+单机环境搭建 我的原创地址:https://dongkelun.com/2020/08/14/hbaseConf/ 前言 因后续要学习研究hbase,那就先从搭建hbase开始吧。先搭建一个单机版的,方便自己学习使用。 安装配置hadoop 参考我的另一篇文章:centos7 hadoop 单机模式安装配置 注:这里的JDK为1.8,版本支持如图 下载hbase 下载地址:http://mirror.bit.edu.cn/apache/hbase/ 我下载的是hbase-1.4.13-bin.tar.gz ( 阅读详情

介绍

当您需要对大数据进行随机、实时的读写访问时,请使用Apache HBase™。该项目的目标是在普通硬件集群上托管非常大的表(数十亿行X数百万列)。Apache HBase是一个开源的、分布式的、版本化的、非关系型数据库,它模仿了谷歌的Bigtable:一个用于结构化数据的分布式存储系统。正如Bigtable利用谷歌文件系统提供的分布式数据存储一样,Apache HBase在Hadoop和HDFS之上提供了类似Bigtable的功能。

 

版本

HBase与Java版本,我们使用JDK8

HBase与Hadoop版本,Hadoop版本是2.7.7所以HBase选择1.4.12

编译

HBase源码编译:https://blog.youkuaiyun.com/DataIntel_XiAn/article/details/99874230

 

安装

修改hbase-env.sh中的Java目录

export JAVA_HOME=/opt/java
export HBASE_MANAGES_ZK=false

 修改hbase-site.xml

	<!-- 指定 hbase 在 HDFS 上存储的路径 -->
	<property>
		<name>hbase.rootdir</name>
		<value>hdfs://hadoop:9000/user/hbase</value>
	</property>
	<!-- 指定 hbase 是分布式的 -->
	<property>
		<name>hbase.cluster.distributed</name>
		<value>true</value>
	</property>
	<property>
		<name>hbase.zookeeper.quorum</name>
		<value>hadoop</value>
	</property>
	<property>
		<name>hbase.zookeeper.property.clientPort</name>
		<value>2181</value>
	</property>

修改regionservers

echo hadoop > regionservers

 

启动

start-hbase.sh

警告:在JDK1.8之后是不存在PermSize

running master, logging to /home/hadoop/hbase/logs/hbase-hadoop-master-hadoop.out
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0
hadoop: running regionserver, logging to /home/hadoop/hbase/bin/../logs/hbase-hadoop-regionserver-hadoop.out
hadoop: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
hadoop: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0

在配置文件中将以下两个属性注释掉

# Configure PermSize. Only needed in JDK7. You can safely remove it for JDK8+
export HBASE_MASTER_OPTS="$HBASE_MASTER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m -XX:ReservedCodeCacheSize=256m"
export HBASE_REGIONSERVER_OPTS="$HBASE_REGIONSERVER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m -XX:ReservedCodeCacheSize=256m"

 

测试

登录:http://hadoop:16010/master-status

至此,HBase就安装成功了!

安装HBase-2.4.12 (hadoop3.3.1) 1. 下载 https://www.apache.org/dyn/closer.lua/hbase/2.4.12/hbase-2.4.12-bin.tar.gz 2. 解压下载的文件,并切换到新创建的目录。 (base) [root@node001 bao]# tar -zxvf hbase-2.4.12-bin.tar.gz -C ../src (base) [root@node001 bao]# cd ../src/hbase-2.4.12/conf 3. 配置JAVA_HOME (base) [r 阅读详情

相关推荐

hbase-1.4.12-src.tar.gz

这是一个hbase 版本为1.4.12 的源码包

HBase(1.4.13)安装和使用

HBase 1.4.12 安装与使用 (单机模式) 安装 下载 安装 使用 常用命令 软件安装 下载 官网地址: http://hbase.apache.org/ 下载列表: http://hbase.apache.org/downloads.html 当前使用版本下载地址: http://mirror.bit.edu.cn/apache/hbase/hbase-1.4.12/hba...

BrandoLv 4487

HBase1.4.13安装步骤

在学习过程中需要安装HBase,经过学习很多有经验的人的安装步骤,在不断尝试后安装成功,希望可以对大家有所帮助,也期待各位大佬的指正让我有所学习。

java操作hbase1.4_HBase的使用

HBase是一个在HDFS上开发的面向列的分布式数据库。如果需要实时地随机访问超大规模数据集,就可以使用HBase。本篇介绍HBase的基础知识,包括安装配置、部署运行、表的创建和Java api的使用。一、安装1.2 安装HBase将下载的压缩包解压到安装目录。tar -zxvf 压缩包 安装目录1.3 配置HBaseHBase有两个运行模式:单机模式和分布式模式。而分布式模式有分为伪分布式模式...

weixin_29646607的博客 525

CST仿真实例001:圆极化平板天线仿真

CST仿真实例001:圆极化平板天线仿真实例

weixin_47638568的博客 1万+

STM32接入CH340芯片的升级电路及初始化进入升级模式(死机)问题处理

MCU-REST 在 MCU-BOOT0 处于低电平状态下,进行下拉操作,在MCU-REST 与 MCU-BOOT0 恢复正常电平时,将导致MCU死机,MCU-REST 先于 MCU-BOOT0 下拉可解决该问题;MCU-REST 在 上升沿结束时将判断 MCU-BOOT0 的状态,MCU-BOOT0 处于高电平,MCU死机,MCU-BOOT0 处于低电平 MCU 正常;

LuDvei的博客 2493

hbase 1.4.13 安装部署

认识HBase HBase介绍 HBase = Hadoop database,Hadoop数据库 开源数据库 官网:hbase.apache.org/ HBase源于Google的BigTable Apache HBase™是Hadoop数据库,是一个分布式,可扩展的大数据存储。 当需要对大数据进行随机、实时读/写访问时,请使用Apache HBase™。该项目的目标是托管非常大的表 - 数十亿行X百万列 - 在商品硬件集群上。Apache HBase是一个开源的,分布式的,版本化的非关系数据库nosql

Little_fxc的博客 814

ADS新手必看:5分钟搞定Smith圆图阻抗匹配(附详细操作截图)

本文为射频电路设计新手提供了在ADS软件中快速使用Smith圆图进行阻抗匹配的实战指南。通过清晰的步骤和操作截图,详细演示了如何从负载阻抗点出发,通过添加电感和电容元件,在5分钟内完成向50欧姆标准阻抗的匹配,并介绍了仿真验证与性能调优的方法,帮助工程师和学生直观掌握这一核心技能。

weixin_29261711的博客 394

hbase1.4.0安装和使用

jia下载地址:  http://mirrors.shuosc.org/apache/hbase/1.4.0/ 解压 tar -zxvf hbase-1.4.0-bin.tar.gz 修改环境变量 [root@10 hbase-1.4.0]# vi /etc/profile [root@10 hbase-1.4.0]# source /etc/profile 添加内容: export HBA...

weixin_33860147的博客 303

从代码学习深度强化学习 - 目标导向的强化学习-HER算法 PyTorch版

经典的深度强化学习算法,如 PPO、SAC 等,在各自擅长的任务中都取得了非常好的效果。但它们通常都局限在解决单个任务上,换句话说,训练好的算法,在运行时也只能完成一个特定的任务。想象一个场景:我们想让一个机械臂能把桌子上的任何一个物体重置到任意一个指定位置。对于传统强化学习而言,如果目标物体的初始位置和目标位置每次都变化,那么这就是一个全新的任务。即便任务的“格式”——抓取并移动——是一样的,但策略本身可能需要重新训练。这显然效率极低。为了解决这类问题,

weixin_43887510的博客 1502

FreeCAD MCP实战:用自然语言驱动AI建模,效率提升10倍

MCP(Model Context Protocol)是一种让AI模型调用外部工具和数据的协议标准,通过标准化通信层解决AI与CAD软件之间的交互难题。其原理是向AI暴露工具清单,AI根据自然语言需求自动选择工具并填充参数。在工程实践中,这一技术显著降低了CAD建模门槛,将重复性操作从手动点击转为语音指令,适用于批量零件生成、参数化设计等场景。FreeCAD作为开源CAD,凭借开放的Python API和脚本化能力,成为落地MCP的理想平台。本文基于FreeCAD MCP的实操经验,分享环境搭建、自然语言建

weixin_31188927的博客 325

解决hbase shell 启动失败问题-hbase 2.4.12-hadoop 3.3.1

1. 方案 看hbase官网这两个版本应该是兼容的,但是实际上有包冲突,解决方案是用hadoop包替换hbase的包。 hbase 2.4.12 hadoop 3.3.1 2.报错 2.1 启动hbase shell 报错 java.lang.NoSuchMethodError: jline.console.completer---- (base) [root@node001 logs]# hbase shell LoadError: load error: irb/completion -- java.l

韦不二的博客 5233

叶绿体基因组提交NCBI全流程避坑指南

叶绿体基因组作为环状细胞器DNA,其数据提交并非简单上传,而是需严格遵循INSDC标准的学术出版行为。其核心原理在于元数据完整性、拓扑结构语义一致性与分类学路径精确匹配;技术价值体现在保障序列可追溯、可复现、可互操作;典型应用场景涵盖植物系统发育、条形码开发及合成生物学底盘构建。实践中,FASTA头行格式、feature table嵌套规则、taxid绑定及BankIt静默校验等环节极易引发失败。本文聚焦NCBI|叶绿体基因组数据上传中的高频报错与隐性约束,提供面向生物信息工程师的实操级规范解析。

weixin_31960565的博客 329

Centos7 搭建Hadoop3.0.3 +Zookeeper3.4.12+HBase2.1.0

安装包资源 JDK1.8 Hadoop3.0.3 Zookeeper3.4.12 HBase2.1.0 服务器资源 IP地址 hostname 是否NameNode 是否DataNode 192.168.60.204 master 是 否 192.168.60.205 node1 否 是 1、Ce...

zhouzhiwengang的专栏 1406

使用MATLAB和Simulink来设计并仿真一个智能家居火灾报警系统

智能家居火灾报警系统旨在通过烟雾传感器、温度传感器等设备监测家庭环境,一旦检测到异常情况(如烟雾或温度骤升),立即触发警报并采取相应措施。在这个教程中,我们将使用MATLAB和Simulink来设计并仿真一个智能家居火灾报警系统,包括数据采集、处理以及响应机制。

amy_mhd的博客 162

RK3568平台开发系列讲解(中断及异常篇)中断下半部:中断线程化

以前用 work 来线程化地处理中断,一个 worker 线程只能由一个 CPU 执行, 多个中断的 work 都由同一个 worker 线程来处理,在单 CPU 系统中也只能忍着 了。少数中断不能线程化,典型的例子是时钟中断,有些流氓进程不主动让出处理器,内核只能依靠周期性的时钟中断夺回处理器的控制权,时钟中断是调度器的脉搏。中断处理线程是优先级为50、调度策略是SCHED_FIFO的实时内核线程,名称是“irq/”后面跟着Linux中断号,线程处理函数是。,说明是线程化的中断,那么唤醒中断处理线程。

内核笔记 435

hbase数据库---slf4j-log4j12-1.6.4.jar包冲突

当启动hbase shell之后,报如下错误: [root@hadoop1 bin]# hbase shell 2015-03-10 15:39:25,967 INFO  [main] Configuration.deprecation: hadoop.native.lib is deprecated. Instead, use io.native.lib.available HBase S

大数据技术杂谈 3485

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

hadoop1.2.1+zk-3.4.4+hbase-0.94.12集群安装

hadoop1.2.1+zk-3.4.4+hbase-0.94.12集群安装系统环境:CentOS release 6.3 (Final)软件版本:hadoop1.2.1zk-3.4.4hbase-0.94.12主机规划:集群中包括3个节点:hadoop01为Master,其余为Salve,节点之间局域网连接,可以相互ping通IP地址节点名192.168.1.138hado...

weixin_34268169的博客 178

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

实操 | Flink1.12.1通过Table API / Flink SQL读取HBase2.4.0

点击上方蓝色字体,选择“设为星标”回复”资源“获取更多资源昨天群里有人问 Flink 1.12 读取Hbase的问题,于是看到这篇文章分享给大家。本文作者Ashiamd。1. 环境废话不多...

微信搜:import_bigdata,大数据领域硬核原创作者 1055

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

ubuntu12.04+hadoop2.2.0+zookeeper3.4.5+hbase0.96.2+hive0.13.1伪分布式环境部署

目录目录 前言 hadoop220zookeeper345hbase0962hive0131都是什么 这些软件在哪里下载 如何安装 1 安装JDK当前主机名为m1 2 用parallels克隆3台机器 3 安装Zookeeper-345 4 安装hadoop220 如何使用 1 启动zookeeper 2 启动JournalNode集群 3 Hbase-0962-hadoop2 4 在ubuntu1

迦壹的博墅 1548

CentOS7配置Zookeeper+Hbase2.4.12+Phoenix5.1.2,用DBeaver工具可视化连接hbase

hbase

Xeon_CC的博客 2587

Flink1.12.1 通过Table API / Flink SQL读取HBase2.4.0

1. 环境 废话不多说,这里用到的环境如下(不确定是否都必要,但是至少我是这个环境) zookeeper 3.6.2 Hbase 2.4.0 Flink 1.12.1 2. HBase表 # 创建表 create 'u_m_01' , 'u_m_r' # 插入数据 put 'u_m_01', 'a,A', 'u_m_r:r' , '1' put 'u_m_01', 'a,B', 'u_m_r:r' , '3' put 'u_m_01', 'b,B', 'u_m_r:r'

yang灬仔 951

hadoop2.7.4+hbase1.1.12+phoenix maven配置

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/ma...

weixin_34019144的博客 173

实验四 HBase开发:使用java操作HBase

一、实验目的 熟悉HBase数据库操作常用的Java API 二、实验平台 操作系统:CentOS 8 Hadoop版本:3.2.3 HBase版本:2.4.12 jdk版本:1.8 Java IDE:eclipse 三、实验过程 1. 创建表

Lilianach的博客 2万+

hbase 2.0.1安装

机器环境是:zookeeper 3.4.12 和hbase 2.0.1。 一、 zookeeper安装 1. 解压 tar zxf zookeeper-3.4.12.tar.gz -C /opt/modules/ 2. 修改配置 cp conf/zoo_sample.cfg zoo.cfg mkdir zkData vi zoo.cfg dataDir=/opt/modules/zookeeper...

heima201907的博客 155
上一篇: Hue整合Yarn
下一篇: Hue整合HBase
Mr.ChowSit
博客等级 码龄11年 30粉丝 87原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值