技术标签: memcached ViewUI 大数据 javascript
本
本文是Ignite系列的第三篇介绍性文章,内容整体比较简略,和第二篇文章一起,大体上介绍了Ignite平台的所有关键技术点,方便大家有一个整体的认识,供技术选型时参考。 \
Apache Ignite提供了一个Spark RDD抽象的实现,他允许跨越多个Spark作业时方便地在内存内共享状态,不管是在同一个应用内部还是在不同的Spark应用之间。 \
IgniteRDD作为Ignite分布式缓存的视图,既可以在Spark作业执行进程中部署,也可以在Spark workder中部署,也可以在他自己的集群中部署。 \
根据事先配置好的部署模型,状态共享既可以只存在于一个Spark应用的生命周期的内部(嵌入式模式),或者也可以存在于Spark应用的外部(独立模式),这种模式下状态可以在多个Spark应用之间共享。 \
IgniteRDD是原生Spark RDD的一个实现,DataFrame API具有所有标准RDD的功能,并且RDD的状态可以在Spark作业、应用以及worker之间共享。
\Spark不支持SQL索引,但是Ignite可以,由于先进的内存索引功能,IgniteRDD在执行SQL查询时比Spark原生RDD或者DataFrame有百倍的性能提升。
Ignite一个独有的技术就是分布式内存文件系统(IGFS),IGFS提供了和Hadoop HDFS类似的功能,但是仅仅在内存内部。事实上,除了他自己的API,IGFS实现了Hadoop的文件系统API,并且可以透明地加入Hadoop或者Spark应用。 \
IGFS将每个文件中的数据拆分为独立的数据块然后将他们存储在分布式内存缓存中。然而和Hadoop HDFS不同,IGFS不需要一个name节点,并且用一个哈希函数自动地确定文件数据位置。 \
IGFS可以独立部署,也可以部署在HDFS之上,不管是哪种情况,他对于HDFS中存储的文件都是一个透明的缓存层。 \
IGFS既可以在堆内,也可以在堆外存储文件,对于更大的存储空间关键是利用堆外来避免长时间的JVM垃圾回收导致的暂停。
\IGFS实现了Hadoop的FileSystem API,并且可以部署为原生的Hadoop文件系统,就像HDFS一样,这样就可以在Hadoop或者Spark环境中以即插即用的方式原生部署IGFS。
\IGFS也可以在另一个Hadoop文件系统上部署为一个缓存层。这种情况下,IGFS中的一个文件如果发生变化,更新会被自动地写入HDFS。此外,如果读取了一个文件并且当时他不在IGFS中,Ignite会自动地将其从HDFS载入IGFS。
\IGFS集成了一个原生的Apache Hadoop,也支持Cloudera CDH以及Hortonworks HDP。
Apache Ignite带来了一个Hadoop MapReduce API的内存实现,他比原生的Hadoop MapReduce实现有了显著的性能提升。Ignite MapReduce比Hadoop性能更好,是因为基于推的资源分配以及数据的进程内协同计算。 \
另外,因为IGFS不需要一个name节点,当使用IGFS时,Ignite MapReduce作业会在一个链路内直达IGFS数据节点。 \
Ignite MapReduce是Hadoop MapReduce API的一个实现,他可以原生地加入已有的Hadoop环境,并且性能有很大的提升。
\Ignite提供了一个Hadoop的加速发行版,包括IGFS以及Ignite MapReduce,这个环境可以很容易地加入已有的Hadoop环境。
对于客户端连接Ignite集群,Ignite提供了若干种协议,包括Ignite原生客户端,REST/HTTP,SSL/TLS,Memcached,Node.js(正在开发中)等等。 \
详细说明如下: \
对于客户端远程连接Ignite,原生客户端提供了完整的功能,他允许使用完整的Ignite API,包括近缓存,事务,计算,流式处理,服务等等。
\Ignite兼容于Memcached,他允许用户使用任何Memcached兼容客户端在Ignite缓存中保存以及获取分布式数据,包括Java、PHP、Python、Ruby以及其他的客户端。
\Ignite提供了一个HTTP REST客户端,可以以REST的方式通过HTTP或者HTTPS协议进行通信。REST API可以进行执行很多的操作,比如从缓存中读取,实行任务,获取各种度量等等。
\Ignite允许在所有的Ignite客户端和服务端节点之间使用SSL进行Socket通信。
\Ignite未来会提供Node.js客户端,他能进行所有的缓存操作以及在Ignite中存储的JSON数据中执行SQL查询。
Apache Ignite可以独立运行,在集群中运行,在Docker容器中运行,还可以运行在Apache Mesos以及Hadoop Yarn环境。他可以在物理机上运行,也可以在虚拟机上运行。 \
Ignite节点之间会自动感知,这有助于集群的可扩展性,而不需要重启集群,简单地启动新加入的节点然后他们就是自动地加入集群。
\Docker可以将Ignite及其所有的依赖打包进一个标准的映像。Docker下载Ignite版本映像之后,就可以将用户的应用部署进Ignite,配置节点,他会自动启动整个配置后的Ignite节点。
\对于公共云环境,Ignite原生地集成了Amazon AWS和GCE,对于其他的云环境,Ignite集成了Apache JCloud,他支持大多数已有的云服务商。
\Ignite提供了Apache Mesos的原生支持,可以很容易地将Ignite部署进Mesos数据中心,比如Hadoop和Spark环境。
\Ignite提供了Hadoop Yarn的原生支持,可以很容易地将Ignite部署进Hadoop和Spark环境。
感谢郭蕾对本文的审校。
\\给InfoQ中文站投稿或者参与内容翻译工作,请邮件至[email protected]。也欢迎大家通过新浪微博(@InfoQ,@丁晓昀),微信(微信号:InfoQChina)关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入InfoQ读者交流群(已满),InfoQ读者交流群(#2)
)。
本文实例为大家分享了Python实现学生成绩管理系统的具体代码,供大家参考,具体内容如下基本功能:输入并存储学生的信息:通过输入学生的学号、姓名、和分数,然后就可以把数据保存在建立的student文件里面。打印学生的所有信息:通过一个打印函数就可以把所有的信息打印在屏幕上。修改学生信息:这个功能首先通过查询功能查询出该学生是否存在,如果存在就对该学生的信息进行修改,如果不存在则返回到主界面。删除学...
我想使用java控制树莓派,然后结合springboot进行操作,但遇到Unable to determine hardware version. I see: Hardware : BCM2835 , - expecting BCM2708 or BCM2709.网上说是树莓派3B+需要使用PI4J 1.2-SNAPSHOT,后来将树莓派的pi4j升级了下树莓派中升级pi4j的版本命...
https://blog.csdn.net/ethan_10/article/details/80536088https://blog.csdn.net/liangwenmail/article/details/50405150having子句与where有相似之处但也有区别,都是设定条件的语句。在查询过程中聚合语句(sum,min,max,avg,count)要比having子句...
IO流中的常用类一、对象流对象流ObjectInputStream与ObjectOutputStream用于读取和写入存入文件中的对象数据。文件中的数据是以对象为单位的,对象中封装着类的字段信息。将对象存入文件中叫做对象的序列化,或对象的持久化。想要对象能被序列化,对象类要实现Serializable接口,该接口中没有方法,为一个标记接口。其中对象类中静态成员不可被序列化,
数据的规范化:是把数据尽可能的分解到多个表上,最小化重复相同数据的次数。 ADO.net的主要对象元素: 数据源:通常指的是一个关系数据库,如SQLserver等 托管的数据供应程序:提供数据仓库通信的功能 如ODBC等 Connection对象:建立一个页面程序与数据库驱动的通信管道 Command对象:一个包含读写数据指令的工具 DataReader/DataSet对象
一、smartgit工作界面说明1、点击window,根据选择需要展示的模块。2、各模块功能说明。二、克隆项目1、点击Repository,选择clone2、复制Git仓库地址3、选择分支4、选择项目存放的路径,点击完成三、提交代码1、先添加改变,Stage。2、再提交改变到本地仓库,写好提交说明(增加了什么需求,或解决了什么bug等),Commit。3、拉取gi...
object ScalaWordCount { def main(args: Array[String]): Unit = { var lines = List("hello java hello scala", "hello tom", "today is good day hello scala", "day by day") //切分并压平 val words...
满意答案代码 如下:Intent intent=new Intent();intent.setAction("android .intent.action.VIEW");Uri CONTENT_URI_BROWSERS = Uri.parse("content://com.android.htmlfileprovider/sdcard/123.html");intent.setData(CONTE...
U820主机已经安装黑苹果系统11.2.1,原本怀疑不能自动更新,在网上查询之后发现黑苹果其实是可以像白苹果一样升级的。当【软件更新】提示11.5.2可以升级时,直接选择更新重启,重启之后发现之前在蓝牙功能无法正常使用,直接卡死。解决办法如下使用Clover Configurator挂载EFI分区,然后打开分区本机引导方式是OC模式下载蓝牙驱动 IntelBluetooth.zip-v2.0.0 stable,然后用下载的2个驱动文件替换本机EFI对应路径下的文件/EFI/EFI
<br />win xp rose不能安装解决<br />系统:windows XP sp2<br />问题1:SmartHeap Library:HEM_BAD_POINTER<br />这个是以对话框的 的形式跳出来的,直接点了确定跳过去的。后来查了一下,以下是来自百度的答案:<br />是 xp sp2 中的一个bug引起SmartHeap运行库出错<br />As of 11/09/04 we have available a SmartHeap shw32.dll which checks to
????Hi~ o( ̄▽ ̄)ブ这里是猪猪程序员???? 很高兴见到你O(∩_∩)O!???? 现在正在发芽中…????️ 博主水平有限,如果发现错误,一定要及时告知作者哦 o( ̄︶ ̄)o!感谢感谢!????博主的码云 gitee,平常博主写的程序代码都在里面。大厂面试智力题问题描述解题思路① 37%法则②前5层不拿③比较法(存在歧义)④哲学问题(拾麦穗)问题描述一楼到十楼的每层电梯门口都放着一颗钻石,钻石大小不一。你乘坐电梯从一楼到十楼,每层楼电梯门都会打开一 次,只能拿一次钻石,问怎
错误信息no link present check cable方法在ifcfg-eth0配置文件加上check_link_down(),,不过不管用后来发现,是虚拟机的NAT服务没有开启运行输入services.msc打开服务,然后找到VMware的相关dhcp、nat服务启动,然后在重启网卡,发现能正常获取ip问题和下面的链接问题一样,感谢他提供的解决思路参考链接...