当前位置: 首页 > news >正文

DAMA学习笔记(十三)-大数据和数据科学

1.引言

  大数据不仅指数据的量大,也指数据的种类多(结构化的和非结构化的,文档、文件、音频、视频、流数据等),以及数据产生的速度快。数据科学家是指从从数据中探究、研发预测模型、机器学习模型、规范性模型和分析方法并将研发结果进行部署供相关方分析的人。大多数数据仓库依赖于ETL(提取、转换和加载)的概念。大数据解决方案,如数据湖,则依赖于ELT的概念 – 先加载后转换。

1.业务驱动

  期望抓住从多种流程生成的数据集中发现的商机,是提升一个组织大数据和数据科学能力的最大业务驱动力。机器学习算法可以将那些复杂且耗时的活动实现自动化,从而提升组织效率、削减成本、降低风险。

在这里插入图片描述

2.原则

  组织应仔细管理与大数据源相关的元数据,以便对数据文件及其来源和价值进行准确的清单管理。

3.基本概念

3.1 数据科学

  数据科学将数据挖掘、统计分析和机器学习与数据集成整合,结合数据建模能力,去构建预测模型、探索数据内容模式。开发数据科学解决方案,包括将数据源迭代地整合到开发洞察力的模型中。数据科学依赖于:

  • 1)丰富的数据源。具有能够展示隐藏在组织或客户行为中不可见模式的潜力。
  • 2)信息组织和分析。用来领会数据内容,结合数据集针对有意义模式进行假设和测试的技术。
  • 3)信息交付。针对数据运行模型和数学算法,进行可视化展示及其他方式输出,以此加强对行为的深入洞察。
  • 4)展示发现和数据洞察。分析和揭示结果,分享洞察观点对比了传统的数据仓库/商务智能与基于数据科学技术实现的预测性分析和规范性分析的作用。
3.2 数据科学的过程

  数据科学的过程遵循科学的方法,通过观察、设立和检验假设、观察结果、构思解释结果的通用理论来提炼知识。数据科学的过程分为以下阶段: 1)定义大数据战略和业务需求。 2)选择数据源。 3)采集和提取数据资料。4)设定数据假设和方法。5)集成和调整数据进行分析。 6)使用模型探索数据。 7)部署和监控。

3.3 大数据

  大数据的特征: 数据量大(Volume)、数据更新快(Velocity)、数据类型多样/可变(Variety)、数据黏度大(Viscosity)、数据波动性大(Volatility)、数据准确性低(Veracity)。

3.4 大数据架构组件

  DW/BI与大数据处理之间最大的区别在于,在传统的数据仓库中,数据在进入仓库时进行整合(提取、转换、加载);在大数据环境中,数据在整合之前就进行接收和加载(提取、加载、转换)。

在这里插入图片描述

3.5 大数据来源

  大数据会通过电子邮件、社交媒体、在线订单甚 至在线视频游戏生成。不仅电话和销售网点的设备产生数据,监控系 统、运输系统中的传感器、医疗监控系统、工业和公用事业监控系统、 卫星和军事装备等也会产生大量数据。例如,一个航线的航班可以生成 1 TB的数据,直接与因特网交互的设备也会生成大量数据,设备和因特网之间的连接通常被称为物联网(IoT)。

3.6 数据湖

  数据湖是一种可以提取、存储、评估和分析不同类型和结构海量数据的环境,可供多种场景使用。例如,它可以提供: 1)数据科学家可以挖掘和分析数据的环境。 2)原始数据的集中存储区域,只需很少量的转换(如果需要的 话)。 3)数据仓库明细历史数据的备用存储区域。 4)信息记录的在线归档。 5)可以通过自动化的模型识别提取流数据的环境。数据湖可能很快变成数据沼泽,在数据被摄取时要对元数据进行管理。

3.7 基于服务的架构

  基于服务的体系结构(Services-Based Architecture,SBA)正在成为一种立即提供(如果不是完全准确或完整)数据的方法,并使用相同 的数据源来更新完整、准确的历史数据集。SBA架构与数据仓库架构有些类似,它会把数据发送到操作型数据存储(ODS)中以实现即时存取,同时也会将数据发送到数据仓库中以实现历史积累。SBA架构包括三个主要的组件,分别: 1)批处理层(Batch Layer)。数据湖作为批处理层提供服务,包括近期的和历史的数据。 2)加速层(Speed Layer)。 只包括实时数据。 3)服务层(Serving Layer)。提供连接批处理和加速层数据的接口。

