首页 文章 精选 留言 我的

精选列表

搜索[快速入门],共10000篇文章
优秀的个人博客,低调大师

科普丨CAAI带你快速了解人工智能

小编按: 近一周各大媒体已经被阿法狗和李世石报道的铺天盖地,人工智能也在网友当中引起了无比高涨的热情与兴趣,作为中国唯一一个人工智能领域的国家级学会,中国人工智能学会(CAAI)当然要肩负起为大众提供最多最优最新的人工智能相关信息。 小编就此次人机大战搜罗了一些现阶段和人工智能相关的统计数据,这次找到的是非常形象化的内容,可以让粉丝们一目了然的看到人工智能的发展状态。 人工智能的成熟水平 关于人工智能的成熟水平,下表按发展年进行了一个统计。就13项主要人工智能领域的主要内容进行了对比,其中不难看出语音识别以及视频内容识别发展的时间最久,其中语音识别也是最近应用非常广泛的一项。 例如CAAI的企业会员科大讯飞为例,现阶段已经有了非常成熟的语音识别技术,并且程度领先同等水平。 投身人工智能领域的企业 这是由Venture Scanner统计的现阶段投身人工智能各大相关领域的企业图,小编仔细数了数大约共有1000多家企业。不得不说这个数量真的很庞大。 其中机器学习及应用领域里面的最多,约238家。自然语言处理其次大约151家,机器学习·通用再次112家。 也许以上这些数据对于现今全球领域中的各大企业来说数量上是九牛一毛,但在人工智能发展的历史过程中人工智能领域的增速是不容小觑的。 在未来的时代里,也必将是最出彩的。 人工智能领域的融资分布情况 下图是对于人工智能领域的平均投资金额进行的一个统计,单位是以($美元M百万)进行计算的。 我们可以直观的看到机器学习·APP中投资的数量最高,智能机器人其次,最少的是情境感知计算。 很容易理解,因为上面两个领域的人工智能技术都已经开始在市场正式运营并卓有收益了。在成熟的人工智能应用上,很多机器以绝对的优势代替了人类的工作。就在上个月28日CAAI参与录制的CCTV2对话节目《人工智能:机器好过人?》中,智能机器人与人类进行了三大PK,中美九位大咖汇聚,就人工智能在行业内的发展及投资前景进行了精彩论剑,这不就是人工智能的最好体现么。同样对于复杂的情境感知计算来说,想要机器学会人类的情感,小编觉得在现阶段这确实是一个难题。 《对话》 20160228 人工智能:机器好过人 在线观看 http://tv.cntv.cn/video/C10316/32d0d93c25854989abc393b5f7fe51de 创新系数最高的人工智能项目 创新一直是各企业所追求的发展目标,没有创新就等于没有发展。 下图统计了创新系数最高的人工智能项目排名,其中最高的是机器学习应用项目,例如刚刚打败李世石的并被授予韩国名誉九段的AlphaGo就是一个最好的代表。 虽然人工智能刚刚起步,但是它的发展前景是广阔的,国家已经将它列入了国家重点发展项目之中,地方政府也无一例外的都在大力支持此类项目。今年是世界人工智能60周年,CAAI学会在2016年将举办多场和人工智能相关的会议和展览(例如九月份的中国智博会以及智能产业高峰论坛等),相信届时会带给关注CAAI的粉丝们更多惊喜。

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

十八张图带你入门实时监控系统HertzBeat

