首页 文章 精选 留言 我的

精选列表

搜索[大模型API],共10000篇文章
优秀的个人博客,低调大师

2022年银行业十大人工智能和大数据趋势

尽管最初的目标是希望机器像人类一样智能,但似乎正在发展成为智能自动化而不是人工智能。银行业被认为是一个在采用新兴技术改进业务方面较晚的行业。然而,银行业的人工智能应用目前是金融和商业世界中的一个热门话题。 1.客户服务 客户服务通常代表各个公司的公众形象。当客户与企业互动时有愉快的体验,就被认为是成功的。当客户走入银行时,将与客户服务代表讨论他们面临的问题,例如账户信息、交易历史、支票清算和开设新银行账户都是客户可能询问的问题。如果等待的客户很多,则可能需要等待很长时间才能办理。许多银行和投资机构目前正在使用人工智能来加速这一耗时且重复的活动。 2.网上银行和手机银行 很多放弃采用电脑转而使用越来越受欢迎的手机进行操作。手机如今成为沟通、规划、阅读、生活方式管理和财务规划的重要手段。对于客户服务和银行流程,银行现在需要更复杂的人工智能软件。 3.资本市场的人工智能 资本市场是交易者可以通过投资债券、股票和其他长期项目来获利的地方。随着技术的进步,即使是低收入的个人现在也可以参与金融市场。 4.财富管理 如今,财富管理机构正在逐步整合关键的人工智能场景,以满足高净值客户的银行需求。人工智能协助各种财富管理业务有效地执行关键的银行任务。他们可以在财富管理职责上获得更多经验,让客户更放心。 5.合规性 合规性是某些银行必须遵守的规则,但有一些例外。因为这些规则对于保持流程最新和避免任何风险或损失至关重要。如果没有合规性监管,银行业将面临更多困难,包括失去许可证。监管机构可以修改合规性法规以满足银行业的特定需求。各种监管合规性随着财富管理的增加而增加。GDPR法规或MiFID II法规是金融咨询服务的两个例子。 6.风险管理 对于市场中的风险管理,人工智能可以提供更多的帮助。例如,可以使用人工智能技术和软件检测银行业中的许多欺诈风险。为了评估和安排非结构化统计数据,需要人工智能进行风险管理。金融风险管理人员关注避免损失和风险,他们使用人工智能技术试图控制它们。 人工智能正成为金融和企业增长的重要组成部分。机器学习允许监控和评估非结构化数据,从而节省资金和时间。这些还有助于调节和最小化各种危害。 7.结算 结算是操作现金的交易,由系统转换为各种金融机构的支付指令。在金融行业,就安全和效率而言,结算被认为是极其困难的。 在资本市场上,这些复杂因素正日益增加。人工智能和其他技术增强了各种领域的结算方法。然而,协议中有一个不应忽视的消极因素。历史上,许多交易直到客户收到有形的凭证才能完成。 8.记录维护 在银行业,人工智能软件用于维护记录。因为以安全的格式保留客户的信息或数据至关重要。因此,这是一个非常棒的应用。使用光学字符识别生成文档的扫描图像。通过改变使用纸质文件的形式和所有字符,OCR将纸张记录转换为数字显示。这可以将官方银行文件转换为独一无二的格式。 9.会计 会计有助于将数据转换为更精确的格式。传统的计算技术速度慢,而且耗费更多的资金和时间。然而,人工智能软件现在提高了准确性和簿记能力,使它们变得更加简单可靠。人工智能可以通过使用业务规划、简化统计和进行调查来辅助会计工作。 10.人力资源 人力资源部通常负责招聘、生产和维护工作。在过去,人力资源部门要保持整个流程的顺利进行,通常面临巨大的困难。然而,随着新的人工智能技术的引入,现在一切都是可控和可管理的。银行官员可以使用人工智能技术来创建人力资源方法来处理他们的工作并获得更大的收益。它通过增加银行员工的参与和互动来帮助提高银行员工的工作效率。人工智能可以增加收入,并赋予员工更多权力。

优秀的个人博客,低调大师

个人信息保护法草案三审稿6大修改

