数据仓库建模和分层

数据仓库的分层构建 什么是数据仓库?一、建模理论的选择1.ER模型2.维度建模 二、维度建模理论1.事实表事务型事实表周期型快照事实表累积型快照事实表 2.维度表全量快照表拉链表 3.多值维度4.多值属性 三、数据仓库的分层规划1.源数据层(Operation Data Store)2.公共维度层(DIM)3.数据仓库层(DW)3.1、明细层(DWD)3.2、业务层(DWS) 4.数据展示层(ADS层) 四、数据仓库的构建流程1.数据调研2.明确数据域3.构建业务总线矩阵4.明确统计指标 什么是数据仓库? 数据仓库( Data Warehouse ),是一个为数据分析而设计的企业级数据管理系统,数据仓库中可集成多个数据源的大量数据,借助数仓的分析能力,企业可从数据数据中获得宝贵的信息进而为企业决策提供数据支撑。 数据仓库的输入数据通常包括:业务数据、用户行为数据和爬虫数据等 业务数据:就是各行业在处理事务过程中产生的数据。比如用户在电商网站中登录、下单、支付等过程中,需要和网站后台数据库进行增删改查交互,产生的数据就是业务数据。业务数据通常存储在MySQL、Oracle等数据库中 用户行为数据:用户在使用产品过程中,通过埋点收集与客户端产品交互过程中产生的数据,并发往日志服务器进行保存。比如页面浏览、点击、停留、评论、点赞、收藏等。用户行为数据通常存储在日志文件中。 数据库也能满足上述要求,为什么还需要数据仓库? 业务数据库不能够存储大量的历史数据,这会导致查询性能的降低。业务数据库需要给外部应用提供服务,如果再做数据分析,数据库不能承受如此并发,会对外部服务造成影响。数据仓库跟业务数据库数据在一定时间点上的数据一致,并且通过统一标注的方式,能够消除多个业务数据库之间的数据孤岛问题。业务数据库通常只支持sql进行数据分析,但数据仓库能够支持多种操作进行数据分析(主流是sql)。 数据库数据仓库数据来源企业中基础核心业务数据数据库获取的同步数据数据存储核心作用是数据的CURD,行式存储,索引,不能存储海量数据核心作用是数据的统计分析,列式存储,能够存储海量历史数据数据价值数据库是为了保障企业业务的正常运行数仓是为了提供数据分析结果,为企业的决策做数据支持 一、建模理论的选择 数据模型就是数据组织和存储方法,它强调从业务、数据存取和使用角度合理存储数据。只有将数据有序的组织和存储起来之后,数据才能得到高性能、低成本、高效率、高质量的使用。 高性能:良好的数据模型能够帮助我们快速查询所需要的数据。 低成本:良好的数据模型能减少重复计算,实现计算结果的复用,降低计算成本。 高效率:良好的数据模型能极大的改善用户使用数据的体验,提高使用数据的效率。 高质量:良好的数据模型能改善数据统计口径的混乱,减少计算错误的可能性。 1.ER模型 数据仓库之父Bill Inmon提出的建模方法是从全企业的高度,用实体关系(Entity Relationship,ER)模型来描述企业业务,并用规范化的方式表示出来,在范式理论上符合3NF。 实体关系模型 实体关系模型将复杂的数据抽象为两个概念——实体和关系。实体表示一个对象,例如学生、班级,关系是指两个实体之间的关系,例如学生和班级之间的从属关系。 ER模型实体间的关系有一对多、多对一(学生和老师),多对多(学生和课程),即使一对多的情况下能够很好的使用两张表建模,但是再多对多的情况,通常需要另外一张表表达出实体间的关系。 数据库规范化 数据库规范化是使用一系列范式设计数据库(通常是关系型数据库)的过程,其目的是减少数据冗余,增强数据的一致性。 ER模型的目的是将整个企业的数据进行组合和合并,并进行规范处理,减少数据冗余性,保证数据的一致性。但这种模型并不适合直接用于分析统计,因此一般不采用这种方式进行数仓建模。 ER模型遵循面向对象,这种建模方式会产生很多的物理表,不利于数据分析,其目的是业务的完整性。 ---->>> 数据库范式详细了解 2.维度建模 数据仓库领域的令一位大师——Ralph Kimball倡导的建模方法为维度建模。维度模型将复杂的业务通过事实和维度两个概念进行呈现。事实通常对应业务过程,而维度通常对应业务过程发生时所处的环境。 业务过程可以概括为一个个不可拆分的行为事件,例如在线教育交易中的下单,付款,加购等,都是业务过程。 二、维度建模理论 数据模型就是数据组织和存储方法,它强调从业务、数据存取和使用角度合理存储数据。只有将数据有序的组织和存储起来之后,数据才能得到高性能、低成本、高效率、高质量的使用。 建模就是建表,即使复杂的SQL也能通过建里相关的表变得简单! 高性能:良好的数据模型能够帮助我们快速查询所需要的数据。低成本:良好的数据模型能减少重复计算,实现计算结果的复用,降低计算成本。高效率:良好的数据模型能极大的改善用户使用数据的体验,提高使用数据的效率。高质量:良好的数据模型能改善数据统计口径的混乱,减少计算错误的可能性。 维度模型将复杂的业务通过事实和维度两个概念进行呈现。事实通常对应业务过程,而维度通常对应业务过程发生时所处的环境。 业务过程可以概括为一个个不可拆分的行为事件,例如电商交易中的下单,取消订单,付款,退单等,都是业务过程。 1.事实表 事实表作为数据仓库维度建模的核心,紧紧围绕着业务过程来设计。其包含与该业务过程有关的维度引用(维度表外键)以及该业务过程的度量(通常是可累加的数字类型字段)。 事实表通常需要记录业务过程,比较“细长”,即列较少,但行较多,且行的增速快。 事实表有三种类型:分别是事务事实表、周期快照事实表和累积快照事实表,每种事实表都具有不同的特点和适用场景,下面逐个介绍。 事务型事实表 事务事实表用来记录各业务过程,它保存的是各业务过程的原子操作事件,即最细粒度的操作事件。 粒度是指事实表中一行数据所表达的业务细节程度。粒度越小,表示业务细节程度越高,反之亦然。 一旦事务被提交,事实表数据被插入,数据就不再进行更改,其更新方式为增量更新。 用户可以通过事务事实表对事务行为进行特别详细的分析。事实表一般围绕着度量来建立,当度量产生的时候,事实记录就生成了。 度量值(通常是可累加的数字类型的值,例如:次数、个数、件数、金额等)。 事务型事实表可用于分析与各业务过程相关的各项统计指标,由于其保存了最细粒度的记录,可以提供最大限度的灵活性,可以支持无法预期的各种细节层次的统计需求。 事务型事实表构建过程: 选择业务过程→声明粒度→确认维度→确认事实 第一步选择业务过程可以确定有哪些事务型事实表 第二步可以确定每张事务型事实表的每行数据是什么 第三步可以确定每张事务型事实表的维度外键 第四步可以确定每张事务型事实表的度量值字段。 优点 事务型事实表可以保存所有业务过程的最细粒度的操作事件,故理论上其可以支撑与各业务过程相关的各种统计粒度的需求。