![外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传]在这里插入图片描述

3.8 机器学习

  机器学习探索了学习算法的构建和研究,是无监督学习和监督学习方法的结合。无监督学习称为数据挖掘,监督学习是基于复杂的数字理论。第三分支正处于形成过程,没有经过教师的认可 就可实现了目标优化,称为强化学习。通过编程使机器可以快速从查询中学习并适应不断变化的数据集,是机器学习。这些算法一般分为三种类型:1)监督学习(Supervised learning)。2) 无监督学习(Unsupervised learning)。基于找到的那些隐藏的规律(数据挖掘)。3)强化学习(Reinforcement learning)。基于目标的实现(如在国际象棋中击败对手)

3.9 语义分析

  媒体监控和文本分析是从大量非结构化或半结构化数据(如事务数据、社交媒体、博客和Web新闻网站)中检索并获得见解的自动化方法,用于感知人们对品牌、产品、服务或其他类型主题的感觉和看法。

3.10 数据和文本挖掘

  数据挖掘(Data mining)是一种特殊的分析方法,它使用各种算法揭示数据中的规律。文本挖掘使用文本分析和数据挖掘技术来分析文档,将内容自动进行分类,成为工作流导向和领域专家导向的知识本体。数据和文本挖掘使用了一系列的技术,包括:1)剖析(Profiling)。剖析尝试描述个人、群体或人群的典型行为,用于建立异常检测应用程序的行为规范。2)数据缩减(Data reduction)。数据缩减是采用较小的数据集来替换大数据集,较小数据集中包含了较大数据集中的大部分重要信息。 3)关联(Association)。关联是一种无监督的学习过程,根据交易涉及的元素进行研究,找到它们之间的关联。4)聚类(Clustering)。基于数据元素的共享特征,将它们聚合为不同的簇。5)自组织映射(Self-organizing maps)。聚类分析的神经网络方法, 目的在于减少评估空间中的维度。

3.11 预测分析

  预测分析(Predictive Analytics)是有监督学习的子领域,用户尝试对数据元素进行建模,并通过评估概率估算来预测未来结果。预测分析是基于可能事件(购买、价格变化等)与可变因素(包括历史数据)的概率模型开发。当它接收到其他信息时,模型会触发组织的反应。预测模型在做出预测和被预测的事件发生之间提供的时间通常非常短(几秒或小于一秒)。预测模型的最简单形式是预估(Forecast)。

3.12 规范分析

  规范分析(Prescriptive Analytics)比预测分析更进一步,它对将会影响结果的动作进行定义,而不仅仅是根据已发生的动作预测结果。规范分析预计将会发生什么,何时会发生,并暗示它将会发生的原因。

3.13 非结构化数据分析

  非结构化数据分析(Unstructured Data Analytics)结合了文本挖掘、关联分析、聚类分析和其他无监督学习技术来处理大型数据集。扫描和标记是向非结构化数据添加“钩子”的一种方法,它允许对相关结构化数据进行链接和筛选。

3.14 运营分析

  运营分析(Operational Analytics),也称为运营BI或流式分析,其概念是从运营过程与实时分析的整合中产生的。运营分析包括跟踪和整合实时信息流,根据行为预测模型得出结论,并触发自动响应和警报。运营分析解决方案包括对行为模型预填充所需历史数据的准备。例如,在零售产品模型中,填充一个购物篮分析,能够识别出通常被一起购买的产品。

3.15 数据可视化

  可视化(Visualization)是通过使用图片或图形表示来解释概念、想法和事实的过程。数据可视化通过视觉概览(如图表或图形)来帮助理解基础数据。数据可视化可以以静态格式(如已发布的报告)或更有交互性的在线格式交付,某些格式支持和最终用户的交互,其中钻取或过滤功能有助于对可视化中的数据进行分析。长期以来,可视化一直是数据分析的关键。

3.16 数据混搭

  数据混搭(Data Mashups)将数据和服务结合在一起,以可视化的方式展示见解或分析结果。

2.活动

2.1 定义大数据战略和业务需求

  组织的大数据战略需要与其整体业务战略和业务需求保持一致并提供支持,并成为其数据战略的一部分。大数据战略必须包括以下评估标准:

  • 1)组织试图解决什么问题,需要分析什么。
  • 2)要使用或获取的数据源是什么。
  • 3)提供数据的及时性和范围。
  • 4)对其他数据结构的影响以及与其他数据结构的相关性。
  • 5)对现有建模数据的影响。

