【数据编制架构】数据编织(Data fabric)架构完整指南

news2024/11/13 14:43:08

本文探讨了 Data Fabric 的内容、原因、方式和人员,包括 Data Fabric 架构、挑战、优势、核心功能、供应商等。

Data Fabric——以数据为中心的企业的“必备”

在过去几年中,“Data Fabric”一词已成为企业数据集成和管理的代名词。分析公司 Gartner 将“数据编织”列为“2021 年十大数据和分析技术趋势”之一,并预测到 2024 年,25% 的数据管理供应商将为数据编织提供完整的框架——高于目前的 5%。

本文通过引用数据编织的定义、目的、架构、挑战、最佳实践、优势、供应商以及数据编织功能清单来解决数据编织的内容、原因、方式和对象。

Data Fabric 概述

Data Fabric 使整个企业的数据访问大规模民主化。它是一个单一的、统一的架构——具有一组集成的技术和服务,旨在在正确的时间、以正确的方法向正确的数据消费者提供集成和丰富的数据——以支持运营和分析工作负载 .

Data Fabric 结合了关键数据管理技术,例如数据目录、数据治理、数据集成、数据管道和数据编排。

1f708d1b86a9b7dc90bec7e83e955972.png

Gartner: A data fabric stitches together integrated data from many different sources and delivers it to various data consumers.

第 02 章为什么 Data FabricData Fabric

服务于广泛的业务、技术和组织协调驱动因素。

业务驱动因素

  • 通过可靠、快速地将数据输送到数据湖和仓库中来缩短洞察时间并做出更明智的决策。

  • 获得实时、360度-任何业务实体(例如客户、索赔、订单、设备或零售店)的视图,以实现微细分、减少客户流失、提醒运营风险或提供个性化的客户服务。

  • 将总拥有成本降低到通过以增量和快速的方式对遗留系统进行现代化操作、扩展、维护和更改。

数据管理因素

  • 程序数据准备自动化使数据科学家、数据工程师和其他 IT 资源免于执行繁琐的重复数据转换、清理和丰富任务。

  • 获得访问任何数据交付方法中的企业数据——包括批量数据移动 (ETL)、数据虚拟化、数据流、更改 d数据捕获和 API。

  • 数据编织平台集成并增强了公司当前使用的数据管理工具,并允许其他人退休,以提高成本效益。

组织驱动

  • 数据工程师和数据消费者之间共享的通用语言改善了数据和数据之间的协作业务团队。

  • 自助服务数据访问功能让数据消费者可以随时随地获取所需数据,从而提高业务敏捷性和速度。


第03章Data Fabric架构

24c7e7955d1a264e3c69ea23141834a4.png

Gartner:理想的、完整的 Data Fabric 设计,包含许多组件。

  • 设计良好的 Data Fabric 架构是模块化的,支持大规模、分布式多云、内部部署和混合部署。

  • 如上图所示,当数据从源头提供给消费者时,它被编目、丰富以提供洞察和建议、准备、交付、编排和设计。

  • 数据源的范围从孤立的遗留系统到最现代的云环境。

  • 数据编织的数据消费者包括数据科学家和数据分析师(与数据湖合作)、营销分析师(参与客户细分)、销售、营销和数据隐私专家(关注客户细分)、云架构师等.


第 04 章数据网格架构的数据编织

数据网格架构解决了数据管理中的四个关键问题:

  • 数据分散在数十个甚至数百个遗留系统和云系统中,因此难以获得单一的事实来源

  • 以数据为中心的企业必须处理的数据速度和数量

  • 当访问通常需要数据工程时,数据难以获取

  • 业务分析师、运营数据消费者、数据工程师和数据科学家之间缺乏沟通。

数据编织非常适合数据网格设计,因为它构建了一个集成的跨广泛数据源的连接数据层,可即时、全面地了解业务,包括分析和运营工作负载。

Data Fabric 建立了不同数据产品的语义定义、数据摄取模式以及保护数据的必要治理策略。

此外,各种业务领域协调额外数据编织节点的部署,使它们能够控制数据管道和服务。

d1d5d5a16fef028183ea624ae7db7a62.png

数据网格架构很容易使用数据编织实现。
可以实时管理、准备和交付数据的数据编织创建了理想的数据网格核心。当然,数据网格架构有其实施挑战,但数据编织很容易处理这些挑战:

数据网格实施挑战

