• 0

    用户访问量

  • 0

    注册用户数

  • 0

    在线视频观看人次

  • 0

    在线实验人次

Dynamo需要解决的主要问题及解决方案
Dynamo在设计时被定位为一个基于分布式存储架构的,高可靠、高可用且具有良好容错性的系统。下图列举了Dynamo设计时面临的主要问题及所采取的解决方案。
作者:云创智学 来源:云创智学 发布时间:2022-06-13 13:42:43
Google应用程序环境的特性
1、动态网络服务功能。能够完全支持常用的网络技术。2、具有持久存储的空间。在这个空间里平台可以支持一些基本操作,如查询、分类和事务的操作。3、具有自主平衡网络和系统的负载、自动进行扩展的功能。4、可以对用户的身份进行验证,并且支持使用Google账户发送邮件。5、有一个功能完整的本地开发环境,可以在自身的计算机上模拟GoogleAppEngine环境。6、支持在指定时间或定期触发事件的计划任务。
作者:云创智学 来源:云创智学 发布时间:2022-06-13 13:39:26
什么是 Google App Engine
GoogleAppEngine是一个由Python应用服务器群、Bigtable数据库及GFS数据存储服务组成的平台,它能为开发者提供一体化的可自动升级的在线应用服务。GoogleAppEngine可以让开发人员在Google的基础架构上运行网络应用程序。在GoogleAppEngine中,用户可以使用appspot.com域上的免费域名为应用程序提供服务,也可以使用Google企业应用套件从自己的域为它提供服务。可以免费使用GoogleAppEngine。注册一个免费账户即可开发和发布应用程序,而且不需要承担任何费用和责任。
作者:云创智学 来源:云创智学 发布时间:2022-06-13 13:38:10
PowerDrill与Dremel的对比
PowerDrill:1、处理非常大量的数据集2、处理的数据来自外存3、未进行数据分区,分析时要扫描所有需要的列4、数据通常不需要加载,增加数据很方便Dremel:1、分析少量的核心数据集2、处理的数据尽可能地存于内存3、使用了组合范围分区,分析时可以跳过很多不需要的分区4、数据需要加载,增加数据相对不便
作者:云创智学 来源:云创智学 发布时间:2022-06-13 13:36:37
PowerDrill压缩算法
Google曾经对一些主流的压缩算法做过简单的测试,如下图:不管压缩算法的解压速度多快,总会消耗一定的物理资源与时间。对此PowerDrill采用了一种冷热数据分别对待的策略。在冷热数据切换策略中,比较常用的是LRU算法。PowerDrill开发团队采用了启发式的缓存策略来代替原始的LRU算法。
作者:云创智学 来源:云创智学 发布时间:2022-06-10 14:54:33
PowerDrill全局字典优化
优化中主要利用两个特性:1、全局字典是有序的2、排序后的数据常常有共同的前缀实际使用中为了进一步减少查询中需要加载到内存的全局字典,对全局字典又进行了分块对每个全局字典块还会维护一个布隆过滤器(bloomfilter)来快速确定某个值是否在字典中。
作者:云创智学 来源:云创智学 发布时间:2022-06-10 14:51:06
PowerDrill数据编码的优化
对于不同的块,如果我们可以确定块中不同值的数量,那么就可以根据这个数量值来选择可变的比特位来记录块id统计一组数中不同值的个数有一个专有名词,称为“基数估计”对于小规模的数据集,可以比较容易地统计出精确的基数。但是在大数据的环境下,精确的基数统计非常耗时,因此能保证一定精度的基数估计就可以满足实际的需求。基数估计的方法很多,大多利用了散列函数的一些特性,Google内部使用的是一种称为Hyperloglog的基数估计方法的变种。
作者:云创智学 来源:云创智学 发布时间:2022-06-10 14:48:35
PowerDrill数据分块
背景:传统的索引对于PowerDrill的查询场景作用不是很大,因此一个很自然的考虑就是对数据进行分块,过滤查询中不需要的数据块来减少数据量方法:常见的分区方法有范围分区、散列分区等。PowerDrill实际采用的是一种组合范围分区方法。步骤:领域专家确定若干个划分的域、利用这几个域对数据进行划分、每个块的行数达到阈值时就停止划分局限PowerDrill采用的数据分块方法简单实用,但是由于域的确定需要领域专家,因此这种方法在实际使用中还有一定的局限性
作者:云创智学 来源:云创智学 发布时间:2022-06-10 14:47:39
PowerDrill产生背景与设计目标
两个假设结论:(1)绝大多数的查询是类似和一致的;(2)存储系统中的表只有一小部分是经常被使用的,绝大部分的表使用频率不高。考虑两方面的内容(1)如何尽可能在查询中略去不需要的数据分块;(2)如何尽可能地减少数据在内存中的占用,占用越少意味着越多的数据可以被加载进内存中处理。PowerDrill整个系统实际分为三个部分1、WebUI2、一个抽象层3、列式存储
作者:云创智学 来源:云创智学 发布时间:2022-06-10 14:45:38
Dremel查询语言与执行
Dremel中的数据都是分布式存储的,因此每一层查询涉及的数据实际都被水平划分后存储在多个服务器上。Dremel是一个多用户系统,因此同一时刻往往会有多个用户进行查询。查询分发器有一个很重要参数,它表示在返回结果之前一定要扫描百分之多少的tablet
作者:云创智学 来源:云创智学 发布时间:2022-06-09 13:49:18
联系方式
企业微信