【亲测有效】Win11(23H2)重启后任务栏Copilot图标恢复

目录 0 问题描述 1 解决方案 1.1 修改注册表 1.2 修改任务栏设置 2 结语 参考资料 0 问题描述 Win11更新23H2后,任务栏出现了Copilot图标,并且还用了两天,但今天开机发现图标忽然消失了,任务栏设置也找不到。 1 解决方案 1.1 修改注册表 Win+R打开"运行"对话框,输入“regedit”,打开注册表编辑器,找到路径: \HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Copilot\BingChat\IsUserEligible,双击编辑键值,将数值数据由默认的“0”修改为“1”,点击“确定”保存。 修改注册表键值​​​ 【注意】然后先别着急关注册表,在“BingChat”文件夹处单击右键,选择“导出”, 命名为“Copilot恢复显示”并保存为reg注册表文件,方便下次再重启消失时(推测之前消失也是Edge检测到了系统位置的缘故)双击直接导入注册表使用。 1.2 修改任务栏设置 修改任务栏设置,以启用Copilot任务栏项。任务栏处单击右键,选择“任务栏设置”,然后你会看到Copilot选项已经是开启状态,但是任务栏仍然看不到,此时别着急,重新点击一下,再次打开,就可以在任务栏看到Copilot图标了。 重新点击开关 图标恢复了!!!!!!! 接下来就可以该干嘛干嘛了。 2 结语 分析原因可能是操作系统检测到国内的环境,默认将注册表键值修改为0,这样任务栏图标就消失了。当然,要使用操作系统的Copilot侧边栏时还是需要使用全局魔法,否则点击图标只能打开Edge浏览器。 虽然Copilot侧边栏感觉也就那么回事,但是看不到图标还是很不爽,找了半天才找到解决方案,亲测以后确实有效,特此记录。 参考资料 1.Windows Copilot 消失后的唤醒方法 - 哔哩哔哩

大数据舆情评论数据分析:基于Python微博舆情数据爬虫可视化分析系统(NLP情感分析+爬虫+机器学习)

文章目录 大数据舆情评论数据分析:基于Python微博舆情数据爬虫可视化分析系统(NLP情感分析+爬虫+机器学习)一、项目概述二、微博热词统计析三、微博文章分析四、微博评论分析五、微博舆情分析六、项目展示七、结语 大数据舆情评论数据分析:基于Python微博舆情数据爬虫可视化分析系统(NLP情感分析+爬虫+机器学习) 一、项目概述 基于Python的微博舆情数据爬虫可视化分析系统,结合了NLP情感分析、爬虫技术和机器学习算法。该系统的主要目标是从微博平台上抓取实时数据,对这些数据进行情感分析,并通过可视化方式呈现分析结果,以帮助用户更好地了解舆情动向和情感倾向。系统首先利用爬虫技术实时抓取微博平台上的相关数据,包括文本内容、评论、转发等信息。接着,应用NLP情感分析技术对这些数据进行情感倾向的判断,识别出其中的正面、负面和中性情绪。随后,通过机器学习算法对情感数据进行分类和聚类分析,以发现潜在的规律和趋势。最终,系统将通过直观的可视化图表和报告展示分析结果,包括情感分布、热门话题、关键词等内容,为用户提供全面的舆情信息。此外,用户还可以根据自定义需求进行数据筛选和定制化分析,以便更深入地挖掘微博舆情数据的价值和意义。通过这个系统,用户可以及时了解社会各界对特定话题的态度和情感倾向,从而做出更明智的决策和行动。 二、微博热词统计析 微博热词统计:热点年份变化趋势、热词情感分析、热词频率分析 首先,热点年份变化趋势是指在不同年份中,微博上的热点话题发展的趋势和变化。通过统计不同年份中的热词,我们可以了解到社会关注焦点的转移和变化趋势。例如,某个年份的热词可能主要集中在娱乐明星或电视剧上,而另一个年份可能更多关注社会事件或政治话题。热词情感分析是通过对热词相关微博内容的情感倾向进行分析。通过对微博用户的评论、转发和点赞等行为进行监测和分析,可以了解到用户对热词所表达的情绪态度。例如,某个热词在微博上的情感分析结果可能显示大多数用户对该话题持正面态度,少数用户持负面态度。这样的分析有助于我们了解社会舆论对于热点话题的态度和倾向。 最后,热词频率分析是指对热词在微博上出现的频率进行统计和分析。通过统计不同热词在微博平台上的出现次数,可以了解到不同话题的受关注程度和热度。例如,某个热词在一段时间内频繁出现,说明这个话题在社会上引起了广泛关注。 三、微博文章分析 微博文章分析:文章类型占比分析、文章评论量分析、文章转发量分析、文章内容词云分析、文章基本信息统计分析文章评论量分析:评论量是衡量文章受关注程度的要指标之一。通过统计文章的评论数量,可以了解用户对文章的关注程度和参与度。这可以帮助我们判断文章的受欢迎程度和影响力。 文章转发量分析:转发量是衡量文章传播范围和影响力的指标之一。通过统计文章的转发数量,可以了解用户对文章内容的认同和推荐程度。这有助于评估文章的传播效果和影响力。 文章内容词云分析:文章内容词云是通过对文章中出现频率较高的词语进行可视化展示,以呈现文章的关键主题和热点话题。通过词云分析,可以直观地了解文章的主要内容和关注点。 文章基本信息统计分析:文章基本信息统计分析包括统计文章的发布时间、作者、阅读量等关键信息。这些统计数据可以帮助我们了解文章的发布趋势、作者影响力以及受众规模等信息。 四、微博评论分析 微博评论分析:评论用户性别占比分析、用户评论词云图分析、评论点赞分析。 对于微博评论的用户性别占比分析,通过统计和分析这些信息,我们可以了解在一定的评论样本中,男性和女性用户的数量占比情况。这可以为我们提供有关该话题或事件下不同性别用户参与讨论的情况,有助于了解不同性别用户的观点和态度。用户评论词云图分析可以帮助我们了解评论中出现频率较高的关键词。我们可以通过文本处理技术,对评论内容进行分词并统计词频,然后将高频词汇绘制成词云图。这样,我们就能够直观地看到哪些词汇在评论中被提及得较多,从而推测用户对该话题或事件的关注点和情感倾向。最后,评论点赞分析可以帮助我们了解哪些评论在用户中较受欢迎或者认同。通过统计每条评论的点赞数,我们可以排名评论的受欢迎程度,并分析受欢迎的评论内容特点。这有助于我们了解用户对于该话题或事件的主要认同观点,以及哪些评论具有较高的影响力。 五、微博舆情分析 微博舆情分析:热词情感趋势、文章内容与评论内容舆情趋势分析。微博热词情感趋势是指根据微博用户在某一段时间内热议的关键词或话题的相关内容进行情感分析,从而了解用户对该热词的情感态度变化趋势。情感趋势分析可以帮助我们更好地了解用户的喜好、态度以及对某一事件或话题的关注程度。 文章内容与评论内容舆情趋势分析是指通过对网络上用户发布的文章内容和评论内容进行分析,了解用户对某一事件、产品或话题的舆情倾向。舆情趋势分析可以帮助我们了解用户对某一事件的态度、关注度以及舆论走向,从而有效地进行舆情管理和营销策划。 六、项目展示 (1)系统首页-数据概况 (2)热词统计 (3)舆情统计 (4)舆情文章分析 (5)IP地址分析 (6)评论分析 (7)舆情分析 (8)文章内容词云分析 七、结语 需项目资料/商业合作/交流探讨等可以添加下面个人名片,后续有时间会持续更新更多优质项目内容,感谢各位的喜欢与支持!