Data Fabric 如何处理它们

对数据集成专业知识的要求:跨许多不同企业源系统的数据集成通常需要特定领域的数据管道专业知识。

数据即产品:当数据产品是在虚拟数据层中管理的业务实体时,域无需处理底层源系统。

联合与独立:在对中央数据团队的依赖和域独立之间实现适当的平衡并不简单。

企业范围内的协作:特定领域的团队与集中式数据团队协作,为其数据消费者构建 API 和管道,控制和管理访问权限,并监控使用情况。

批量数据以及实时和批量数据交付:数据产品必须在单一平台上安全高效地提供给离线和在线数据消费者。

分析和运营工作负载:Data Fabric 收集和处理来自底层系统的数据,为离线和在线用例按需提供数据产品。

第05章Data Fabric核心能力

4c4f20a96dcdd1acd2fe83a38695fbe8.png

  • 可视化数据沿袭是一项关键技术,因为在使用传统数据建模和集成工具时会丢失关系洞察力。

Data Fabric 支持将以下关键功能集成到单个平台中:

  • 数据目录

    • 对数据资产进行分类和盘点,可视化呈现信息供应链

  • 数据工程

    • 为运营和分析用例构建可靠且强大的数据管道

  • 数据治理

    • 确保质量、遵守隐私法规并使数据可用——安全且大规模

  • 数据准备和编排

    • 定义从源到目标的数据流,包括数据清理、转换、屏蔽、扩充和验证的步骤序列

  • 数据集成和交付

    • 从任何来源检索数据并将其交付给任何目标,采用任何方法:ETL(批量)、消息传递、CDC、虚拟化和 APIs

  • 数据持久层

    • 为了在广泛的关系和非关系模型中动态持久化

数据数据编织还应该解决以下关键的非功能性能力:

数据规模、数量和性能

无论数据量有多大,都可以无缝地动态向上和向下扩展。支持企业级的运营和分析工作负载。

可访问性

支持所有数据访问模式、数据源和数据类型,并集成静态或动态的主数据和事务数据。从内部部署和云系统中以任何格式(结构化或非结构化)摄取和统一数据。数据结构逻辑访问层需要允许数据消费,无论数据存储或分布在何处、如何存储,因此无需深入了解底层数据源。

分发

Data Fabric 应可部署在多云、本地或混合环境中。为了保持事务完整性和数据治理能力,Data Fabric 需要支持智能数据虚拟化策略。

安全

在持久化数据的地方,必须对其进行加密和屏蔽以满足数据隐私法规。数据结构应该能够将用户凭据传递到源系统,以便正确检查和授权访问权限。


第 06 章  用于操作工作负载的Data Fabric vs Data Lakes vs Databases

为了解释 Data Fabric 如何补充和改进运营工作负载的大数据存储,Data Fabric、Data Lakes 和 Databases 之间的比较很有用。

下图总结了每种数据存储的优缺点,因为它涉及大规模、大容量、可操作的用例。


优点

缺点

数据仓库, DWH

  • 跨结构化和非结构化数据的复杂数据查询支持

  • 未针对单实体查询进行优化,导致响应时间变慢

  • 不支持实时数据,因此持续更新数据要么不可靠,要么以不可接受的响应时间交付


关系型数据库

  • SQL 支持、广泛采用和易用性

  • 非线性可扩展性,需要昂贵的硬件(数百个节点)才能对 TB 级数据近乎实时地执行复杂查询

  • 高并发,导致响应时间问题


NoSQL Database

  • 分布式数据存储架构,支持线性扩展

  • 不支持 SQL,需要专业技能

  • 为了支持数据查询,需要预定义索引,或者需要内置复杂的应用逻辑,阻碍了上市时间和敏捷性


Data 编制

完整的 SQL 支持

  • 分布式数据存储架构,支持线性扩展

  • 高并发支持,为运营工作负载提供实时性能

  • 对单个业务实体的复杂查询支持

  • 对单个业务实体的复杂查询支持

  • 支持所有集成方法

  • 用于分析工作负载的大规模数据准备和流水线传输到数据湖和仓库

  • 动态数据治理



因此,虽然 Data Fabric 是针对大规模运营工作负载的卓越解决方案,但它也是用于离线分析工作负载的数据湖和数据库的互惠技术。对于此类工作负载,Data Fabric 可以:将新的、受信任的数据输送到其中,用于离线分析。从它们那里获得业务洞察力,以嵌入到实时运营用例中。

