《大数据日知录》
。
韩运畅
这个作者很懒,什么都没留下…
展开
-
第13章 交互式数据分析
13.1 Hive系统数据仓库1. hive表的目录结构: 数据桶式hive数据仓库的最底层,在创建表的时候可以指定根据哪个字段分桶以及分成多少个桶。 hive目录结构: /根目录/table_name/分区名/分桶2. hive任务执行流程: 用户提交命令,编译,根据任务间依赖关系调用执行引擎执行任务。编译时会进行一些优化3. hive慢的原因: 严重依赖于MR,MR不适合迭代型的任务,因为它只能将中间结构储存在磁盘。 ...原创 2020-05-16 15:42:59 · 523 阅读 · 0 评论 -
第9章 内存k-v数据库
大多数数据库是将数据存储外外存的,但在某些情况下为了加快系统的响应速度,就导致了内存k-v数据库的出现。常见的有redis,memcache。原创 2020-05-16 15:32:01 · 326 阅读 · 0 评论 -
8.4 文件存储布局
行式存储优点:整行查询不用跨网络缺点:1. 数据整行存储,不能根据某一特定类型进行压缩,压缩效率不高 2. 一些查询只需要某些字段,而行式存储只能将所有字段读出才能找到对应字段列式存储列族存储方式: 对于平面型数据,适合采用列族存储方式。所谓列族,是指将经常要一起使用的字段化为一组,这样即 使是按照列式存储的,也可以将经常使用的数据放到一个数据块中,避免不必要的网络传输。但是依然 不能避免,下面的混合式存储更好的应对了这个问题。混合模式混合式存储布局融合了行式和列式存储各自的原创 2020-05-16 15:25:51 · 288 阅读 · 0 评论 -
第六章-分布式通信
分布式通信机制主要有三类:序列化与远过程调用,消息队列和多播通信。序列化与远过程调用针对的是网络中不同机器上的进程之间的通信,消息队列的关注点是不同的子系统之间的通信,多播通信主要针对的是P2P环境。这三者都是黏合子系统的有效工具,有利于接触构件之间的耦合。序列化与远过程调用框架IDL是一种节口定义语言,可以实现调用方与被调用方开发语言的解耦消息队列常见消息队列的吞吐量对比:ZeroMQ 10wTPS > Kaffka 4wTPS > RabbitMQ 1wTPS > A原创 2020-05-16 14:45:00 · 284 阅读 · 0 评论 -
第五章 分布式协调系统
chubby暂不表zookeeper 体系结构客户端是通过tcp与zookeeper连接,tcp可以保证客户端的命令是顺序收到的zookeeper通过“重放日志”结合“模糊快照”来对服务器故障进行容错。“重放日志”是操作内存数据前先写日志。“模糊快照“是周期性的指直接用深度遍历的方式将内存树保存到外部文件中,在此期间,内存树允许被改动。但是由于zookeeper的操作保证幂等性,于是在恢复的时候,加载模糊快照同时执行”重放日志“(同一操作可能执行多次但是没有关系)即可恢复。 数据模型原创 2020-05-14 14:26:15 · 283 阅读 · 0 评论 -
第四章 集群资源管理与调度
资源管理抽象模型通用架构:调度系统设计的基本问题资源异质性与任务负载异质性:资源异质说的是节点之间的配置并不都是相同的,有的节点cpu核数更多,内存容量更大,设计系统时应该考虑到,一般时通过细化资源分配粒度来来解决这个问题。而任务负载异质说的是,有长任务,有短任务,有需求大量资源的任务,有只要很少资源就能运行的任务,应结合实际场景综合考虑如何统筹安排这些任务,并能充分利用集群的资源。数据局部性任务向数据移动,一个好的调度系统应该尽量保证节点局部性。所谓节点局部性是指,任务被发送的节点存有对原创 2020-05-13 14:01:55 · 553 阅读 · 0 评论 -
第三章 大数据常用的算法与数据结构
布隆过滤器布隆过滤器可以以较小的时空代价过滤不再巨量数据集合中的数据,它利用有一个较大的位数组,若干hash函数,每条数据的hash值模上该数组的长度,便将该位置为一。于是,对于一条数据,如果我们发现其在位数组中的对应位不全为1,那么该数据肯定不存在,反之是有可能存在。布隆过滤器的误判率与数组长度,数据量与hash函数的个数有关。布隆过滤器的缺点是无法删除对应元素的值,改进措施是,不再使用位数组而是使用整数数组,这样想要删除某个数据只要将数组中对应值减一即可。SkipList它与平衡树原创 2020-05-12 16:49:16 · 890 阅读 · 0 评论 -
第二章数据复制与一致性
2.1 CAP BASE ACIDC: consistency,强一致性A: available 可用性,对于request系统在有限时间内做出响应的能力P: Partition Tolerance,分区容错性,即发生网络分区时,系统依然可以工作cap定理:C A P无法兼得,最多同时满足其中两个。这个定理可以这么理解,如果我们的系统对数据没有采取同步措施,那么读数据可以立马返回,但是数据可能会出现不一致,如果采取了同步措施来保证强一致性,那么一定会影响系统的可用性。但是这个定理只是说明不可能原创 2020-05-12 14:53:16 · 240 阅读 · 0 评论 -
第一章 数据分片与路由
为什么需要数据分片?现在要处理的数据量已经由GB跨越到PB的阶段,单机无法处理,所以只能增加机器扩大存储空间,那么数据就必须要切割。数据分片后,如何确定分片数据与机器节点的映射关系,这就需要数据分片与路由算法。补充:数据复制,备份分片数据,可以提高系统可用性,以及提高系统读性能,关键的问题就是如何保证数据一致性。常见数据分片算法Round Robin将数据的key取hash然后模上机器节点的数量。缺点很明显,当机器节点改动时会让大量的数据失效。虚拟桶在数据与机器节点之间添加虚原创 2020-05-12 09:48:41 · 234 阅读 · 0 评论