java: 错误: 无效的源发行版:17

目录 一、java: 错误: 无效的源发行版:17 报错 原因 解决方法 二、pring-boot-starter-parent下面的版本报红 原因 解决方案 一、java: 错误: 无效的源发行版:17 报错 创建了一个sprintboot项目,运行CommunityApplication时,但报错了:java: 错误: 无效的源发行版:17 原因 (1)查看POM文件中配置的版本信息:spring boot:3.1.0,jdk:17 (2)点击打开“Project Structure” 窗口配置的JDK版本, 因此,POM文件中配置的JDK版本信息 与 "Project Structure" 窗口配置的JDK版本 不一致。 比如在本案例中,POM文件配置的JDK版本为17,而Project Structure" 窗口配置的JDK版本却为1.8,两者不一致导致出现上述报错。 解决方法 打开 “Project Structure” 窗口,修改 Project 和 Modules 下的 JDK 版本,使其保持与POM文件中配置的版本信息一致(如本项目为JDK17)。如下图所示。 方法一: (1)修改 Project 的 JDK,并修改 Modules 的 JDK, (2)此时pom.xml中是 <properties> <java.version>17</java.version> </properties> (3)重新运行CommunityApplication, 欧克,问题解决了。 方法二: (1)此时pom.xml中是 (2) (3)重新运行CommunityApplication, 二、pring-boot-starter-parent下面的版本报红 原因 当spring-boot-starter-parent下面的版本报红时并不是这个版本不存在,而是因为idea会默认缓存Maven本地仓库已存在的中的依赖项。只是我们引入的的父依赖版本 本地仓库中不存在,所以就报错了。 解决方案 解决方案就是我们清除一下缓存重新启动,使用 Invalidate Caches/Restart

Win11更新系统后Copilot在任务栏上消失

问题描述 win11系统更新KB5035942后,任务栏的copilot消失了 2024-适用于 Windows 11 Version 23H2 的 03 累积更新,适合基于 x64 的系统 (KB5035942) 解决办法 1. 修改注册列表 WIN + R打开运行,输入regedit打开注册列表,打开路径:\HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Copilot\BingChat\IsUserEligible,右键修改键值,将数值数据由“0”修改为“1”,确定保存。 此时重新进入设置–>个性化–>任务栏出现Copilot 2. 修改注册列表操作权限 但是重启电脑又会消失,应该是系统用户又重置,解决思路禁止注册列表此项操作权限 在BingChat上右键–>权限,把所有用户和组针对此项的控制权限拒绝掉就可以了,此时再重启电脑也不会再消失了(注意:要先操作第一步后,再操作此步骤) 注意事项 这里禁用了所有用户操作注册列表BingChat的权限,后面如果涉及到Copilot的系统更新可能会有问题,因为没有了权限,到时再把权限放开再更新应该就可以 参考文献 https://support.microsoft.com/zh-cn/topic/2024-%E5%B9%B4-3-%E6%9C%88-26-%E6%97%A5-kb5035942-%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E5%86%85%E9%83%A8%E7%89%88%E6%9C%AC-22621-3374-%E5%92%8C-22631-3374-%E9%A2%84%E8%A7%88%E7%89%88-3ad9affc-1a91-4fcb-8f98-1fe3be91d8dfhttps://blog.csdn.net/u014799900/article/details/137135157http://www.winwin7.com/JC/Win7JC-16882.html

AndroidStudio 设置gradle从国内镜像网站下载

大家在用AndroidStudio创建项目时,经常会出现下面的情况: 这里需要下载gradle构建工具,进行项目构建。 ———————————————————————————————— ps: (1)官网地址:https://services.gradle.org/distributions/ (2)腾讯镜像 Gradle下载地址:https://mirrors.cloud.tencent.com/gradle/ (3)阿里云镜像 Gradle下载地址:https://mirrors.aliyun.com/macports/distfiles/gradle/ ———————————————————————————————— 明明只有一百多M的内容,由于网络限制迟迟下载不下来,还经常失败。那么就可以采用下面的方法: 使用gradle 国内镜像 在中国使用 Gradle 时,由于网络问题,直接使用 Gradle 默认的国际镜像可能会很慢或者无法访问。为了提高构建速度,可以使用国内的 Gradle 镜像, 比如以下用到了腾讯的镜像。 在 gradle/gradle-wrapper.properties 文件中,修改或添加以下配置: distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists #initial setting #distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip #local file setting #distributionUrl=file:///D:/Gradle/gradle-8.1.1-bin.zip #tencent mirrors setting distributionUrl=https\://mirrors.cloud.tencent.com/gradle/gradle-8.1.1-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists 同时,对于 Maven 仓库的镜像,也可以在 build.gradle 文件中进行配置。例如,使用阿里云的 Maven 镜像: buildscript { repositories { maven { url 'https://maven.aliyun.com/repository/google' } maven { url 'https://maven.aliyun.com/repository/jcenter' } maven { url 'https://maven.aliyun.com/repository/public' } } } allprojects {

小白也能微调大模型:LLaMA-Factory使用心得