2.2 选择数据源

  大数据环境可以快速获取大量数据,但随着时间的推移需要进行持续管理,需要了解以下基本事实: 1)数据源头。 2)数据格式。 3)数据元素代表什么。 4)如何连接其他数据。 5)数据的更新频率。

  需要评估数据的价值和可靠性,需要审查数据源和创建这些源的流程,并管理这些新的数据源。1)基础数据。2)粒度。3)一致性。4)可靠性。5)检查/分析新数据源。

2.3 获得和接收数据源

  获取时需要捕获有关源的关键元数据,如来源、大小、时效性和相关内容的额外知识。迭代地识别当前数据资产基础和这些数据源的差距,使用分析、可视化、挖掘或其他数据科学方法探索这些数据源,以定义模型算法输入或模型假设。在整合数据之前,应先评估数据的质量。

2.4 制定数据假设和方法

  制订数据科学解决方案需要构建统计模型,找出数据元素和数据集内部以及二者之间的相关性和趋势。模型的效果取决于输入数据的质量和模型本身的健全性。

2.5 集成和调整数据进行分析

  准备用于分析的数据包括了解数据中的内容、查找各种来源的数据间的链接以及调整常用数据以供使用。一方法是使用共有键值整合数据的通用模型。另一方法是使用数据库引擎内的索扫描和连接数据。

2.6 使用模型探索数据

  • 1.填充预测模型。需要使用历史信息预先填充配置预测模型,这些信息涉及模型中的客户、市场、产品或模型触发因素之外的其他因素。
  • 2.训练模型。需要通过数据模型进行训练。训练包括基于数据重复运行模型以验证假设,将导致模型更改。训练需要平衡,通过针对有限数据文件夹的训练避免过度拟合。
  • 3.评估模型。将数据放入平台并准备分析后,数据科学就开始了。针对训练集进行模型构建、评估和验证。
  • 4.创建数据可视化。必须满足与模型目的相关的特定需求,每个可视化应该能够回答一个问题或提供一个见解。

2.7 部署和监控

  满足业务需求的模型,必须以可行的方式部署到生产中,以获得持续监控。1.揭示洞察和发现。洞察应与行动项目相关联,这样组织才能从数据科学工作中受益。2.使用附加数据源迭代。数据科学是一个迭代的过程。

3.工具

  大规模并行处理(MPP)的出现是大数据和数据科学的首批推动者之一,因为它提供了在相对较短的时间内分析巨量信息的手段。其他改变了我们查看数据和信息方式的技术包括:1)数据库内的高级分析。 2)非结构化数据分析(Hadoop,MapReduce)。 3)分析结果与操作系统的集成。 4)跨多媒体和设备的数据可视化。 5)链接结构化和非结构化信息的语义。 6)使用物联网的新数据源。 7)高级可视化能力。 8)数据扩展能力。 9)技术和工具集的协作。

  现有的数据仓库、数据集市和操作型数据存储(ODS)正在激增,以承载大数据工作量。No-SQL技术允许存储和查询非结构化和半结构化数据。

3.1 MPP无共享技术和架构

  大规模并行处理(MPP)的无共享数据库技术,已成为面向数据科学的大数据集分析标准平台。在MPP数据库中,数据在多个处理服务器(计算节点)之间进行分区(逻辑分布),每个服务器都有自己的专用内存来处理本地数据。处理服务器之间的通信通常由管理节点控制,并通过网络互联进行。在不断增长的计算池中,MPP可以轻松扩展数百或数千个内核的并行性。

在这里插入图片描述

3.2 基于分布式文件的数据库

  Hadoop存储任何类型的文件——结构化、半结构化和非结构化。使用类似于MPP无共享(用于文件存储的MPP基础)的配置,能够跨处理服务器共享文件。基于文件的解决方案中使用的模型称为MapReduce。该模型有三个主要步骤: 1)映射(Map)。识别和获取需要分析的数据。2)洗牌(Shuffle)。依据所需的分析模式组合数据。3)归并(Reduce)。删除重复或执行聚合,以便将结果数据集的大小减少到需要的规模。

3.3 数据库内算法

  数据库内算法(In-database algorithm)使用类似MPP的原则。MPP无共享架构中的每个处理器可以独立运行查询,因此可在计算节点级别 实现新形式的分析处理,提供数学和统计功能,提供可扩展数据库内算法的开源库,用于机器学习、统计和其他分析任务。

