首页 文章 精选 留言 我的

精选列表

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

Alluxio 2.9版本5大更新亮点详解

全球首创的开源数据编排软件开发商Alluxio,近日宣布2.9免费开源社区版和2.9企业版正式对外发布! 本文将为您快速盘点2.9的那些更新亮点: 2.9正式版本(GA)具备较强的稳定性、良好的支持性以及企业级特性。本文将介绍Alluxio的新架构以及该架构如何赋能世界头部企业在跨区域、跨计算引擎与存储系统的大数据分析和AI 应用场景下实现增长、增强敏捷性。 Alluxio 2.9 版本增加了跨环境集群同步功能,支持横向扩展的多租户架构;显著改进在Kubernetes上部署的工具集和指南,增强了Alluxio的可管理性;此外,新版本还通过优化S3 API 实现安全性和性能上的提升。 企业可以通过Alluxio打造跨计算和跨存储的多云数据平台。Alluxio可以与Spark、Presto、Trino、PyTorch 和 Tensorflow 等一起部署于任何云平台,如 AWS、GCP 和 Azure。同时,Alluxio还可以部署在私有云数据中心或公有云在 Kubernetes 上使用。 Alluxio社区版功能亮点 以下功能Alluxio 2.9社区版和企业版均支持 Master节点健康状态监测 Alluxio master 现在定期检查各类资源的综合使用情况,包括 CPU 和内存使用情况,以及通过几个影响性能的内部关键数据架构推断系统的整体状态。可以通过查看 master.system.status 指标获取Master节点健康状态: 闲置 正常运行 繁忙 过载 关于如何使用此功能,可点击“详细信息”查看文档,了解有关监测功能的更多内容。 Worker 节点上的分页式存储(试验功能) 新版本支持更细粒度的存储。以往Alluxio只支持64MB块存储,新版本支持1MB的分页级存储,数据能以更细的颗粒度缓存在Alluxio worker 节点上。 此功能是为了通过提高缓存的效率而增强性能,当应用首次访问底层存储时,可以减少读放大。 可查看文档,了解如何使用: Alluxio企业版功能亮点 下列功能仅限于Alluxio企业版 新增跨环境集群同步功能 租户隔离可有效防止不同团队在访问共享数据湖存储时产生竞争。Alluxio通过新增的跨集群同步功能,提高了在Kubernetes上跨租户或跨环境部署多个Alluxio集群时的可扩展性。 多Alluxio集群的联合(federation)是通过元数据同步实现的。不同的Alluxio实例之间知道各自对于元数据的修改情况,实现元数据的互通,从而自动保持元数据同步。当部署卫星集群架构时,此功能尤其有用,数据生产者在更新数据湖时可与数据消费者实现隔离。 开始部署前,可通过点击查看文档 新增Kubernetes Operator,提升Alluxio的可管理性 在Kubernetes上运行Alluxio有助于将部署策略标准化,使得数据技术栈可移植到任何环境。新版本增加了Alluxio Operator,可简化多个Alluxio集群的部署和管理。 管理员如今可以通过CRD(自定义资源)轻松部署和管理Alluxio。使用Alluxio Operator可降低管理多个Alluxio实例的负担。 开始部署前,可点击查看文档,了解详情。 强化S3 API安全性 新版本进一步强化了S3 API功能,管理员可通过统一命名空间来集中管理身份验证和访问控制策略,实现无论是在本地还是跨云异构存储均能达到统一的安全保护。 新版本增加了对S3 API开放式身份验证协议的支持,确保在处理Alluxio的用户请求之前对其进行验证。这项新功能允许数据平台团队连接到身份管理系统(例如 PingFederate),并使用单点登录 (SSO)。 开始部署前,可点击查看文档,了解详情。 想要了解更多关于Alluxio的干货文章、热门活动、专家分享,可点击进入【Alluxio智库】:

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

版本升级 | OpenSCA v1.0.6版本正式发布