8月13日上午,全国人大常委会法制工作委员会举行记者会。发言人臧铁伟介绍了立法工作有关情况并回答记者提问。 据悉,8月17日至20日,十三届全国人大常委会第三十次会议将于北京举行,并且审议个人信息保护法草案在内的多个草案。 个人信息保护法草案(三次审议稿) 今年4月,常委会第二十八次会议对个人信息保护法草案进行了二次审议。根据各方面意见,提请本次常委会会议审议的草案三次审议稿拟作如下主要修改: 一是,我国宪法规定,国家尊重和保障人权,公民的人格尊严不受侵犯,公民的通信自由和通信秘密受法律保护。制定实施本法对于保障公民的人格尊严和其他权益具有重要意义。据此,拟在草案第一条中增加规定“根据宪法”制定本法。 二是,进一步完善个人信息处理规则,特别是对应用程序(APP)过度收集个人信息、“大数据杀熟”等作出有针对性规范。 三是,将不满十四周岁未成年人的个人信息作为敏感个人信息,并要求个人信息处理者对此制定专门的个人信息处理规则。 四是,完善个人信息跨境提供的规则,对按照我国缔结或者参加的国际条约、协定向境外提供个人信息、对转移到境外的个人信息的保护不应低于我国的保护标准等作出规定。 五是,增加个人信息可携带权的规定,完善死者个人信息保护的规定。 六是,对完善个人信息保护投诉、举报工作机制及违法处理个人信息涉嫌犯罪案件的移送提出明确要求。 利用个人信息进行自动化决策的针对性规范 在回答记者提问中,臧铁伟指出: 当前,社会各方面对于用户画像、算法推荐等新技术新应用高度关注,对相关产品和服务中存在的信息骚扰、“大数据杀熟”等问题反映强烈。 因此,个人信息保护法草案立足于维护广大人民群众的网络空间合法权益,对利用个人信息进行自动化决策作了有针对性规范: 一是,对自动化决策的概念作出界定,是指通过程序自动分析、评估个人的行为习惯、兴趣爱好或者经济、健康、信用状况等,并进行决策的活动。 二是,自动化决策应当遵守个人信息处理的一般规则,包括应遵循合法、正当、必要和诚信原则,目的明确和最小化处理原则,公开透明原则,信息质量原则,责任原则等,自动化决策,包括用户画像、算法推荐等,应当在充分告知个人信息处理相关事项的前提下取得个人同意,不得以个人不同意为由拒绝提供产品或者服务。 三是,在上述规则下,草案对自动化决策作出专门规范,要求个人信息处理者保证自动化决策的透明度和结果的公平、公正,不得通过自动化决策对个人在交易价格等交易条件上实行不合理的差别待遇,并在事前进行个人信息保护影响评估。 四是,赋予个人充分的权利,要求个人信息处理者通过自动化决策方式向个人进行信息推送、商业营销,应当同时提供不针对其个人特征的选项,或者向个人提供拒绝的方式;作出对个人权益有重大影响的决定,个人有权要求予以说明,并有权拒绝仅通过自动化决策的方式作出决定。

优秀的个人博客,低调大师

【参赛作品7】PostgreSQL/openGauss数据库易犯的十大错误