我们经常讲:研发人员有两只眼睛,一只是监控平台,另一只是日志平台。在对性能和高可用讲究的场景里,监控平台的重要性再怎么强调也不过分。 这篇文章,我们聊聊开源实时监控告警系统 HertzBeat 赫兹跳动。 1 产品特色 HertzBeat 有两个非常鲜明的特色:强大的监控模版和无需 Agent 。 1.1 强大的监控模版 HertzBeat 自身并没有去创造一种采集数据协议让监控对端来适配它,而是充分使用了现有的生态。比如: SNMP 协议采集网络交换机路由器信息 JMX 规范采集 JAVA 应用信息 JDBC 规范采集数据集信息 SSH 直连执行脚本获取回显信息 HTTP 解析 API 接口信息 HertzBeat 使用这些已有的标准协议或规范,将他们抽象规范可配置化,最后使其都可以通过编写YML格式监控模版的形式,来制定模版使用这些协议来采集任何想要的指标数据。 1.2 无需 Agent 笔者曾经接触过多款监控系统,他们有一个非常鲜明的共通点:安装 Agent 。Agent 的安装部署调试,需要花费大量的时间和精力。 HertzBeat 的原理就是使用不同的协议去直连对端系统,采用 PULL 的形式去拉取采集数据,无需用户在对端主机上部署安装 Agent | Exporter 等。 比如 监控 linux 操作系统,HertzBeat 端输入 IP 端口账户密码或密钥即可。 2 Docker 安装 docker 环境仅需一条命令即可开始: 此时,浏览器访问 http://localhost:1157 即可开始,默认账号密码 admin/hertzbeat。 3 监控 Redis 数据库 首先,我们尝试监控 Redis 数据库。进入缓存监控-Redis数据库 ,点击新增Redis数据库按钮 。 点击确定后,会显示监控 Redis 列表: 点击监控详情图标,可以显示 Redis 监控信息: 4 监控 SpringBoot 服务 1 配置 Actuator Spring Boot Actuator 是 Spring Boot 框架中的一个模块,它提供了一组用于监控和管理 Spring Boot 应用程序的功能。Actuator 模块为开发人员和运维团队提供了一些有用的端点(endpoints),可以通过 HTTP 或 JMX 进行访问,以获取应用程序的运行时信息、性能指标和健康状况等。 首先,我们在 SpringBoot 项目中添加 actuator 依赖。 应用配置如下: 访问 http://localhost:8080/actuator,查看暴露出来的端点: 2 应用程序监控 进入应用程序监控-SpringBoot2.0 ,点击新增SpringBoot2.0监控按钮 。 点击确定后,会显示监控 SpringBoot2.0 列表: 点击监控详情图标,可以显示 SpringBoot2.0 监控信息: 5 报警配置 报警是监控系统中至关重要的功能,它为运维团队提供了实时的、即时的反馈,使其能够迅速响应和解决潜在的问题。 本节,我们展示如何发送邮件报警。 1、系统配置邮件服务器 2、定义通知媒介 通知媒介可以理解:谁接收告警信息,HertzBeat 定义了多种通知方式,比如邮件、钉钉、企业微信等。 3、定义通知策略 通知策略可以配置接收对象、通知模板、通知时间等。 4、模拟系统关闭 我们关闭掉 SpringBoot 服务后,监控中心会显示告警信息: 同时,笔者查看接收邮件里是否存在邮件。 笔者果然收到了系统不可用的邮件,邮件内容包括:监控目标、监控名、告警级别,触发时间等。 经过三天的探索,笔者感觉 HertzBeat 的界面清新,使用非常丝滑,开箱即用,推荐大家一试。 同时,监控系统的核心在于架构设计、数据流转、时序数据库等知识点,假如您希望了解这些知识点,请帮忙点赞、在看、转发一下。 你的支持会激励我输出更高质量的文章,非常感谢!

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

30 分钟手把手带你入门数据脱敏