2022年5月30日,OpenSCA新版本v1.0.6正式发布,持续增加新功能,满足用户更多需求。本次发布版本的重点更新内容是: 支持HTML格式报告导出 支持Gradle包管理工具的检测 准备工作: 访问以下任意一个OpenSCA的开源项目地址,下载最新版本的OpenSCA-cli检测工具: Gitee:https://gitee.com/XmirrorSecurity/OpenSCA-cli/releases GitHub:https://github.com/XmirrorSecurity/OpenSCA-cli/releases 具体使用流程,请参考【OpenSCA使用攻略⬅点击蓝字了解详情】。 支持HTML格式报告导出 本次新增的HTML格式报告导出功能,将检测结果以可视化形式统计、展示,提升了检测报告的可读性,便于组件依赖清单及漏洞信息的管理维护。 HTML格式报告导出流程: 1. 将导出报告的文件格式后缀改为“.html”。以Windows环境下的检测为例: opensca-cli.exe -url https://opensca.xmirror.cn -token ${token} -path ${project_path} -out output.html 2. 生成的检测报告为html格式的文件,双击文件在浏览器中查看检测结果。 报告结果概览: 1. 统计检出的组件、漏洞数量及占比情况。 2. 在检出的组件依赖列表,会明确展示组件的风险等级、检出的漏洞数、依赖方式等信息。 3. 点击<依赖列表>内的组件,可查看组件的详细信息,包括检出路径、组件漏洞信息等。 支持Gradle包管理工具的检测 新版本实现了对Gradle包管理工具的检测。目前OpenSCA已支持以下编程语言对应的包管理器及相关配置文件的解析: 参与和贡献,共建开源项目 感谢每一位开源社区成员对OpenSCA的支持和贡献。我们鼓励更多伙伴参与到OpenSCA开源项目的建设中来,成为开源贡献者,有任何建议都可以发在评论区或者Gitee、GitHub上OpenSCA项目的Issues中。让我们一起拥抱开源,共筑开源安全生态,促进开源产业健康发展。 欢迎大家扫码联系小镜 加入 OpenSCA 社区技术交流群 OpenSCA是悬镜安全旗下源鉴OSS开源威胁管控产品的开源版本,继承了源鉴OSS的多源SCA开源应用安全缺陷检测等核心能力。 OpenSCA用开源的方式做开源风险治理,致力于做软件供应链安全的护航者,守护中国软件供应链安全。 OpenSCA的代码会在GitHub和Gitee持续迭代,欢迎Star和PR,成为我们的开源贡献者,也可提交问题或建议至Issues。我们会参考大家的建议不断完善OpenSCA开源项目,敬请期待更多功能的支持。 GitHub: https://github.com/XmirrorSecurity/OpenSCA-cli/ Gitee: https://gitee.com/XmirrorSecurity/OpenSCA-cli/ OpenSCA 官网: https://opensca.xmirror.cn/

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

1.20版本k8s简单部署教程