第07章数据编织用例

在企业运营中,有许多用例需要能够支持数千个并发事务的大规模、高速数据架构。示例包括:

提供 360 度客户视图


向自助 IVR、客户服务代理 (CRM)、客户自助服务门户(Web 或移动)、聊天服务机器人和现场服务技术人员提供客户的单一视图

遵守数据隐私法


借助灵活的工作流程和数据自动化解决方案,协调人员、系统和数据的合规性——旨在解决当前和未来的法规

将企业数据输送到数据湖和仓库


使数据工程师能够快速、大规模地准备和交付新的、可信的数据——从所有来源到所有目标——

按需提供测试数据


创建测试数据仓库,并在几分钟内自动向测试人员和 CI/CD 管道交付匿名测试数据,并具有完整的数据完整性

现代化遗留系统


安全地将数据从遗留系统迁移到数据编织中,然后将结构用作新开发应用程序的记录数据库

保护信用卡交易


通过加密和标记原始数据来保护敏感的持卡人信息,以避免数据泄露

预测客户流失、检测客户欺诈、信用评分等

许多操作用例要求 Data Fabric 在瞬间响应复杂的查询。

因此,Data Fabric 必须包括用于处理的内置机制:

实时数据摄取


从操作系统持续更新(每天有数百万到数十亿次更新)

连接到不同的系统

TB 级的数据分布在数十个海量数据库/表中,通常采用不同的技术

动态数据转换、数据清理和数据丰富

实时提供有意义的见解并影响业务成果

实体的特定实例

例如,检索特定客户、位置、设备等的完整数据。

高并发


每秒处理数千个请求


CHAPTER 08 Data Fabric 优势

Data Fabric 与其他数据管理方法(例如主数据管理、数据中心和数据湖)相比具有许多优势,包括:

增强的数据管理


允许自动检索、验证和丰富数据——无需任何转换脚本或第三方工具

扩展数据服务


使用创新引擎来管理和同步数据,完全支持 SQL 和嵌入式 Web 服务层

高一致性、持久性和可用性


符合企业标准,具有值得信赖的数据库层和处理引擎

卓越的性能


依靠能够在少量数据上运行每个查询的架构,以及内存中的处理

严格的安全性


由于采用了复杂的多密钥加密引擎,消除了大规模数据泄露的可能性


CHAPTER 09Data Fabric 好处

Data Fabric 为企业提供的运营优势包括:

简化数据编排


集成外部数据库、业务逻辑、屏蔽、解析和流式处理的算子

自动化测试数据管理


从生产系统生成数据,然后向测试团队提供高质量的测试数据

快速的数据隐私合规性


配置、管理和审计与 GDPR、CCPA、LGPD 等数据隐私法规相关的数据主体访问请求。

全面的数据管理


使用管理管理工具、直观的可视化工作室和 Web 管理工具配置、监控和管理数据

优化拥有成本


依靠商用硬件上的内存性能、完整的线性可扩展性和无风险集成


第 10 章 Data Fabric 供应商

有多家供应商提供一组集成的功能来支持 Data Fabric 架构。排名前 5 位的 Data Fabric 供应商如下所示:

StrengthsConcerns 

K2View
  • 单一的集成平台,结合了所有数据结构功能

  • 数据按业务实体唯一组织,用于实时数据管道和大规模“x360”工作负载

  • 支持需要实时数据集成和移动的海量数据工作负载

  • 全面支持分析和运营工作负载

  • 快速部署(通常在几周内)且易于适应,支持敏捷开发和 CI/CD

  • 低总拥有成本 (TCO)

  • 专注于大型企业,中型客户相对较少

  • 在电信、医疗保健和金融服务市场高度集中部署

  • 北美和欧洲以外的系统集成合作伙伴很少


Denodo
  • 数据虚拟化的重点和实力

  • 目录用作执行安全和治理的单一入口点

  • 广泛的市场合作伙伴关系

  • 分析用例的优化

  • 管理和操作数据结构的复杂性

  • 不适用于大容量操作工作负载

  • 确保平台上的分布式查询性能所需的额外流程和工作


Talend
  • 跨多云和混合生态系统的数据集成的重点和优势

  • 广泛的数据工程能力

  • 用于各种数据源的广泛连接器集

  • 不适用于大容量操作工作负载;最适合分析用例

  • 复杂数据编排和数据管道操作所需的额外支持

  • 有限的数据虚拟化能力