3.4 大数据云解决方案

  有些供应商为大数据提供包括分析功能的云存储和集成整合能力。根据定义的标准,客户将数据加载到云环境中。供应商通过开放数据集 或其他组织提供的方式来增强数据。客户可以使用组合数据集进行分析和数据科学活动。

3.5 统计计算和图形语言

  R语言是用于统计计算和图形的开源脚本语言和环境。它提供了各种各样的统计技术,如线性和非线性建模、经典统计检验、时间序列分析、分类和聚类。

3.6 数据可视化工具集

  高级可视化和发现工具使用内存架构,使用户能够与数据交互,展示难以识别的大数据集的模式。许多工具集现在支持诸如雷达图、平行坐标图、标签图、热图和数据地图等信息可视化方法。与传统的可视化工具相比,这些工具具有以下优势: 1)复杂的分析和可视化类型,如格子图、火花线、热图、直方图、瀑布图和子弹图。 2)内置可视化最佳实践。 3)交互性,实现视觉发现

4.方法

4.1 解析建模

  解析模型与不同的分析深度相关联:1)描述性建模以紧凑的方式汇总或表示数据结构。2)解释性建模是数据统计模型的应用,主要是验证关于理论构造的因果假设。预测分析的关键是通过训练模型来学习,学习方法的效果取决于它在测试集(与训练集相互独立)上的预测能力。将数据集随机分为三个部分:训练集、测试集和校验集。训练集用于拟合模型,测试集用于评估最终模型的泛化误差,校验集用于预测选择的误差。

4.2 大数据建模

  大数据建模是一项技术挑战,对想要描述和管控数据的组织而言至关重要。对数据仓库进行物理建模的主要驱动因素是为查询性能而启用数据填充。数据建模的价值在于它能够使人们理解数据的内容。

5.实施指南

  管理数据仓库数据的许多一般规则适用于管理大数据:确保数据源可靠、具有足够的元数据以支持数据使用、管理数据质量、确定如何整合来自不同源的数据,以及确保数据安全且受到保护。实施大数据环境的差异与一组未知问题有关:如何使用数据、哪些数据有价值、需要保留多长时间。

5.1 战略一致性

  任何大数据/数据科学项目都应该与组织目标战略一致。战略交付 成果应考虑管理以下要素: 1)信息生命周期。 2)元数据。 3)数据质量。 4)数据采集。 5)数据访问和安全性。 6)数据治理。7)数据隐私。 8)学习和采用。 9)运营。

5.2 就绪评估/风险评估

  与任何开发项目一样,大数据或数据科学计划的实施应与实际业务需求保持一致。评估与关键成功因素相关的组织准备情况,具体包括:1)业务相关性。2)业务准备情况。3)经济可行性。4)原型。5)可能最具挑战性的决策将围绕数据采购、平台开发和资源配置进行。6)数字资料存储有许多来源,并非所有来源都需要内部拥有和运营。有些可以买,其他的可以租赁。 7)市场上有多种工具和技术,满足一般需求将是一个挑战。 8)及时保护具有专业技能的员工,并在实施过程中留住顶尖人才,可能需要考虑替代方案,包括专业服务、云采购或合作。 9)培养内部人才的时间可能会超过交付窗口的时间。

5.3 组织与文化变迁

  与DW/BI一样,大数据实施将汇集许多关键的跨职能角色,包括: 1)大数据平台架构师。硬件、操作系统、文件系统和服务。 2)数据摄取架构师。数据分析、系统记录、数据建模和数据映 射。提供或支持将源映射到Hadoop集群以进行查询和分析。 3)元数据专家。元数据接口、元数据架构和内容。 4)分析设计主管。最终用户分析设计、最佳实践依靠相关工具集指导实施,以及最终用户结果集简化。 5)数据科学家。提供基于统计和可计算性的理论知识,交付适当的工具和技术,应用到功能需求的架构和模型设计咨询。

6. 大数据和数据科学治理

   与其他数据一样,大数据同样需要治理。寻源、来源分析、提取、 丰富和发布流程需要业务和技术控制,解决以下问题:

  • 1)寻源。来源有哪些,什么时候接入源,什么是特定研究的最佳 数据来源。
  • 2)共享。组织内部和外部要签订的数据共享协议和合同、条款和条件。
  • 3)元数据。数据在源端意味着什么,如何解释输出端的结果。
  • 4)丰富。是否丰富数据,如何丰富数据,以及丰富数据的好处。
  • 5)访问。发布什么,向谁发布,如何以及何时发布。

