• Lambda


    Lambda表达式

    lambda expression是一个匿名函数,Lambda表达式基于数学中的λ演算得名,直接对应于其中的lambda抽象(lambda abstraction),是一个匿名函数,即没有函数名的函数。
    表达式使用 Lambda 运算符 =>,该运算符读为“goes to”。语法如下:
    形参列表=>函数体
    函数体多于一条语句的可用大括号括起。

    (x,y) => Console.Write("包含2个参数,值为:{0}和{1}",x,y)

    (x,y)=>{int v=x*10;return y+v;}

    python lamada表达式

    square = lambda x: x*x #定义函数
    square(3) #调用函数

    lambda架构

    Lambda架构划分为三层,分别是批处理层,服务层,和加速层。

    query = function(all data)

    Lambda系统架构定义了一套明确的架构原则,如果要建立一套强大的和可扩展的数据系统,必须服从上面的公式。

    Lambda基于下列原则:

    1.人为容错性human fault-tolerance – 系统易数据丢失或数据损坏,大规模时可能是不可挽回的。

    2.数据不可变性data immutability – 数据存储在它的最原始的形式不变的,永久的。

    3.重新计算recomputation – 因为上面两个原则,运行函数重新计算结果是可能的。


    批处理层(Batch Layer)
    批处理层主用由Hadoop来实现,负责数据的存储和产生数据视图。

    服务层(Serving layer)
    由于批处理视图是静态的,服务层仅仅需要提供批量地更新和随机读,通过创建Hive表,读取HDFS中的数据。

    加速层 (Speed layer)
    在本质上,加速层与批处理层是一样的,都是从它接受到的数据上计算而得到视图。
    加速层就是为了弥补批处理层的高延迟性问题,它通过Strom,Spark框架计算实时视图来解决这个问题。

  • 相关阅读:
    LeetCode——Basic Calculator
    LeetCode——Sqrt(x)
    LeetCode——Binary Search Tree Iterator
    LeetCode——Search for a Range
    LeetCode——pow(x, n)
    LeetCode——Single Number II
    LeetCode——Summary Ranges
    LeetCode——Largest Number
    LeetCode——Kth Largest Element in an Array
    LeetCode——Implement Stack using Queues
  • 原文地址:https://www.cnblogs.com/one--way/p/5895492.html
Copyright © 2020-2023  润新知