海量数据

大数据案例分析

可紊 提交于 2020-02-06 19:56:52
摘自 https://www.cnblogs.com/ShaYeBlog/p/5872113.html 一、大数据分析在商业上的应用 1、体育赛事预测 世界杯期间,谷歌、百度、微软和高盛等公司都推出了比赛结果预测平台。百度预测结果最为亮眼,预测全程64场比赛,准确率为67%,进入淘汰赛后准确率为94%。现在互联网公司取代章鱼保罗试水赛事预测也意味着未来的体育赛事会被大数据预测所掌控。 “在百度对世界杯的预测中,我们一共考虑了团队实力、主场优势、最近表现、世界杯整体表现和博彩公司的赔率等五个因素,这些数据的来源基本都是互联网,随后我们再利用一个由搜索专家设计的机器学习模型来对这些数据进行汇总和分析,进而做出预测结果。”--- 百度北京大数据实验室的负责人张桐 2、股票市场预测 去年英国华威商学院和美国波士顿大学物理系的研究发现,用户通过谷歌搜索的金融关键词或许可以金融市场的走向,相应的投资战略收益高达326%。此前则有专家尝试通过Twitter博文情绪来预测股市波动。 理论上来讲股市预测更加适合美国。中国股票市场无法做到双向盈利,只有股票涨才能盈利,这会吸引一些游资利用信息不对称等情况人为改变股票市场规律,因此中国股市没有相对稳定的规律则很难被预测,且一些对结果产生决定性影响的变量数据根本无法被监控。 目前,美国已经有许多对冲基金采用大数据技术进行投资,并且收获甚丰

海量数据存储之存储设计(一)

徘徊边缘 提交于 2020-02-05 00:20:36
转自:http://forchenyun.iteye.com/blog/942448 相关文章推荐: 海量数据存储之Key-Value存储简介 海里数据存储之存储设计(二) Je的排版真的让人难过...... 从本文开始着重讲解存储细节,思路比较飘逸,观者多包涵。 翻译了一篇Redis作者antirez的 文章 做为本文的切入点,翻译得不好,这部分可以大致一览,后面会有分析。 Append Only和Reuse Blocks的一些区别 对于一颗append only btree(以下简称AOB)来说,最有趣的属性就是它不可能出现corrupt(可以理解为数据不一致状态)。另外一个有趣的属性就是并发访问没有任何问题,因为无论你访问根节点或其它节点,它们总是一致的(Valid)。 但是有一点我不喜欢的,AOB需要一个额外的Compaction(压缩)进程,否则文件会越来越大。如果你的访问需求是绝大部分是读,那么这样是没问题的。但如果你有非常多的写需求,那么问题就来了。 试想一下:如果你的写请求非常大,已经到了磁盘IO的极限,此时你的AOB文件会越来越大,你需要Compaction。但是你已经达到了IO瓶颈,这时你是重新开一个文件还是重写这棵树呢?这些额外的IO将会影响到这棵btree的性能。你能先降低写请求来降低这种冲撞吗?很遗憾不能,另外

What is Mapreduce?&&What is hadoop?