6.1 可视化渠道管理

  根据组织的规模和性质,可能会在各种流程中应用多种不同的可视化工具。确保用户了解可视化工具的相对复杂性,富有经验的用户将有 越来越复杂的需求。

6.2 数据科学和可视化标准

  最佳实践是建立一个定义和发布可视化标准和指南的社区,并在指定的交付方法中审查工件,这对于面向客户和监管的内容尤为重要。标 准可能包括:

  • 1)分析范例、用户团体、主题域的工具标准。
  • 2)新数据的请求。
  • 3)数据集流程标准。
  • 4)采用中立的、专业的陈述过程,避免产生有偏见的结果,并确保所有要素都以公平一致的方式完成,包括: ①数据包含和排除。 ②模型中的假设。 ③结果统计有效性。 ④结果解释的有效性。 ⑤采用适当的方法。

6.3 数据安全

  为授权人员安全地提供适当级别的数据,并根据议定的级别提供订阅数据。对用户社区安排服务,以便可以创建特殊服务,为允许其提取的社区提供私有数据,并为其他人屏蔽数据。为保护高度敏感的信息(如社会安全号码、信用卡号码等),将使用模糊信息的加密技术存储数据。

6.4 元数据

  元数据需要作为数据提取的一部分进行谨慎管理,否则数据湖将迅速成为数据沼泽。用户社区必须具备工具,使他们能够使用元数据创建数据集的主列表,元数据特征化数据的结构、内容 和质量,包括数据的来源、数据的血缘沿袭、数据的定义,以及实体和 数据元素的预期用途。技术元数据可以从各种大数据工具中获取,包括数据存储层、数据整合、MDM甚至源文件系统。

6.5 数据质量

  数据质量是与预期结果偏差的度量:差异越小,数据满足期望越好,质量就越高。大多数成熟的大数据组织,使用数据质量工具集扫描数据输入源,以了解其中包含的信息。大多数高级数据质量工具集都提供了一些功能: 1)发现。信息驻留在数据集中的位置。 2)分类。基于标准化模式存在哪些类型的信息。 3)分析。如何填充和构建数据。 4)映射。可以将哪些其他数据集与这些值匹配。

6.6 度量指标

  • 1.技术使用指标。查找数据热点(最常访问的数据)
  • 2.加载和扫描指标。提取率和与用户社区的交互。
  • 3.学习和故事场景。常用的测量方法包括:1)已开发模型的数量和准确性。2)已识别的机会中实现的收入。3) 避免已识别的威胁所降低的成本。

