阅读更多

2004年,Google的MapReduce论文揭开了大数据处理的时代,现如今,大数据的发展已达到惊人的速度,大数据技术深刻改变了世界。与此同时,各大数据库厂商在大数据这片蓝海里都想多分一杯羹,于是乎,各种数据库开发技术如雨后春笋般孕育而出。

众所周知,大数据技术纷杂繁多,而Spark、Hive、Tez、RapidsDB这几款却深受开发者青睐,谈其性能各有千秋:

  1. Spark是由UC Berkeley AMP Lab所开源的类Hadoop MapReduce的通用并行框架, 其拥有Hadoop MapReduce所具有的优点, 并且能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。
  2. Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能,其本质是将SQL转换为MapReduce程序。
  3. Tez是Apache最新的支持DAG作业的开源计算框架,它可以将多个有依赖的作业转换为一个作业从而大幅提升DAG作业的性能。
  4. RDP(Rapids Data Platform)是一个实时大数据分析领域的高性能分析应用平台。RapidsDB采用了内存计算(In-Memory Computing)技术。

正所谓萝卜青菜各有所爱,今天我们就来评测下深受开发者喜爱的Spark、Hive、Tez、RapidsDB将会带来哪些惊人的测试效果。本次评测旨在为数据库相关从业人员提供一个技术参考方向。

本次测试基于某证交所复杂的交易分析;测试场景包括: Hive1.2,Tez0.83,RapidsDB2.63,Spark 1.6。
测试结果如下:

 

注:蓝色代表Hive、红色代表Tez、绿色代表RDP(RapidsDB)、紫色代表Spark。

 

从图表上可以看出,Hive在所有查询中耗时都比较长;Tez次之;Spark位居第三;令笔者惊奇的是,RapidsDB的表现则最优。

笔者曾听闻,有人宣称Spark是大数据的未来,更有Spark一出,Hadoop已死的说法,然而在此次评测过程中,Spark却被后起之秀RapidsDB秒杀,实则让人唏嘘不已!

下面我们来看下详细的测试环境:


可以看出,各测试环境随着查询节点的不同,表现能力也各不相同。比如:在Query 1查询时,Hive 1.2用时8576ms,Tez 0.83用时844ms,Spark-SQL 1.6用时1520ms;令人惊奇的是,RDP(RapidsDB)2.63仅用了2ms。

笔者还注意到,在Query6查询时分值达到最高,但不难看出,依然是RapidsDB拔得头筹。

再来看下Query10,请注意,该时段的查询是基于某段时间内满足程序化交易标准的用户,并且必须满足以下情形之一:(1)一个交易日内出现五次以上每秒申报五笔;(2)一秒内完成申报并撤销申报,且日内出现三次以上;(3)日内申报两千币以上;其中含有交易金额、交易笔数,涉及多表复杂关联查询,使用聚合函数汇总、分组排序等,数据量均在百万级别之上。值得一提的是,在Query10查询过程中,Hive 、Tez、 Spark速度几乎持平;但RapidsDB这匹黑马却只用了1ms,完全秒杀其他测试环境。从数据上可以看出,RapidsDB对SQL查询语句、性能解析方面达到最佳。

由此,我们可以预想到,RapidsDB的性能不容小觑,将来RapidsDB的人气将会越来越高,

那么耗时最快的RapidsDB(RDP)是什么鬼?

RDP(Rapids Data Platform)是由柏睿数据公司推出的一款专注于实时分析和应用的先进平台。其包含四大模块:Rapids Hadoop(企业版大数据存储管理引擎)、Rapids DB(分布式实时在线处理引擎)、Rapids MGrid(分布式内存分析引擎)、Rapids Manager(统一的管理控制台)。

其中,RapidsDB内存计算是一项具有突破性的技术,它对那些非汇总的大数据的分析速度是惊人的(相对磁盘数据库)。这项技术的主要功能是在内存当中来存储需要持久化的数据,可以压缩并存储大量数据在主存中。该技术利用英特尔多核并行处理硬件优势将数据的复杂计算从应用层移到数据库层从而大大加快了处理的速度。

 

  • 大小: 72.1 KB
  • 大小: 104.3 KB