准备两台机器 主机名 IP 角色 test160 192.168.100.122 master test161 192.168.100.125 node 一、准备工作 1、两台机器关闭selinux,防火墙,交换分区 2、添加hosts [root@test160~]#vim/etc/hosts 127.0.0.1localhostlocalhost.localdomainlocalhost4localhost4.localdomain4 ::1localhostlocalhost.localdomainlocalhost6localhost6.localdomain6 192.168.100.125test161 [root@test161~]#vim/etc/hosts 127.0.0.1localhostlocalhost.localdomainlocalhost4localhost4.localdomain4 ::1localhostlocalhost.localdomainlocalhost6localhost6.localdomain6 185.199.110.153kubernetes.github.io 192.168.100.122test160 3、两台机添加kubelet 、docker yum源 [root@test160~]#cat/etc/yum.repos.d/kubernetes.repo [kubernetes] name=Kubernetes baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64 enabled=1 gpgcheck=0 repo_gpgcheck=0 gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg [root@test160~]#yumlist|grepkube cockpit-kubernetes.x86_64195.12-1.el7.centosextras cri-tools.x86_641.13.0-0kubernetes kubeadm.x86_641.20.5-0kubernetes kubectl.x86_641.20.5-0kubernetes kubelet.x86_641.20.5-0kubernetes kubernetes.x86_641.5.2-0.7.git269f928.el7extras kubernetes-client.x86_641.5.2-0.7.git269f928.el7extras kubernetes-cni.x86_640.8.7-0kubernetes kubernetes-master.x86_641.5.2-0.7.git269f928.el7extras kubernetes-node.x86_641.5.2-0.7.git269f928.el7extras rkt.x86_641.27.0-1kubernetes rsyslog-mmkubernetes.x86_648.24.0-57.el7_9updates [root@test160k8s]#cat/etc/yum.repos.d/docker-ce.repo [docker-ce-stable] name=DockerCEStable-$basearch baseurl=https://download.docker.com/linux/centos/$releasever/$basearch/stable enabled=1 gpgcheck=1 gpgkey=https://download.docker.com/linux/centos/gpg 4、安装,各节点 yuminstall-ycri-toolskubeadmkubectlkubeletkubernetes-cnirkt.x86_64docker-ce cat>/etc/sysconfig/kubelet<<EOF KUBELET_EXTRA_ARGS="--pod-infra-container-image=registry.cn-hangzhou.aliyuncs.com/google_containers/pause-amd64:3.2" EOF systemctldaemon-reload 5、启动 [root@test160~]#systemctlenabledocker Createdsymlinkfrom/etc/systemd/system/multi-user.target.wants/docker.serviceto/usr/lib/systemd/system/docker.service. [root@test160~]#systemctlstartdocker [root@test160~]#systemctlstartkubelet.service [root@test160~]#systemctlenablekubelet.service Createdsymlinkfrom/etc/systemd/system/multi-user.target.wants/kubelet.serviceto/usr/lib/systemd/system/kubelet.service. 6、所有节点配置k8s内核参数 cat<<EOF>/etc/sysctl.d/k8s.conf net.ipv4.ip_forward=1 net.bridge.bridge-nf-call-iptables=1 net.bridge.bridge-nf-call-ip6tables=1 fs.may_detach_mounts=1 vm.overcommit_memory=1 vm.panic_on_oom=0 fs.inotify.max_user_watches=89100 fs.file-max=52706963 fs.nr_open=52706963 net.netfilter.nf_conntrack_max=2310720 net.ipv4.tcp_keepalive_time=600 net.ipv4.tcp_keepalive_probes=3 net.ipv4.tcp_keepalive_intvl=15 net.ipv4.tcp_max_tw_buckets=36000 net.ipv4.tcp_tw_reuse=1 net.ipv4.tcp_max_orphans=327680 net.ipv4.tcp_orphan_retries=3 net.ipv4.tcp_syncookies=1 net.ipv4.tcp_max_syn_backlog=16384 net.ipv4.ip_conntrack_max=65536 net.ipv4.tcp_max_syn_backlog=16384 net.ipv4.tcp_timestamps=0 net.core.somaxconn=16384 EOF sysctl--system 7、在master初始化集群 [root@test160~]#catnew.yaml apiVersion:kubeadm.k8s.io/v1beta2 bootstrapTokens: -groups: -system:bootstrappers:kubeadm:default-node-token token:7t2weq.bjbawausm0jaxury ttl:24h0m0s usages: -signing -authentication kind:InitConfiguration localAPIEndpoint: advertiseAddress:192.168.100.122 bindPort:6443 nodeRegistration: criSocket:/var/run/dockershim.sock name:test160 taints: -effect:NoSchedule key:node-role.kubernetes.io/master --- apiServer: certSANs: -192.168.100.122 timeoutForControlPlane:4m0s apiVersion:kubeadm.k8s.io/v1beta2 certificatesDir:/etc/kubernetes/pki clusterName:kubernetes controlPlaneEndpoint:192.168.100.122:6443 controllerManager:{} dns: type:CoreDNS etcd: local: dataDir:/var/lib/etcd imageRepository:registry.cn-hangzhou.aliyuncs.com/google_containers kind:ClusterConfiguration kubernetesVersion:v1.20.4 networking: dnsDomain:cluster.local podSubnet:172.168.0.0/16 serviceSubnet:10.96.0.0/12 scheduler:{} [root@test160~]#kubeadminit--confignew.yaml--upload-certs [init]UsingKubernetesversion:v1.20.4 [preflight]Runningpre-flightchecks [WARNINGIsDockerSystemdCheck]:detected"cgroupfs"astheDockercgroupdriver.Therecommendeddriveris"systemd".Pleasefollowtheguideathttps://kubernetes.io/docs/setup/cri/ [WARNINGSystemVerification]:thisDockerversionisnotonthelistofvalidatedversions:20.10.5.Latestvalidatedversion:19.03 [WARNINGHostname]:hostname"test160"couldnotbereached [WARNINGHostname]:hostname"test160":lookuptest160on202.96.128.86:53:nosuchhost [preflight]PullingimagesrequiredforsettingupaKubernetescluster [preflight]Thismighttakeaminuteortwo,dependingonthespeedofyourinternetconnection [preflight]Youcanalsoperformthisactioninbeforehandusing'kubeadmconfigimagespull' [certs]UsingcertificateDirfolder"/etc/kubernetes/pki" [certs]Generating"ca"certificateandkey [certs]Generating"apiserver"certificateandkey [certs]apiserverservingcertissignedforDNSnames[kuberneteskubernetes.defaultkubernetes.default.svckubernetes.default.svc.cluster.localtest160]andIPs[10.96.0.1192.168.100.122] [certs]Generating"apiserver-kubelet-client"certificateandkey [certs]Generating"front-proxy-ca"certificateandkey [certs]Generating"front-proxy-client"certificateandkey [certs]Generating"etcd/ca"certificateandkey [certs]Generating"etcd/server"certificateandkey [certs]etcd/serverservingcertissignedforDNSnames[localhosttest160]andIPs[192.168.100.122127.0.0.1::1] [certs]Generating"etcd/peer"certificateandkey [certs]etcd/peerservingcertissignedforDNSnames[localhosttest160]andIPs[192.168.100.122127.0.0.1::1] [certs]Generating"etcd/healthcheck-client"certificateandkey [certs]Generating"apiserver-etcd-client"certificateandkey [certs]Generating"sa"keyandpublickey [kubeconfig]Usingkubeconfigfolder"/etc/kubernetes" [kubeconfig]Writing"admin.conf"kubeconfigfile [kubeconfig]Writing"kubelet.conf"kubeconfigfile [kubeconfig]Writing"controller-manager.conf"kubeconfigfile [kubeconfig]Writing"scheduler.conf"kubeconfigfile [kubelet-start]Writingkubeletenvironmentfilewithflagstofile"/var/lib/kubelet/kubeadm-flags.env" [kubelet-start]Writingkubeletconfigurationtofile"/var/lib/kubelet/config.yaml" [kubelet-start]Startingthekubelet [control-plane]Usingmanifestfolder"/etc/kubernetes/manifests" [control-plane]CreatingstaticPodmanifestfor"kube-apiserver" [control-plane]CreatingstaticPodmanifestfor"kube-controller-manager" [control-plane]CreatingstaticPodmanifestfor"kube-scheduler" [etcd]CreatingstaticPodmanifestforlocaletcdin"/etc/kubernetes/manifests" [wait-control-plane]WaitingforthekubelettobootupthecontrolplaneasstaticPodsfromdirectory"/etc/kubernetes/manifests".Thiscantakeupto4m0s [kubelet-check]Initialtimeoutof40spassed. [apiclient]Allcontrolplanecomponentsarehealthyafter67.501960seconds [upload-config]StoringtheconfigurationusedinConfigMap"kubeadm-config"inthe"kube-system"Namespace [kubelet]CreatingaConfigMap"kubelet-config-1.20"innamespacekube-systemwiththeconfigurationforthekubeletsinthecluster [upload-certs]StoringthecertificatesinSecret"kubeadm-certs"inthe"kube-system"Namespace [upload-certs]Usingcertificatekey: 9f2632e16029303fffc5f56e53c29b1d0dd55a444b12e2f49e93bd6f6e7361b4 [mark-control-plane]Markingthenodetest160ascontrol-planebyaddingthelabels"node-role.kubernetes.io/master=''"and"node-role.kubernetes.io/control-plane=''(deprecated)" [mark-control-plane]Markingthenodetest160ascontrol-planebyaddingthetaints[node-role.kubernetes.io/master:NoSchedule] [bootstrap-token]Usingtoken:7t2weq.bjbawausm0jaxury [bootstrap-token]Configuringbootstraptokens,cluster-infoConfigMap,RBACRoles [bootstrap-token]configuredRBACrulestoallowNodeBootstraptokenstogetnodes [bootstrap-token]configuredRBACrulestoallowNodeBootstraptokenstopostCSRsinorderfornodestogetlongtermcertificatecredentials [bootstrap-token]configuredRBACrulestoallowthecsrapprovercontrollerautomaticallyapproveCSRsfromaNodeBootstrapToken [bootstrap-token]configuredRBACrulestoallowcertificaterotationforallnodeclientcertificatesinthecluster [bootstrap-token]Creatingthe"cluster-info"ConfigMapinthe"kube-public"namespace [kubelet-finalize]Updating"/etc/kubernetes/kubelet.conf"topointtoarotatablekubeletclientcertificateandkey [addons]Appliedessentialaddon:CoreDNS [addons]Appliedessentialaddon:kube-proxy YourKubernetescontrol-planehasinitializedsuccessfully! Tostartusingyourcluster,youneedtorunthefollowingasaregularuser: mkdir-p$HOME/.kube sudocp-i/etc/kubernetes/admin.conf$HOME/.kube/config sudochown$(id-u):$(id-g)$HOME/.kube/config Alternatively,ifyouaretherootuser,youcanrun: exportKUBECONFIG=/etc/kubernetes/admin.conf Youshouldnowdeployapodnetworktothecluster. Run"kubectlapply-f[podnetwork].yaml"withoneoftheoptionslistedat: https://kubernetes.io/docs/concepts/cluster-administration/addons/ Youcannowjoinanynumberofthecontrol-planenoderunningthefollowingcommandoneachasroot: kubeadmjoin192.168.100.122:6443--token7t2weq.bjbawausm0jaxury\ --discovery-token-ca-cert-hashsha256:4e1bd4a557221e73a0d3b7d168a2e02522475ec9a775602577cf4a1117fcfb9d\ --control-plane--certificate-key9f2632e16029303fffc5f56e53c29b1d0dd55a444b12e2f49e93bd6f6e7361b4 Pleasenotethatthecertificate-keygivesaccesstoclustersensitivedata,keepitsecret! Asasafeguard,uploaded-certswillbedeletedintwohours;Ifnecessary,youcanuse "kubeadminitphaseupload-certs--upload-certs"toreloadcertsafterward. Thenyoucanjoinanynumberofworkernodesbyrunningthefollowingoneachasroot: kubeadmjoin192.168.100.122:6443--token7t2weq.bjbawausm0jaxury\ --discovery-token-ca-cert-hashsha256:4e1bd4a557221e73a0d3b7d168a2e02522475ec9a775602577cf4a1117fcfb9d [root@test160~]#exportKUBECONFIG=/etc/kubernetes/admin.conf 记录下kubeadm join 这段,node加入集群会用到 配置环境变量,加入这段export KUBECONFIG=/etc/kubernetes/admin.conf [root@test160~]#vim/root/.bashrc exportKUBECONFIG=/etc/kubernetes/admin.conf [root@test160~]#source.bashrc [root@test160~]#kubectlgetnodes NAMESTATUSROLESAGEVERSION test160NotReadycontrol-plane,master5m14sv1.20.5 8、节点加入集群 [root@test161~]#kubeadmjoin192.168.100.122:6443--token7t2weq.bjbawausm0jaxury\ >--discovery-token-ca-cert-hashsha256:4e1bd4a557221e73a0d3b7d168a2e02522475ec9a775602577cf4a1117fcfb9d [preflight]Runningpre-flightchecks [WARNINGIsDockerSystemdCheck]:detected"cgroupfs"astheDockercgroupdriver.Therecommendeddriveris"systemd".Pleasefollowtheguideathttps://kubernetes.io/docs/setup/cri/ [WARNINGSystemVerification]:thisDockerversionisnotonthelistofvalidatedversions:20.10.5.Latestvalidatedversion:19.03 [WARNINGHostname]:hostname"test161"couldnotbereached [WARNINGHostname]:hostname"test161":lookuptest161on202.96.128.86:53:nosuchhost [preflight]Readingconfigurationfromthecluster... [preflight]FYI:Youcanlookatthisconfigfilewith'kubectl-nkube-systemgetcmkubeadm-config-oyaml' [kubelet-start]Writingkubeletconfigurationtofile"/var/lib/kubelet/config.yaml" [kubelet-start]Writingkubeletenvironmentfilewithflagstofile"/var/lib/kubelet/kubeadm-flags.env" [kubelet-start]Startingthekubelet [kubelet-start]WaitingforthekubelettoperformtheTLSBootstrap... Thisnodehasjoinedthecluster: *Certificatesigningrequestwassenttoapiserverandaresponsewasreceived. *TheKubeletwasinformedofthenewsecureconnectiondetails. Run'kubectlgetnodes'onthecontrol-planetoseethisnodejointhecluster. 在master查看结果,加入成功了,虽然状态还是NotReady的,是网络还没有 [root@test160~]#kubectlgetnodes NAMESTATUSROLESAGEVERSION test160NotReadycontrol-plane,master84mv1.20.5 test161NotReady<none>42sv1.20.5 9、配置网络 下载脚本,不用改什么,直接安装即可 [root@test160~]#curlhttps://docs.projectcalico.org/manifests/canal.yaml-O %Total%Received%XferdAverageSpeedTimeTimeTimeCurrent DloadUploadTotalSpentLeftSpeed 100184k100184k003360900:00:050:00:05--:--:--51158 [root@test160~]#ll total196 -rw-------.1rootroot1289Mar1000:41anaconda-ks.cfg -rw-r--r--.1rootroot188519Apr215:28canal.yaml -rw-r--r--.1rootroot979Apr213:56new.yaml 安装,现在去看个节点都ready了 [root@test160~]#kubectlapply-fcanal.yaml configmap/canal-configcreated customresourcedefinition.apiextensions.k8s.io/bgpconfigurations.crd.projectcalico.orgcreated customresourcedefinition.apiextensions.k8s.io/bgppeers.crd.projectcalico.orgcreated customresourcedefinition.apiextensions.k8s.io/blockaffinities.crd.projectcalico.orgcreated customresourcedefinition.apiextensions.k8s.io/clusterinformations.crd.projectcalico.orgcreated customresourcedefinition.apiextensions.k8s.io/felixconfigurations.crd.projectcalico.orgcreated customresourcedefinition.apiextensions.k8s.io/globalnetworkpolicies.crd.projectcalico.orgcreated customresourcedefinition.apiextensions.k8s.io/globalnetworksets.crd.projectcalico.orgcreated customresourcedefinition.apiextensions.k8s.io/hostendpoints.crd.projectcalico.orgcreated customresourcedefinition.apiextensions.k8s.io/ipamblocks.crd.projectcalico.orgcreated customresourcedefinition.apiextensions.k8s.io/ipamconfigs.crd.projectcalico.orgcreated customresourcedefinition.apiextensions.k8s.io/ipamhandles.crd.projectcalico.orgcreated customresourcedefinition.apiextensions.k8s.io/ippools.crd.projectcalico.orgcreated customresourcedefinition.apiextensions.k8s.io/kubecontrollersconfigurations.crd.projectcalico.orgcreated customresourcedefinition.apiextensions.k8s.io/networkpolicies.crd.projectcalico.orgcreated customresourcedefinition.apiextensions.k8s.io/networksets.crd.projectcalico.orgcreated clusterrole.rbac.authorization.k8s.io/calico-kube-controllerscreated clusterrolebinding.rbac.authorization.k8s.io/calico-kube-controllerscreated clusterrole.rbac.authorization.k8s.io/calico-nodecreated clusterrole.rbac.authorization.k8s.io/flannelcreated clusterrolebinding.rbac.authorization.k8s.io/canal-flannelcreated clusterrolebinding.rbac.authorization.k8s.io/canal-calicocreated daemonset.apps/canalcreated serviceaccount/canalcreated deployment.apps/calico-kube-controllerscreated serviceaccount/calico-kube-controllerscreated poddisruptionbudget.policy/calico-kube-controllerscreated [root@test160~]#kubectlgetnodes NAMESTATUSROLESAGEVERSION test160Readycontrol-plane,master107mv1.20.5 test161Ready<none>24mv1.20.5

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