大模型火了之后,相信不少人都在尝试将预训练大模型应用到自己的场景上,希望得到一个垂类专家,而不是通用大模型。 目前的思路,一是RAG(retrieval augmented generation),在模型的输入prompt中加入尽可能多的“目标领域”的相关知识,引导模型在生成时尽量靠拢目标领域,运用prompt中给予的目标知识;二是有监督微调,用适量的专业领域的数据(或混通用语料)让模型更能生成目标场景的内容。本文主要讲的就是微调。 什么是LLaMA-Factory 当我们想要微调大模型的时候,一个粗略的实验过程无外乎以下几个环节: 准备好硬件(GPU)、数据;通过各方面的资讯选中你想要微调的基座模型准备好代码:输入数据 + 模型 -> 在GPU上反复训练训练结束以后,得到训练过程中的checkpoint + 一些log信息根据log信息选一些比较有希望的checkpoint在自己的测试集上推理,获得相应的结果分析结果,获得下一轮实验(数据、训练方案的迭代)思路 而LLaMA-Factory就是一个很好的负责step 2的工具(当然它能做到的远不止step2,我们后面也会提),你可以理解为,他是一份写好的代码,你只需要把你准备好的数据、硬件、模型,以传参的方式传入,运行代码,模型就开始训练了。等训练结束以后,你把训练好的模型、测试集、硬件又作为参数传入,它就会帮你推理。 LLaMA-Factory的优点 LLaMA-Factory非常适合实验阶段使用,因为: 支持很多种开源大语言模型: 实验阶段我们肯定有好几个觉得靠谱的模型,它们往往有自己的标准输入模板(尤其是代码补全这类任务,涉及较多的special token),你想试试的模型LLaMA-Factory基本都支持,通过template参数可以很方便地指定prompt的模板 支持非常多种训练方法: 全量调参 vs Lora vs … 或预训练模型 vs 有监督fine-tuning,以及DPO PPO的对齐方案。 你想试试的基本也都有,也是通过指定训练模式参数即可 Log: 训练过程中记录的内容比较全,除了同步能够输出loss曲线图以外,还自带bleu等评测指标 测试环节也很方便: 支持merge model(比如微调后的adapter合并到原模型以便作为一个模型导出推理); 支持各种时下比较流行的量化加速方案; 支持vllm等高并发要求的推理框架; 需要的话还可以快速搭建一个Gradio UI用于demo展示或可视化分析 使用心得 我没有用过LLaMA-Factory的全部功能,本文暂且以基本的微调任务为阐述重点,会覆盖上面提到的输入:数据 + GPU + 模型,输出微调后模型的使用。看完以后,应该基本就能完成任意一个支持的开源模型的微调任务了。此外,本文也会涉及一小部分LLaMA-Factory的代码文件目录讲解,方便你更好地探索其他的功能相关的参数来实现你的目标任务。 环境准备 首先是需要git clone两个文件目录,一个是目标大模型的仓库(包含模型权重文件等),一个是llama-factory的仓库 然后,我们通常会在两个地方遇到相关依赖的版本要求: llama-factory的Github仓库主页下,README的Requirement部分(目前已经很贴心地标注了最低要求和推荐要求),以及代码结构目录中的requirements.txt想要使用的目标大模型的Huggingface或Github主页下,同样README部分、代码结构目录中的requirements.txt两个部分都会有相关依赖的版本要求 一般,我们以尽快跑通我们的实验目标为目的。 如果是自己掌控度比较高的环境(自己的GPU),装包装cuda什么的都比较擅长: 检查llama-factory主页README中的要求,把几个依赖库的版本检查一下,保持在规定范围 这主要是因为llama-factory的requirements.txt里面的相关依赖可能比较多,你不一定会用到llama-factory的所有功能 基于目标大模型文件目录中的requirements.txt,使用pip install -r requirements.txt 这主要是因为,这个文件中基本包含这个模型要运行起来的所有依赖 尝试运行,缺啥补啥 这里建议按照目标大模型主页的quick start,写一个简单的脚本就可以了 如果是实验室的服务器或者公司的服务器这种掌控度小的场景,记得要自己创建一个虚拟环境,或者起一个自己的docker容器,在虚拟环境或docker容器内操作,具体使用conda还是docker取决于你们公共服务器的权限管理,哪个方便用哪个,或者其他人平常用什么你就用什么。 数据集准备 模型能够跑通以后,我们准备用于微调的数据集。 这里需要理清楚几个概念: 数据的内容组织方式,取决于训练场景的输入和输出。 通常一个样本由(输入,输出)的pair构成,场景上主要是下面3种(更多的可以参考readme里关于数据集准备的部分)

AIGC重塑金融:AI大模型驱动的金融变革与实践

🌈个人主页: Aileen_0v0 🔥热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ​💫个人格言:“没有罗马,那就自己创造罗马~” anything but 根本不 文章目录 `01 大模型在金融领域的 5 个典型应用场景``02 大模型在金融领域应用所面临的风险及其防范 ``2. 大模型时代的 AI 风险``03 AIGC 技术的科林格里奇困境`**<font color = blue>1. 负责任的 AI:欧美实践与启示****<font color = blue>2. 中国的规则与治理策略思考****<font color = blue>04 金融机构使用 AIGC 技术的 4 条可能路径**`1. 全球金融机构踊跃试水 AIGC``2. 金融机构使用AIGC 大模型的难点``3. 金融机构使用 AIGC 技术的 4 条可能路径 `🎊粉丝福利参与规则🎊 这是最好的时代,也是最坏的时代。尽管大模型技术在金融领域具有巨大的应用潜力,但其应用也面临不容忽视的风险和挑战。本文将深入研究大模型在金融领域的数据隐私和安全风险、模型可解释性和透明度、监管和合 规要求,梳理中国、美国、欧洲等地 AIGC 技术的应用规则,探索对应的风险管理和应对策略。 01 大模型在金融领域的 5 个典型应用场景 当前,金融科技已经从“立柱架梁”迈入了“积厚成势”新阶段,越来越多的金融机构积极使用数字技术来为金融血脉注入全新能量。人工智能技术正加速与金融产业深度融合,以 ChatGPT 为代表的大模型技术不断进化,为金融业带来深刻变革,驱动金融服务更加高效、便捷、有温度。 ChatGPT 拥有持续的多轮对话能力,并具备一定逻辑推理能力,在生成文章、生成代码、翻译等方面展现出令人惊叹的水平。ChatGPT 的问世,意味着人工智能从 1.0 时代迈入了 2.0 时代。ChatGPT 背后的 GPT 大模型技术是下一代 AI 技术竞争的核心,将重新定义包括金融在内的众多行业,重塑全球科技竞争格局。

【已解决】伪分布式Hadoop服务已经开启,但是无法访问http://localhost:9870(缺少NameNode进程)\http://localhost:8088