总结十点PostgreSQL/openGauss数据库中容易犯的错误。 1.同时设置日志行前缀和csvlog格式 比较常见大家同时配置下面这两个参数 log_line_prefix = '%m %u %d %p' log_destination='csvlog' %m是带毫秒的时间戳 %u是用户名 %d是数据库名 %p是进程ID 然后当我们配置为csvlog日志时,日志行的内容项是固定的,所以当我们需要配置日志前缀,精简日志行的内容项时,log_destination不能配置为csvlog。下面是正确的配置: log_destination='stderr' log_line_prefix = '%m %u %d %p' 2.不符合预期的日志轮换策略 日志轮换策略可以通过log_rotation_size参数按日志文件大小控制或者通过log_rotation_age参数按时间控制,但下面这四个参数需要合理组合使用。 log_filename log_truncate_on_rotation log_rotation_age log_rotation_size 方案一:每天生成一个新的日志文件 log_filename='postgresql-%Y-%m-%d.log' log_truncate_on_rotation=off log_rotation_age=1d log_rotation_size=0 方案二:写满固定大小(如10MB),则进行切换 log_filename='postgresql-%Y-%m-%d_%H%M%S.log' log_truncate_on_rotation=off log_rotation_age=0 log_rotation_size=10MB 这种方案我们一般是为了根据时间去查看日志,文件名根据日志量可以设置到时分秒,但这里设置log_rotation_size并不能严格控制固定大小。 方案三:保留固定天数的日志并循环覆盖,例如固定一周或者固定一个月 log_filename='postgresql-%u.log' log_truncate_on_rotation=on log_rotation_age=1d log_rotation_size=0 log_filename常见的通配符变量 %u是星期的数字表示,范围是[1,7],1代表星期一 %w也是星期的数字表示,范围是[0,6],0代表星期天 %d是月份中的天数表示,范围是[01,31] 生产环境第三种方案更合适一些。 3.同步复制表的序列 看看下面这个例子,我们创建test表使用serial自增序列类型,系统帮我们生成了test_id_seq序列。 postgres=# create table test(id serial primary key,name varchar unique); CREATE TABLE postgres=# \d test Table "public.test" Column | Type | Collation | Nullable | Default --------+-------------------+-----------+----------+---------------------------------- id | integer | | not null | nextval('test_id_seq'::regclass) name | character varying | | | Indexes: "test_pkey" PRIMARY KEY, btree (id) "test_name_key" UNIQUE CONSTRAINT, btree (name) 当我们复制t_test表时,test表的序列引用也同时复制过来了,可以使用虚拟生成列来解决这个问题。 postgres=# create table t_test(like test including all); CREATE TABLE postgres=# \d t_test Table "public.t_test" Column | Type | Collation | Nullable | Default --------+-------------------+-----------+----------+---------------------------------- id | integer | | not null | nextval('test_id_seq'::regclass) name | character varying | | | Indexes: "t_test_pkey" PRIMARY KEY, btree (id) "t_test_name_key" UNIQUE CONSTRAINT, btree (name) openGauss对PG的这个问题做了修复,下面是openGauss复制t_test时,序列按表名做了区分。 omm=# \d t_test Table "public.t_test" Column | Type | Modifiers --------+-------------------+----------------------------------------------------- id | integer | not null default nextval('t_test_id_seq'::regclass) name | character varying | Indexes: "t_test_pkey" PRIMARY KEY, btree (id) TABLESPACE pg_default "t_test_name_key" UNIQUE CONSTRAINT, btree (name) TABLESPACE pg_default 4.跳变的序列值 创建序列seq1,设置cache为10,session A获取下一个值为1. postgres=# create sequence seq1 cache 10; CREATE SEQUENCE postgres=# select nextval('seq1'); nextval --------- 1 (1 row) session B查询获取下一个值为11 postgres=# select nextval('seq1'); nextval --------- 11 (1 row) 序列值插入为了保证连续性,要设置cache为1。 5.从任意库查询pg_stat_statements模块统计信息 pg_stat_statements模块用来跟踪SQL语句的执行统计信息,我们如果把该模块安装到postgres数据库,就只能连到postgres数据库进行查询,除非其它数据库也安装了该模块,否则会提示报错找不到。 无论任何操作,都需要连接到一个数据库,即使我们只想创建一个全局的数据库用户,所以选对数据库特别重要。 6.truncate操作理解为DML语句 log_statement参数控制日志记录级别,有4个选项:none、ddl、mod、all。开启ddl,它会记录 create、alter和drop相关的语句,但不记录truncate。 truncate在Oracle中属于DDL语句,在PostgreSQL中属于DML语句。因此,当我们使用DDL日志记录语句时,无法记录到Truncate。 7.认为数据库的owner可以管理其下所有对象 数据库、模式、表的都有自己的owner,他们都属于实例中的对象,数据库owner只是具有数据库这个对象的CTc权限。数据库的默认权限为: 允许public角色连接,即允许任何人连接。 不允许除了超级用户和owner之外的任何人在数据库中创建schema。 会自动创建名为public的schema,这个schema的所有权限已经赋予给public角色,即允许任何人在里面创建对象。 schema使用注意事项: schema的owner默认是该schema下的所有对象的owner,但是允许用户在别人的schema下创建对象,所以一个对象的owner和schema的owner可能不同,都有drop对象的权限。 8.认为public模式下的对象可以互相访问 public模式只是允许任何人在里面创建对象并管理自己的对象,并不能查看别人创建的对象。 9.创建索引时起名为表名称 单个数据库里,索引和表的名称不能重复,因为他们都属于relation。 postgres=# create index a on a(id); ERROR: relation "a" already exists 10.把walsender当作主库 通常我们从操作系统层查看主库有walsender,备库有walreceiver,并且walsender信息中可以看到备库的IP地址,可以初步判断主备状态正常。 但请注意有walsender或者数据库中能查到pg_stat_replication视图并不能断定是主库,仅在一主一备环境可以这样简单判断,下面的图可以看出,虽然有walsender,但它也是个备库。