悟空 CRM(9.0版本)V9.0_20191221 更新

悟空CRM 20191221升级日志: 注:升级后需执行升级包中的最新升级SQL ———————————————————————————— 【悟空CRM开源版-JAVA版】 新增: 1、 导入优化提示 2、 商机、合同、回款增加导出功能 3、 产品增加删除功能 4、 公海增加删除功能 5、 客户转移时,联系人转移默认勾选 6、 在客户和线索列表增加最新一次跟进记录内容展示 7、 合同、回款、商机、产品金额增加千位符 8、 添加回款时,如果有回款计划,选择回款期数的时候 自动将回款计划当中的,金额,回款方式,客户名自动匹配。 修复: 1、 线索转化为客户后 线索阶段的操作记录丢失 2、 首页 工作台 日程 加载问题, 无法显示更多条数据。 3、 待办事项里面 分页有问题。 只显示 1 页 4、 任务关联客户商机等,跟进记录没有 ———————————————————————————— 【悟空CRM 9.0PHP版】 新增: 1、 客户转移时,联系人转移默认勾选 2、 公海增加删除功能,并且可以在后台设置删除权限 3、 客户省、市、区、详细地址支持导入 4、 在客户和线索列表增加最新一次跟进记录内容展示、 5、 合同、回款、商机、产品金额增加千位符 6、 添加回款时,如果有回款计划,选择回款期数的时候 自动将回款计划当中的,金额,回款方式,客户名自动匹配。 修复: 1、 办公-工作台,日程详情不显示关联业务信息 2、 新建日程,关联合同时,合同列表的合同名称不显示,且关联后,合同编号显示的是undefined

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