7.总结

  • 原则: 组织应仔细管理与大数据源相关的元数据,以便对数据文件及其来源和价值进行准确的清单管理。
  • 大数据: 数据量大(Volume)、数据更新快(Velocity)、数据类型多样/可变(Variety)。数据黏度大(Viscosity)。数据波动性大(Volatility)。数据准确性低(Veracity)。
  • 数据科学家: 从数据中探究、研发预测模型、机器学习模型、规范性模型和分析方法并将研发结果 进行部署供相关方分析的人。
  • 大多数据仓库都依赖于 ETL,大数据解决方案,如数据湖,则依赖于 ELT。
  • 业务驱动: 期望抓住从多种流程生成的数据集中发现的商机,是提升一个组织大数据和数据科学能力的最大业务驱动力。
  • 数据科学依赖: 1)丰富的数据源。2)信息组织和分析。3)信息交付。4)展示发现和数据洞察。
  • 数据科学的过程阶段: 1 定义大数据战略和业务需求。2 选择数据源。3 获得和接收数据源。4 制定数据假设和方法。5 集成和调整进行数据分析。6 使用模型探索数据。7 部署和监控。
  • 数据湖是一种可以提取、存储、评估和分析不同类型和结构海量数据的环境,可供多种场景使用。提供 1)数据科学家可以挖掘和分析数据的环境。 2)原始数据的集中存储区域,只需很少量的转换(如果需要的话)。 3)数据仓库明细历史数据的备用存储区域4)信息记录的在线归档5)可以通过自动化的模型识别提取流数据的环境。
  • 数据湖可能很快变成数据沼泽,在数据被摄取时要对元数据进行管理
  • 基于服务的体系结构(Services-Based Architecture,BA) 正成为一种立即提供数据的方法,并使用相同的数据源来更新完整、准确的历史数据。
  • 机器学习探索了学习算法的构建和研究,是无监督学习和监督学习方法的结合。
  • 语义分析。 从大量非结构化或半结构化数据中检索并获得见解的自动化方法,用于感知人们对品牌、产品、服务或其他类型主题的感觉和看法。
  • 数据挖掘(Data mining)机器学习的一个分支,无监督学习
  • 预测分析(Predictive Analytics) 是有监督学习的子领域,用户尝试对数据元素进行建模,并通过评估概率估算来预测未来结果。
  • 规范分析(Prescriptive Analytics):它对将会影响结果的动作进行定义,而不仅仅是根据已发生的动作预测结果。
  • 非结构化数据分析。 结合了文本挖掘、关联分析、聚类分析和其他无监督学习技术来处理大型数据集。
  • 运营分析(Operational Analytics),运营 BI 或流式分析:是从运营过程与实时分析的整合中产生。
  • 数据可视化(Visualization) 是通过使用图片或图形表示来解释概念、想法和事实的过程。
  • 数据混搭(Data Mashups) 将数据和服务结合在一起,以可视化的方式展示见解或分析结果。
  • 活动:
    • 【活动 1】定义大数据战略和业务需求
    • 【活动 2】选择数据源
    • 【活动 3】获得和接收数据源
    • 【活动 5】集成和调整数据进行分析
    • 【活动 6】使用模型探索数据
    • 【活动 7】部署控制
  • 查看数据和信息的方式: 1)数据库内的高级分析。2)非结构化数据分析(Hadoop,MapReduce)。3)分析结果与操作系统的集成。4)跨多媒体和设备的数据可视化。5)链接结 构化和非结构化信息的语义。6)使用物联网的新数据源。7)高级可视化能力。8)数据扩展能力。9)技术和工具集的协作。
  • 工具: MPP 无共享技术和架构。基于分布式文件的数据库。 数据库内算法。大数据云解决方案。统计计算和图形语言。数据可视化工具集。
  • 方法: (1)解析建模。 (2) 大数据建模。
  • 战略交付成果应考虑管理以下要素:1)信息生命周期。2)元数据。3)数据质量。4)数据采集。5)数据访问和安全性。6)数据治理。7)数据隐私。8)学习和采用。9)运营。
  • 大数据实施将汇集多关键的跨职能角色。包括:1)大数据平台架构师。2) 数据摄取架构师。 3) 元数据专家。 4) 分析设计主管。5) 数据科学家。
  • 大数据和数据科学治理:寻源。共享。元数据。丰富。访问。
  • 数据科学和可视化标准:最佳实践是建立一个定义和发布可视化标准和指南的社区,并在指定的交付方法中审查
  • 元数据需要作为数据提取的一部分进行谨慎管理,否则数据湖将迅速成为数据沼泽。
  • 度量指标: 1.技术使用指标。2.加载和扫描指标。提取率和与用户社区的交互。3.学习和故事场景。

相关文章:

DAMA学习笔记(十三)-大数据和数据科学

1.引言 大数据不仅指数据的量大,也指数据的种类多(结构化的和非结构化的,文档、文件、音频、视频、流数据等),以及数据产生的速度快。数据科学家是指从从数据中探究、研发预测模型、机器学习模型、规范性模型和分析方法…...

【Java】Java 中的 toLowerCase() 方法详解

我最爱的那首歌最爱的angel 我到什么时候才能遇见我的angel 我最爱的那首歌最爱的angel 我不是王子也会拥有我的angel 🎵 张杰《云中的angel》 在 Java 编程中,字符串处理是一个非常常见的任务。为了便于开发者操作和格式化字符串&…...

Linux: 进程概念详解

1. 冯诺依曼体系结构 截至目前,我们所认识的计算机,都是有一个个的硬件组件组成 。 【注意】: a. 这里的存储器指的是内存 b. 不考虑缓存情况,这里的CPU能且只能对内存进行读写,不能访问外设(输入或输出设备) c.外…...

【C++】模板详细讲解(含反向迭代器)

欢迎来到我的Blog,点击关注哦💕 前言: C的模板在是泛型编程的重要组成部分,编写在不同类型上工作的代码,而无需为每个类型编写重复的代码,这有助于减少代码冗余并提高代码的可维护性。 模板 模板的介绍 …...

haproxy七层代理详解之-完整安装部署流程及负载均衡实现-及热更新方法