一、问题描述 使用如下方法启动成功hadoop服务 进入相应文件夹 cd /usr/local/hadoop/ 首先停止启动所有的节点,使用命令行启动stop-all.sh脚本 ./sbin/stop-all.sh 解决方法是首先停止启动所有的节点,使用命令行启动stop-all.sh脚本: ./sbin/start-all.sh 使用jps命令查看当前hadoop运行 貌似没问题 其实这里就是有问题!!!后续解决方法里面说 继续打开http://localhost:9870,查看web界面 显示无法连接到 二、解决方法和问题分析 下面两个方法是在网上搜到的,大家可以先试试 1.有博主建议查看防火墙的 输入命令发现我的Linux并没有防火墙。。。所以不可能是防火墙问题 详见:Ubuntu - 查看、开启、关闭和永久关闭防火墙 2.也有博主建议 编辑配置文件hdfs-site.xml <configuration> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>file:/usr/local/hadoop/tmp/dfs/name</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:/usr/local/hadoop/tmp/dfs/data</value> </property> <property> <name>dfs.namenode.http-address</name> <value>0.0.0.0:9870</value> </property> </configuration> 这些都有尝试 但是仍没有解决 最后我重新看了一下我部署伪分布式Hadoop的那篇博客:Hadoop安装搭建伪分布式教程(全面)吐血整理发现我前面启动节点时确实有问题!!! PS:其实至少需要4个进程:Namenode、DataNode、SecondaryNameNOde、JPS 再会看我之前的那个命令,居然连NameNode都没有!!!我们知道http://localhost:9870就是来查看主节点情况的,居然连主节点NameNode都没有,当然会连不上呀~~ 那么现在的思路就变成了:如何启动主节点NameNode(其实还有另外两个进程:NodeManager和ResourceManager没有启动成功,这也和影响我们通过web界面对其资源管理器的查看等有影响,稍后我们一起说) 2.1:缺少NameNode进程 核心:初始化namenode。需要我们先执行如下命令 hdfs namenode -format 然后再启动hadoop服务(注意,再次启动前需要先停止之前启动的,否则会报错) 然后如下: 之后我们再次访问http://localhost:9870即可成功访问!🎆 2.1:没有ResourceManager和NodeManager 原因:只使用了start-dfs.sh命令(这个命令只会启动上述四个进程) 应该使用:命令start-all.sh(该命令是start-dfs.sh与start-yarn.sh这两个命令的合并) 这样才会启动6个进程: 补充:启动Hadoop时提示 start-all.sh(该命令是start-dfs.sh与start-yarn.sh这两个命令的合并):找不到命令 的解决方法: 这个问题出现的原因是环境变量没有配置好 参考这篇博客的3.3.2步配置好环境变量:Hadoop安装搭建伪分布式教程(全面)吐血整理 于是我们可以成功访问hadoop的http://localhost:8088资源管理界面: 2.3:hadoop拒绝history通过19888端口连接查看已完成的job的日志 原因在于:通过start-all.sh启动hadoop各项节点后,historyserver并没有启动,需要手动启动,因此可以通过以下命令来手动启动historyserver,关闭命令也给出. 启动命令: mr-jobhistory-daemon.sh start historyserver 关闭命令:

Java / Spring Boot + POI 给 Word 添加水印

1、前言(瞎扯) 有个需求:整一个给 Word 加水印的demo,于是我就网上找呗~ 看到那个 Aspose 好像是收费的,然后就把目光转向了 POI,看到各种形形色色的也不知道哪个能用。整了一会,自己拷贝出一个比较精简的能用的 demo 了。 2、人狠话不多,上效果图 我一般都是直接上图的,先看效果图(每一页都有的): 水印的分布如果不理想,只能小伙伴们自行研究调整了~ 3、人狠话不多,直接来代码 3.1、我的代码结构 3.2 、直接贴代码了 pom 依赖的版本不要改,修改版本可能会导致一些东西缺失 代码你们可以直接复制这里的使用 或者在码云仓库:点击这里跳转 3.2.1、pom 依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>3.2.2</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.lyk</groupId> <artifactId>springboot-word-finger</artifactId> <version>0.0.1-SNAPSHOT</version> <name>springboot-word-finger</name> <description>springboot-word-finger</description> <properties> <java.version>17</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.jsoup</groupId> <artifactId>jsoup</artifactId> <version>1.11.2</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>4.

Midjourney软件介绍及使用教程

文章主要有四个部分: 一、Midjourney安装教程(简单略过); 二、认识AI绘图指令; 三、MJ常用后缀参数指令; 四、文本提示词 注:Mj不是修图的工具,只是语言的工具。只是修图的辅助工具,做图要结合PS来. 第一部分:Midjourney安装教程 (一)MJ安装教程 这有一份Midjourney保姆级安装教程:https://mp.weixin.qq.com/s/GB-Jg3frCHwNarDXVx0JdQ,很详细。MJ目前是收费的,我们可以用免费工具Dreamina:https://mp.weixin.qq.com/s/GB-Jg3frCHwNarDXVx0JdQ来练一下手。 (二)MJ常用版本介绍 第二部分:认识AI绘图指令 **MJ界面介绍-视频版 ** (一)输入区常见指令 1.生成图片指令:/imagine prompt: 在对话框输入:/imagine prompt: *注意先输入斜杠/ 然后输入imagine prompt +后面加上自己想要的图片的描述词,需要英文,发送即可出图。 输入区:2.多张图融合指令:/blend 根据上传的多张参考图,生成一张图 输入区:3.根据图片生成提示词:/describe 根据上传的参考图片,生成多个相关的提示词(延伸:我们可不可以把别人A+丢进去,生成提示词,再生成自己的图片) 输入区:4.设置指令:/settings 进入midjourney的设置 (二)输出区基本指令 第三部分:MJ常用后缀参数指令 **学习了参数指令后,我们怎么写提示呢?方法如下: ** 第四部分:文本提示词 (一)什么是提示词? **(二)简单的提示词书写框架 ** **(1)提示词书写框架1:画面主体+细节描述+画面效果 ** **a. 画面主体 ** **b.细节环境 ** **c. 提示词/Prompt效果词: ** **常见的AI绘画类型 ** (2)提示词书写框架2:类别/风格+画面主体+背景/环境+画面效果 **a.摄影类 ** b. 3D类型 **c. 漫画类 ** (三)AI对文本的理解——具体内容 1. 一些素材信息本身没有被AI机器人训练,则无法理解其中的含义,比如:二胡,双曲弓,葫芦等; 2. MJ不能理解句子结构,使用更具象,直白的内容表达; 3. 烟雾、特效、云朵、光效不适合用MJ生成,用PS解决。 **(四)调整关键词权重的三种方式 ** **(1) 调整关键词权重 ** (2)【::】的使用

使用Python轻松批量读取Word文档及各种Word元素的文字内容