悟空 CRM(9.0版本)V9.0_20191202 更新

悟空CRM 20191202升级日志: 注:升级后需执行升级包中的升级SQL ———————————————————————————— 【悟空CRM 9.0JAVA版】 新增: 1.新增审核通过后,合同作废功能,作废后的数据不计入商业智能统计中 2.公海列表页搜索功能加入手机/电话号码搜索功能 优化: 1、线索转化时,增加数据验重 2、系统性能整体优化 修复: 1、客户名称搜索,仅能在首页搜索 2、修复其他已知BUG ——————————————— 【悟空CRM 9.0PHP版】 新增: 1、回款列表增加“合同金额”字段 2、合同列表增加”已回款金额、未回款金额“字段 3、增加产品删除功能 4、增加员工导入 优化: 1、商业智能查询优化 2、客户管理首页仪表盘优化 修复: 1、线索转化为客户后 线索阶段的操作记录中记录丢失 2、合同没有审核通过时,限制在合同详情下不能添加回款 3、“客户跟进次数分析” 进行自定义时间筛选时,表格内有数据,统计图中没有数据 4、修复其他已知bug

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

送你10本机器学习和数据科学必读书

1.Python Data Science Handbook 链接:https://github.com/jakevdp/PythonDataScienceHandbook作者:Jake VanderPlas 这本书介绍了在Python中处理数据所需要的基本而重要的库,包括IPython、NumPy、Pandas、Matplotlib、Scikit-Learn和其他相关的包。该书假定读者对Python语言有一定的了解。如果你需要快速入门Python这门语言,可以查看免费的配套项目: A Whirlwind Tour of Python:https://github.com/jakevdp/WhirlwindTourOfPython 它会帮助研究员和科学家快速入门Python。 2.Neural Networks and Deep Learn

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

