首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

大规模异常滥用检测:基于局部敏感哈希算法——来自Uber Engineering的实践

为了解决我们和其他系统中的类似挑战,Uber Engineering 和 Databricks 共同向Apache Spark 2.1开发了局部敏感哈希(LSH)。...Uber 工程师在2016年Spark峰会上介绍了这个用例,讨论我们团队在Spark框架中使用LSH的动机,以便结合所有行程数据并从中筛选欺诈行为。...实际上,Uber 在YARN和Mesos上都使用了几乎所有的Spark组件,如MLlib,Spark SQL,Spark Streaming和直接RDD处理; 由于我们的基础架构和工具围绕Spark构建...出于这些原因,在Spark上部署LSH解决此问题是达到我们业务目标的正确选择:可扩展,数据规模和精度。...然后,我们对Jaccard距离函数使用MinHash哈希这些特征向量。最后,我们实时的使用批量相似度连接(similarity join in batch)或k-Nearest Neighbor搜索。

4.1K110
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    大规模异常滥用检测:基于局部敏感哈希算法——来自Uber Engineering的实践

    为了解决我们和其他系统中的类似挑战,Uber Engineering 和 Databricks 共同向Apache Spark 2.1开发了局部敏感哈希(LSH)。...Uber 工程师在2016年Spark峰会上介绍了这个用例,讨论我们团队在Spark框架中使用LSH的动机,以便结合所有行程数据并从中筛选欺诈行为。...实际上,Uber 在YARN和Mesos上都使用了几乎所有的Spark组件,如MLlib,Spark SQL,Spark Streaming和直接RDD处理; 由于我们的基础架构和工具围绕Spark构建...出于这些原因,在Spark上部署LSH解决此问题是达到我们业务目标的正确选择:可扩展,数据规模和精度。...最后,我们实时的使用批量相似度连接(similarity join in batch)或k-Nearest Neighbor搜索。

    3.7K90

    查询hudi数据集

    一旦提供了适当的Hudi捆绑包, 就可以通过Hive、Spark和Presto之类的常用查询引擎来查询数据集。 具体来说,在写入过程中传递了两个由table name命名的Hive表。...| | |extractSQLFile| 在源表上要执行的提取数据的SQL。提取的数据将是自特定时间点以来已更改的所有行。| | |sourceTable| 源表名称。在Hive环境属性中需要设置。...Spark Spark可将Hudi jars和捆绑包轻松部署和管理到作业/笔记本中。简而言之,通过Spark有两种方法可以访问Hudi数据集。...通常,您的spark作业需要依赖hudi-spark或hudi-spark-bundle-x.y.z.jar, 它们必须位于驱动程序和执行程序的类路径上(提示:使用--jars参数)。...如下所示是一个示例增量拉取,它将获取自beginInstantTime以来写入的所有记录。

    1.8K30

    新特性解读 | MySQL 8.0 窗口函数一次疑问解答

    first_value:用来返回一个分组窗口里的第一行记录,也即排名第一的那行记录。 我们用表 t1 来示范,这张表里只有12行记录,其中每6行记录按照字段 r1 来分组。...:和first_value相反,用来返回分组窗口里的最后一行记录,也即倒数第一的那行记录。...比如我取出对应分组内最后一行 r2 的值,如果用 last_value 函数,非常好实现,可结果和预期不一致:返回与字段 r2 本身等值的记录。...这里默认框架意思是:限制窗口函数的取值边界为当前行和上限无穷大,所以对应的值就是当前行自己。 那正确的框架应该是什么样呢?正确的框架应该是让边界锁定整个分组的上下边缘,也即整个分组的上限与下限之间。...所以正确的写法如下: localhost:ytt_new>select distinct r1,last_value(r2) over(partition by r1 order by r2 RANGE

    42520

    【Spark研究】用Apache Spark进行大数据处理第一部分:入门介绍

    调用一个变换方法,不会有任何求值计算,它只获取一个RDD作为参数,然后返回一个新的RDD。...你可以在自己的电脑上将Spark作为一个独立的框架安装或者从诸如Cloudera,HortonWorks或MapR之类的供应商处获取一个Spark虚拟机镜像直接使用。...累加器可用于实现计数(就像在MapReduce中那样)或求和。可以用add方法将运行在集群上的任务添加到一个累加器变量中。不过这些任务无法读取变量的值。只有驱动程序才能够读取累加器的值。...如果使用Linux或Mac OS,请相应地编辑命令以便能够在相应的平台上正确运行。...其中一个案例就是将Spark、Kafka和Apache Cassandra结合在一起,其中Kafka负责输入的流式数据,Spark完成计算,最后Cassandra NoSQL数据库用于保存计算结果数据。

    1.7K70

    【Spark研究】用Apache Spark进行大数据处理之入门介绍

    调用一个变换方法,不会有任何求值计算,它只获取一个RDD作为参数,然后返回一个新的RDD。...你可以在自己的电脑上将Spark作为一个独立的框架安装或者从诸如Cloudera,HortonWorks或MapR之类的供应商处获取一个Spark虚拟机镜像直接使用。...累加器可用于实现计数(就像在MapReduce中那样)或求和。可以用add方法将运行在集群上的任务添加到一个累加器变量中。不过这些任务无法读取变量的值。只有驱动程序才能够读取累加器的值。...如果使用Linux或Mac OS,请相应地编辑命令以便能够在相应的平台上正确运行。...其中一个案例就是将Spark、Kafka和Apache Cassandra结合在一起,其中Kafka负责输入的流式数据,Spark完成计算,最后Cassandra NoSQL数据库用于保存计算结果数据。

    1.9K90

    什么是 Apache Spark?大数据分析平台如是说

    非常好,Spark 可以运行在一个只需要在你集群中的每台机器上安装 Apache Spark 框架和 JVM 的独立集群模式。然而,你将更有可能做的是,希望利用资源或集群管理系统来帮你按需分配工作。...雇佣了 Apache Spark 创始人的公司 Databricks 也提供了 Databricks 统一分析平台,这个平台是一个提供了 Apache Spark 集群,流式支持,集成了基于 Web 的笔记本开发...下边这行简单的代码是从数据框架中选择一些字段: citiesDF.select(“name”, “pop”) 要使用 SQL 接口,首先要将数据框架注册成一个临时表,之后我们就可以使用 SQL 语句进行查询...在 Apache Spark 2.x 版本中,Spark SQL 的数据框架和数据集的接口(本质上是一个可以在编译时检查正确性的数据框架类型,并在运行时利用内存并和计算优化)是推荐的开发方式。...数据科学家可以在 Apache Spark 中使用 R 或 Python 训练模型,然后使用 MLLib 存储模型,最后在生产中将模型导入到基于 Java 或者 Scala 语言的管道中。

    1.3K60

    热度再起:从Databricks融资谈起

    就在本周一,大数据初创公司Databricks在官网宣布他们完成了10亿美元的G轮融资,对公司的估值为280亿美元。...公司创始人都曾经是 Apache Spark 背后的功臣,包括 Matei Zaharia(在加州大学伯克利分校 AMPLab 学习时开发出了 Spark),还有其他来自 AMPLab 或伯克利计算机学院的同僚们...业务分析师 使用SQL、可视化报表等发现大型数据集的问题,并可使用BI工具分析。 数据工程师 使用Scale、Java和内置笔记本和API建立强大数据管道,自动化和监视生成作业。...数据跳过:在查询时使用有关在写入数据时自动收集的最小值和最大值的统计信息,以提供更快的查询。...在Delta Lake的支持下,Databricks将最好的数据仓库和数据湖整合到了Lakehouse体系结构中,从而为您提供了一个平台来协作处理所有数据,分析和AI工作负载。

    1.8K10

    大数据分析平台 Apache Spark详解

    雇佣了 Apache Spark 创始人的公司 Databricks 也提供了 Databricks 统一分析平台,这个平台是一个提供了 Apache Spark 集群,流式支持,集成了基于 Web 的笔记本开发...下边这行简单的代码是从数据框架中选择一些字段: citiesDF.select(“name”, “pop”) 要使用 SQL 接口,首先要将数据框架注册成一个临时表,之后我们就可以使用 SQL 语句进行查询...在 Apache Spark 2.x 版本中,Spark SQL 的数据框架和数据集的接口(本质上是一个可以在编译时检查正确性的数据框架类型,并在运行时利用内存并和计算优化)是推荐的开发方式。...数据科学家可以在 Apache Spark 中使用 R 或 Python 训练模型,然后使用 MLLib 存储模型,最后在生产中将模型导入到基于 Java 或者 Scala 语言的管道中。...使用 MLlib 的现有管线结构,您将能够在几行代码中构建分类器,并将自定义 Tensorflow 图形或 Keras 模型应用于传入数据。

    2.9K00

    什么是 Apache Spark?大数据分析平台详解

    Spark 可以运行在一个只需要在你集群中的每台机器上安装 Apache Spark 框架和 JVM 的独立集群模式。然而,你将更有可能做的是,希望利用资源或集群管理系统来帮你按需分配工作。...雇佣了 Apache Spark 创始人的公司 Databricks 也提供了 Databricks 统一分析平台,这个平台是一个提供了 Apache Spark 集群,流式支持,集成了基于 Web 的笔记本开发...下边这行简单的代码是从数据框架中选择一些字段: citiesDF.select(“name”, “pop”) 要使用 SQL 接口,首先要将数据框架注册成一个临时表,之后我们就可以使用 SQL 语句进行查询...在 Apache Spark 2.x 版本中,Spark SQL 的数据框架和数据集的接口(本质上是一个可以在编译时检查正确性的数据框架类型,并在运行时利用内存并和计算优化)是推荐的开发方式。...数据科学家可以在 Apache Spark 中使用 R 或 Python 训练模型,然后使用 MLLib 存储模型,最后在生产中将模型导入到基于 Java 或者 Scala 语言的管道中。

    1.2K30

    什么是 Apache Spark?大数据分析平台详解

    非常好,Spark 可以运行在一个只需要在你集群中的每台机器上安装 Apache Spark 框架和 JVM 的独立集群模式。然而,你将更有可能做的是,希望利用资源或集群管理系统来帮你按需分配工作。...雇佣了 Apache Spark 创始人的公司 Databricks 也提供了 Databricks 统一分析平台,这个平台是一个提供了 Apache Spark 集群,流式支持,集成了基于 Web 的笔记本开发...下边这行简单的代码是从数据框架中选择一些字段: citiesDF.select(“name”, “pop”) 要使用 SQL 接口,首先要将数据框架注册成一个临时表,之后我们就可以使用 SQL 语句进行查询...在 Apache Spark 2.x 版本中,Spark SQL 的数据框架和数据集的接口(本质上是一个可以在编译时检查正确性的数据框架类型,并在运行时利用内存并和计算优化)是推荐的开发方式。...数据科学家可以在 Apache Spark 中使用 R 或 Python 训练模型,然后使用 MLLib 存储模型,最后在生产中将模型导入到基于 Java 或者 Scala 语言的管道中。

    1.5K60

    聚合函数Aggregations

    empDF.select(approx_count_distinct ("ename",0.1)).show() 1.5 first & last 获取 DataFrame 中指定列的第一个值或者最后一个值...empDF.select(first("ename"),last("job")).show() 1.6 min & max 获取 DataFrame 中指定列的最小值或者最大值。...以下分别使用两种方式来自定义一个求平均值的聚合函数,这里以计算员工平均工资为例。...两种自定义方式分别如下: 3.1 有类型的自定义函数 import org.apache.spark.sql.expressions.Aggregator import org.apache.spark.sql...方法的作用在上图都有说明,这里解释一下中间类型和输出类型的编码转换,这个写法比较固定,基本上就是两种情况: 自定义类型 Case Class 或者元组就使用 Encoders.product 方法;

    1.2K20

    hive面试必备题

    示例代码: import org.apache.spark.sql.SparkSession import org.apache.spark.sql.functions._ val spark = SparkSession.builder.appName...FIRST_VALUE(): 返回窗口中的第一个值。 LAST_VALUE(): 返回窗口中的最后一个值。 c....这种表示方式允许Hive在处理文本文件(如CSV或TSV文件)时,能够区分数据中的空值和其他字符串值。在Hive的文本文件存储格式中,任何字段值如果为null,在文件中就会被替换成"\N"。...存储和处理null值 在文本文件中,null值被存储为字符串"\N"。 在二进制格式中(如ORC或Parquet),null值的处理会更为高效。...e.注意事项 在设计数据安全策略时,需要综合考虑数据存储、传输和访问各个环节的安全需求。 定期审计和监控数据访问行为,确保权限设置正确无误,防止数据泄露和未授权访问。

    50510

    取代而非补充,Spark Summit 2014精彩回顾

    最后使用Spark Streaming生成一个tweet流,并用Spark SQL过滤出和用户给出的搜索词相关的tweets,比如搜索足球会显示世界杯的tweets。这个演示在听众中得到极高的评价。...Spark SQL的主要开发人员Michael Armbrust:使用Spark SQL进行高级数据分析 Spark SQL是Spark1.0中最新的一个alpha组成部分。...SparkR是R的一个程序包,因此它提供了在R的环境中使用Spark的一个简易方法。SparkR允许用户创建RDD并用R函数对其进行变换。在R交互环境中可以给Spark计算机群提交作业。...他演示了两个不同的实现方法,并在Databricks Cloud中运行,比较了执行阶段和运行时间。 基于Apache Spark的科研及应用 1....实时流处理 有越来越多的工业产品建立在或集成了Spark如Databricks Cloud和SAP HANA等。

    2.4K70

    无数据不AI的狂欢!Databricks Data+AI峰会亮点总结

    在今年早些时候,Databricks 与 Snowflake 这两家最大的云数据平台厂商便先后宣布将在同一时间,也就是六月最后一周,举行各自的年度会议。...要知道,MosaicML 从成立到收购仅仅有两年左右的时间,而传闻中他们在被收购前正在进行但主动放弃的 B 轮融资估值“仅”为 4 亿美金。...作为一个大数据平台,Apache Spark 有着不低的学习门槛:用户需要学习 Java 或 Scala 等语言并调用 Spark 转有的接口才能进行编程。...尽管 Spark 在这些底层接口上提供了 Python 与 SQL 语言的支持,但许多非技术背景的工作者,如市场、销售等岗位员工,并不理解如何使用这些高级编程语言。...值得一提的是,Delta Sharing 可以允许用户使用 Iceberg 和 Hudi 来读取 Delta Lake 中的数据。

    41740

    基于Apache Spark机器学习的客户流失预测

    使用数据科学更好地理解和预测客户行为是一个迭代过程,其中涉及: 1.发现和模型创建: 分析历史数据。 由于格式,大小或结构,传统分析或数据库不能识别新数据源。...收集,关联和分析跨多数据源的数据。 认识并应用正确的机器学习算法来从数据中获取价值。 2.在生产中使用模型进行预测。 3.使用新数据发现和更新模型。...决策树通过在每个节点处评估包含特征的表达式并根据答案选择到下一个节点的分支来工作。下面显示了一个可能的信用风险的决策树预测。特征问题是节点,答案“是”或“否”是树中到子节点的分支。...这些特征值映射到“ 客户服务电话 ”字段和“ 总分钟数”字段并不奇怪。决策树通常用于特征选择,因为它们提供了一个确定最重要特征(最接近树根的特征)的自动化机制。...预测和模型评估 [Picture16.png] 模型的实际性能可以使用尚未用于任何训练或交叉验证活动的测试数据集来确定。我们将使用模型管道来转换测试集,这将根据相同的方法来映射特征。

    3.5K70
    领券