目录 引言 安装Python Word库 使用 Python 批量读取Word文档的文字内容 使用 Python 读取Word文档特定节的文字内容 使用 Python 读取Word文档特定段落的文字内容 使用 Python 读取Word文档特定页面的文字内容 使用 Python 读取Word文档特定行的文字内容 使用 Python 读取Word文档特定表格的文字内容 使用 Python 读取Word文档页眉和页脚的文字内容 引言 在现代办公环境中,Word文档是一种常见的文件格式,广泛用于书写、编辑和共享各种类型的文本内容。有时候,我们需要从Word文档中提取文字内容,以便进行进一步的处理和分析。通过编程的方式实现这一功能可以极大地提高工作效率,尤其是当需要处理大量文档或进行批量操作时。 这篇博客将探讨如何使用Python从整个Word文档及各种Word元素中读取文字内容: 使用 Python 批量读取Word文档的文字内容使用 Python 读取Word文档特定节的文字内容使用 Python 读取Word文档特定段落的文字内容使用 Python 读取Word文档特定页面的文字内容使用 Python 读取Word文档特定行的文字内容使用 Python 读取Word文档特定表格的文字内容使用 Python 读取Word文档页眉和页脚的文字内容 安装Python Word库 在Python中,我们可以使用Spire.Doc for Python库来读取Word文档的内容。 Spire.Doc for Python主要用于在Python应用程序中创建、读取、编辑和转换Word文件。它可以处理各种Word格式,包括Doc、Docx、Docm、Dot、Dotx、Dotm等。此外,还可以将Word文档转换为其他类型的文件格式,如Word转PDF、Word转RTF、Word转HTML、Word转文本、Word转图片、Word转OFD/XPS/PostScript。 你可以通过在终端运行以下命令来从PyPI安装Spire.Doc for Python: pip install Spire.Doc 使用 Python 批量读取Word文档的文字内容 从整个Word文档中提取文本很简单,只需使用Document.GetText()方法。具体步骤如下: 创建Document实例并使用Document.LoadFromFile()方法加载Word文档。使用Document.GetText()方法获取该Word文档的文字内容。将获取的文字内容写入文本文件。 from spire.doc import * from spire.doc.common import * # 创建Document实例 document = Document() # 加载Word文档 document.

Stable Diffusion【插件篇】:图片中背景的删除

许多免费的在线应用程序可让您免费删除图像的背景。但出于隐私考虑,您可能不想使用它们。 在这篇文章中,您将学习如何使用SD插件来删除计算机上本地任何图像的背景。您将完全控制图像的存储方式。当然本文也会介绍一些高级选项来优化背景去除。 一. webui-rembg插件介绍 Rembg插件是一个删除图像背景的工具。您可以使用它来删除任何图像的背景,无论是真实图片还是AI生成的图片。我们看一下官网的使用效果图片。 二. webui-rembg插件安装 rembg插件安装地址: https://github.com/AUTOMATIC1111/stable-diffusion-webui-rembg https://github.com/danielgatis/rembg 成功安装后重启SD WebUI,您将在SD WebUI的“Extras(附加功能)”页面上看到一个新的“Remove Background”菜单。 三. webui-rembg插件的使用 【第一步】:生成AI图像 在文生图界面,进行如下参数设置。 大模型:JuggernautXL 正向提示词: samurai girl, 18 year old, detailed eyes, white and red kimono, strange but extremely beautiful, mysterious, fearsome, full body(武士女孩,18岁,细致的眼睛,白色和红色的和服,奇怪但极其美丽,神秘,可怕,全身) 反向提示词: disfigured, ugly, bad, immature, cartoon, anime, 3d, painting, b&w, 2d, 3d, illustration, sketch, nfsw, nude(毁容、丑陋、坏、不成熟、卡通、动漫、3d、绘画、黑白、2d、3d、插图、素描、nfsw、裸体) 采样方法:DPM++ 2M Karras 采样步数:20 图片宽高:832×1216 CFG:7 生成的图片效果如下。 【第二步】:删除背景 选择要删除背景的图像。单击图像下方的“Send to Extras(发送到附加功能)”按钮,将其发送到“Extras附加功能”页面。 在“Remove Background(删除背景)”下拉菜单中选择背景删除模型。u2net 适用于大多数图像。

ElasticSearch 实战:ES中如何进行日期(数值)范围查询