旧版spark(1.6版本) 将rdd动态转为dataframe

版权声明:本文由董可伦首发于https://dongkelun.com,非商业转载请注明作者及原创出处。商业转载请联系作者本人。 https://blog.csdn.net/dkl12/article/details/80304950 我的原创地址:https://dongkelun.com/2018/05/11/rdd2df/ 前言 旧版本spark不能直接读取csv转为df,没有spark.read.option(“header”, “true”).csv这么简单的方法直接将第一行作为df的列名,只能现将数据读取为rdd,然后通过map和todf方法转为df,如果csv的列数很多的话用如Array((1,2..))即Arrar(元组)创建的话很麻烦,本文解决如何用旧版spark读取多列txt文件转为df 1、新版 为了直观明白本文的目的,先看一下新版spark如何实现 1.1 数据 data.csv,如图: 1.2 代码 新版代码较简单,直接通过spark.read.option(“header”, “true”).csv(data_path)即可实现! package com.dkl.leanring.spark.sql import org.apache.spark.sql.SparkSession object Txt2Df { def main(args: Array[String]): Unit = { val spark = SparkSession.builder().appName("Txt2Df").master("local").getOrCreate() val data_path = "files/data.csv" val df = spark.read.option("header", "true").csv(data_path) df.show() } } 1.3 结果 +----+----+----+----+----+ |col1|col2|col3|col4|col5| +----+----+----+----+----+ | 11| 12| 13| 14| 15| | 21| 22| 23| 24| 25| | 31| 32| 33| 34| 35| | 41| 42| 43| 44| 45| +----+----+----+----+----+ 2、旧版 2.1 数据 data.txt col1,col2,col3,col4,col5 11,12,13,14,15 21,22,23,24,25 31,32,33,34,35 41,42,43,44,45 其中列数可任意指定 2.2 代码 package com.dkl.leanring.spark.sql import org.apache.spark.SparkConf import org.apache.spark.SparkContext import org.apache.spark.sql.SQLContext import org.apache.spark.sql.types._ import org.apache.spark.sql.Row object Rdd2Df { def main(args: Array[String]): Unit = { val conf = new SparkConf().setAppName("Rdd2Df").setMaster("local") val sc = new SparkContext(conf) val sqlContext = new SQLContext(sc) import sqlContext.implicits._ val data_path = "files/data.txt" val data = sc.textFile(data_path) val arr = data.collect() //arr1为除去第一行即列名的数据 val arr1 = arr.slice(1, arr.length) val rdd = sc.parallelize(arr1) //列名 val schema = StructType(arr(0).split(",").map(fieldName => StructField(fieldName, StringType, true))) val rowRDD = rdd.map(_.split(",")).map(p => Row(p: _*)) sqlContext.createDataFrame(rowRDD, schema).show() } } 2.3 结果 +----+----+----+----+----+ |col1|col2|col3|col4|col5| +----+----+----+----+----+ | 11| 12| 13| 14| 15| | 21| 22| 23| 24| 25| | 31| 32| 33| 34| 35| | 41| 42| 43| 44| 45| +----+----+----+----+----+ 根据结果看,符合逾期的效果!

资源下载

更多资源
腾讯云软件源

腾讯云软件源

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

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

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部分的功能。

用户登录
用户注册