自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 资源 (2)
  • 收藏
  • 关注

原创 多线程核心知识总结(五)——趣解Thread和Object类中的线程相关方法

多线程核心知识总结趣解Thread和Object类中的线程相关方法方法概览wait,notify,notifyAll方法详解作用,用法:阻塞阶段,唤醒阶段,遇到中断

2020-10-17 13:42:33 2227 9

原创 多线程核心知识总结(三)——线程停止,中断总结

多线程核心知识总结三.线程停止,中断1.讲解原理原理介绍:使用interrupt了来通知,而不是强制使用一个线程来通知另一个线程该停止的机制,只是一种通知,如果该线程本身不决定停止,则其不会停止,被停止线程的本身,更熟悉停止自己需要做那些处理和清理工作,所以正确停止线程,是如何使用interrupt合理通知该线程并让该线程配合停止。2.最佳实践通常线程会在什么情况下停止run方法的所有代码都运行完毕了有异常出现,并且方法中没有捕获正确停止方法:interrupt通常情况下线程会在什

2020-10-01 07:09:08 750 3

原创 隐语笔记3 —— 隐语架构

通过可视化产品,降低终端用户的体验和演示成本。通过模块化API降低技术集成商的研发成本。隐私保护计算集成商,产品人员,隐私保护计算需求方,开发人员,研究人员。

2024-03-22 20:36:26 1709

原创 隐语笔记2 —— 隐私计算开源如何助力数据要素流通

数据流通->数据外循环->技术信任->隐私计算内涵->开源隐语数据要素大潮带来了全新的数据安全外循环技术挑战• 信任焦虑 是数据要素流通面临的关键挑战• 从 主体信任 正在逐渐走向 技术信任宏大的前景,隐私计算面临新机会• 隐私计算内涵在丰富:可用不可见、可算不可识、可控可计量• 产品能力 度量尺度 要标准化• 开源降低接入门槛:普惠、安全、标准化开源隐语助力数据要素流通• 四大技术优势、专业的安全验证• 多项权威认定和荣誉奖项• 推动行业标准化、生态建设。

2024-03-21 07:11:18 345

原创 隐语笔记1 —— 数据可信流通,从运维信任到技术信任

身份可确认利益可依赖能力有预期行为有后果责任主体不清利益诉求不一致能力参差不齐责任链路难追溯可信数字身份:从主体身份扩展至应用身份使用权的跨域管控:对齐数据流通链条上的利益诉求规范化技术要求(incl. 隐私计算、数据沙箱等)能力预期:通用安全分级标准,平衡功能与成本全链路审计:覆盖原始数据到衍生数据,责任界定• 数据可信流通需要 安全可信基础设施 的融合布局。

2024-03-19 12:40:04 880 1

原创 Scala总结(一)——基础语法

scala 第一个程序——helloworld//继承Appobject HelloWorld extends App { println("hello world")}//直接使用main方法object HelloWorld2 { def main(args: Array[String]): Unit = { println("hello world") }}声明值和变量声明变量两种方式 val , varval a1=10//声明后不可变var a2=10//

2020-10-24 23:03:37 321

原创 剑指Offer第一期

从尾到头打印链表题目描述输入一个链表,按链表从尾到头的顺序返回一个ArrayList。实现/** * 非递归形式 * 不断利用头插,使先插入的数字被不断向后推移完成从尾到头打印 */import java.util.ArrayList;class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }

2020-10-24 00:02:07 134 1

原创 多线程核心知识总结(六)——一网打尽线程属性

