学习
Michael-DM
普通大二学生,博客用于学习和回顾,如有错误请私信帮助改正,谢谢
展开
-
帧布局,表格布局,网格布局,约束布局
1.帧布局属性//设置前景图片android:foreground="@mipmap/ic_launcher"//设置前景放置的位置android:foregroundGravity="right|bottom"2.表格布局如果在TableLayout中添加控件,那么控件将和父容器等宽如果想让控件出现在同一行,那么这些控件外面要加一对<TableRow>标签属性://设置可伸展的列,会自动伸展填充整行空余,输入对应索引或者直接* android:stretchColumn原创 2020-07-15 17:21:30 · 257 阅读 · 0 评论 -
无焦点提示,页面跳转
//参数:1.需要显示的activity页面的对象//2.提示的内容//3.提示时间,有两个常量:Toast.LENGTH_SHORT,Toast.LENGTH_LONGToast.makeText(this,"提示",Toast.LENGTH_SHORT)//show方法显示出来.show();原创 2020-07-13 22:32:43 · 138 阅读 · 0 评论 -
ui基础控件
1.TextView文本控件属性://设置字体长度,单位spandroid:textSize="28sp"//设置字体颜色android:textColor="#00ffff"//设置字体行距android:lineSpacingMultiplier="1.1"android:lineSpacingExtra="6sp"//设置成只显示1行android:singleLine="true"android:lines="1"//隐藏行数时省略号显示的位置,marquee为跑马灯and原创 2020-07-13 22:23:32 · 219 阅读 · 0 评论 -
添加布局,线性布局和相对布局
1.代码方式编写MainActivity方法protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //根布局设置为线性布局,新建一个LinearLayout LinearLayout ll = new LinearLayout(this); //通过setLayoutParams方法设置宽高,参数新建一个Layout原创 2020-07-12 22:59:11 · 548 阅读 · 0 评论 -
flume案例
先丢个官网1.入门案例写配置文件# a1:agent名称 r1:source名称 k1:sink名称 c1:channel名称a1.sources = r1a1.sinks = k1a1.channels = c1# 设置source参数,这边设置了source类型netcat,绑定192.168.0.133,端口44444a1.sources.r1.type ...原创 2020-04-07 19:45:44 · 260 阅读 · 0 评论 -
Hbase API操作
首先我们要获得连接 //新建一个Configuration用于放置连接参数 Configuration conf = new Configuration(); //往Configuration里设置参数,需要设置存储位置和zoopeeper接口,这个可以在hbase-site.xml中查看 conf.set("hbase.rootdir","hdfs://192.168...原创 2020-03-29 21:25:23 · 225 阅读 · 0 评论 -
Storm整合Kafka
先丢个官网链接本章博客依赖官网第一步,先放依赖://为了防止冲突,我们用exclusion将log4j依赖排除<dependency> <groupId>org.apache.kafka</groupId> <artifactId>kafka-clients</artifactId> <v...原创 2020-03-25 19:47:53 · 179 阅读 · 0 评论 -
Spark整合Kudu-读写操作操作
先加依赖:<dependency> <groupId>org.apache.kudu</groupId> <artifactId>kudu-spark2_2.11</artifactId> <version>1.7.0</version>&...原创 2020-03-24 20:34:39 · 1821 阅读 · 0 评论 -
Spark整合Kudu-创建表和增删改查操作
开启kudu:sudo /etc/init.d/kudu-tserver startsudo /etc/init.d/kudu-masterstart首先你需要添加依赖<dependency> <groupId>org.apache.kudu</groupId> <artifactId>kudu-client<...原创 2020-03-24 20:13:58 · 2391 阅读 · 1 评论 -
Storm整合Hbase
先丢个官网链接本章博客依赖官网第一步,先放依赖://为了防止冲突,我们用exclusion将hadoopClient和hadoopAuth排除<dependency> <groupId>org.apache.storm</groupId> <artifactId>storm-hbase</artifactId&g...原创 2020-03-24 18:06:56 · 242 阅读 · 0 评论 -
Storm整合HDFS
先丢个官网链接本章博客依赖官网第一步,先放依赖://为了防止冲突,我们用exclusion将hadoopClient和hadoopAuth排除<dependency> <groupId>org.apache.storm</groupId> <artifactId>storm-hdfs</artifactId>...原创 2020-03-24 08:28:42 · 121 阅读 · 0 评论 -
Storm整合JDBC
先丢个官网链接本章博客依赖官网第一步,先放依赖:<dependency> <groupId>org.apache.storm</groupId> <artifactId>storm-jdbc</artifactId> <version>${storm.version}</version>...原创 2020-03-24 07:59:59 · 94 阅读 · 0 评论 -
Storm整合Redis
先丢个官网链接本章博客依赖官网第一步,先放依赖:<dependency> <groupId>org.apache.storm</groupId> <artifactId>storm-redis</artifactId> <version>${storm.version}</version&g...原创 2020-03-24 00:29:31 · 209 阅读 · 0 评论 -
RDD转DF的两种方式
1.第一种方式:首先我们展示一下数据文件:Michael, 29Andy, 30Justin, 19然后我们开始编写第一种实现方法:先写一个case calss,然后再map方式将数据转换成people形式通过toDF直接转换def run1(sparkSession: SparkSession): Unit = { //隐式转换 import sparkSession.im...原创 2020-03-23 22:30:49 · 4760 阅读 · 0 评论 -
Spark SQL内置函数和自定义函数使用
1.内置函数准备工作,先写个main方法,准备一些数据def main(args: Array[String]): Unit = { val spark: SparkSession = SparkSession.builder() .master("local").appName("HiveSourceApp") .getOrCreate() //准...原创 2020-03-23 20:04:42 · 684 阅读 · 0 评论 -
thriftserver和beeline的使用,代码连接server(连接hive)
启动thriftserver:./sbin/start-thriftserver.sh --master local --jars ~/software/mysql-connector-java-5.1.27-bin.jar–master ;指定运行模式–jars :导入mysql依赖包这样就算启动成功了接下来启动beeline./bin/beeline -u jdbc:hi...原创 2020-03-23 17:47:23 · 462 阅读 · 0 评论 -
Spark对接Hive
我们要使用spark对接hive,首先要把hive-site.xml拷贝到$SPARK_HOME/conf下,接下来我们测试一下使用spark-shell测试:./bin/spark-shell --master local[2] --jars ~/software/mysql-connector-java-5.1.27-bin.jar –master指定运行模式-jars 由于我们要...原创 2020-03-23 17:22:10 · 159 阅读 · 0 评论 -
Storm:本地模式DRPC,远程模式DRPC
先甩个官网链接1.本地模式DRPC首先写一个类继承BaseRichBoltpublic static class MyBlot extends BaseRichBolt{ //数据需要发送,所以将OutputCollector 定义出去 OutputCollector collector; @Override public...原创 2020-03-23 16:43:00 · 229 阅读 · 0 评论 -
基于Hadoop的RPC实现
如果要使用RPC,首先需要导入hadoop-client的依赖<dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-client</artifactId> <version>2.6.0</versio...原创 2020-03-23 14:51:16 · 121 阅读 · 0 评论 -
Storm分组策略
Storm目前有八种分组策略官网链接1.Shuffle Grouping随机分组,我们使用代码测试一下我们使用之前的求和案例进行修改只需要在Bolt的execute代码中打印一下线程id//num是接收过来的数据System.out.println("Thread id = "+Thread.currentThread().getId() + " , rece date is" + ...原创 2020-03-22 16:55:48 · 238 阅读 · 0 评论 -
Storm并行度代码调整方式
1.Worker设置先丢个官网链接这里我们以之前的求和为案例,修改main方法内容public static void main(String[] args) throws InvalidTopologyException, AuthorizationException, AlreadyAliveException { TopologyBuilder builder = ne...原创 2020-03-22 15:26:41 · 161 阅读 · 0 评论 -
logstash整合kafka
1.启动相关程序启动zookepper./bin.zKserver,sh start启动KafkaServer./bin/kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties 创建一个topic(详细见Kafka命令解读)./bin/kafka-topics.sh --create --zookeepe...原创 2020-03-21 19:45:18 · 240 阅读 · 0 评论 -
Kafka命令解读,Kafka入门
1.启动kafka首先保证zoopeeper已经启动,然后开始启动kafka-daemon:是否已后台方式启动第二个参数需要指定server.properties./bin/kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties 查看jps发现多一个名为Kafka的进程2.创建Topic第一个...原创 2020-03-21 18:12:55 · 376 阅读 · 0 评论 -
Logstash简单入门使用
1.下载安装Logstash首先需要下载安装Logstashelastic官网链接各个版本下载地址版本选择时请考虑兼容性问题,我这里选择了2.4.1网络不好的同学请多尝试几次下载后直接解压至安装目录就行了,这里不多做赘述2.尝试第一个Logstash先运行最基本的Logstash管道cd logstash-7.6.1bin/logstash -e ‘input { stdin...原创 2020-03-21 16:31:59 · 141 阅读 · 0 评论 -
Spark-Datasource-API操作
Spark-Datasource-API操作1.text数据源读写操作写操作时应用mode(“overwritew”)函数,表示如果目标文件夹已存在,那么会覆盖,详情见2def text(spark: SparkSession): Unit ={ //隐式转换 import spark.implicits._ //读操作 val df: DataFrame = sp...原创 2020-03-21 15:47:40 · 188 阅读 · 0 评论 -
使用Java API操作HDFS文件系统
使用Java API操作HDFS文件系统关键点:1)创建Configuration2)获取FileSystem3)…就是你的HDFS API的操作首先创建FileSystem 构造一个访问指定HDFS系统的客户端对象 第一个参数:HDFS的URI 第二个参数:客户端指定的配置参数 第三个参数:客户端的身份,说白了就是用户名FileSystemfi...原创 2020-03-19 23:44:34 · 916 阅读 · 0 评论 -
Spark编程,Spark-shell使用方法,Spark-submit运行模式
1.第一个Spark程序:WordCount第一步:创建sparkContextsetMaster:运行模式setAppName:设置appName val sparkConf = new SparkConf().setMaster("local").setAppName("SparkWordCountApp") val sc = new SparkContext(sparkC...原创 2020-03-20 01:19:18 · 519 阅读 · 0 评论 -
SparkSql API,Spark DataSet 和DataFrame使用
1.SparkSessionSparkSession就是设计出来合并SparkContext和SQLContext的。我建议能用SparkSession就尽量用。如果发现有些API不在SparkSession中,你还是可以通过SparkSession来拿到SparkContext和SQLContex的。val context: SparkContext = sparkSession.spark...原创 2020-03-20 02:03:45 · 232 阅读 · 0 评论 -
Storm API(ISpout,IComponent,IBolt)
1.ISpoutISpout是一个核心接口,用于将数据以Tuple方式发送至topology去执行,每个Tuple都会通过一个spout发射出去,storm将会跟踪整个DAG,当storm发现每个Tuple都被成功处理了,那么他就会发送一个ack数据给Spout.如果Tuple执行失败,他就会在topology配置一个timeout,storm会把错误信息发送给Spout当一个spout发送...原创 2020-03-20 18:01:23 · 253 阅读 · 0 评论 -
Storm案例:求和
Storm案例:求和,WordCountA.求和案例首先定义一个类继承BaseRichSpout,需要实现其方法,在这个类你需要产生数据并发送出去public static class DataSourceSpout extends BaseRichSpout { @Override public void open(Map conf, TopologyC...原创 2020-03-20 19:37:44 · 145 阅读 · 0 评论 -
Storm案例:WordCount
Storm案例:WordCountB.WordCount首先定义一个类继承BaseRichSpout,需要实现其方法,在这个类你需要产生数据并发送出去public static class DataSourceSpout extends BaseRichSpout { @Override public void open(Map conf, Topolog...原创 2020-03-20 20:06:33 · 407 阅读 · 0 评论 -
MapReduce实现WordCount
MapReduce实现WordCount1.实现mapperKEYIN: Map任务读数据的key类型,offset,是每行数据起始位置的偏移量,LongVALUEIN:Map任务读数据的value类型,其实就是一行行的字符串,StringKEYOUT: map方法自定义实现输出的key的类型,String VALUEOUT:map方法自定义实现输出的value的类型,Integer...原创 2020-03-20 00:11:52 · 156 阅读 · 0 评论