Informatica
  • 使用 AI 和 ML 增强数据集成和数据质量支持

  • 优化分析、数据迁移和 MDM 的数据集成优势

  • 能够扩展以支持复杂的数据集成方案

  • 复杂且昂贵的部署和调整

  • 需要数据虚拟化支持

  • 有限的实时数据管道功能,使其不太适合需要实时数据集成的运营工作负载

  • 多个脱节的工具,随着时间的推移而获得,尚未集成到单个平台中


IBM Cloud Pak for Data
  • 强大的产品可扩展性和性能

  • 多样化的数据集成交付方式和架构

  • 数据虚拟化和元数据管理

  • 改进的集成功能重新打包为 Cloud Pak for Data

  • 由多个独立产品组成的数据结构,给平台的结构、成本和部署带来了不确定性

  • 复杂的架构,导致升级困难且成本高昂

  • 需要自助服务和基于云的数据集成功能


第 11 章用于分析和运营的数据编

织通常认为,数据编织的构建是为了支持大数据分析——特别是趋势分析、预测分析、机器学习和商业智能——由数据科学家在离线模式下执行,以产生业务洞察力。

但数据编织对于依赖准确、完整和新鲜数据的运营用例(例如客户流失预测、信用评分、数据隐私合规、欺诈检测、实时数据治理和 360 度客户视图)同样重要。

数据团队不希望有一种数据编织解决方案用于数据分析,另一种用于运营智能。他们希望两者都有一个单一的数据编织。

理想的数据编织优化了每个业务实体(客户、产品、订单等)的视野和理解深度。它为企业提供干净、新鲜的离线数据分析数据,并为在线运营分析提供实时、可操作的数据。

a663bacc69da07b0cec2743e55f14374.png

Data Fabric 同时支持离线数据分析和在线运营智能。

具体方法如下:

  • Data Fabric 基于业务实体的 360 度视图持续提供高质量数据,例如特定客户群、公司产品线或特定地理位置的所有零售店 - 到数据湖或 DWH。

  • 使用这些数据,数据科学家创建和改进机器学习 (ML) 模型,而数据分析师使用商业智能 (BI) 来分析趋势、细分客户并执行根本原因分析 (RCA)。

  • 改进的 ML 模型被部署到数据编织,为单个实体(客户、产品、位置等)实时执行——从而“操作”机器学习算法。数据编织实时按需执行 ML 模型,为其提供单个实体的完整和当前数据。

  • ML 输出会立即返回到请求的应用程序,并作为实体的一部分保存在数据编织中,以供将来分析。Data Fabric 还可以调用实时推荐引擎来提供下一个最佳操作。


第 12 章为什么 K2View

K2View 是唯一能够实时、大规模响应以实体为中心的数据查询并支持运营和分析工作负载的数据编织。

以下是 K2View 成为世界上一些最大企业的首选数据编织的 5 个原因:

适用于每个业务实体的微型数据库

K2View 的专利 Micro-Database™ 提供无与伦比的性能、易于访问、数据完整性和通用语言在业务和 IT 之间。K2View Data Fabric 将来自所有底层源系统的每个业务实体的数据统一到一个单一的微数据库中,一个业务实体的每个实例。

例如,客户微数据库统一了公司对特定客户的了解——包括所有交互(电子邮件、电话、网站门户访问、聊天……)、交易(订单、发票、付款……)和主数据——无论底层源系统、技术和数据格式如何。在这种情况下,为每个客户管理一个微型数据库。

微型数据库可以通过捕获或动态计算的新字段来丰富——例如 KPI、同意信息、流失倾向等。它可以很容易地定义,使用自动发现,从底层系统中提取建议的数据模式。

afdf4f531cf710c18a96d7aa3fa98707.png

微型数据库代表企业对特定业务实体的了解。

为了最大限度地提高性能:

  • 数据同步规则定义了微型数据库中每个数据元素从源系统更新的频率和事件。

  • 数据虚拟化规则定义了哪些数据会被持久化在micro-DB中,并且只会缓存在内存中。

  • 每个micro-DB被压缩了大约90%,从而降低了数据传输成本。

每个micro-DB都用自己的唯一密钥加密,这样每个实体都是唯一安全的。这为静态数据保持最高级别的安全性。

