暂时未有相关云产品技术能力~
推荐算法工程师,日常使用 Spark、Flink、Python 以及其他大数据相关
spark 处理 RDD 时提供了 foreachPartition 和 mapPartition 的方法对 partition 进行处理,一个 partition 内可能包含一个文件或者多个文件的内容,Partitioner 可以基于 pairRDD 的 key 实现自定义partition 的内容。
使用 spark 读取 parquet 文件,共有 M个 parquet 文件,于是启动了 PExecutor x QCores 进行如下 WordCount 代码测试,其中 P x Q = M 即 Core 数目与 parquet 文件数一一对应。
parquet 文件常见于 Spark、Hive、Streamin、MapReduce 等大数据场景,通过列式存储和元数据存储的方式实现了高效的数据存储与检索,下面主要讲parquet 文件在 spark 场景下的存储,读取与使用中可能遇到的坑。......
使用 Flink - Kafka 接数据 Source 时程序报错:org.apache.flink.runtime.JobException: Recovery is suppressed by FixedDelayRestartBackoffTimeStrategy,任务每次启动后持续10min左右,然后 RUNNING -> FAILED,如此重启失败了多次。
使用 spark lefOuterJoin 寻找下发的 gap,用原始下发 rdd 左join 真实下发后发现最终的结果数与左表不一致,左表数据: 20350,最终数据: 25721。一直以来使用 Hive 都是默认 leftJoin 左表应该与结果一致,所以开始排查。......
程序启动 M个 Executor,每个 Executor 共 N core,即每个 Executor 上的 task = N,现在有一个 object 需要在每一个 task 上初始化公用变量,本文介绍如何只初始化一次以及异常情况下只报警一次的方法。
ThreadPool 是 java 的一种多线程处理方式,和前面提到了 RedisPool 类似,即通过一个 pool 批量管理,ThreadPool 管理线程,RedisPool 管理 Jedis 连接。下面主要介绍 ThreadPool 的参数含义,BlockingQueue 的几种类型以及 Executors 下 newCachedThreadPool、newFixedThreadPool、newSingleThreadPool 以及 newScheduleThreadPool 的使用与不同。....
使用SharedJedisPool 时注意到内部涉及到 hash 函数,其中对应的 hash 接口需要复写两个 hash 函数分别是 hash (String var1) 和 hash (Byte[] var1),默认使用Hashing.MURMUR_HASH 算法,除此之外也可以使用自带的 MD5,下面针对 SharedJedisPool 以及两个 Hash 函数的使用和含义进行分解。......
使用 executor 线程池时经常用到 shutdown / shutdownNow + awaitTermination 方法关闭线程池,下面看下几种方法的定义与常见用法。
机器学习中最基础的一步就是数据的特征工程,这其中最常见的就是数值型特征的分桶,下面使用两种方法对数值型特征分桶并对比效率。
现在有一批流数据想要存储到 Redis 中,离线可以使用 Spark + foreach 搞定,由于是多流 join 且带状态,所以 SparkStreaming + foreach 也无法实现,而 Flink 不支持 foreach 操作触发 execute,这里采用 RedisSink 代替实现 foreach 逻辑。