Bytebase 的动态数据脱敏 (Dynamic Data Masking) 可根据上下文即时屏蔽查询结果中的敏感数据。它可以帮助企业保护敏感数据,防止其暴露给未经授权的用户。 本教程将在 30 分钟内手把手教会你如何在 Bytebase 中设置和尝试数据脱敏。 在开始教程之前请确保已安装 Docker。 准备工作 确保 Docker 正在运行,并使用以下命令启动 Bytebase Docker 容器: docker run --init \ --name bytebase \ --restart always \ --publish 5678:8080 \ --health-cmd "curl --fail http://localhost:5678/healthz || exit 1" \ --health-interval 5m \ --health-timeout 60s \ --volume ~/.bytebase/data:/var/opt/bytebase \ bytebase/bytebase:2.9.1 \ --data /var/opt/bytebase \ --port 8080 Bytebase 已在 Docker 中成功运行,你可以通过 localhost:5678 访问。注册一个管理员账户,它将自动被授予工作区所有者角色。 登录 Bytebase ,单击左下方的开始免费试用,然后升级到企业计划。 单击实例,然后单击分配许可证。选择两个实例,然后单击确认,否则数据脱敏将无法在实例上激活。 未脱敏 登录 Bytebase,点击 SQL 编辑器,你将被重定向到 SQL 编辑器页面。选择 (Prod) employee > public > employee,然后运行 SELECT * FROM employee;,你会看到如下结果。针对 (Test) employee 运行相同的查询,结果相同。 全局脱敏规则 你可能想批量应用脱敏设置,例如,你想脱敏 Employee 数据库中所有表的所有出生日期列。可以使用全局脱敏规则来实现这一目的。 单击右上角的设置图标。单击安全和策略 > 数据脱敏。单击全局脱敏规则,然后添加规则。 将规则命名为应脱敏出生日期,并选择列名,==。在输入框中填写出生日期,然后单击确认。 返回 SQL 编辑器页面,选择 (Prod) employee > public > employee,再次运行 SELECT * FROM employee;。你会看到出生日期被脱敏了。选择 (Test) employee,结果是一样的。 列脱敏规则 如果要脱敏特定表中的特定列,可以使用列脱敏规则。 单击数据库并选择 Prod 上的 employee,然后选择 salary 表。 单击 amount 所在行上的编辑✏️图标,然后单击全脱敏。 返回 SQL 编辑器页面,选择 (Prod) employee > public > salary,再次运行 SELECT * FROM salary;。你会发现 amount 被脱敏了。选择 (Test) employee,则没有。 向用户授予解除脱敏的访问权限 如果要向特定用户展示脱敏数据,该怎么办? 你可以授予解除脱敏的访问权限。 单击右上角的设置图标,然后单击成员。添加一个 DBA 用户,然后单击 + 添加。单击活动成员部分中该用户的链接,单击编辑设置密码,单击保存。 单击顶部的数据库并选择 Prod 上的 employee,然后选择 salary 表。 以 DBA 用户身份登录,进入 SQL 编辑器,选择 (Prod) Employee > public > salary,再次运行 SELECT * FROM salary;。你会发现 amount 没有被脱敏。 成功! 🎉 现在,你已经学会使用两种方法在 Bytebase 中脱敏数据:使用全局脱敏规则批量应用脱敏设置,以及使用列脱敏规则脱敏特定表中的特定列。还可以向特定用户授予解除数据脱敏访问权限。 目前 Bytebase 支持以下数据库的脱敏功能🦾 如果你对我们的脱敏实现细节感兴趣,可以康康 goInception 的数据脱敏真的能保护敏感数据吗? 💡 你可以访问官网,免费注册云账号,立即体验 Bytebase。

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

openGauss资源池化开发者入门指南