优秀的个人博客,低调大师

带你认识Flink容错机制的两大方面:作业执行和守护进程

摘要:Flink 容错机制主要有作业执行的容错以及守护进程的容错两方面,前者包括 Flink runtime 的 ExecutionGraph 和Execution的容错,后者则包括 JobManager 和 TaskManager 的容错。 本文分享自华为云社区《Flink容错机制》,原文作者:yangxiao_mrs 。 Flink 容错机制主要有作业执行的容错以及守护进程的容错两方面,前者包括 Flink runtime 的 ExecutionGraph 和Execution的容错,后者则包括 JobManager 和 TaskManager 的容错。 一、作业执行容错 Flink 的错误恢复机制分为多个级别,即 Execution 级别的 Failover 策略和 ExecutionGraph 级别的 Job Restart 策略。当出现错误时,Flink 会先尝试触发范围小的错误恢复机制,如果仍处理不了才会升级为更大范围的错误恢复机制,具体可以看下面的序列图。 当 Task 发生错误,TaskManager 会通过 RPC 通知 JobManager,后者将对应 Execution 的状态转为 failed 并触发 Failover 策略。如果符合 Failover 策略,JobManager 会重启 Execution,否则升级为 ExecutionGraph 的失败。ExecutionGraph 失败则进入 failing 的状态,由 Restart 策略决定其重启(restarting 状态)还是异常退出(failed 状态)。 1.1 Task Failover策略 Task Failover策略目前有三个,分别是:RestartAll、RestartIndividualStrategy 和 RestartPipelinedRegionStrategy。 RestartAll: 重启全部 Task,是恢复作业一致性的最安全策略,会在其他 Failover 策略失败时作为保底策略使用。目前是默认的 Task Failover 策略。 RestartPipelinedRegionStrategy: 重启错误 Task 所在 Region 的全部 Task。Task Region 是由 Task 的数据传输决定的,有数据传输的 Task 会被放在同一个 Region,而不同 Region 之间没有数据交换。 RestartIndividualStrategy: 恢复单个 Task。因为如果该 Task 没有包含数据源,这会导致它不能重流数据而导致一部分数据丢失。考虑到至少提供准确一次的投递语义,这个策略的使用范围比较有限,只应用于 Task 间没有数据传输的作业。 1.2 Job Restart策略 如果 Task 错误最终触发了 Full Restart,此时 Job Restart 策略将会控制是否需要恢复作业。Flink 提供三种 Job 具体的 Restart Strategy。 FixedDelayRestartStrategy: 允许指定次数内的 Execution 失败,如果超过该次数则导致 Job 失败。FixedDelayRestartStrategy 重启可以设置一定的延迟,以减少频繁重试对外部系统带来的负载和不必要的错误日志。 FailureRateRestartStrategy: 允许在指定时间窗口内的指定次数内的 Execution 失败,如果超过这个频率则导致 Job 失败。同样地,FailureRateRestartStrategy 也可以设置一定的重启延迟。 NoRestartStrategy: 在 Execution 失败时直接让 Job 失败。 二、守护进程容错 Flink on YARN 的部署模式,关键的守护进程有 JobManager 和 TaskManager 两个,其中JobManager的主要职责协调资源和管理作业的执行分别为ResourceManager 和 JobMaster 两个守护线程承担,三者之间的关系如下图所示。 2.1 TaskManager 的容错 如果 ResouceManager 通过心跳超时检测到或者通过集群管理器的通知了解到 TaskManager 故障,它会通知对应的 JobMaster 并启动一个新的 TaskManager 以做代替。注意 ResouceManager 并不关心 Flink 作业的情况,这是 JobMaster 的职责去管理 Flink 作业要做何种反应。 如果 JobMaster 通过 ResouceManager 的通知了解到或者通过心跳超时检测到 TaskManager 故障,它首先会从自己的 slot pool 中移除该 TaskManager,并将该 TaskManager 上运行的所有 Tasks 标记为失败,从而触发 Flink 作业执行的容错机制以恢复作业。 TaskManager 的状态已经写入 checkpoint 并会在重启后自动恢复,因此不会造成数据不一致的问题。 2.2 ResourceManager 的容错 如果TaskManager通过心跳超时检测到 ResourceManager 故障,或者收到 zookeeper 的关于ResourceManager失去leadership通知,TaskManager会寻找新的 leader,ResourceManager 并将自己重启注册到其上,期间并不会中断 Task的执行。 如果JobMaster通过心跳超时检测到ResourceManager故障,或者收到 zookeeper 的关于 ResourceManager 失去 leadership 通知,JobMaster 同样会等待新的 ResourceManager 变成 leader,然后重新请求所有的TaskManager。考虑到 TaskManager 也可能成功恢复,这样的话 JobMaster 新请求的 TaskManager 会在空闲一段时间后被释放。 ResourceManager上保持了很多状态信息,包括活跃的 container、可用的 TaskManager、TaskManager 和 JobMaster 的映射关系等等信息,不过这些信息并不是 ground truth,可以从与 JobMaster 及 TaskManager 的状态同步中再重新获得,所以这些信息并不需要持久化。 2.3 JobMaster 的容错 如果 TaskManager 通过心跳超时检测到 JobMaster 故障,或者收到 zookeeper 的关于 JobMaster 失去 leadership 通知,TaskManager 会触发自己的错误恢复,然后等待新的 JobMaster。如果新的 JobMaster 在一定时间后仍未出现,TaskManager 会将其 slot 标记为空闲并告知 ResourceManager。 如果 ResourceManager 通过心跳超时检测到 JobMaster 故障,或者收到 zookeeper 的关于 JobMaster 失去 leadership 通知,ResourceManager 会将其告知 TaskManager,其他不作处理。 JobMaster 保存了很多对作业执行至关重要的状态,其中 JobGraph 和用户代码会重新从 HDFS 等持久化存储中获取,checkpoint 信息会从 zookeeper 获得,Task 的执行信息可以不恢复因为整个作业会重新调度,而持有的 slot 则从 ResourceManager 的 TaskManager 的同步信息中恢复。 2.4 并发故障 Flink on YARN 部署模式下,因为 JobMaster 和 ResourceManager 都在 JobManager 进程内,如果JobManager 进程出问题,通常是 JobMaster 和 ResourceManager 并发故障,那么 TaskManager 会按以下步骤处理: 按照普通的 JobMaster 故障处理。 在一段时间内不断尝试将 slot 提供给新的 JobMaster。 不断尝试将自己注册到 ResourceManager 上。 值得注意的是,新 JobManager 的拉起是依靠 YARN 的 Application attempt 重试机制来自动完成的,而根据 Flink 配置的 YARN Application:keep-containers-across-application-attempts行为,TaskManager 不会被清理,因此可以重新注册到新启动的 Flink ResourceManager 和 JobMaster 中。 三、总结 Flink 容错机制确保了 Flink 的可靠性和持久性,具体来说它包括作业执行的容错和守护进程的容错两个方面。在作业执行容错方面,Flink 提供 Task 级别的 Failover 策略和 Job 级别的 Restart 策略来进行故障情况下的自动重试。在守护进程的容错方面,在on YARN 模式下,Flink 通过内部组件的心跳和 YARN 的监控进行故障检测。TaskManager 的故障会通过申请新的 TaskManager 并重启 Task 或 Job 来恢复,JobManager 的故障会通过集群管理器的自动拉起新 JobManager 和 TaskManager 的重新注册到新 leader JobManager 来恢复。 点击关注,第一时间了解华为云新鲜技术~

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册