线程的各个属性线程Id/** * 描述: ID从1开始,JVM运行起来后,我们自己创建的线程的ID早已不是2. */public class Id { public static void main(String[] args) { Thread thread = new Thread(); System.out.println("主线程的ID"+Thread.currentThread().getId()); System.ou

2020-10-20 11:40:12 179

原创 Java实现稀疏数组和二维数组的相互转换

Java实现稀疏数组实际要求编写的五子棋程序中,有存盘退出和续上盘的功能因为该二维数组的很多值是默认值 0, 因此记录了 很多没有意义的数据.-> 稀疏数组。当一个数组中大部分元素为0,或者为同一个值的数组时,可以使用稀疏数组来保存该数组。稀疏数组的处理方法是:记录数组 一共有几行几列,有多少个不同的值把具有不同值的元素的行列及值记录在一个小规模的数组中,从而 缩小程序的规模应用实例使用稀疏数组,来保留类似前面的二维数组(棋盘、地图等等)把稀疏数组存盘,并且可以从新

2020-10-04 05:37:27 116

原创 多线程核心知识总结(四)——图解线程生命周期

多线程核心知识总结四.线程生命周期线程的六种状态- New已创建但还未启动的新线程- Runnable可运行的,调用start方法之后就会变成Runnable状态,无论是否运行,对应操作系统中的ready和running- Blocked当一个线程进入被sychornized修饰的代码块的时候,并且该锁已经被其他线程拿走了,这个时候的状态为Blocked- Waiting没有设置time参数的Object.wait()等方法执行后,(具体看图)。- Timed WaitingThre

2020-10-04 00:28:02 317 3

原创 多线程核心知识总结(二)——开启多线程启动世界

多线程核心知识总结二.开启多线程启动世界1.启动线程的正确和错误方式start()和run()比较:start()方法原理解读:start方法含义:1.启动新线程:线程对象初始化之后,调用了start方法,当前线程通常是主线程,主线程会告诉虚拟机,如果有空闲的话,启动新线程。(是否能启动,什么时候启动,是线程调度器决定)2.准备工作:让自己处于就绪状态,就绪状态指的是,已经获取除了CPU以外的其他资源,比如说,已经设置了上下文,栈,线程状态,PC(寄存器),在准备工作完成后,线程才会进一步

2020-09-29 17:39:01 102

原创 多线程核心知识总结(一)——实现多线程的正确姿势

多线程核心知识总结一.实现多线程的正确姿势1.实现多线程的方法到底有几种?官方文档中,只有两种。声明一个Thread的子类public class ThreadStyle extends Thread{ @Override public void run() { System.out.println("用Thread类实现线程"); } public static void main(String[] args) { new

2020-09-28 16:27:05 246

原创 2000字解释Hive基本概念

Hive基本概念什么是HiveHive:由Facebook开源用于解决海量结构化日志的数据统计。Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类SQL查询功能。本质是:将HQL/SQL转化成MapReduce程序1)Hive处理的数据存储在HDFS2)Hive分析数据底层的实现是MapReduce3)执行程序运行在Yarn上Hive架构Hive通过给用户提供的一系列交互接口,接收到用户的指令(SQL),使用自己的Driver,结合元数据 (Meta

2020-09-27 22:25:16 98

原创 Spark基础解析

Spark 概述什么是 SparkSpark 是一种快速、通用、可扩展的大数据分析引擎,2009 年诞生于加州大学伯克利分校AMPLab,2010 年开源,2013 年 6 月成为 Apache 孵化项目,2014 年 2 月成为 Apache 顶级项目。项目是用 Scala 进行编写 。Spark内置模块Spark Core:实现了 Spark 的基本功能,包含任务调度、内存管理、错误恢复、与存储系统交互等模块。Spark Core中还包含了对弹性分布式数据集(Resilient Dist

2020-07-21 16:28:44 244

原创 Hadoop-Mapreduce实战(两表join)

两表Join未优化版本Bean.javaimport org.apache.hadoop.io.WritableComparable;import java.io.DataInput;import java.io.DataOutput;import java.io.IOException;/* * 人员和地址的通用bean */public class Bean ...

2020-04-21 12:04:11 257

原创 Hadoop-Mapreduce实战(压缩解压案例)

压缩解压案例数据流的压缩和解压缩CompressionCodec有两个方法可以用于轻松地压缩或解压缩数据。要想对正在被写入一个输出流的数据进行压缩,我们可以使用createOutputStream(OutputStreamout)方法创建一个CompressionOutputStream,将其以压缩格式写入底层的流。相反,要想对从输入流读取而来的数据进行解压缩,则调用createInput...

2020-04-20 05:13:18 338

原创 Hadoop-Mapreduce(共同好友案例)

共同好友案例需求以下是博客的好友列表数据,冒号前是一个用户,冒号后是该用户的所有好友(数据中的好友关系是单向的)求出哪些人两两之间有共同好友,及他俩的共同好友都有谁?需求分析先求出A、B、C、….等是谁的好友第一次输出结果A I,K,C,B,G,F,H,O,D,B A,F,J,E,C A,E,B,H,F,G,K,D G,C,K,A,L,F,E,H,E G,M,...

2020-04-19 14:35:55 345

原创 Hadoop-Mapreduce实战(倒排索引案例(多job串联))

倒排索引案例(多job串联)需求:有大量的文本(文档、网页),需要建立搜索索引第一次预期输出结果it--a.txt 3it--b.txt 2it--c.txt 2pingping--a.txt 1pingping--b.txt 3pingping--c.txt 1ss--a.txt 2ss--b.txt 1ss--c.txt 1第二次预期输出结果it c....

2020-04-18 18:37:28 210

原创 Hadoop-Mapreduce实战(日志清洗案例)

简单解析版需求:去除日志中字段长度小于等于11的日志。输入数据实现代码:编写LogMapperimport java.io.IOException;import org.apache.hadoop.io.LongWritable;import org.apache.hadoop.io.NullWritable;import org.apache.hadoop.io.Tex...

2020-04-17 07:21:15 471

原创 Hadoop-MapReduce(多表合并)

MapReduce中多表合并需求订单数据表t_order:idpidamount100101110020221003033商品信息表t_product将商品信息表中数据根据商品pid合并到订单数据表中。最终数据形式:需求1:Reduce端表合并(数据倾斜)通过将关联条件作为map输出的key,将两表满足join条件的数据并...

2020-04-16 16:54:40 861

原创 Hadoop-Mapreduce(过滤日志及自定义日志输出(自定义OutputFormat))

过滤日志及自定义日志输出(自定义OutputFormat)需求过滤输入的log日志中是否包含itstar包含itstar的网站输出到e:/itstar.log不包含itstar的网站输出到e:/other.log输入数据输出预期具体流程自定义一个outputformatimport java.io.IOException;import org.apa...

2020-04-15 15:15:07 234

原创 Hadoop-Mapreduce实战(辅助排序和二次排序案例(GroupingComparator))

辅助排序和二次排序案例(GroupingComparator)需求有如下订单订单id商品id成交金额0000001Pdt_01222.80000001Pdt_0625.80000002Pdt_03522.80000002Pdt_04122.40000002Pdt_05722.40000003Pdt_01222...

2020-04-14 14:21:19 187

原创 Hadoop-Mapreduce实战(流量汇总案例)

流量汇总案例需求1:统计手机号耗费的总上行流量、下行流量、总流量(序列化)统计每一个手机号耗费的总上行流量、下行流量、总流量数据准备原始数据格式:时间戳、电话号码、基站的物理地址、访问网址的ip、网站域名、数据包、接包数、上行/传流量、下行/载流量、响应码输出数据格式:1356·0436666 1116 954 2070 手机号码 上行流量 下行流量 总流...

2020-04-13 14:32:40 1201

原创 Hadoop-MapReduce实战(WordCount)

WordCount案例需求1:统计一堆文件中单词出现的个数在一堆给定的文本文件中统计输出每一个单词出现的总次数数据准备:分析​ 按照mapreduce编程规范,分别编写Mapper,Reducer,Driver。分析编写mapper类import java.io.IOException;import org.apache.hadoop.io.IntWr...

2020-04-12 20:12:49 219

原创 Hadoop-Yarn和Hadoop企业优化

YarnHadoop1.x和Hadoop2.x架构区别在Hadoop1.x时代,Hadoop中的MapReduce同时处理业务逻辑运算和资源的调度,耦合性较大。在Hadoop2.x时代,增加了Yarn。Yarn只负责资源的调度,MapReduce只负责运算Yarn概述Yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式的操作系统平台,而MapReduce等运算程...

2020-04-11 19:56:47 166

原创 Hadoop-数据压缩总结

Hadoop数据压缩概述压缩技术能够有效减少底层存储系统(HDFS)读写字节数。压缩提高了网络带宽和磁盘空间的效率。在Hadoop下,尤其是数据规模很大和工作负载密集的情况下,使用数据压缩显得非常重要。在这种情况下,I/O操作和网络数据传输要花大量的时间。还有,Shuffle与Merge过程同样也面临着巨大的I/O压力。​ 鉴于磁盘I/O和网络带宽是Hadoop的宝贵资源,数据压缩对于节省资...

2020-04-10 11:18:33 123

原创 Hadoop-Mapreduce(四)

Join多种应用Map join(Distributedcache分布式缓存)使用场景:一张表十分小、一张表很大。解决方案在map端缓存多张表,提前处理业务逻辑,这样增加map端业务,减少reduce端数据的压力,尽可能的减少数据倾斜。具体办法:采用distributedcache​ (1)在mapper的setup阶段,将文件读取到缓存集合中。​ (2)在驱动函数中...

2020-04-09 20:30:03 101

原创 Hadoop-Mapreduce(三)

Shuffle机制Shuffle机制Mapreduce确保每个reducer的输入都是按键排序的。系统执行排序的过程(即将map输出作为输入传给reducer)称为shuffle。Partition分区问题引出:要求将统计结果按照条件输出到不同文件中(分区)。比如:将统计结果按照手机归属地不同省份输出到不同文件中(分区)默认partition分区public class H...

2020-04-08 16:04:37 145

原创 Hadoop-Mapreduce(二)

InputFormat数据输入Job提交流程和切片源码详解waitForCompletion()submit();// 1建立连接 connect(); // 1)创建提交job的代理 new Cluster(getConfiguration()); // (1)判断是本地yarn还是远程 initialize(jobTrackAddr, conf); //...

2020-04-07 19:12:20 135

原创 Hadoop-Mapreduce(一)

MapReduce定义Mapreduce是一个分布式运算程序的编程框架,是用户开发“基于hadoop的数据分析应用”的核心框架。Mapreduce核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个hadoop集群上。MapReduce优缺点优点MapReduce易于编程。它简单的实现一些接口,就可以完成一个分布式程序,这个分布式程序可以...

2020-04-06 19:25:07 118

原创 Hadoop-HDFS总结(五)

DataNode工作机制NameNode & DataNode工作机制1)一个数据块在datanode上以文件形式存储在磁盘上,包括两个文件,一个是数据本身,一个是元数据包括数据块的长度,块数据的校验和,以及时间戳。2)DataNode启动后向namenode注册,通过后,周期性(1小时)的向namenode上报所有的块信息。3)心跳是每3秒一次,心跳返回结果带有namenode给...