K2View Data Fabric 可以扩展以同时管理数亿个安全微型数据库,并部署在分布式内部、云端或混合架构中。

数据从任何来源、任何目标、在任何风格

K2View 开发了一种可操作的数据编织,可以从任何来源以任何数据交付方式摄取数据,然后在几毫秒内将其转换为交付到任何目标。

微服务向消费应用程序提供任何业务实体的单一视图

K2View Data Fabric 提供用于创建和调试微服务的低代码/无代码框架。使用可视化的拖放式构建器,可以快速定制和编排微服务以支持任何操作用例。这种方法有助于将数据视为产品并支持网格架构。

需要访问微服务的用户或令牌被分配一个角色,该角色定义了他们拥有的数据访问级别。部署微服务后,K2View Data Fabric 会控制身份验证和授权,从而适当限制用户访问。

一个平台,许多用例

K2View 平台是一个中央数据中心,可提供任何业务实体的实时、可信和整体视图到任何消费应用程序、数据湖或数据仓库。因此,数据编织的用例很多,并且跨越企业的许多部门。

d8fcfa05f0226612c3092847e1e54140.png

综上所述,该平台提供:

模块化、开放、可扩展的架构


数据集成、转换、丰富、准备和交付——集成在一个可扩展的平台

中秒速、端到端、响应时间


企业数据编织,专为支持实时运营而构建,可在源和目标之间进行双向数据移动

运营和分析工作负载的数据管理


集成的可信数据,实时交付到消费应用程序中,或管道传输到数据湖和数据仓库中以进行分析

本文 :https://architect.pub/what-data-fabric-complete-guide
讨论:知识星球【首席架构师圈】或者加微信小号【ca_cto】或者加QQ群【792862318】
公众号

【jiagoushipro】
【超级架构师】
精彩图文详解架构方法论,架构实践,技术原理,技术趋势。
我们在等你,赶快扫描关注吧。
f8c0fe9aca0db68d456164297b0a6645.jpeg
微信小号

【ca_cea】
50000人社区,讨论:企业架构,云计算,大数据,数据科学,物联网,人工智能,安全,全栈开发,DevOps,数字化.

ed7e09f9e25e89aeec042c843e369021.jpeg

QQ群

【285069459】深度交流企业架构,业务架构,应用架构,数据架构,技术架构,集成架构,安全架构。以及大数据,云计算,物联网,人工智能等各种新兴技术。
加QQ群,有珍贵的报告和干货资料分享。

715aa90dbc398981be859c6291884b08.jpeg

视频号【超级架构师】
1分钟快速了解架构相关的基本概念,模型,方法,经验。
每天1分钟,架构心中熟。

d4c7c32d4e2c020d53f54eadd9b07c3f.jpeg

知识星球【首席架构师圈】向大咖提问,近距离接触,或者获得私密资料分享。

cf2c852664267cbec32507dc7725f94e.jpeg

喜马拉雅【超级架构师】路上或者车上了解最新黑科技资讯,架构心得。【智能时刻,架构君和你聊黑科技】
知识星球认识更多朋友,职场和技术闲聊。知识星球【职场和技术】
领英Harryhttps://www.linkedin.com/in/architect-harry/
领英群组领英架构群组
https://www.linkedin.com/groups/14209750/
微博‍‍【超级架构师】智能时刻‍
哔哩哔哩【超级架构师】

a87a25990d596cde560b684795fe8dca.jpeg

抖音【cea_cio】超级架构师

639a25559f7c077be520ada952c708b9.jpeg

快手【cea_cio_cto】超级架构师

c659e46d668c08cc5379204e7b967f43.jpeg

小红书【cea_csa_cto】超级架构师

e13c64f4ca982dd517fb1444b984c9d2.jpeg

网站CIO(首席信息官)https://cio.ceo
网站CIO,CTO和CDOhttps://cioctocdo.com
网站架构师实战分享https://architect.pub   
网站程序员云开发分享https://pgmr.cloud
网站首席架构师社区https://jiagoushi.pro
网站应用开发和开发平台https://apaas.dev
网站开发信息网https://xinxi.dev
网站超级架构师https://jiagou.dev
网站企业技术培训https://peixun.dev
网站程序员宝典https://pgmr.pub    
网站开发者闲谈https://blog.developer.chat
网站CPO宝典https://cpo.work
网站首席安全官https://cso.pub    ‍
网站CIO酷https://cio.cool
网站CDO信息https://cdo.fyi
网站CXO信息https://cxo.pub

