自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

静无需言

fluent & low latency

  • 博客(66)
  • 资源 (1)
  • 问答 (4)
  • 收藏
  • 关注

原创 数据平台简介

数据平台是什么数据平台即数据开发平台,顾名思义,它需要屏蔽数据存储处理的底层细节,对外提供一个统一的数据服务平台,数据平台的服务目标,应该是提供一个完整的数据业务解决方案,提供全链路、一站式、智能化的数据构建与管理工具,降低数据建设门槛,而不是仅仅提供组件或孤立的系统,把流程串接和方案集成的工作都抛给用户自己去考虑,根据数据的生命周期,大致需提供以下功能和产品:数据接入: 数据集成/etl...

2019-07-07 16:47:44 5932

原创 同步es数据到hive,处理es中嵌套结构

Overview:使用es-hadoop进行es2hive数据同步,当es mapping中有嵌套字段时,有2种选择: hive使用复杂结构和es mapping对应hive使用string类型,将es中的嵌套结构看作一个json string当es的mapping动态的变化时,尤其嵌套结构也动态变化时,使用第二种方式,将无须关心嵌套结构的变化技术方案: 使用es-haddop包建...

2018-07-16 19:34:35 5928 3

原创 Part 2: CHAPTER 9 Consistency and Consensus

文章目录?resourceSummaryConsistent:ConsensusConsistency GuaranteessLinearizability:Implementing Linearizable SystemThe Cost of LinearizabilityOrdering GuaranteesOrdering and CausalityThe causal order is n...

2020-01-19 11:13:57 826

原创 Note 2: CHAPTER 5 Replication

文章目录?SummaryLeaders and Followers(single-leader)Syncchronous Versus Asynchronous ReplicationSynchronousCompletely AsynchronousSetting Up New Followers(扩容时的一致性)Handling Node Outages(容错)Follower failure...

2019-11-10 16:19:38 438

原创 Note: CHAPTER 3 Storage and Retrieval

?how we can store the data that we’re given(如何存储数据)?how we can find it again when we’re asked for it(如何检索数据)?storage engine optimized for transactional(OLTP) 和 optimized for analytics(OLAP) 有何不同?...

2019-09-15 20:08:28 497

原创 Note: CHAPTER 2 Data Models and Query Languages

?有哪些 data model? 它们之间的区别和联系是什么? 各自解决了什么场景下的问题? 如何融合?每个 data model 对应的 query language 是什么? 有什么特点?关系型和文档型之间的差异是什么?什么是 nosql? data model 和 query language 的历史发展?it’s just a question of whether the s...

2019-09-14 16:28:01 359

原创 Note: CHAPTER 1 Reliable, Scalable, and Maintainable Applications

Reliable, Scalable, and Maintainable ApplicationsThinking about data system数据系统的特点是什么?一方面,传统的数据系统都为了解决某个特定领域和场景的问题,而现在,这种界限在变得模糊,比如将 kudu 用作消息队列; 另一方面,为满足更多的需求,数据系统在变得复杂,需要组合多种组件来完成系统构建;需要着重考虑...

2019-09-08 20:53:39 264

原创 基于Hql的表级数据血缘

预备知识表级数据血缘:数据表的派生关系。Hql: hive sql通过hive的hql parser在AST(抽象语法树)层级操作如果需要做字段血缘,在AST级别是可以完成的,不过需要熟悉大量的hql语法规则和其在ast中的实际表示。耳闻hiv的ast并不好,也许是积重难返吧,新语法规则的引入必然要和旧的规则做妥协。可以换用spark sql的parser或者presto的parser...

2019-07-28 17:40:10 1600

原创 代理模式(Java实现)

what? why?代理对象控制对真实对象的访问,so,为什么需要进行访问控制? - 在某些情况下,一个客户不想或不能直引用另一对象,如使用dubbo调用远程服务 - 代理对象可以添加功能,进行权限控制;如我司通过代理控制对es的访问,以实现权限控制和流量控制等功能. - 参考: https://www.cnblogs.com/silverLee/archive/2010/02/0...

2018-08-26 00:59:27 225

原创 mysql jdbc调用getTables方法勘误

问题描述:通过设置mysql jdbc属性useInformationSchema=true和remarks=true来解决getTables方法获取表的comment信息为空的问题时,发现对于cobar代理A会暴出异常,B是cobar代理A的一个分片:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'B...

2018-07-21 12:13:55 2276

原创 scala函数式编程笔记: 纯函数式状态

