场景应用

Spark的应用场景

元气小坏坏 提交于 2020-02-17 06:22:58
Spark的生态圈 1.Spark的设计遵循“一个软件栈满足不同应用场景”的理念,逐渐形成一套完整的生态系统 2.Spark可以部署在资源管理器YARN之上,提供一站式大数据解决方案 3.Spark所提供的的生态系统可对应以下三种场景: 复杂的批量数据处理:通常时间跨度在数十分钟到数小时之间 基于历史数据的交互式查询:通常时间跨度在数十秒到数分钟之间 基于实时数据的数据处理:通常时间跨度在数百毫秒到数秒之间 4.Spark生态系统已经成为伯克利数据分析栈(BDAS)中重要的组成部分 5.Spark生态系统主要包括: Spark Core Spark SQL Spark Streaming MLlib GraphX Spark Core提供Spark最基础与最重要的功能,主要包括: SparkContext:通常而言,Driver Application的执行与输出都是通过SparkContext来完成的,在正式提交Application之前,首先需要初始化SparkContext 只需要使用SparkContext提供的 API完成 功能开发 Spark Core中包含了对RDD的API定义 Spark Core提供了创建和操作这些集合的多个API Spark SQL是Spark用来操作结构化数据的程序包 Spark Streaming 支持多种数据源 提供窗口操作

实时获取数据的几种方案

怎甘沉沦 提交于 2020-02-16 22:05:04
在开发的项目中,需要实时获取最新的股价,实时显示项目在线人数,即时通讯等。你会通过什么方法实现呢?下面就说说实时获取数据的几种方式,我尽量按照从low到复杂的顺序罗列。 http协议 HTTP协议大家都很熟悉了,开始本文之前,首先简单回顾一下HTTP协议。 HTTP协议是建立在TCP协议上的应用层协议,协议的本质是 请求----应答 : 即对于HTTP协议来说,服务端给一次响应后整个请求就结束了,这是HTTP请求最大的特点,也是由于这个特点,HTTP请求无法做到的是服务端向客户端主动推送数据。 但由于HTTP协议的广泛应用,很多时候确实又想使用HTTP协议去实现实时的数据获取,这种时候应当怎么办呢?下面首先介绍几种基于HTTP协议的实时数据获取方法。 ifram/frame 对于菜鸟来说,这未必不是个聪明的解决方法。在需要显示的区域嵌入一个frame框,然后通过js或meta标签控制,不停的刷新获取。 优点:简单实用。 缺点:不停地向服务器请求,对服务器压力最大。 应用场景:局域网,客户端数量不大 短轮询 这里我们要用到ajax了,还是通过Js重复的请求服务器来获取实时数据。比起frame刷新,减少了浏览器的渲染过程。并且因为使用了异步处理,没有画面闪现。交互效果更好。 优点:异步处理,交互效果好 缺点:仍然需要不停地向服务器请求 应用场景:短时间的获取数据,比如支付状态

全面了解 Nginx 主要应用场景

时光总嘲笑我的痴心妄想 提交于 2020-02-15 23:58:00
作者:RayeBlog https://raye.wang/ 前言 本文只针对Nginx在不加载第三方模块的情况能处理哪些事情,由于第三方模块太多所以也介绍不完,当然本文本身也可能介绍的不完整,毕竟只是我个人使用过和了解到过得。所以还请见谅,同时欢迎留言交流 Nginx能做什么 反向代理 负载均衡 HTTP服务器(包含动静分离) 正向代理 以上就是我了解到的Nginx在不依赖第三方模块能处理的事情,下面详细说明每种功能怎么做 反向代理 反向代理应该是Nginx做的最多的一件事了,什么是反向代理呢,以下是百度百科的说法:反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。 简单来说就是真实的服务器不能直接被外部网络访问,所以需要一台代理服务器,而代理服务器能被外部网络访问的同时又跟真实服务器在同一个网络环境,当然也可能是同一台服务器,端口不同而已。下面贴上一段简单的实现反向代理的代码 server { listen 80; server_name localhost; client_max_body_size 1024M; location / { proxy_pass http:/

SAP-ABAP程序开发规范

