<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[C_time的博客]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/C_time</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; C_time]]></copyright><item><title><![CDATA[优化代码逻辑之 K-近邻算法之鸢尾花实例 使用Spark实现KNN的Demo2]]></title><link>https://blog.csdn.net/C_time/article/details/103774246</link><guid>https://blog.csdn.net/C_time/article/details/103774246</guid><author>C_time</author><pubDate>Mon, 30 Dec 2019 22:01:00 +0800</pubDate><description><![CDATA[这篇代码是KNN的优化，代码就是
flatMap里面的结构转换
和aggregate的应用感觉有点难理解
但是思想简单
首先要知道这个优化是基于 有个大数据的思想：分而治之
求出一份数据最大的前一百个数 如果数据太多，内存太小，则将数据切割成多份
每份求出前一百 然后这多份的前一百再求出真正的前一百
TODO 优化的地方
使用 广播变量进行广播
2、没有跟上一个代码一样嵌套两层循环 比如y在外面 ...]]></description><category></category></item><item><title><![CDATA[K-近邻算法之鸢尾花实例 使用Spark实现KNN的Demo]]></title><link>https://blog.csdn.net/C_time/article/details/103769441</link><guid>https://blog.csdn.net/C_time/article/details/103769441</guid><author>C_time</author><pubDate>Mon, 30 Dec 2019 17:15:51 +0800</pubDate><description><![CDATA[1.1 K-近邻算法(KNN)概念
K Nearest Neighbor算法又叫KNN算法，这个算法是机器学习里面一个比较经典的算法， 总体来说KNN算法是相对比较容易理解的算法
定义
如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别，则该样本也属于这个类别。
来源：KNN算法最早是由Cover和Hart提出的一种分类算法
距离公式
两个样本的距离可以通过如...]]></description><category></category></item><item><title><![CDATA[Spark读取json文件优化]]></title><link>https://blog.csdn.net/C_time/article/details/103743080</link><guid>https://blog.csdn.net/C_time/article/details/103743080</guid><author>C_time</author><pubDate>Sat, 28 Dec 2019 12:02:49 +0800</pubDate><description><![CDATA[转载自过往记忆（https://www.iteblog.com/）
在我们的 AB 测试实验中，用于跟踪数据的文件按年、月和日划分到不同文件夹中，文中中每一行都是一个 JSON 字符串，每天可能有几百个 JSON 文件。如果上面代码中的 bucketPeriod 代表需要查询的天列表，那么对于每天的数据会调用 getAnalytics 函数去遍历每天对应的文件夹下面的 json 文件，程序得到了每...]]></description><category></category></item><item><title><![CDATA[SparkStreaming与Kafka010之06 SparkStreaming读取kafka数据再写出到kafka Consumer/ Producer]]></title><link>https://blog.csdn.net/C_time/article/details/103719939</link><guid>https://blog.csdn.net/C_time/article/details/103719939</guid><author>C_time</author><pubDate>Thu, 26 Dec 2019 19:18:51 +0800</pubDate><description><![CDATA[kafka -&gt; sparkStreaming -&gt; kafka
package Kafka010


import Kafka010.Utils.MyKafkaUtils
import org.apache.kafka.clients.consumer.ConsumerRecord
import org.apache.kafka.clients.producer.{KafkaProd...]]></description><category></category></item><item><title><![CDATA[SparkStreaming与Kafka010之05 监控Spark程序 获取Metrics信息 addStreamingListener或读取http信息解析json串]]></title><link>https://blog.csdn.net/C_time/article/details/103717603</link><guid>https://blog.csdn.net/C_time/article/details/103717603</guid><author>C_time</author><pubDate>Thu, 26 Dec 2019 17:32:14 +0800</pubDate><description><![CDATA[要获取Metrics信息，监控
1.加监听：
新的办法，直接一句话搞定
ssc. addSparkStreamingListener
SparkStreaming、spark程序都能加监听
只适合spark 2.2.0以上版本 ssc. addSparkStreamingListener
2.老办法：解析Metrics的json串信息 好像是http请求之类的返回json串
而且一般请求的4040...]]></description><category></category></item><item><title><![CDATA[SparkStreaming与Kafka010之05之04 广播变量的变化重置 与redis监控的结合]]></title><link>https://blog.csdn.net/C_time/article/details/103716658</link><guid>https://blog.csdn.net/C_time/article/details/103716658</guid><author>C_time</author><pubDate>Thu, 26 Dec 2019 16:09:19 +0800</pubDate><description><![CDATA[1.这个记录的实例就是说，接了上一篇的代码修改，加了广播变量的东西。
我在mysql存的某个规则，
我启动sparkStreaming程序的时候使用broadcast广播出去，注意这个就仅执行一次的
然后吧在redis有这么一个kv作为标志，比如说flag=true，每次sparkStreaming程序程序处理数据用到规则之前，都要先到redis看一下这个标志位变没变。
如果有其他程序或者人为修改...]]></description><category></category></item><item><title><![CDATA[SparkStreaming与Kafka010之03 Consumer的offset 从外部存储Redis读取并保存offsets，]]></title><link>https://blog.csdn.net/C_time/article/details/103715487</link><guid>https://blog.csdn.net/C_time/article/details/103715487</guid><author>C_time</author><pubDate>Thu, 26 Dec 2019 15:22:33 +0800</pubDate><description><![CDATA[1.这个文章记录我从redis管理kafka的Consumer的offsets，是sparkStreaming作为Consumer的
版本的话kafka010，sparkStreaming 2.2.0，redis应该2.9.0 pom文件放在最后
2.主要的代码就两个
一个是Kafka010Demo03，
另一个就是RedisUtilsDemo。
然后其他就是连接redis读取配置文件的代码了。
...]]></description><category></category></item><item><title><![CDATA[Kafka0-10版本之00 Producer生产者的简单使用，往kafka循环打入数据]]></title><link>https://blog.csdn.net/C_time/article/details/103715390</link><guid>https://blog.csdn.net/C_time/article/details/103715390</guid><author>C_time</author><pubDate>Thu, 26 Dec 2019 14:51:17 +0800</pubDate><description><![CDATA[package Kafka010.Utils