在Elasticsearch中进行日期或数值范围查询,你可以使用range查询。以下是如何使用range查询进行日期和数值范围查询的示例: 日期范围查询: GET /my_index/_search { "query": { "range": { "post_date": { // 假设post_date是日期类型字段 "gte": "2022-01-01", // 大于等于2022年1月1日 "lte": "2022-12-31", // 小于等于2022年12月31日 "format": "yyyy-MM-dd" // 如果日期不是标准的Unix毫秒时间戳,需指定日期格式 } } } } 数值范围查询: GET /my_index/_search { "query": { "range": { "price": { // 假设price是数值类型字段 "gte": 100, // 大于等于100 "lte": 500, // 小于等于500 "boost": 2 // 可选,提升查询相关性得分 } } } } 在上述例子中,gte 是 “greater than or equal to” 的缩写,lte 是 “less than or equal to” 的缩写。你还可以使用 gt(大于)和 lt(小于)代替 gte 和 lte 来进行开放区间查询。

【超全解决办法】InvalidArchiveError(‘Error with archive /usr/local/anaconda3/[conda创建虚拟环境、pytorch安装报错]

使用conda创建虚拟环境出现了以下问题,后面安装pytorch时也出现了这个问题,尝试了很多解决办法都没有用,最后成功解决,这里记录一下,希望大家可以少走弯路。 报错信息如下: InvalidArchiveError('Error with archive /usr/local/anaconda3/pkgs/libffi-3.4.4-h6a678d5_0vveg_hkq/info-libffi-3.4.4-h6a678d5_0.tar.zst. You probably need to delete and re-download or re-create this file. Message from libarchive was:\n\nCould not unlink') 修改办法,切换用户为管理员用户root进行创建环境和后面的pytorch安装。【亲测有效】 剩下的操作和正常的操作一模一样 找到的相关博客,大家也可以参考,虽然没有成功 conda创建虚拟环境时报错: InvalidArchiveError(‘Error with archive /usr/local/Anaconda3-CSDN博客 这个链接成功的办法,首先使用sudo命令就相当于切换成管理员用户root了,而且一般情况下,不建议修改文件权限,容易出现问题。 后面的这几个方法都尝试了,都没有成功。但是看到评论区好像有一个小伙伴通过清理缓存成功了。

怎样在一台电脑安装多个版本的JDK并切换使用?一篇文章教会你所有细节

目录 1. 下载安装JDK版本 2. 配置环境变量 2. 1 配置环境变量的步骤 2.2 需要注意的细节点 2.3 JDK8,11,17版本切换测试 1. 下载安装JDK版本 a. JDK8 下载链接: Java Downloads | Oraclehttps://www.oracle.com/java/technologies/downloads/#java8-windows b. 这里我先插一句,因为我们要安装多个JDK版本,所以我们最好提前创建好文件夹,如下所示,我在C盘路径 C:\Program Files\Java 的文件夹下创建子文件夹分别命名jdk-8,jdk-11,jdk-17,公共jre分别用来存放我们要安装的JDK和jre。 c. 然后我们点击上方下载链接跳转到如下下载界面,点击 Windows x64 版本下载; 特别说明:下载需要登陆oracle账号,如果小伙伴没有的话跟着指引注册一个即可。 d. 等待右上角显示下载完毕,点击我们刚才下载好的jdk8的安装包,就会开始jdk8的安装流程 e. 点击下一步,来到如下界面,我们点击更改,把安装路径更改为我们刚才提前新建的文件夹,有些小伙伴如果不想放在C盘可以自行更改安装路径 f. 点击更改如下所示,改到新建的文件夹 jdk-8 ,点击确定 g. 确定完毕,我们就可以看到安装路径已经被更改,我们再点击下一步 h. 继续点击下一步,它会让我们配置公共jre的位置,路径就选为我们刚才创建的jre文件夹即可,更改完毕之后,我们点击下一步就安装完成了。 在安装jre之后,我们后续在安装JDK11和JDK17就不需要再重新安装jre了 JDK11 下载链接: Java 下载 |神谕 (oracle.com)https://www.oracle.com/java/technologies/downloads/#java11 JDK17 下载链接: Java Downloads | Oraclehttps://www.oracle.com/java/technologies/downloads/#jdk17-windows后续JDK11和JDK17的安装步骤与上述类似,不再重复展示。 2. 配置环境变量 2. 1 配置环境变量的步骤 a. 然后我们鼠标右键点击"此电脑",点击属性,就会出现如下对话框,点击高级系统设置 b. 然后点击环境变量 c. 点击环境变量之后出现右侧对话框,点击新建 d. 点击新建,然后我们将变量名命名为 "

Wagtail-基于Python Django的内容管理系统CMS实现公网访问

目录 ⛳️推荐 前言 1. 安装并运行Wagtail 1.1 创建并激活虚拟环境 2. 安装cpolar内网穿透工具 3. 实现Wagtail公网访问 4. 固定Wagtail公网地址 ⛳️推荐 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站 前言 Wagtail是一个用Python编写的开源CMS,建立在Django Web框架上。Wagtail 是一个基于 Django 的开源内容管理系统,拥有强大的社区和商业支持。它专注于用户体验,并为设计人员和开发人员提供精确控制。 选择wagtail的原因: 它能快速实现页面的表达,对于我这种对新实现的功能想要找到地方进行展示,但前端能力又不太行的同学基于django 一直会对django的稳定版本进行支持 Wagtail由开发人员为开发人员构建。那么结合cpolar内网穿透可以进行公网远程访问,实现花更少的时间进行配置,而将更多的时间用于完善您的网站。本篇文章介绍如何安装运行Wagtail,并实现公网访问网站界面。 1. 安装并运行Wagtail Wagtail 支持 Python 3.8、3.9、3.10 和 3.11。 要检查您是否有合适的 Python 3 版本,请运行以下命令: python --version # Or: python3 --version # **On Windows** (cmd.exe, with the Python Launcher for Windows): py --version 如果上述命令均未返回版本号,或返回低于 3.8 的版本,则安装 Python 3。 1.1 创建并激活虚拟环境 按照顺序进行安装 pip install wagtail wagtail start mysite cd mysite pip install -r requirements.

超超超详细的Midjourney使用教程献上,还不赶紧收藏起来

大家好,今天是MJ的干货使用教程。从手把手注册账号到熟悉Midjourney操作界面再到实战案例制作到最后超好用的平替软件。 这一篇就够了! 一、Midjourney强大在哪里? 1.照片风格多样 在Midjourney里面,几乎可以生成各种风格的照片 2.操作简单,照片质量高 AI绘画没有大家想象的那么难 在Midjourney里面,简单到只要打几个字,就可以出来质量非常高的照片 比如“一只正在笑的狗”、“一个可爱的动漫女孩” 在Midjourney里面,我们不仅可以生成一些常规的图片 我们还可以去尝试生成一些更加有趣、更有想象力的照片 比如会开车的狗、练太极的猫 掌心上的超小猫咪,超大的西瓜,还有中国风钢铁侠 二、Midjourney究竟是什么? 1.Midjourney的介绍 MidJourney 是一个文本到图像的 AI,基于Discord平台搭建,它可以根据您的文本提示生成具有视觉效果的图像 说人话就是:你输入文字,它给你生成画面! 2.Discord的介绍 讲到Midjourney(简称MJ),我们还要知道Discord是什么 Discord就是一个聊天软件,可以把它想象成微信,它的着重功能在聊天室上 而MJ就是这个聊天软件上的一个功能 【看下图】 一的部分代表了服务器:可以理解为一个社群圈子,比如我要搞钱,我就可以创建一个一起搞钱的圈子 二的部分代表了频道,我这个圈子要有市场部人员,产品部人员等等,我就给每个部门设置单独的频道 三的部分代表了聊天室,在这里大家可以互相交流说话 Midjourney就是搭建在这样一个平台上的工具, 这个Midjouney的服务器里面有很多频道 一些是作为公告和规则用,一些是直接的聊天室 在聊天室里面调用Midjouney功能,通过打字就可以生成图片 三、Midjourney和Stable Diffusion以及其他绘图工具有什么区别? 1.MJ和SD的说明 AI绘画工具除了Midjourney以外,还有DALL-E 2,Stable Diffusion,Disco Diffusion等软件 我们拿最常见的Midjourney(简称MJ)和Stable Diffusion(简称SD)来对比 Midjourney:一个商业产品,其公司主要负责模型开发、训练、调整和用户界面,为用户提供打开即用的体验 Stable Diffusion:一个支持开源生态系统的软件,模型的代码和训练数据可供所有人访问,用户可以在此基础上构建并微调模型,以达到想要的效果。 Midjourney是付费的,更容易上手,它的公司把一切都包装好了,你打开输入文字就可以使用,而且速度非常快。 Stable Diffusion是免费的,没有公司在经营,它只是一串模型代码。 你需要安装在你自己的电脑里,用自己的GPU来渲染出图,同时很多数据模型都要自己去练(或者网上下载别人分享的) 虽然麻烦,但可定制化程度更高一些,可以控制图片构图和姿势 2.MJ和SD的选择 所有取决于你想要做什么: 如果你想要: 无需深入学习就可生成惊人的图像 你很忙,没有时间学习和训练模型 你不介意花钱 那就选MJ(Midjourney) 如果你想要 l完全免费的解决方案 l你希望在本地运行内容 l你喜欢调整你的设置,更多的控制图像 那就选SD(Stable diffusion) 四、3分钟快速注册Midjourney 看起来好像好复杂,好多英文呐! 注意,立刻按耐住自己的畏难情绪,相信自己,相信我! 只要你按照我的步骤来,我敢说3岁小孩都能做到! 1.科学上网 科学上网,这个没办法教哈,只能大家各显神通了 2.注册Discord账号 ①打开https://discord.com/,点击右上角注册账号

深入解析《企业级数据架构》:HDFS、Yarn、Hive、HBase与Spark的核心应用

写在前面 进入大数据阶段就意味着进入NoSQL阶段,更多的是面向OLAP场景,即数据仓库、BI应用等。 大数据技术的发展并不是偶然的,它的背后是对于成本的考量。集中式数据库或者基于MPP架构的分布数据库往往采用的都是性能稳定但价格较为昂贵的小型机、一体机或者PC服务器等,扩展性相对较差;而大数据计算框架可以基于价格低廉的普通的硬件服务器构建,并且理论上支持无限扩展以支撑应用服务。 在大数据领域中最有名的就是 Hadoop 生态,总体来看,它主要由三部分构成:底层文件存储系统 HDFS(Hadoop Distributed File System,Hadoop 分布式文件系统)、资源调度计算框架 Yarn(Yet Another Resource Negotiator,又一个资源协调者)以及基于 HDFS 与 Yarn的上层应用组件,例如 HBase、Hive 等。一个典型的基于 Hadoop 的应用如下图所示。 ⭐HDFS HDFS 被设计成适合运行在通用硬件(Commodity Hardware)上的分布式文件系统。它和现有的分布式文件系统有很多共同点,例如典型的 Master-Slave 架构(这里不准备展开介绍),也有不同点,HDFS 是一个具有高度容错性的系统,适合部署在廉价的机器上。关于HDFS 这里主要想说两点,默认副本数的设置以及机架感知(Rack Awareness)。 HDFS 默认副本数是 3,这是因为 Hadoop 有着高度的容错性,从数据冗余以及分布的角度来看,需要在同一机房不同机柜以及跨数据中心进行数据存储以保证数据最大可用。因此,为了达到上述目的,数据块需要至少存放在同一机房的不同机架(2 份)以及跨数据中心的某一机架(1 份)中,共 3 份数据。 机架感知的目的是在计算中尽量让不同节点之间的通信能够发生在同一个机架之 内,而不是跨机架,进而减少分布式计算中数据在不同的网络之间的传输,减少网络带 宽资源的消耗。例如当集群发生数据读取的时候,客户端按照由近到远的优先次序决定 哪个数据节点向客户端发送数据,因为在分布式框架中,网络 I/O 已经成为主要的性能瓶颈。 只有深刻理解了这两点,才能理解为什么 Hadoop 有着高度的容错性。高度容错性是Hadoop 可以在通用硬件上运行的基础。 ⭐Yarn Yarn 是继 Common、HDFS、MapReduce 之 后 Hadoop 的又一个子项目, 它是在MapReduceV2 中提出的。 在 Hadoop1.0 中,JobTracker 由资源管理器(由 TaskScheduler 模块实现)和作业控制 (由 JobTracker 中多个模块共同实现)两部分组成。

【JS球球大作战项目实战】+在线体验

个人名片: 🐼作者简介:一名大三在校生,喜欢AI编程🎋 🐻‍❄️个人主页🥇:落798. 🐼个人WeChat:hmmwx53 🕊️系列专栏:🖼️ 零基础学Java——小白入门必备🔥重识C语言——复习回顾🔥计算机网络体系———深度详讲HCIP数通工程师-刷题与实战🔥🔥🔥微信小程序开发——实战开发🔥HarmonyOS 4.0 应用开发实战——实战开发🔥🔥🔥Redis快速入门到精通——实战开发🔥🔥🔥RabbitMQ快速入门🔥 🐓每日一句:🍭我很忙,但我要忙的有意义! 欢迎评论 💬点赞👍🏻 收藏 📂加关注+ 文章目录 BallBattle简介背景设定玩法主要功能匹配对战属性同步与保存房间属性玩家属性 自定义事件其他功能消息处理控制移动同步 项目结构欢迎添加微信,加入我的核心小队,请备注来意 BallBattle 简介 《球球大作战》是一款由巨人网络Superpop&Lollipop工作室自主研发,并且免费(不包括道具)的手机网络游戏。2015年5月27日由巨人网络在中国大陆发行。 游戏以玩家间的实时互动PK为设计宗旨,通过简单的规则将玩家操作直接转化为游戏策略,体验智谋碰撞的战斗乐趣。在这个球球的世界里,每个人都化身为一颗独特的球球,大球吃小球,努力生存下来就是唯一的目标。 线上体验 背景设定 在宇宙深处一片遍布着荆棘之花的神秘星云中,生活着一群名叫“波拉哩”(译名“球球”)的奇特生物。他们外表萌萌,却有着勇敢的心。他们是天生的战斗种族,为战斗而生,为战斗而亡。 传说中,这群波拉哩的共同祖先是一只叫“塔坦”的超级波拉哩,塔坦的职责就是守护宇宙瑰宝“荆棘之花”,它拥有强大的能量,会分出分身,变化万物,唯一的弱点就是贪吃。 一天,塔坦终于禁不住诱惑,偷食了“荆棘之花”,结果身体爆裂,成为了数以亿计的小波拉哩。从此,波拉哩的族群就受到了贪食的诅咒,只能在这片星云中无休止的战斗,如果停止战斗,生命便会流失,消亡在茫茫的星空之中。在漫漫的历史长河里,只有最强大的波拉哩才能冲过这片黑暗星云,打破命运的枷锁,去寻找那传说中的光明与和平。 为了那甜蜜的希望,波拉哩们战斗着。他们必须奋力奔跑,让自己变大变大再变大,才能对抗比自己更强的存在。哪怕经历无数失败也必须重新凝聚力量,直到成为最强壮的那个。 玩法 输入房间 ID,加入房间(如果没有此房间,则创建)。 用户 ID 随机生成。 使用 ⬆️⬇️⬅️➡️ 或 WSAD 来控制小球移动,吃掉场景中的食物(三角形,方形,六边形)则会增长体重(并减少速度);遇到其他球(玩家),碰撞之后,体重较大者获胜,较小者将会死亡并重生。 右侧面板显示当前房间的玩家体重排行榜。 主要功能 匹配对战 最基础的房间 ID 匹配。 更多关于房间匹配文档 属性同步与保存 这个 demo 使用的是 Master Client 机制,但由于 Master Client 可能存在掉线等异常情况,所以需要将房间和玩家的部分数据保存至 Room Properties 和 Player Properties。 更多关于属性同步文档 房间属性 房间用时战场的食物列表食物最大 ID 食物: /** * 食物 */ cc.