浪尽此生 提交于 2020-02-13 10:31:09
SAP--ABAP程序开发规范 1 范围 本标准规定了SAP S/4 系统程序开发过程中术语定义、命名规则、程序结构、测试方法和请求管理。 本标准适用于SAP S/4 系统的ABAP语言开发的程序。 2 规范性引用文件 下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅所注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。 GB/T 1.1-2000《标准化工作导则 第1部分:标准的结构和编写规则》 3 术语和定义 3.1 SAP SAP来自于Systems Applications and Products in Data Processing,它是德国思爱普公司的英文名称。 3.2 SAP S/4 SAP S/4 是一个基于客户/服务机结构的开放、集成的企业资源计划系统(Enterprise Resource Planning,简称:ERP)软件,其功能涵盖企业的财务管理、后勤管理(含采购、库存、生产、销售、设备、项目、质量等模块)和人力资源管理等各个方面。SAP S/4 软件由德国SAP公司所研创,其R 指实时(realtime), 而3表示S/4 系统是三层架构:数据库、应用服务器、展现层。 3.3 ABAP ABAP是一种高级商务应用编程语言(Advanced Business Application

数字化转型之基础设施篇 | QingStor®️NeonSAN®️ 企业云存储实践

萝らか妹 提交于 2020-02-12 02:34:22
据 IDC 最新报告预测,2022 年中国 50% 以上的组织都将成为数字化坚定者,依靠新的商业模式、数字化产品与服务实现业务增长。 面对数字化转型的时代浪潮,青小云为大家准备了一份硬核大礼 —— 《数字化转型之路》 ,包含 基础设施 、 业务架构 、 解决方案 到 行业实践 、 未来探索 五个部分,该系列 是对数字化转型理论与具体实践路径的系统梳理 ,希望帮助读者全面准确把握数字化转型发展趋势与前沿技术,促进企业与组织能够在变革的数字化世界中创造更大的价值,实现更强健的生命力。 今天与大家分享的是《数字化转型之路》中基础设施篇——利用 QingStor®️NeonSAN®️ 打造强劲的核心业务存储引擎。 以下是分享正文: Neon 是一个惰性气体,它是化学元素周期表第十位,不燃烧、不助燃,不活跃, 非常稳定。我们通过这个名字命名我们的存储,希望存储产品像惰性气体一样地稳定,因为稳定是存储最根本的要求。 为企业核心业务而生的 QingStor®️ NeonSAN®️ NeonSAN®️ 作为企业级软件定义的分布式块存储,它在青云经历了多年的研发迭代与广泛的用户验证。分布式存储是 QingCloud 云平台体系中的重要组成部分,很早就以云平台超融合的方式为客户提供服务。后面我们发现很多客户提出独立存储需求,我们把云平台的存储进行解耦,作为独立产品推出。 NeonSAN®️

K:hash的应用场景

我是研究僧i 提交于 2020-02-10 07:25:21
本博文主要用于讲解Hash的应用场景 Hash主要应用于数据结构中和密码学中。 用于数据结构时,主要是为了提高查询的效率,这就对速度比较重视,对抗碰撞不太看中,只要保证hash均匀分布就可以。 在密码学中,hash算法的作用主要是用于消息摘要和签名,换句话说,它主要用于对整个消息的完整性进行校验。 1. 数据结构 使用Hash的数据结构叫做散列表,主要是为了提高查询的效率。也有直接译作哈希表,也叫Hash表, Hash表是一种特殊的数据结构,它同数组、链表以及二叉排序树等相比较有很明显的区别,它能够快速定位到想要查找的记录,而不是与表中存在的记录的关键字进行比较来进行查找。这个源于Hash表设计的特殊性,它采用了函数映射的思想将记录的存储位置与记录的关键字关联起来,从而能够很快速地进行查找。 2.密码学 在密码学中,hash算法的作用主要是用于消息摘要和签名,换句话说,它主要用于对整个消息的完整性进行校验。 举个用于消息摘要例子,银行的数据库中是不能保存用户密码的原文的,只能保存密码的hash值。在这种应用场景里,对于抗碰撞和抗篡改能力要求极高,对速度的要求在其次。一个设计良好的hash算法,其抗碰撞能力是很高的。 需要注意的是,hash算法在密码学中,主要用于信息的摘要和完整性校验,而不是加密。 概括来说,哈希(Hash)是将目标文本转换成具有相同长度的、不可逆的杂凑字符串

全面了解 Nginx 主要应用场景

好久不见. 提交于 2020-02-07 06:51:58
前言 本文只针对Nginx在不加载第三方模块的情况能处理哪些事情,由于第三方模块太多所以也介绍不完,当然本文本身也可能介绍的不完整,毕竟只是我个人使用过和了解到过得。所以还请见谅,同时欢迎留言交流 Nginx能做什么 反向代理 负载均衡 HTTP服务器(包含动静分离) 正向代理 以上就是我了解到的Nginx在不依赖第三方模块能处理的事情,下面详细说明每种功能怎么做 反向代理 反向代理应该是Nginx做的最多的一件事了,什么是反向代理呢,以下是百度百科的说法:反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。 简单来说就是真实的服务器不能直接被外部网络访问,所以需要一台代理服务器,而代理服务器能被外部网络访问的同时又跟真实服务器在同一个网络环境,当然也可能是同一台服务器,端口不同而已。下面贴上一段简单的实现反向代理的代码 server { listen 80 ; server_name localhost ; client_max_body_size 1024 M ; location / { proxy_pass http : / / localhost : 8080 ; proxy_set

es6----set map应用场景

倾然丶 夕夏残阳落幕 提交于 2020-02-06 19:12:49
1.数组去重 2.字符串去重 属性: Set.prototype.size :返回 Set 实例的成员总数。 Set 实例的方法分为两大类:操作方法(用于操作数据)和遍历方法(用于遍历成员)。下面先介绍四个操作方法。 add(value) :添加某个值,返回 Set 结构本身。 delete(value) :删除某个值,返回一个布尔值,表示删除是否成功。 has(value) :返回一个布尔值,表示该值是否为 Set 的成员。 clear() :清除所有成员,没有返回值。 遍历操作 Set 结构的实例有四个遍历方法,可以用于遍历成员。 keys() :返回键名的遍历器 values() :返回键值的遍历器 entries() :返回键值对的遍历器 forEach() :使用回调函数遍历每个成员 需要特别指出的是, Set 的遍历顺序就是插入顺序。这个特性有时非常有用,比如使用 Set 保存一个回调函数列表,调用时就能保证按照添加顺序调用。 (1) keys() , values() , entries() keys 方法、 values 方法、 entries 方法返回的都是遍历器对象 (2) forEach() Map 对象 Map 对象保存键值对。任何值(对象或者原始值) 都可以作为一个键或一个值。 Map方法 var myMap = new Map(); myMap.set(

序列化和反序列化

我怕爱的太早我们不能终老 提交于 2020-02-06 00:25:59
1, 摘要   序列化和反序列化几乎是工程师们每天都要面对的事情,但是要精确掌握这两个概念并不容易:一方面,它们往往作为框架的一部分出现而湮没在框架之中;另一方面,它们会以其他更容易理解的概念出现,例如加密、持久化。然而,序列化和反序列化的选型却是系统设计或重构一个重要的环节,在分布式、大数据量系统设计里面更为显著。恰当的序列化协议不仅可以提高系统的通用性、强健性、安全性、优化系统性能,而且会让系统更加易于调试、便于扩展。本文从多个角度去分析和讲解“序列化和反序列化”,并对比了当前流行的几种序列化协议,期望对读者做序列化选型有所帮助。   简介   文章作者服务于美团推荐与个性化组,该组致力于为美团用户提供每天billion级别的高质量个性化推荐以及排序服务。从Terabyte级别的用户行为数据,到Gigabyte级别的Deal/Poi数据;从对实时性要求毫秒以内的用户实时地理位置数据,到定期后台job数据,推荐与重排序系统需要多种类型的数据服务。推荐与重排序系统客户包括各种内部服务、美团客户端、美团网站。为了提供高质量的数据服务,为了实现与上下游各系统进行良好的对接,序列化和反序列化的选型往往是我们做系统设计的一个重要考虑因素。   本文内容按如下方式组织: 第一部分给出了序列化和反序列化的定义,以及其在通讯协议中所处的位置。 第二部分从使用者的角度探讨了序列化协议的一些特性。

大型分布式系统中的缓存架构

十年热恋 提交于 2020-02-04 22:37:02
大型分布式系统中的缓存架构 本文主要介绍大型分布式系统中缓存的相关理论,常见的缓存组件以及应用场景。 缓存概述 缓存概述 缓存的分类 缓存主要分为四类,如下图: 缓存的分类 CDN 缓存 CDN(Content Delivery Network 内容分发网络)的基本原理是广泛采用各种缓存服务器,将这些缓存服务器分布到用户访问相对集中的地区或网络中。 在用户访问网站时,利用全局负载技术将用户的访问指向距离最近的工作正常的缓存服务器上,由缓存服务器直接响应用户请求。 应用场景:主要缓存静态资源,例如图片,视频。 CDN 缓存应用如下图: 未使用 CDN 缓存 使用 CDN 缓存 CDN 缓存优点如下图: 优点 反向代理缓存 反向代理位于应用服务器机房,处理所有对 Web 服务器的请求。 如果用户请求的页面在代理服务器上有缓冲的话,代理服务器直接将缓冲内容发送给用户。 如果没有缓冲则先向 Web 服务器发出请求,取回数据,本地缓存后再发送给用户。通过降低向 Web 服务器的请求数,从而降低了 Web 服务器的负载。 应用场景:一般只缓存体积较小静态文件资源,如 css、js、图片。 反向代理缓存应用如下图: 反向代理缓存应用图 开源实现如下图: 开源实现 本地应用缓存 指的是在应用中的缓存组件,其最大的优点是应用和 Cache 是在同一个进程内部,请求缓存非常快速,没有过多的网络开销等。