2020-04-05 20:13:26 392

原创 Hadoop-HDFS总结(四)

HDFS工作机制HDFS的数据流文件写入1)客户端向namenode请求上传文件,namenode检查目标文件是否已存在,父目录是否存在。2)namenode返回是否可以上传。3)客户端请求第一个 block上传到哪几个datanode服务器上。4)namenode返回3个datanode节点,分别为dn1、dn2、dn3。5)客户端请求dn1上传数据,dn1收到请求会继续调用dn2...

2020-04-04 19:52:46 267

原创 Hadoop-HDFS总结(三)

HDFS的JAVA API操作1. HDFS获取文件系统/** * 打印本地hadoop地址值 * IO的方式写代码 */ @Test public void intiHDFS() throws IOException { //F2 可以快速的定位错误 // alt + enter自动找错误 //1....

2020-04-03 22:19:13 177

原创 Hadoop-HDFS总结(二)

HDFS 的Shell操作基本语法bin/hadoop fs 具体命令 OR bin/hadoop dfs 具体命令 dfs是fs的现实类2. 命令总结Usage: hadoop fs [generic options] [-appendToFile <localsrc> ... <dst>] [-cat [-ignoreCrc] <src...

2020-04-02 16:56:35 120

原创 Hadoop-HDFS总结(一)

Hadoop-HDFS总结HDFS优点HDFS缺点HDFS优点1.容错性高:(1)数据在多个副本里自动保存,提高了容错性。(2)某一副本丢失后可以自动恢复。2.适合处理大量数据(1)数据规模:可以处理GB,TB,甚至PB级别的数据。(2)文件规模:可以大量的文件(百万规模)。3.可以在廉价的机器上,通过多副本机制,提高可靠性。HDFS缺点1.不适合低延时数据访问,例如毫秒级数据...

2020-04-01 13:18:13 160

原创 Set接口和泛型

Set接口Set接口继承于Collection接口,因此它拥有Collection接口的所有方法。它并没有添加新的方法,只是约定不能添加重复的元素。HashSet HashSet实现了Set接口,不允许重复元素,依赖于元素重写了equals方法。Set是无序的集合,不保存添加元素的顺序,但是对Set进行迭代,每次的顺序都是一致的。package day20;import java.util...

2019-09-26 05:51:02 222

原创 Collection and List

Set接口和泛型集合体系接口数组不是动态的,一个数组一旦创建,它的容量就是固定的不能被修改。为了添加新的元素,需要创建一个容量更大的数组,并且将数据拷贝到新的数组中。 数组新增元素示例package day19;import java.util.Arrays;public class Day1901 {public static void main(String[] args) {i...

2019-09-15 11:28:29 104

原创 异常

异常的基本概念main方法将抛出一个异常,因为在一个null对象上调用了toString方法。package day18;public class Day1802 {public static void main(String[] args) {//str没有引用任何对象String str = null;//在一个null对象上调用方法会导致NullPointerException...

2019-09-11 18:08:28 123

原创 工具类

工具类String类String类可以存储字符序列,它不是基本数据类型,而是引用类型。 创建字符串对象的两种方式:package day16;public class Day1604 {public static void main(String[] args) {//String是引用类型//str1引用了一个字符串对象String str1 = "hello";//使用字面值创...

2019-09-08 15:18:27 109

原创 常用类

常用类Object类java中所有的类都直接或间接的继承于Object类,自动的拥有Object类的所有方法. toString方法用于输出一个对象的内容.package day15;class Animal {private String name;private String type;public Animal(String name, String type) {super...

2019-09-06 17:00:14 144

python数据结构.zip

python数据结构详细教程(含代码),包括基本的顺序表,链表,树,图等基本数据结构,讲解清晰,易于接受

2020-04-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除