内容简介 openGauss资源池化是openGauss推出的一种新型的集群架构,通过DMS和DSS组件,实现集群中多个节点的底层存储数据共享和节点间的内存实时共享,达到节省底层存储资源以及集群内部支持一写多读且可以实时一致性读的目的。本文主要介绍开发者如何搭建一个可以用于自己学习或者开发的资源池化环境。 预备知识 开发者最好具备以下基础: Linux的基础命令,比如dd命令,iscis等。 对磁阵有一定的了解。 对传统的openGauss编译方式十分熟悉。 注意事项 资源池化部署图参考图1: 图1: openGauss资源池化部署图 在社区上正式发布的企业版安装包中, 如果需要搭建资源池化架构, 在硬件上需要准备磁阵, 服务器和光交换机,且需要部署CM和OM组件。 本文主要介绍可用于开发者进行开发的编译环境搭建方式, 不需要磁阵、CM和OM组件, 仅需要一台普通的物理机就可以搭建出资源池化的环境。 需要注意的是, 因为没有使用到真正的CM, 这种方式搭建的环境不能用于调试主备倒换或failover场景, 只能用于验证集群正常运行时的场景。 环境预备 一台单独的物理机,且至少存在一个剩余空间大于200GB的磁盘分区。 已经自行使用编译方式编译出了openGauss带资源池化代码的debug版本的安装包, 可以通过确认生成的bin目录下是否有dssserver, dsscmd, lib目录下是否有libdms.so, libdssapi.so , libdssaio.so, 来判断,同时要保证编译openGauss时使用的是测试版本的DSS组件和DMS组件,详细参考下面的步骤。 独立编译安装指南 注意: 以下部署操作请勿用于生产环境 说明: openGauss必须用Debug模式编译,不能使用Release模式,DMS和DSS组件需要使用测试版本。 手动编译安装的方式中,没有包含CM和OM组件,而正式的使用环境中DSS组件和DMS组件对CM有依赖,所以在编译openGauss之前需要先用测试的模式分别编译DSS和DMS组件,参考下面的编译方式说明。 1. 编译测试版本的DSS组件 a.下载最新版本CBB代码,编译安装替换三方库中的CBB。 b.下载最新版本的DSS代码,并根据src/gausskernel/ddes/ddes_commit_id内的版本号,回退DSS至指定版本。 c.编译安装替换三方库中的DSS组件,命令如下(DSS_CODE_PATH表示解压后的DSS源码目录,ThirdParty_Binarylibs_Path表示解压后的三方库目录): #-3rd后面跟三方库对应的绝对路径 cd [DSS_CODE_PATH]/build/linux/opengauss sh build.sh -3rd [ThirdParty_Binarylibs_Path] -t cmake -m DebugDsstest 2. 编译测试版本的DMS组件 a.下载最新版本CBB代码,编译安装替换三方库中的CBB。 b.下载最新版本的DMS代码,并根据src/gausskernel/ddes/ddes_commit_id内的版本号,回退DMS至指定版本。 c.编译安装替换三方库中的DMS组件,命令如下(DMS_CODE_PATH表示解压后的DMS源码目录,ThirdParty_Binarylibs_Path表示解压后的三方库目录): cd [DMS_CODE_PATH]/build/linux/opengauss sh build.sh -3rd [ThirdParty_Binarylibs_Path] -t cmake -m Release cd [DMS_CODE_PATH] mkdir -p tmp export BUILD_MODE=Debug cmake . -DCMAKE_BUILD_TYPE=Debug -D DMS_TEST=ON -DOPENGAUSS=yes -B ./tmp cd tmp/ make -sj 注意: 当编译完DSS、DMS、CBB之后,会自动更新到三方库,不需要手动拷贝,接下来只需按标准步骤编译数据库即可。 3. 配置环境变量 下面是以2个节点为例进行说明,参考示例, 其中DSS_HOME是dn实例1的dssserver运行时需要的目录, 需要手动新建。将下面的内容写入到/home/test/envfile中作为环境变量导入。 export GAUSSHOME=/home/test/openGauss-server/dest/export LD_LIBRARY_PATH=$GAUSSHOME/lib:$LD_LIBRARY_PATHexport PATH=$GAUSSHOME/bin:$PATHexport DSS_HOME=/home/test/dss/dss0/dssdba 4. 新建dsssever的目录 cd /home/testmkdir -p dss/dss0/dssdba/cfgmkdir -p dss/dss0/dssdba/logmkdir -p dss/dss1/dssdba/cfgmkdir -p dss/dss1/dssdba/logmkdir -p dss/dev 5. 用dd命令新建一个模拟的块设备文件 下面的命令是建2T的命令,请根据自己需要的大小调整bs和count的值,执行时间依赖于磁盘的性能。 dd if=/dev/zero of=/home/test/dss/dev/dss-dba bs=2M count=1024000 >/dev/null 2>&1 6. 创建2个dn节点需要的dss实例0和dss实例1的配置文件 创建dss实例0的配置文件: vim /home/test/dss/dss0/dssdba/cfg/dss_inst.ini 文件中的内容如下: INST_ID=0_LOG_LEVEL=255DSS_NODES_LIST=0:127.0.0.1:17102,1:127.0.0.1:18102DISK_LOCK_FILE_PATH=/home/test/dss/dss0LSNR_PATH=/home/test/dss/dss0_LOG_MAX_FILE_SIZE=20M_LOG_BACKUP_FILE_COUNT=128 创建dss实例0的卷配置文件: vim /home/test/dss/dss0/dssdba/cfg/dss_vg_conf.ini 文件中的内容如下, 里面就是卷名加dd模拟出来的设备名字: data:/home/test/dss/dev/dss-dba 创建dss实例1的配置文件: vim /home/test/dss/dss1/dssdba/cfg/dss_inst.ini 文件中的内容如下, 注意DISK_LOCK_FILE_PATH配置的与1一致: INST_ID=1_LOG_LEVEL=255DSS_NODES_LIST=0:127.0.0.1:17102,1:127.0.0.1:18102DISK_LOCK_FILE_PATH=/home/test/dss/dss0LSNR_PATH=/home/test/dss/dss1_LOG_MAX_FILE_SIZE=20M_LOG_BACKUP_FILE_COUNT=128 创建dss实例1的卷配置文件: vim /home/test/dss/dss1/dssdba/cfg/dss_vg_conf.ini 文件中的内容如下, 里面就是卷名加dd模拟出来的设备名字: data:/home/test/dss/dev/dss-dba 注意: 一台服务器上建多个dn(数据库)节点, ip是相同的, 服务使用的端口号不同。 7. 创建存放数据库数据的数据卷, 启动dssserver服务 ##这里是第3步中配好的环境变量source /home/test/envfiledsscmd cv -g data -v /home/test/dss/dev/dss-dbadssserver -D /home/test/dss/dss0/dssdba &#上个命令显示DSS SERVER STARTED即为成功dssserver -D /home/test/dss/dss1/dssdba &#上个命令显示DSS SERVER STARTED即为成功#创建完可以通过如下命令确认是否建卷成功dsscmd lsvg -U UDS:/home/test/dss/dss0/.dss_unix_d_socketdsscmd ls -m M -p +data -U UDS:/home/test/dss/dss0/.dss_unix_d_socket 注意: dss不支持启动后修改卷组配置,如涉及修改请重新执行上述步骤。 8. 依次执行每个节点的gs_initdb操作 mkdir -p /home/test/datarm -rf node1 node2gs_intdb -D /home/test/data/node1 --nodename=node1 -U tester -w Pasword --vgname=+data --enable-dss --dms_url="0:127.0.0.1:1613,1:127.0.0.1:1614" -I 0 --socketpath='UDS:/home/test/dss/dss0/.dss_unix_d_socket'echo "ss_enable_ssl = offlisten_addresses = '*'port=12210ss_enable_reform = offss_work_thread_count = 32enable_segment = onss_log_level = 255ss_log_backup_file_count = 100ss_log_max_file_size = 1GB" >> /home/test/data/node1/postgresql.confsed '91 ahost all all 0.0.0.0/0 sha256' -i /home/test/data/node1/pg_hba.confgs_intdb -D /home/test/data/node2 --nodename=node2 -U tester -w Pasword --vgname=+data --enable-dss --dms_url="0:127.0.0.1:1613,1:127.0.0.1:1614" -I 1 --socketpath='UDS:/home/test/dss/dss1/.dss_unix_d_socket'echo "ss_enable_ssl = offlisten_addresses = '*'port=13210ss_enable_reform = offss_work_thread_count = 32enable_segment = onss_log_level = 255ss_log_backup_file_count = 100ss_log_max_file_size = 1GB" >> /home/test/data/node2/postgresql.confsed '91 ahost all all 0.0.0.0/0 sha256' -i /home/test/data/node2/pg_hba.conf 9. 创建模拟CM功能的文件,并将其加入到第3步创建的环境变量中 echo "REFORMER_ID = 0" > /home/test/cm_config.ini echo "BITMAP_ONLINE = 3" >> /home/test/cm_config.ini echo "export CM_CONFIG_PATH=/home/test/cm_config.ini" >> /home/test/envfile 10. 依次启动节点1和节点2 source /home/test/envfile gs_ctrl start -D /home/test/data/node1 gs_ctrl start -D /home/test/data/node2 部分补充说明 ss_log_level参数用于控制日志中打印DMS和DSS相关的日志, 日志目录在pg_log/DMS里面。 17102和18102是dssserver要用的端口。 1613和1614是dms通信要用的端口。 12210和13210是openGauss数据库提供服务需要用的端口。 dssserver配置中INST_ID不能有冲突, 比如多个dssserver配置成相同的ID。 该方式搭建出来的环境不支持高可用, 不能测试倒换和failover。 如果启动时报错,提示如“dms library version is not matched”等报错,表示DMS/DSS组件版本号错误,请参考编译步骤重新编译。 非CM环境下,限制了0节点为主节点,因此需要确保initdb阶段0节点创建成功。 如果安装过程出现报错,再次initdb时候可能会提示目录不为空。此时需要清理文件系统及DSS中的残留文件。文件系统可以通过rm命令直接删除node文件夹,DSS中可以对模拟的块设备文件头部写0(DSS将元数据信息记录在头部),清理完成后重新从第7步开始执行,清理命令参考如下: rm -rf /home/test/data/node1 /home/test/data/node2dd if=/dev/zero of=/home/test/dss/dev/dss-dba bs=2M count=10 conv=notrunc >/dev/null 2>&1 本文分享自微信公众号 - openGauss(openGauss)。 如有侵权,请联系 support@oschina.cn 删除。 本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Spring

Spring

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

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

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

用户登录
用户注册