谢谢大家关注,转发,点赞和点在看。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/736364.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

vtkButtonWidget Window 添加按钮

有时我们需要在 VTK 窗口中增加 按钮&#xff0c;右上角&#xff1b; 实现&#xff0c;通过回调函数&#xff0c;vtkButtonCallback 获取点击&#xff1a; #include <vtkVersion.h> #include <vtkSmartPointer.h>#include <vtkPolyDataMapper.h> #include &…

Java性能权威指南-总结27

Java性能权威指南-总结27 数据库性能的最佳实践Java集合类API同步还是非同步设定集合的大小 集合与内存使用效率 数据库性能的最佳实践 Java集合类API Java的集合类API有很大的选择余地&#xff1b;Java 7至少提供了58个不同的集合类。在编写应用时&#xff0c;选择恰当的集合…

数据结构算法题——数组

leetcode-1.两数之和 leetcode-1.两数之和 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标值 target 的那 两个 整数&#xff0c;并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是&#xff0c;数组中同一个元素在…

阿里云AliYun物联网平台使用-申请免费试用及完成初始配置

一、项目简介 本专栏文章将围绕阿里云物联网平台&#xff0c;实现其设备向云平台的数据上传&#xff0c;客户端获取云平台数据。设备通过NBIOT技术实现无线采集&#xff0c;定时上传。 二、阿里云平台申请 阿里云物联网平台试用申请地址 进入上述超链接网址&#xff1a; 由于是…

【InnoDB 存储引擎】15.7.1 InnoDB Locking(锁实验,包含了如 记录锁、间隙锁、Next-Key Lock 算法等,重要)

文章目录 1 关于 Record Lock 的实验1.1 实验 1&#xff1a;没有主键时的如何锁定1.2 实验 1&#xff08;续&#xff09;&#xff1a;带着问题继续实验1.3 实验 2&#xff1a;有主键时如何锁定 2 关于 Next-Key Lock 的实验2.1 实验 3&#xff1a;如何确定算法的锁定范围2.2 实…

VS 字体不对齐解决方案

1. 问题描述 输入相同数量但不是同一类型的字符的字符&#xff0c;会出现字符显示不对齐的问题。 在某些需要根据对齐来写的代码的时候&#xff0c;这种情况是相当的折磨。 2. 解决方案 设置等宽字体。 依次点击 VS 上方的 工具 → 选项 → 字体和颜色 → 字体 → 随便选择一款…

基于simulink识别彩色视频序列中的交通警告标志

一、前言 此示例演示如何识别彩色视频序列中的交通警告标志&#xff0c;如“停止”、“请勿进入”和“让行”。 二、模型 下图显示了交通警告标志识别模型&#xff1a; 三、交通警告标志模板 该示例使用两组模板 - 一组用于检测&#xff0c;另一组用于识别。 为了节省计算…

Linux常用命令——ex命令

在线Linux命令查询工具 ex 启动vim编辑器的ex编辑模式 补充说明 在ex模式下启动vim文本编辑器。ex执行效果如同vi -E&#xff0c;适用于法及参数可参照vi指令&#xff0c;如要从Ex模式回到普通模式&#xff0c;则在vim中输入:vi或:visual即可。 语法 ex&#xff08;参数&…

【算法设计与分析】集合相等问题——设计一个拉斯维加斯算法,对于给定的集合S和T,判定其是否相等。

目录 一、问题描述二、问题分析三、运行结果四、源代码 一、问题描述 给定两个集合S和T&#xff0c;试设计一个判定S和T是否相等的蒙特卡洛算法。 数据输入&#xff1a; 由文件input.txt给出输入数据。第1行有1个正整数n&#xff0c;表示集合的大小。接下来的2行&#xff0c;每…

路径规划算法:基于梯度优化的路径规划算法- 附代码

路径规划算法&#xff1a;基于梯度优化的路径规划算法- 附代码 文章目录 路径规划算法&#xff1a;基于梯度优化的路径规划算法- 附代码1.算法原理1.1 环境设定1.2 约束条件1.3 适应度函数 2.算法结果3.MATLAB代码4.参考文献 摘要&#xff1a;本文主要介绍利用智能优化算法梯度…

关于线程池其他一些知识点的讨论