一.负载均衡 1.1负载均衡时什么 负载均衡:Load Balance,简称LB,是一种服务或基于硬件设备等实现的高可用反向代理技术,负载均网络流量等)分担给指定的一个或多个后端特定的服务器或设备,从而提高了衡将特定的业务(web服务、公司…...

C++11 bind

bind bind 用来将可调用对象和参数一起进行绑定。可调用对象包括普通函数、全局函 数、静态函数、类静态函数甚至是类成员函数,参数包括普通参数和类成员。绑定后的 结果,可以使用 std::function 进行保存,并延迟调用到我们需要的时候。 绑…...

LeetCode199 二叉树的右视图

前言 题目: 199. 二叉树的右视图 文档: 代码随想录——二叉树的右视图 编程语言: C 解题状态: 成功解决! 思路 二叉树层序遍历问题的变种,右视图即意味着二叉树每层的最后一个节点。 代码 /*** Definiti…...

数据赋能(172)——开发:数据挖掘——影响因素、直接作用、主要特征

影响因素 主要影响因素如下: 数据类型与属性: 数据类型和对象的不同属性会使用不同的数据类型来描述,如年龄可能是整数类型,而生日则是日期类型。数据挖掘时需要对不同的数据类型进行不同的处理,这直接影响到挖掘算法…...

Vue:Vue3-TypeScript-Pinia-Vite-pnpm / 基础项目 / 20240807

一、项目技术栈 / 依赖 序号技术栈版本解释1node20.14.02vue 3.4.31 3vite 5.3.4 4TypeScript 5.2.2 5 types/node 22.0.2 解决TypeScript项目中缺少对应模块的类型定义文件的问题6 element-plus 2.7.8 ui组建7 types/js-cookie js-cookie 3.0.6 3.0.5 8 sass 1.77.8 9 hu…...

windows Qt 录屏 录音

启动录屏录音&#xff1a; connect(&m_Process, &QProcess::readyReadStandardOutput, [&]() {qDebug() << "Standard output:" << QString::fromLocal8Bit(m_Process.readAllStandardOutput()); });connect(&m_Process, &QProcess…...

AAC中的ADTS格式分析

&#x1f60e; 作者介绍&#xff1a;欢迎来到我的主页&#x1f448;&#xff0c;我是程序员行者孙&#xff0c;一个热爱分享技术的制能工人。计算机本硕&#xff0c;人工制能研究生。公众号&#xff1a;AI Sun&#xff08;领取大厂面经等资料&#xff09;&#xff0c;欢迎加我的…...

iOS内存管理---MRC vs ARC

系列文章目录 iOS基础—Block iOS基础—Protocol iOS基础—KVC vs KVO iOS网络—AFNetworking iOS网络—NSURLSession iOS内存管理—MRC vs ARC iOS基础—Category vs Extension iOS基础—多线程&#xff1a;GCD、NSThread、NSOperation iOS基础—常用三方库&#xff1a;Mason…...

【数学分析笔记】第1章第1节:集合(2)

这节我自己补了一些内容&#xff0c;要不然听不太懂陈纪修老师讲的 1. 集合与映射 1.3 子集与真子集 假如有 S \textbf{S} S和 T \textbf{T} T两个集合&#xff0c;其中&#xff0c; S \textbf{S} S的所有元素都属于 T \textbf{T} T&#xff0c;则称 S \textbf{S} S是 T \te…...

大话设计模式:七大设计原则

目录 一、单一职责原则&#xff08;‌Single Responsibility Principle, SRP&#xff09;‌ 二、开放封闭原则&#xff08;‌Open-Closed Principle, OCP&#xff09; 三、依赖倒置原则&#xff08;‌Dependency Inversion Principle, DIP&#xff09; 四、里氏替换原则&am…...

利用多商家AI智能名片小程序提升消费者参与度与个性化体验:重塑零售行业的忠诚策略

摘要&#xff1a;在数字化浪潮席卷全球的今天&#xff0c;零售行业正经历着前所未有的变革。消费者对于购物体验的需求日益多样化、个性化&#xff0c;而零售商则面临着如何将一次性购物者转化为品牌忠诚者的巨大挑战。多商家AI智能名片小程序作为一种新兴的数字营销工具&#…...

Scala 闭包

Scala 闭包 Scala 闭包是一个非常重要的概念&#xff0c;它允许我们创建可以在稍后某个时间点执行的功能片段。闭包是一个函数&#xff0c;它捕获了封闭范围内的变量&#xff0c;即使在函数外部&#xff0c;这些变量也可以在函数内部使用。这使得闭包成为处理异步操作、回调和…...

前端JS总结(中)

目录 前言 正文 对象&#xff1a; 分类&#xff1a; 自定义对象&#xff1a; 内置对象&#xff1a; 重点&#xff1a; 常用内置对象&#xff1a; 字符串对象&#xff1a;String 获取字符串长度&#xff1a; 大小写转换&#xff1a; 获取某个字符&#xff1a; 截取字…...

elasticsearch的match_phrase匹配及其可能导致的查询问题

目录 1.match_phrase使用介绍 2.规避可能产生的查询问题 解决方式 一.查询和索引分词器一致&#xff0c;即都使用max_word或者都使用smart 二.使用slop增加匹配的容忍度 3.参考文档 1.match_phrase使用介绍 elasticsearch的match_phrase查询是全文查询&#xff0c;主要用…...

C++快速理解之继承

一、继承和派生 1.是什么&#xff1f; C 中的继承是类与类之间的关系&#xff0c;与现实世界中的继承类似 例如&#xff1a;儿子继承父亲的财产 继承&#xff08;Inheritance&#xff09;可以理解为一个类从另一个类获取成员变量和成员函数的过程 例如&#xff1a; 类B继承…...

Node.JS - 基础(Express)

目录 A. 简介 B. 下载,安装 C. 启动服务,查看文件结构 A. 简介 Express 是一个基于 Node.js 平台的极简、灵活的 Web 应用开发框架&#xff0c;它提供了一系列强大的功能来构建 Web 应用程序和 API。 一、Express 的基本特点 简洁的路由系统&#xff1a; Express 的路由系…...

国防科技大学计算机基础课程笔记02信息编码

1.机内码和国标码 国标码就是我们非常熟悉的这个GB2312,但是因为都是16进制&#xff0c;因此这个了16进制的数据既可以翻译成为这个机器码&#xff0c;也可以翻译成为这个国标码&#xff0c;所以这个时候很容易会出现这个歧义的情况&#xff1b; 因此&#xff0c;我们的这个国…...

<6>-MySQL表的增删查改

目录 一&#xff0c;create&#xff08;创建表&#xff09; 二&#xff0c;retrieve&#xff08;查询表&#xff09; 1&#xff0c;select列 2&#xff0c;where条件 三&#xff0c;update&#xff08;更新表&#xff09; 四&#xff0c;delete&#xff08;删除表&#xf…...

树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频

使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源&#xff1a; http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...

基于服务器使用 apt 安装、配置 Nginx

&#x1f9fe; 一、查看可安装的 Nginx 版本 首先&#xff0c;你可以运行以下命令查看可用版本&#xff1a; apt-cache madison nginx-core输出示例&#xff1a; nginx-core | 1.18.0-6ubuntu14.6 | http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages ng…...

Objective-C常用命名规范总结

【OC】常用命名规范总结 文章目录 【OC】常用命名规范总结1.类名&#xff08;Class Name)2.协议名&#xff08;Protocol Name)3.方法名&#xff08;Method Name)4.属性名&#xff08;Property Name&#xff09;5.局部变量/实例变量&#xff08;Local / Instance Variables&…...

OkHttp 中实现断点续传 demo

在 OkHttp 中实现断点续传主要通过以下步骤完成&#xff0c;核心是利用 HTTP 协议的 Range 请求头指定下载范围&#xff1a; 实现原理 Range 请求头&#xff1a;向服务器请求文件的特定字节范围&#xff08;如 Range: bytes1024-&#xff09; 本地文件记录&#xff1a;保存已…...

OPENCV形态学基础之二腐蚀

一.腐蚀的原理 (图1) 数学表达式&#xff1a;dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一&#xff0c;腐蚀跟膨胀属于反向操作&#xff0c;膨胀是把图像图像变大&#xff0c;而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...

初探Service服务发现机制

1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能&#xff1a;服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源&#xf…...

NPOI Excel用OLE对象的形式插入文件附件以及插入图片

static void Main(string[] args) {XlsWithObjData();Console.WriteLine("输出完成"); }static void XlsWithObjData() {// 创建工作簿和单元格,只有HSSFWorkbook,XSSFWorkbook不可以HSSFWorkbook workbook new HSSFWorkbook();HSSFSheet sheet (HSSFSheet)workboo…...

day36-多路IO复用

一、基本概念 &#xff08;服务器多客户端模型&#xff09; 定义&#xff1a;单线程或单进程同时监测若干个文件描述符是否可以执行IO操作的能力 作用&#xff1a;应用程序通常需要处理来自多条事件流中的事件&#xff0c;比如我现在用的电脑&#xff0c;需要同时处理键盘鼠标…...