import java.util.Properties

import org.apache.kafka.clients.producer.{KafkaProducer, ProducerConfig, ProducerRecord}

/**
 * Created by Shi shuai RollerQing on 2019/12/24 20:1...]]></description><category></category></item><item><title><![CDATA[SparkStreaming与Kafka010之05之02 Consumer的offset 自定义设置offset]]></title><link>https://blog.csdn.net/C_time/article/details/103689771</link><guid>https://blog.csdn.net/C_time/article/details/103689771</guid><author>C_time</author><pubDate>Tue, 24 Dec 2019 21:04:19 +0800</pubDate><description><![CDATA[package Kafka010

import Kafka010.Utils.MyKafkaUtils
import org.apache.kafka.clients.consumer.ConsumerRecord
import org.apache.kafka.common.TopicPartition
import org.apache.spark.SparkConf
import org....]]></description><category></category></item><item><title><![CDATA[SparkStreaming与Kafka010之05之01 Consumer]]></title><link>https://blog.csdn.net/C_time/article/details/103689139</link><guid>https://blog.csdn.net/C_time/article/details/103689139</guid><author>C_time</author><pubDate>Tue, 24 Dec 2019 20:17:05 +0800</pubDate><description><![CDATA[package Kafka010

import Kafka010.Utils.MyKafkaUtils
import org.apache.kafka.clients.consumer.ConsumerRecord
import org.apache.spark.SparkConf
import org.apache.spark.streaming.dstream.InputDStream
im...]]></description><category></category></item><item><title><![CDATA[SparkStreamingOffsetMysql将偏移量保存到MySQL中]]></title><link>https://blog.csdn.net/C_time/article/details/103642048</link><guid>https://blog.csdn.net/C_time/article/details/103642048</guid><author>C_time</author><pubDate>Sat, 21 Dec 2019 10:46:08 +0800</pubDate><description><![CDATA[&lt;dependency&gt;
&lt;dependency&gt;
            &lt;groupId&gt;org.apache.spark&lt;/groupId&gt;
            &lt;artifactId&gt;spark-streaming_2.11&lt;/artifactId&gt;
            &lt;version&gt;${spa...]]></description><category></category></item><item><title><![CDATA[Flink之自定义JDBC Sink 写入mysql数据]]></title><link>https://blog.csdn.net/C_time/article/details/103618695</link><guid>https://blog.csdn.net/C_time/article/details/103618695</guid><author>C_time</author><pubDate>Thu, 19 Dec 2019 17:46:11 +0800</pubDate><description><![CDATA[先建表

数据
sensor_1, 1547718199, 35.80018327300259
sensor_6, 1547718201, 15.402984393403084
sensor_7, 1547718202, 6.720945201171228
sensor_10, 1547718205, 38.101067604893444
sensor_1, 1547718206, 35.1
se...]]></description><category></category></item><item><title><![CDATA[Flink之自定义Source]]></title><link>https://blog.csdn.net/C_time/article/details/103608878</link><guid>https://blog.csdn.net/C_time/article/details/103608878</guid><author>C_time</author><pubDate>Thu, 19 Dec 2019 09:39:50 +0800</pubDate><description><![CDATA[主函数
有4中读取数据方式
1.从集合中读取数据env.fromCollection(List(…))
2.从文件中读取数据env.readTextFile(path)
3.从kafka中读取数据 env.addSource(new FlinkKafkaConsumer[String](“sensor”, new SimpleStringSchema(), properties))
4. 第四种就...]]></description><category></category></item><item><title><![CDATA[Flink的WordCount实现（Java和Scala）]]></title><link>https://blog.csdn.net/C_time/article/details/103567071</link><guid>https://blog.csdn.net/C_time/article/details/103567071</guid><author>C_time</author><pubDate>Mon, 16 Dec 2019 19:54:10 +0800</pubDate><description><![CDATA[Java实现WordCount
package com.flink.Java;

import org.apache.flink.api.common.functions.FlatMapFunction;
import org.apache.flink.api.java.tuple.Tuple;
import org.apache.flink.api.java.utils.ParameterToo...]]></description><category></category></item><item><title><![CDATA[Flink的Sink_API_Demo (kafka sink 、redis sink 、es sink)]]></title><link>https://blog.csdn.net/C_time/article/details/103401455</link><guid>https://blog.csdn.net/C_time/article/details/103401455</guid><author>C_time</author><pubDate>Thu, 05 Dec 2019 11:59:02 +0800</pubDate><description><![CDATA[Flink没有类似于spark中foreach方法，让用户进行迭代的操作。虽有对外的输出操作都要利用Sink完成。最后通过类似如下方式完成整个任
务最终输出操作。
  myDstream.addSink(new MySink(xxxx)) 

官方提供了一部分的框架的sink。除此以外，需要用户自定义实现sink。

pom文件说明
下面是几个Sink的Demo。当然要提前建立Maven工程，并导...]]></description><category></category></item><item><title><![CDATA[Scala 中把 样例类转换成为JSON字符串]]></title><link>https://blog.csdn.net/C_time/article/details/103400765</link><guid>https://blog.csdn.net/C_time/article/details/103400765</guid><author>C_time</author><pubDate>Thu, 05 Dec 2019 10:59:54 +0800</pubDate><description><![CDATA[Scala 中把 样例类转换成为JSON字符串
fastjson无法转换 case class 为json
&lt;dependency&gt;
    &lt;groupId&gt;org.json4s&lt;/groupId&gt;
    &lt;artifactId&gt;json4s-native_2.11&lt;/artifactId&gt;
    &lt;version&gt;3....]]></description><category></category></item><item><title><![CDATA[hivesql之lateral view explode遇到记录为空情况]]></title><link>https://blog.csdn.net/C_time/article/details/103313402</link><guid>https://blog.csdn.net/C_time/article/details/103313402</guid><author>C_time</author><pubDate>Fri, 29 Nov 2019 16:28:13 +0800</pubDate><description><![CDATA[在正常解析一个有值的字符串时，用lateral view explode是完全ok的，但是，当遇到该字符串为空时，如果在使用该函数，就会导致该条记录消失。这时候需要加个outer  lateral view outer explode

...]]></description><category></category></item><item><title><![CDATA[SparkStreaming将结果输出到单个文件以及小文件的合并]]></title><link>https://blog.csdn.net/C_time/article/details/103245493</link><guid>https://blog.csdn.net/C_time/article/details/103245493</guid><author>C_time</author><pubDate>Mon, 25 Nov 2019 21:04:20 +0800</pubDate><description><![CDATA[SparkStreaming将结果输出到单个文件以及小文件的合并
sparkStreaming消费kafka数据…
每个duration批次时间数据量不一定多少，
若数据量太少，
首先每个批次处理数据后会有多个分区的小文件，
解决办法1. 是在结果落地前重分区，每个批次只生成一个文件，
那么要是这一个文件数据量也很小，落地到hive还是会影响查询效率
那么解决办法2. 就用在hive定时执行一个i...]]></description><category></category></item><item><title><![CDATA[ElasticSearch之中文分词插件ik]]></title><link>https://blog.csdn.net/C_time/article/details/103204895</link><guid>https://blog.csdn.net/C_time/article/details/103204895</guid><author>C_time</author><pubDate>Fri, 22 Nov 2019 20:20:02 +0800</pubDate><description><![CDATA[说明：
1.我的es集群 在三台节点：
hadoop01 hadoop02 hadoop03
为了启动es，三台节点分别创建了普通用户hadoop并ssh了
2.安装ik时注意使用普通用户，免得装好后重启集群造成ik文件夹权限问题，es读不到
3.自己再记录一下ssh步骤
直记录其中一台如hadoop03对hadoop01 02 03三台的免密登录 其他两台一样的配置
hadoop03下操作 最好...]]></description><category></category></item><item><title><![CDATA[理解RDD、DataFrame、Dataset区别]]></title><link>https://blog.csdn.net/C_time/article/details/103181894</link><guid>https://blog.csdn.net/C_time/article/details/103181894</guid><author>C_time</author><pubDate>Thu, 21 Nov 2019 14:24:56 +0800</pubDate><description><![CDATA[理解RDD、DataFrame、Dataset区别
文章转载自https://www.jianshu.com/p/8ab678331d95

rdd
优点
1.强大，内置很多函数操作，group，map，filter等，方便处理结构化或非结构化数据
2.面向对象编程，直接存储的java对象，类型转化也安全
缺点
1.由于它基本和hadoop一样万能的，因此没有针对特殊场景的优化，比如对于结构化数据...]]></description><category></category></item></channel></rss>