scala函数式编程:纯函数式状态读书笔记Overview:带状态的方法的声明式实现可能带有副作用,难以保持引用透明。以纯函数式的方式实现带状态的函数的关键在于让状态更新是显式的,不要以副作用方式更新状态,而是连同生成的值一起返回一个新的状态。即把状态的隐式更改暴露出去。例:函数nextInt返回改变后的新状态nextRNGtrait RNG{ def nextIn...

2018-07-02 23:26:52 3422

原创 scala函数式编程: 严格求值与惰性求值笔记

Overview最近在学习scala,用的是《scala函数式编程》这本书,英文名functional programming in scala。这本书偏向函数式理论,scala只是个媒介,所以这本书有些难度。目前学习完第一部分,自己搭了个博客,笔记都写在新搭的博客里了。希望有志同道合的人一起交流学习。博客地址:https://journeyman.top

2017-10-08 16:09:27 484

原创 程序员修炼之道:从小工到专家读书笔记

程序员修炼之道-从小工到专家读后感前言:书的内容是从开发经验中总结出的一些软件开发的指导原则。所有内容都是围绕核心主题开展的。书的核心主题是”Progmatic”即实效。实效的具体含义是->高效并且有效地完成任务,即速度要快,质量要高。让书中的内容落地就要内化原则,内化是指把书中的经验原则融入自己的知识体系,在实际的开发中去应用这些指导原则。如何落地执行:本书含有一些经验总结出的tip,如

2017-10-02 20:09:02 1100

原创 用java实现php式的字典使用方式

用java实现php式的字典使用方式(未做异常处理)sample:php : array = {}array["multi"]["dimensional"]["array"] = "hello&a

2017-09-13 23:30:36 401

原创 生产者消费者模式

一:概念1:生产者负责产生数据,消费者负责处理数据。所以消费者需要获得生产者的数据。2:如果直接让生产者调用消费者的函数来传送数据会产生以下问题:(1)生产者会依赖消费者。如果消费者的代码发生变化,可能会影响生产者。(2)由于函数调用是同步的。所以在调用的消费者函数没返回时,生产者只能等待,不能生产数据。3:所以利用一个缓冲区,生产者将数据放入缓冲区,消费者从中获取数据

2017-03-14 20:20:34 675

原创 单词搜索树

overview:(1)单词搜索树是一个符号表.其中键的类型为字符串.(2)树是根据字符串中的每个字符为节点来建立的,这就是区别于比如二茬搜索树的地方.(3)二叉搜索树以每个键(字符串)值对为节点建立.R向单词查找树1:由字符串键中的所有字符构造而成。 2:是个符号表 3:树的形状和键的插入或者删除顺序无关.对于任意给定的一组键其单词查找树是唯一的.二叉搜索树就和插入顺序有关了. 4:一颗单词

2016-11-30 20:14:14 499

原创 对int数组采用低位优先排序

/*Given an array of N decimal integers of different lengths, describe how to sort them in O(N + K) time, where K is the total number of digits overall all the N integers. *///将十进制数字转为int类型的值。int固定

2016-11-23 16:37:32 593

原创 字符串排序

Overview: 不同于对整数排序,字符串的排序的特点在于,两个字符串比较时需要对字符串中的每个字符进行比较。如果使用一般的排序方法,每次进行比较的时候都要对两个字符串的字符进行比较。例如用冒泡。但是可能在前边的排序过程中,这两个字符串已经比较过了。为了规避这种重复的字符比较,我们需要针对字符串来开发排序方法。键索引计数法(不基于比较)概述:设数据类型为“字符串:键”,通过键来对数据进行分类。

2016-11-22 16:48:52 1279

原创 深入理解Java虚拟机学习总结

深入理解java虚拟机总结学习目标:概述:首先我是一名学生,还没有过多过深奥的项目经验。其次书中也没有对虚拟机的具体实现细节进行过多描述。所以我很难将书中内容对应到具体的应场景,也不会走上研究比如垃圾回收的具体代码,做到熟练阅读字节码或者背诵每个垃圾处理器的名字和特性这样的路子上。所以偶的目标是:1:通读全书,做好笔记。对虚拟机中的内存管理,虚拟机执行子系统,程序编译和代码优化,高效并发这几大模块有

2016-11-18 18:12:12 1087 1

原创 高效并发

Java内存模型和线程前提:多cpu环境下的并发Contend:1:近年来硬件的发展从追求处理器频率到追求多核心并行处理器。3 : 内存模型:在特定操作协议下,对特定内存或者cache进行访问的过程抽象。2(前提:多cpu环境下):cpu速度>>Io速度—–>设立高速缓存—->引入缓存(每个处理器都有缓存)一致性问题—>需要根据规定来访问缓存以保证一致性—-&

2016-11-18 18:08:24 511

原创 类文件结构和类加载机制

类文件结构Overview: 1: Class文件中包含了java虚拟机指令集和符号表以及若干其他辅助信息。 2: 任何一门功能性语言都可以表示为一个能被Java虚拟机所接受的有效的Class文件。3: 任何一个class文件都对应着唯一一个类或者接口的定义信息。 4: class文件是一组以8字节为基础单位发的二进制流。5:整个class文件本质上就是一张表: (1)表是由多个无符

2016-11-18 18:05:30 356

原创 程序编译与代码优化

早期(编译期)优化overview: 1:早期编译期指的是“将.java文件转变为.class文件的过程”. 如javac编译器。2:该期间的优化并非优化程序的运行效率。javac做了许多针对java语言编码过程的优化措施改善程序员的编码风格和提高编码效率。编译过程:1:解析:包括词法分析(将源代码中的字符流转变为标记集合)和句法分析(根据标记序列构造抽象语法树–用来描述程序代结构的过程)。2

2016-11-15 15:50:58 815

原创 虚拟机字节码执行引擎

Overview:虚拟机的执行引擎是由自己实现的,因可以自行制定指令集和执行引擎的结构体系,并且能够执行那些不被硬件直接支持的指令集格式。1:栈帧是用于支持虚拟机进行方法调用和方法执行的数据结构。2:执行引擎运行的所有字节码指令都只针对当前栈帧(栈顶栈帧)进行操作。栈帧结构:1:局部变量表 (1)容量以Slot为最小单位。一个Slot应可以存的下32位以内的变量类型。对于64位的数据类型,用两个连

2016-11-12 14:41:26 318

原创 鸟哥私房菜:计算器概论

计算器概论1:计算器其实是:『接受用户输入指令或者数据,由中央处理器的数学与逻辑单元运算处理后,以产生或储存成有用的信息』2:cpu是一个具有特定功能的芯片,里边含有微指令集。有2大单元组成:算数逻辑单元(负责程序运算与逻辑判断)和控制单元(协调各周边组件与各单之间的工作)3:cpu要处理的数据完全来自于主存储器。4:根据指令集设计理念将cpu分两类:(如Arm);复杂指令集CISC(如AMD,In

2016-11-03 14:39:33 468

原创 Java内存回收

Java内存回收Overview: 1 : 程序计数器,虚拟机栈和本地方法栈中的内存分配在编译期可知,所这几个区域的内存分配和回收具有确定性,不必过多考虑。2 : 而java堆和方法区中的内存回收是动态的,所讨论的内存回收主要针对这两块。3 : 引用计数器法无法解决循环引用的问题。4 : 引用类型:强引用(不会被回收),软引用(鸡肋引用),弱引用,引用。可达性分析算法(图的dfs):1 : 一个对

2016-11-03 14:36:16 353

原创 MVC模式和观察者模式

MVC模式与观察者模式(在Swing中):1:MVC是一种开发组件的方法,可以将数据的存储处理和数据的表示分离MVC: M(model,被观察者):负责存储和处理数据。包含增加,删除和通知观察者的方法,当模型中的数据改变时,通知相应视图(观察者)做出改变。V(view,观察者):负责数据的可视化表示。C(Controler):一般负责接收输入。评:M其实也相当于观察者模式中的:被观察者; V相当于

2016-10-28 16:02:49 7345 1

原创 观察者模式

观察者模式• 观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,让他们能够自动更新自己。观察者模式的组成:– 抽象主题角色:把所有对观察者对象的引用保 存在一个集合中,每个抽象主题角色都可以有 任意数量的观察者。抽象主题提供一个接口, 可以增加和删除观察者角色。一般用一个抽象 类或接口来实现。– 抽象观察者角色

2016-10-28 16:00:55 290

原创 天人关系初探

天---->自然环境.    中国从氏族社会进入到文明社会,保留了氏族社会的血缘关系------>国家之中保留了"家族",统治阶级以血缘关系为纽带构成.    财产,权力按照亲缘关系进行分配---->家国同体(非天下人之天下也).    君权和父权融为一体,君权是父权的扩大.    对天的态度: "敬" 天    ------->因而,孔子采取了在这种"

2016-10-24 20:38:34 685

原创 Java内存区域

Java虚拟机运行时数据区程序计数器:1:是一块较小的内存空间,是当前线程执行字节码的行号指示器2:java中多线程采用时间片轮转技术来实现。在任何时刻,一个处理器(对于多核处理器来说是一个内核)只执行一个线程中的指令。3:每条线程都需要一个独立的程序计数器,便于切换后回复执行。4:执行native方法时,计数器值为空(Undefined)。Java虚拟机栈:

2016-10-20 20:02:45 425

转载 (泛型)Java theory and practice: Generics gotchas

Generic types (or generics) bear a superficial resemblance to templates in C++, both in their syntax and in their expected use cases (such as container classes). But the similarity is only skin-deep -

2016-10-08 22:05:38 493

原创 装饰模式简介

装饰模式(部分内容来自圣思园,应用再javIO体系中)举个拙劣的例子:装饰模式好比:你穿上雨衣就可以防水,穿上高跟鞋就能扣篮,穿上翅膀就能飞。你的功能被扩展了,但是你没有变,你可以去掉这些装饰。继承模式好比你和外星人结婚生子,然后你的娃会飞了,从而实现了功能扩展。如果你想扩展很多功能,就很糟糕。• 装饰模式又名包装(Wrapper)模式

2016-10-07 16:51:05 297

转载 (1)多态

1:程序还可以以它的代码或是数据为核心进行组织编写。2:第一种方法被称为面向过程的模型(process-oriented model),用它编写的程序都具有线性执行的特点。面向过程的模型可认为是代码作用于数据,3:面向对象的编程围绕它的数据(即对象)和为这个数据严格定义的接口来组织程序。面向对象的程序实际上是用数据控制对代码的访问。4:使用层级分类是管理抽象的一个有效方法。它允许你根据

2016-09-21 14:59:23 359

原创 (0) java的产生和特性简介

java的产生背景和特性简介:#语言发展:历程:b--〉c--〉c++ --〉java1:推动语言的革新因素: 适应变化的环境和需求(外因); 适应编程艺术的完善和提高(内因).2: 计算机语言特性(在这几个中找平衡): 易用性和功能(于coder而言); 安全性和效率性(于程序本身而言); 稳定性和扩展性(于程序本身而言);评:要以人为本:编程语言给人用的

2016-09-21 14:01:23 357

原创 网络安全

1:被动攻击:截获数据报,进行内容和流量分析。对称密钥密码体制DES:1: des的保密性取决于对密钥的保密。加密解密算法公开。2: 加密解密密钥一致公钥密码体制:1:使用不同的加密密钥和解密密钥。2:加密密钥公开。加密解密算法公开。解密密钥(私钥)保密。3:任何加密方法的安全性取决于密钥的长度,以及攻破密文所需的计算量。

2016-09-15 20:45:55 1092

原创 假设医院是一个操作系统

假设医院是一个操作系统.你感觉脑子有坑,胸闷气短于是来到了医院,那么:1:挂号,这就是在进程表中进行登记,然后加入到就绪/挂起的队列当中。2:当走到大夫的办公室了,发现还需要排队,这就是从就绪/挂起到就绪队列。也表明了单处理器多任务的模式。3:突然有个人说他是军人家属,要求优先治疗,然后医生可耻的答应了,这个可以看成优先级。4:终于到你了,医生看了两下,说去化验个血吧。然后你就去化

2016-08-03 23:57:29 841

原创 有向图中的最短路径

性质:    1:图是有向的。2:并不是所有顶点都可达。3:负权会使问题边复杂。 4: 最短路径没有环。最短路径不唯一。表示加权有向图的基本类:  package WeiDigraph;//加权由向图的边public class DirectedEdge {    private final int v;    private final int w; 

2016-08-03 23:11:11 3250

原创 Chapter 2 信息的表示和处理

Chapter 2 信息的表示和处理计算机用有限数量的位来对应一个数字编码.整数的表示有限,但是精确,所以满足运算定律; 浮点数相反.浮点数编码一个较大的范围,但是近似的值.整型编码和浮点数编码不同.总线以字为单位传送数据。所谓的16位32位64位系统是由cpu决定的,由机器指令的寻址、寄存器位数决定的int只是语言定义里面的一个关键字,只对compiler可见,compl

2016-07-27 20:59:04 1046

原创 利用递归来模拟多重嵌套循环.

利用递归来模拟多重嵌套循环如以下循环: 1 2 3 4 5 6 for(inti=0;i<100;i++) for(intj=0;j<100;j++) for(intk=0;k<100;k++){ System.out.p...

2016-07-18 22:42:46 6877

原创 chapter 1:计算机系统漫游

1:系统中所有的信息----都是由一串位表示的。2:信息 = 位+上下文。3:外壳是一个命令行解释程序。4:helloWorld程序的生命周期:    1:数据存储。ascii文件。    2:编译阶段:预处理(嵌入引用的头文件)--〉编译阶段(编译为汇编程序)--〉汇编阶段(生成二进制文件)--〉链接阶段(与相关库合并为最终可执行文件)    3:运行

2016-07-18 15:53:15 653

原创 有向图基础

0:有向图基础类:12345678910111213141516171819202122232425262728293031

2016-07-18 10:46:42 829

runningBalls

java语言程序设计第八版习题18_19源码和jar文件。只是个小程序, 给初学java的新手的一个小范例。

2014-04-04

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

TA关注的人

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