情到浓时终转凉″ 提交于 2020-02-04 22:32:04
架构扼要 想读懂此文,读者必须先要明确以下几点,以作为阅读后续内容的基础知识储备: Mapreduce是一种模式。 Hadoop是一种框架。 Hadoop是一个实现了mapreduce模式的开源的分布式并行编程框架。 所以,你现在,知道了什么是mapreduce,什么是hadoop,以及这两者之间最简单的联系,而本文的主旨即是,一句话概括:在hadoop的框架上采取mapreduce的模式处理海量数据。下面,咱们可以依次深入学习和了解mapreduce和hadoop这两个东西了。 Mapreduce模式 前面说了,mapreduce是一种模式,一种什么模式呢?一种云计算的核心计算模式,一种分布式运算技术,也是简化的分布式编程模式,它主要用于解决问题的程序开发模型,也是开发人员拆解问题的方法。 Ok,光说不上图,没用。如下图所示,mapreduce模式的主要思想是将自动分割要执行的问题(例如程序)拆解成map(映射)和reduce(化简)的方式,流程图如下图1所示: 在数据被分割后通过Map 函数的程序将数据映射成不同的区块,分配给计算机机群处理达到分布式运算的效果,在通过Reduce 函数的程序将结果汇整,从而输出开发者需要的结果。 MapReduce 借鉴了函数式程序设计语言的设计思想,其软件实现是指定一个Map 函数,把键值对(key/value)映射成新的键值对(key

大数据量及海量数据处理算法总结

回眸只為那壹抹淺笑 提交于 2020-02-02 04:39:37
大数据量的问题是很多面试笔试中经常出现的问题,比如baidu google 腾讯 这样的一些涉及到海量数据的公司经常会问到。 下面的方法是我对海量数据的处理方法进行了一个一般性的总结,当然这些方法可能并不能完全覆盖所有的问题,但是这样的一些方法也基本可以处理绝大多数遇到 的问题。下面的一些问题基本直接来源于公司的面试笔试题目,方法不一定最优,如果你有更好的处理方法,欢迎与我讨论。 1.Bloom filter 适用范围: 可以用来实现数据字典,进行数据的判重,或者集合求交集 基本原理及要点: 对于原理来说很简单,位数组+k个独立hash函数。将hash函数对应的值的位数组置1,查找时如果发现所有hash函数对应位都是1说明存 在,很明显这个过程并不保证查找的结果是100%正确的。同时也不支持删除一个已经插入的关键字,因为该关键字对应的位会牵动到其他的关键字。所以一个简 单的改进就是 counting Bloom filter,用一个counter数组代替位数组,就可以支持删除了。 还有一个比较重要的问题,如何根据输入元素个数n,确定位数组m的大小及hash函数个数。当hash函数个数k=(ln2)*(m/n)时错误 率最小。在错误率不大于E的情况下,m至少要等于n*lg(1/E)才能表示任意n个元素的集合。但m还应该更大些,因为还要保证bit数组里至少一半为 0,则m 应该>

【海量数据处理】100亿个整数,内存足够,如何找到中位数?内存不足,如何找到中位数?

余生长醉 提交于 2020-02-02 01:08:00
内存足够的情况: 可以使⽤用类似quick sort的思想进行,均摊复杂度为O(n),算法思想如下: • 随机选取一个元素,将比它小的元素放在它左边,比它大的元素放在右边 • 如果它恰好在中位数的位置,那么它就是中位数,可以直接返回 • 如果小于它的数超过一半,那么中位数一定在左半边,递归到左边处理 • 否则,中位数一定在右半边,根据左半边的元素个数计算出中位数是右半边的第几大,然后递归 到右半边处理 内存不足的情况: 无重复数字:   bitmap方法 有重复数字:   既然要找中位数,很简单就是排序的想法。那么基于字节的桶排序是一个可行的方法 :   思想:将整形的每1byte作为一个关键字,也就是说一个整形可以拆成4个keys,而且最高位的keys越大,整数越大。如果高位keys相同,则比较次高位的keys。整个比较过程类似于字符串的字典序。   第一步:把10G整数每2G读入一次内存,然后一次遍历这536,870,912个数据。每个数据用位运算">>"取出最高8位(31-24)。这8bits(0-255)最多表示255个桶,那么可以根据8bit的值来确定丢入第几个桶。最后把每个桶写入一个磁盘文件中,同时在内存中统计每个桶内数据的数量,自然这个数量只需要255个整形空间即可。   代价:(1) 10G数据依次读入内存的IO代价(这个是无法避免的,CPU不能直接在磁盘上运算)。

爱思助手 ---- 一款集“高效管理 iOS 设备数据”,“智能刷机”和“免费下载海量应用游戏、铃声壁纸”等为一体的 iOS 设备管理工具

亡梦爱人 提交于 2020-01-24 15:40:10
https://www.i4.cn/ 具有独创的云智能一键刷机和一键越狱功能 简单易用的备份恢复,数据迁移等高级工具 免帐号,免越狱高速安装海量的应用和游戏 铃声壁纸彩铃等海量个性化资源任你使用 来源: https://www.cnblogs.com/onelikeone/p/12232203.html

关系型与非关系型数据库

我的梦境 提交于 2020-01-23 14:24:42
1、关系型数据库 特点: 数据与数据之间、表和字段之间,表和表之间存在关系等 代表: MySQL、Oracle等 优点: 数据之间存在关系,数据的增删改查非常方便 关系型数据库有事务操作,保证数据的完整性 缺点: 数据和数据之间有关系,是由底层大量算法保证,大量算法会拉低系统运行速度、大量算法会消耗系统资源 海量数据的增删改查时会显得无能为力,很可能宕机 海量数据环境下对数据表进行维护,也会变得无能为力,数据维护和结构维护很难成功 适用: 适合处理一般量级的数据,并且对数据安全性有一定要求 2、非关系型数据库(NoSQL:not only sql) 特点: 处理海量数据,需要将关系型数据库的关系去掉,非关系型数据库设计的初衷是为了替代关系型数据库 代表: Redis、MongoDB(淘汰)等 优点: 海量数据的增删改查,能够轻松应对 海量数据维护非常轻松 缺点: 数据和数据之间没有关系,所以不能一目了然 非关系型数据库,没有关系的存在,没有强大的事务来保证数据的完整性和安全性。即:适合处理海量数据,有效率,但不一定安全 适用: 海量数据的存储、对完整性和安全性要求不高的数据 3、关系型数据库与非关系型数据库的结合 思想: 海量数据、不重要的数据可以保存在非关系型数据库中 重要的数据、对完整性和安全性有要求的数据可以保存在关系型数据库中 来源: CSDN 作者: MHyourh 链接

揭秘“撩”大数据的正确姿势:生动示例解说大数据“三驾马车”

你说的曾经没有我的故事 提交于 2019-12-31 23:03:00
我是我:“缘起于美丽,相识于邂逅,厮守到白头!” 众听众:“呃,难道今天是要分享如何作诗?!” 我是我:“大家不要误会,今天主要的分享不是如何作诗,而是《揭秘:‘撩’大数据的正确姿势》,下面进入正题。” 话说当下技术圈的朋友,一起聚个会聊个天,如果不会点大数据的知识,感觉都融入不了圈子,为了以后聚会时让你有聊有料,接下来就跟随我的讲述,一起与大数据混个脸熟吧,不过在“撩”大数据之前,还是先揭秘一下研发这些年我们都经历了啥? 缘起:应用系统架构的从 0 到 1 揭秘:研发这些年我们都经历了啥? 大道至简。生活在技术圈里,大家静下来想想,无论一个应用系统多庞大、多复杂,无非也就是由一个漂亮的网站门面 + 一个丑陋的管理模块 + 一个闷头干活的定时任务三大板块组成。 我们负责的应用系统当然也不例外,起初设计的时候三大模块绑在一起(All in one),线上跑一个 Tomcat 轻松就搞定,可谓是像极了一个大泥球。 衍化至繁。由于网站模块、管理平台、定时任务三大模块绑定在一起,开发协作会比较麻烦,时不时会有代码合并冲突出现;线上应用升级时,也会导致其它模块暂时不能使用,例如如果修改了一个定时任务的配置,可能会导致网站、管理平台的服务暂时不能用。面对诸多的不便,就不得不对 All in one 的大泥球系统进行拆解。 随着产品需求的快速迭代,网站 WEB 功能逐渐增多

海量图片存储,杉岩分布式对象存储轻松应对

夙愿已清 提交于 2019-12-18 18:54:09
当今世界,互联网、大数据应用迅猛发展,物联网、人工智能、云计算 技术日新月异,随之而来的是各种企业和个人应用持续不断地产生亿级甚至是百亿级的海量小文件。这些小文件的元数据管理、存储性能以及访问效率等问题因而成为学术界和工业界公认的难题。 例如,国内目前最大的电商网站淘宝存储的商品图片超过 200 亿张,这些文件的平均大小仅为 15KB 左右,国外著名的社交网站Facebook 存储的图片总量更是超过了600亿张;在线视频播放服务中,每个视频会被切片服务器分割成 1MB 左右的分片文件,一部动画电影所包含的图片文件可能会超过 500 万张,平均大小为15KB;一些在线阅读图书每页内容均会被扫描成大约几十KB的图片文件…… 在非结构化数据和新应用快速增加的情况下,对象存储更能满足企业的业务需求。为此,杉岩数据推出了强大的对象存储产品,解决企业对海量图片、视频等非结构数据存储需求,以便更好的挖掘非结构化数据的价值。 端到端的Scale-Out扩展,实现大数据积累 分布式对象存储总容量可达到数百PB级规模,单个名字空间也可以扩展到整个硬件存储总空间容量,不需要割裂成多个隔离空间,并且在文件数量上会有更大的扩展,文件数量可达百亿级,是真正的端到端Scale-Out快速扩展。它可以满足业务系统整个生命周期的存储容量需求,无需挂载目录和调整业务系统,让IT人员更加关注业务价值本身。

ImSQL:海量数据,可信存储

假装没事ソ 提交于 2019-12-18 16:47:27
数据造假、数据不可信等问题的存在,给金融监管及风控等众多应用场景带来了严峻的挑战,也正成为阻碍数据大规模互联互通、共享共用的一大障碍。数据的真实可信问题长期影响着社会的各个领域,在更依赖数据的人工智能时代,这一影响将更为凸显。 数据造假可能发生在任一环节。其中,在数据存储期间造假往往更加简单:因为在现有数据存储技术下,数据的所有者、管理人员或受托存储方均有能力单方对数据进行任意的篡改或删除。 既然数据不可信的一个重要原因归咎于单方可以擅自篡改和删除数据,那么如何避免这一问题自然也得到了业界大量的关注。区块链和去中心化存储技术的诞生,对数据篡改起到了一定的遏制作用,也在市场上取得了初步验证。 许多企业开始尝试采用区块链存储数据,例如在货物追溯等场景。其做法往往是将重要数据直接写入区块中。这一简单粗暴的做法确实解决了数据防删改需求、继而满足了部分数据的可信分享,但却存在较多问题: 首先是无法存储海量数据:区块内不适合存储包括多媒体数据等在内的大数据,否则区块大小难以控制,使区块链的可扩展性变差。这就导致业务中必须对原生数据进行筛选取舍,仅选取少量必要数据存入区块,但这将降低可信数据的丰富程度。 其次是数据存取效率低:首先,由于打包过程的存在,区块链数据存储一般不用于高速的数据写入。其次,由于遍历式的数据读取方法,区块链无法支持快速索引、更无法支持SQL。 再次是数据维护效率低