0
7
评论 共 12 条 请登录后发表评论
12 楼 feilian09 2016-09-02 09:51
真的是广告吗,好吧,我也踩一下
11 楼 nomandia 2016-08-26 09:36
虽然不太懂但是也要踩一下
10 楼 somefuture 2016-08-15 17:41
这广告打得...我给零分。
9 楼 sgq0085 2016-08-08 09:10
随便贴两个图就说快100倍,你丫测试内容是啥你怎么不说呢,要点脸行么
8 楼 iamlipeng 2016-08-07 21:06
国人在提升技术之前,先学会要点碧莲。
7 楼 houyujiangjun 2016-08-05 13:37
用个缓存就说比spark快一百倍. 药店碧莲吧
6 楼 houyujiangjun 2016-08-05 13:37
这广告打得...我给零分。
5 楼 magic4u 2016-08-05 11:11
这广告打得...我给零分。
4 楼 jnoee 2016-08-05 08:23
这广告打得...我给零分。
3 楼 cshuig 2016-08-04 21:07
make in china
尼玛广告
2 楼 seamankwok 2016-08-04 18:51
广告太明显了吧!
1 楼 yugouai 2016-08-04 15:55
广告的节奏

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • android 对象存储sd卡,Android网络与数据存储——File存储(实现SD卡文件浏览器)...

    Java提供了一套完整的IO流体系,包括FileInputStream、FileOutPutStream等,通过这些IO流可以...AndroidManifest.xml中manifest标签下有一个属性android:installLocation,用于指定应用程序安装在什么地方,该属性有...

  • android从assets目录复制文件到sd卡

    if (filename.endsWith(".jpg")) // extension was added to avoid compression on APK file newFileName = TARGET_BASE_PATH + filename.substring(0, filename.length()-4); else newFileName = TARGET_BASE_...

  • android中的eclipse项目目录,Android 项目在Eclipse中的目录结构

    不同的Android平台目录结构是不同的,下面以Android 2.3.3 为例介绍Android 在Eclipse 中的目录结构,下面是目录结构:这里01_项目名当然就是我们的项目名了,下面分别对各目录进行解析。1. Src:该目录中存放的是该...

  • Android Studio—— 关于在Android Studio中使用Assets目录下的资源的问题

    一开始在Android Studio中读取Assets目录下的资源的时候,用的是Eclipse下的getResource().getAssets().open("xxx.xml");这里假如是读取一个xml文件,但是这个方法在Android Studio中是会报异常的,为何呢?因为...

  • 读取assets目录下的文件详细介绍

    第二种就是放在assets文件夹下面的原生资源文件,放在这个文件夹下面的文件不会被R文件编译,所以不能像第一种那样直接使用.Android提供了一个工具类,方便我们操作获取assets文件下的文件:AssetManager

  • Android开发之assets目录下资源使用总结

    因为apk安装之后会放在/data/app/**.apk目录下,以apk形式存在,asset/res和被绑定在apk里,并不会解压到/data/data/YourApp目录下去,所以我们无法直接获取到assets的绝对路径,因为它们根本就没有。 还好Android...

  • android中的资源文件,Android中的资源文件

    1、将Assets中的图像显示出来try {BufferedInputStream bis = new BufferedInputStream(getAssets().open("a.bmp"));Bitmap bm = BitmapFactory.decodeStream(bis);imageView01.setImageBitmap(bm);} catch ...

  • android获取file子文件内容,Android中读取assets文件夹中的子文件夹内容

    文件结构如下:assets/info/infoAssetManager am = this.getResources().getAssets();InputStream input = null;try {input = am.open("info/info");int len = input.available();byte[] buffer = new byte[len];...

  • Unity3d android 通信之 unity3d读取android SD卡文件

    此篇博文解决的问题是:  1、unity3d如何访问android SD卡的文件  2、如果把android端代码以jar包形式由unity3d调用 ... 实现效果是unity3d调用android相册或相机,选择一张图片剪裁后,将图片肯绘制到unity3d中。

  • android项目中图片资源如何使用,android如何读取项目中的图片或文件

    1、程序,把Assets中的图像显示出来try {BufferedInputStreambis = new BufferedInputStream(getAssets().open("a.bmp"));Bitmapbm = BitmapFactory.decodeStream(bis);imageView01.setImageBitmap(bm);}catch ...

  • Android资源文件分类 res目录 assets目录

    Android资源文件分类: Android资源文件大致可以分为两种: 第一种是res目录下存放的可编译的资源文件: ...因为系统在编译的时候不会编译assets下的资源文件,所以我们不能通过R.XXX.ID的方式访问它们

  • Android项目中的assets和raw

    Android中asset文件夹和raw文件夹区别*...两者目录下的文件在打包后会原封不动的保存在apk包中,不会被编译成二进制。*res/raw和assets的不同点: 1.res/raw中的文件会被映射到R.Java文件中,访问的时候直接使用资源

  • Android手机数据读写方法(内部存储、SD卡,网络加载,包内文件读取)

    本次实例以文本和图片为例,展示了Android手机内部存储的读写方法、SD卡的读写方法,包内文件的读取,以及网络文本及图片的加载与下载。  项目文件在此:文档下载传送门 从网络加载图片或保存到本地。通过字符流...

  • APP开发中如何减小apk安装包大小

    使用 google_fonts 包,.ttf 或 .otf 文件不需要存储在您的资产文件夹中并映射到 pubspec.yaml 文件中。在一个永久的存储路径中上传图片,如Firebase存储,或AWS,并在你的代码中使用该图片的链接。一旦完成构建你的...

  • android中的asset文件和raw文件

    一.Assets文件: ...第二种就是放在assets文件夹下面的原生资源文件,放在这个文件夹下面的文件不会被R文件编译,所以不能像第一种那样直接使用.Android提供了一个工具类,方便我们操作获取assets文件下的文件:A...

  • android生成ogg文件怎么打开,Android中如何使用代码打开各种类型的文件

    介绍本篇用于介绍Android中如何打开各种类型的文件,如:音乐文件(mp3、wav、ogg等)、视频文件(3gp、...注意打开音乐、视频、图片、文档等文件是需要有读取SD卡的权限的,如果是6.0以下的系统,则直接在清单文件中...

  • Android开发之assets目录

    Android资源文件分类: Android资源文件大致可以分为两种: 第一种是res目录下存放的可编译的资源文件: ...因为系统在编译的时候不会编译assets下的资源文件,所以我们不能通过R.XXX.ID的方式访问它们。那

  • android assets InputStream 慢?

    最近在做从assets读取大文件中的片段内容,在以前读取sd卡文件使用FileInputStream很快,但是在切换到assets的InputStream就慢得抓狂了。。 究其原因是skip 的问题,废话不多讲,让assets的文件能以FileInputStream...

  • 毕业设计基于STC12C5A、SIM800C、GPS的汽车防盗报警系统源码.zip

    STC12C5A通过GPS模块获取当前定位信息,如果车辆发生异常震动或车主打来电话(主动请求定位),将通过GSM发送一条定位短信到车主手机,车主点击链接默认打开网页版定位,如果有安装高德地图APP将在APP中打开并展示汽车当前位置 GPS模块可以使用多家的GPS模块,需要注意的是,当前程序对应的是GPS北斗双模芯片,故只解析 GNRMC数据,如果你使用GPS芯片则应改为GPRMC数据即可。 系统在初始化的时候会持续短鸣,每初始化成功一部分后将长鸣一声,如果持续短鸣很久(超过20分钟),建议通过串口助手查看系统输出的调试信息,系统串口默认输出从初始化开始的所有运行状态信息。 不过更建议你使用SIM868模块,集成GPS.GSM.GPRS,使用更加方便

  • 基于tensorflow2.x卷积神经网络字符型验证码识别.zip

    基于tensorflow2.x卷积神经网络字符型验证码识别 卷积神经网络(Convolutional Neural Networks, CNNs 或 ConvNets)是一类深度神经网络,特别擅长处理图像相关的机器学习和深度学习任务。它们的名称来源于网络中使用了一种叫做卷积的数学运算。以下是卷积神经网络的一些关键组件和特性: 卷积层(Convolutional Layer): 卷积层是CNN的核心组件。它们通过一组可学习的滤波器(或称为卷积核、卷积器)在输入图像(或上一层的输出特征图)上滑动来工作。 滤波器和图像之间的卷积操作生成输出特征图,该特征图反映了滤波器所捕捉的局部图像特性(如边缘、角点等)。 通过使用多个滤波器,卷积层可以提取输入图像中的多种特征。 激活函数(Activation Function): 在卷积操作之后,通常会应用一个激活函数(如ReLU、Sigmoid或tanh)来增加网络的非线性。 池化层(Pooling Layer): 池化层通常位于卷积层之后,用于降低特征图的维度(空间尺寸),减少计算量和参数数量,同时保持特征的空间层次结构。 常见的池化操作包括最大池化(Max Pooling)和平均池化(Average Pooling)。 全连接层(Fully Connected Layer): 在CNN的末端,通常会有几层全连接层(也称为密集层或线性层)。这些层中的每个神经元都与前一层的所有神经元连接。 全连接层通常用于对提取的特征进行分类或回归。 训练过程: CNN的训练过程与其他深度学习模型类似,通过反向传播算法和梯度下降(或其变种)来优化网络参数(如滤波器权重和偏置)。 训练数据通常被分为多个批次(mini-batches),并在每个批次上迭代更新网络参数。 应用: CNN在计算机视觉领域有着广泛的应用,包括图像分类、目标检测、图像分割、人脸识别等。 它们也已被扩展到处理其他类型的数据,如文本(通过卷积一维序列)和音频(通过卷积时间序列)。 随着深度学习技术的发展,卷积神经网络的结构和设计也在不断演变,出现了许多新的变体和改进,如残差网络(ResNet)、深度卷积生成对抗网络(DCGAN)等。

Global site tag (gtag.js) - Google Analytics