文章目录 前言一、线程池的几种任务队列1.ArrayBlockingQueue2.LinkedBlockingQueue3.DelayedWorkQueue4.SynchronousQueue 二、如何确定核心线程数&#xff1f;三、线程池的种类有哪些&#xff1f;1.newFixedThreadPool2.newSingleThreadExecutor3.newCacheThreadPool4.newSch…

AI掌绘艺术:揭秘Stable Diffusion华美图韵背后那些提示词的秘密

开篇 好了好了&#xff0c;我知道这个标题有点大&#xff0c;大得像我妈的锅一样。但是&#xff0c;我保证&#xff0c;当你读完这篇文章后&#xff0c;你不仅会明白我为什么敢用这样的标题&#xff0c;而且你也会想试试宝贵的AI画画方法。 首先&#xff0c;我要说&#xff0…

【ARM Coresight 系列文章 3.1 - ARM Coresight DP 对 AP 的访问 1】

文章目录 1.1 DP 中相关寄存器的介绍1.1.1 DPACC and APACC 寄存器1.1.2 DP SELECT 寄存器1.1.3 AP CSW寄存器1.1.4 AP TAR 寄存器1.1.5 AP DRW寄存器1.1.6 AP Banked Data registers 1.1 DP 中相关寄存器的介绍 如果DAP接入的是JTAG接口&#xff0c;那么将会通过APACC寄存器来…

idea中非常好用的配置

1、自动导包和优化多余的包 2、显示行号、方法之间的分隔符 3、忽略大小写进行提示 4、多个类不隐藏&#xff0c;多行显示 5、鼠标悬浮代码提示 6、加入类之前的稳定注释模板 好了&#xff0c;文章就分享到这里了&#xff0c;看完之后如果对你有所帮助&#xff0c;不要忘了点赞…

【机器学习核心总结】什么是长短时记忆网络(LSTM)

什么是长短时记忆网络(LSTM) RNN有一定的记忆能力&#xff0c;但不幸的是它只能保留短期记忆&#xff0c;在各类任务上表现并不好&#xff0c;那该怎么办? 人们将目光投向了自己&#xff0c;人类的记忆是有取舍的&#xff0c;我们不会记住每时每刻发生的所有事&#xff0c;会…

学无止境·MySQL④(多表查询)

多表查询试题 试题一1、创建表2、表中添加数据3、查询每个部门的所属员工4、查询研发部门的所属员工5、查询研发部和销售部的所属员工6、查询每个部门的员工数,并升序排序7、查询人数大于等于3的部门&#xff0c;并按照人数降序排序 试题一 1、创建表 use mydb3; – 创建部门…

技术文本的写作问题

最近刚参与一位大佬的重要文本撰写&#xff0c;也就3000字&#xff0c;磨了有几个月。 收获很多。关于技术写作&#xff0c;要写透&#xff0c;要写简单&#xff1b;要舍得放弃。 写透看起来简单&#xff0c;其实是最难的。一般人看到有字数限制就拼命压缩文本&#xff0c;把…

从零开始制作一个Web蜜罐扫描器(1)

从零开始制作一个Web蜜罐扫描器(0)_luozhonghua2000的博客-CSDN博客 蜜罐有什么特征 根据我们上面的描述,现在可以理解,蜜罐的功能是诱捕黑客. 诱捕黑客是利用的jsonp劫持技术来做。 jsonp劫持技术需要利用jsonp跨域请求很多其他的社交网站页面从而获得攻击者的相关信息。 因…

SpringBoot第20讲:SpringBoot如何对接口进行签名

SpringBoot第20讲&#xff1a;SpringBoot如何对接口进行签名 在以SpringBoot开发后台API接口时&#xff0c;会存在哪些接口不安全的因素呢&#xff1f;通常如何去解决的呢&#xff1f;本文是SpringBoot第20讲&#xff0c;主要介绍API接口有不安全的因素以及常见的保证接口安全的…

青岛大学_王卓老师【数据结构与算法】Week04_12_案例分析与实现2_学习笔记

本文是个人学习笔记&#xff0c;素材来自青岛大学王卓老师的教学视频。 一方面用于学习记录与分享&#xff0c;另一方面是想让更多的人看到这么好的《数据结构与算法》的学习视频。 如有侵权&#xff0c;请留言作删文处理。 课程视频链接&#xff1a; 数据结构与算法基础–…