中间件
  • Atlas架构与原理

    一、总体架构 Atlas 是一个可伸缩且功能丰富的数据管理系统,深度集成了 Hadoop 大数据组件。简单理解就是一个 跟 Hadoop 关系紧密的,可以用来做元数据管理的一个系统,整个结构图如下所示: Atlas可以分为以下几层: 1、Core:Atlas 功能核心的组件(提供元数据摄取与导出、类型系统、元数据存储索引查 询等核心功能) 2、Integration:Atlas对外集成的模块(外部组件的元数据通过该模块把元数据交给Atlas来管 理),也就是说管理外部元数据的插件都得跟该模块交互。 3、Metadata source:Atlas支持的元数据数据源,以插件形式提供 4、Applications:Atlas的上层应用,可以用来查询由 Atlas 管理的元数据类型和对象 二、组件说明 1. Core核心层 (1)Type System Atlas 允许用户为他们想要管理的元数据对象定义一个模型。该模型由称为 “types” 的定义组 成。“types” 的 实例被称为 “entities” 表示被管理的实际元数据对象。类型系统是一个组件,允许用户 定义和管理类型(types)和实体(entities)。由 Atlas 管理的所有元数据对象(例如Hive表)都使用 类型进行建模,并表示为实体。 简单理解:元数据在Atlas内部被抽象为:模型=类型–>实体来表示。 (2)Ingest/Export(导入/导出) Ingest 组件允许将元数据添加到 Atlas。类似地,Export 组件将Atlas 检测到的元数据更改公开为事 件,消费者可以使用这些更改事件来实时响应元数据表更。 (3)Graph Engine(图计算引擎) 在内部,Atlas使用图模型来持久化和管理元数据对象。图模型提供了极大的灵活性,并可以有效处理元 数据对象之间的丰富关系。 图引擎组件负责在Atlas类型系统的类型和实体以及基础图持久性模型之间 进行转换。 除了管理图形对象之外,图形引擎还为元数据对象创建适当的索引,以便可以高效地搜索它 们。 Atlas使用JanusGraph存储元数……

    SE_Meng 2024-10-15
    10 0 0
  • DM数据库安装及使用(Linux、docker)

    Linux安装 操作系统 CPU 数据库 CentOS7 x86_64 架构 dm8_20230418_x86_rh6_64 先把压缩包扔过去 新建 dmdba 用户 创建用户所在的组,命令如下: groupadd dinstall 创建用户,命令如下: useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba 修改用户密码,命令如下: passwd dmdba 解压压缩包 unzip dm8_20230418_x86_rh6_64.zip 修改文件打开最大数 使用 vi 编辑器打开 /etc/security/limits.conf 文件,命令如下: vi /root/etc/security/limits.conf 在最后添加四条语句,需添加的语句如下: dmdba hard nofile 65536 dmdba soft nofile 65536 dmdba hard stack 32768 dmdba soft stack 16384 挂载镜像 切换到 root 用户,将 DM 数据库的 iso 安装包保存在任意位置,例如 /opt 目录下,执行如下命令挂载镜像: mount -o loop /root/soft/dm8_20230418_x86_rh6_64.iso /mnt 新建安装目录 在根目录下创建 /dm8 文件夹,用来安装 DM 数据库。命令如下: mkdir /dm8 将新建的安装路径目录权限的用户修改为 dmdba,用户组修改为 dinstall。命令如下: chown dmdba:dinstall -R /dm8/ 切换至 dmdba 用户下,在 /mnt 目录下使用命令行安装数据库程序,依次执行以下命令安装 DM 数据库。 切换至 dmdba 用户 su - dmdba cd /mnt/ ./DMInstall.bin -i 成功之后运行 /dm8/script/root/root_installer.sh 配置环境变量 编辑 .bash_profile,使其最终效果如下图所示: cd /home/dmdba/ vim .bash_profile 切换到 root 用户进入 dmdba 用户的根目录下,配置对应的环境变量。DM_HOME 变量和动态链接库文件的加载路径在程序安装成功后会自动导入。命令如下: export PATH=$PATH:$DM_HOME/bin:$DM_HOME/tool 刷新 环境变量 source .bash_profile 配置实例 cd /dm8/bin ./dminit path=/dm8/data 注册服务 注册服务需使……

    SE_Wang 2024-10-15
    9 0 0
  • 什么是 NAS存储

    上世纪九十年代诞生至今,高可靠、高性能的SAN存储一直是核心数据库应用的首选。2000年左右,互联网的兴起加速千行百业的数字化、智能化进程,非结构化数据飞速增长,有80%新增的数据为非结构化数据。与此同时,非结构化数据正在进入企业生产核心及决策系统。 为实现海量非结构化数据的高可靠保存、高效共享,NAS存储应运而生。NAS是传统网络文件服务器技术的发展延续,是专用的网络文件服务器。具有三个特点:内嵌操作系统,具有丰富的权限管理,专门针对文件系统进行重新设计和优化,以提供高效率的文件服务。它提高了文件系统的处理能力、可靠性、访问连续性和可扩展性。 非结构化海量文件数据暴增 当文件容量变小、文件数量增多,OPS 性能骤降 不同用户对文件处理的需求不同 文件访问网络简单,但对应用环境、权限、安全等管理要求高 业务连续性影响研发生产效率 当文件成为生产资料,数据丢失以及访问中断对业务带来致命影响

    SE_Gai 2024-10-15
    17 0 0
  • Atlas安装及使用

    一、Atlas简介 Atlas是一个开源的自动图形布局工具,可以用于生成各种类型的图形布局,如力导向布局、层次布局、环形布局等。它提供了一个简单的API,可以通过代码生成图形布局,并支持自定义参数来控制布局的样式和行为。 二、Atlas安装 1.下载安装Atlas可以通过以下命令下载并安装Atlas pip install pygraphviz pip install networkx pip install matplotlib pip install atlas-layout 2.安装依赖 Atlas依赖于pygraphviz、networkx、matplotlib等库,所以在安装Atlas之前需要先安装这些库。 3.安装Graphviz Atlas使用Graphviz库来实现图形布局,所以在安装Atlas之前需要先安装Graphviz。可以从Graphviz官网(Graphviz)下载并安装Graphviz。 三、Atlas使用 1.引入必要的库和模块 import networkx as nx import matplotlib.pyplot as plt import atlaslayout as atlas 2.创建图形对象 G = nx.Graph() 3.添加节点 G.add_node("A") G.add_node("B") G.add_node("C") 4.添加边 G.add_edge("A", "B") G.add_edge("B", "C") G.add_edge("C", "A") 5.设置布局参数 layout_options = {  "layout": "spring", # 使用力导向布局  "iterations": 1000, # 迭代次数  "scale": 2, # 缩放比例  "random_seed": 0 # 随机种子 } 6.生成布局 pos = atlas.layout(G, **layout_options) 7.绘制图形 plt.figure(figsize=(6, 6)) nx.draw_networkx(G, pos, with_labels=True, node_size=1000, node_color="lightblue", font_size=16) plt.axis("off") plt.show() 四、Atlas参数介绍 layout:布局算法的类型,可选值包括"spring"、"circular"、"spectral"等,默认为"spring"。 iterations:迭代次数,用于控制布局的精度,默认为1000。 scale:布局的缩放比例,用于控制节点的大小,默认为1。 random_seed:随机种子,用于控制布局……

    SE_Meng 2024-10-14
    50 0 0
  • 达梦数据库

    国产达梦数据库在初始化数据库实例时会涉及到数据库标识如端口号的配置,也有页大小、字符集等参数的初始化配置,其中一些参数是作用在数据库实例的整个生命周期内的,一旦初始化不能修改。在实际使用过程中这些参数的不同,可能会对数据存储、查询、分组等存在不同的影响。 兼容模式设置 COMPATIBLE_MODE 参数用于控制 DM 在部分功能处理时与其他数据库管理系统的兼容模式。兼容模式参数值说明: 0:不兼容。默认为 0,用户可在 DM.INI 文件中对该参数进行配置。 1:兼容 SQL92 标准 2:兼容 ORACLE 3:兼容 MS SQL SERVER 4:兼容 MYSQL 5:兼容 DM6 6:兼容 TERADATA 7:兼容 PG 1. 查询兼容模式 在达梦数据库中,可以通过以下 SQL 查询当前兼容模式: SELECT para_name, para_value FROM v$dm_ini WHERE para_name = 'COMPATIBLE_MODE'; 2. 设置兼容模式 使用 sp_set_para_value 函数设置 sp_set_para_value(0, 'COMPATIBLE_MODE', 4); 使用 ALTER SYSTEM 命令设置 --和上面sp_set_para_value(0, 'COMPATIBLE_MODE', 4);效果一样 ALTER SYSTEM SET 'COMPATIBLE_MODE' = 4 BOTH; --修改静态文件,这个修改完需要重启才能生效 ALTER SYSTEM SET 'COMPATIBLE_MODE' = 4 SPFILE; 服务管理 1、启动服务 ① 切换到 dmdba 用户 su - dmdba ② 进入达梦数据库二进制文件目录 cd /home/dmdba/dmdbms/bin ③ 启动服务 ./DmServiceDMSERVER start 2、关闭服务 ① 切换到 dmdba 用户 su - dmdba ② 进入达梦数据库二进制文件目录 cd /home/dmdba/dmdbms/bin 3、停止服务 ./DmServiceDMSERVER stop 数据库与实例 当同时出现 DM 数据库和实例时,DM 数据库指的是磁盘上存放在 DM 数据库中的数据的集合,一般包括:数据文件、日志文件、控制文件以及临时数据文件等。 实例一般是由一组正在运行的 DM 后台进程/线程以及一个大型的……

    SE_Wang 2024-10-14
    18 0 0
  • Linux NFS的整体架构与核心代码解析

    NFS文件系统的架构分析 NFS分布式文件系统是一个客户端-服务端架构(CS架构)。其客户端是Linux内核中的一个文件系统,跟Ext4和XFS类似,它是虚拟文件系统下的一个具体实现。与其它本地文件系统(例如Ext4,XFS或者Btrfs等)的差异在于其数据请求不存储在本地磁盘,而是通过网络发送到服务端进行处理。 如图1是是NFS的整体软件架构,其中左侧是客户端,右侧是服务端。客户端我们称为NFS文件系统,其位于VFS之下,再之下是RPC模块,两者都位于Linux内核之中。 在服务端的NFS主要是指NFSD,它是一个NFS服务。该服务用于接收服务端的请求,处理后通过RPC将处理结果反馈给客户端。而服务端最终还是要将数据存储起来的,在Linux中的NFS服务还是借助的本地文件系统来存储的。因此,在NFS服务端,其数据相关的业务逻辑也会调用到VFS的接口,然后是经过本地文件系统存储在持久化存储上(如磁盘)。 NFS的通信使用的是RPC协议,该协议也是Sun发明的一种网络通信协议。RPC协议位于TCP/IP协议之上,是一个应用层的协议,可以类比http协议。 RPC协议称为远程过程调用,类似本地函数调用。因此,RPC首先是在客户端和服务端都要注册处理函数,这些被注册的函数称为存根。这样,当客户端调用某个函数时,比如写数据,RPC服务就会将该请求通过网络传到服务端,然后调用服务端注册的写数据的接口。也就是客户端与服务端是一一对应的。这样在客户端来说,其函数的调用与本地函数调用并没有太大的差异。 Linux NFS代码解析 为了更加清晰的理解NFS的架构,我们以写数据为例来介绍一下NFS文件系统与服务端通信的过程。由于NFS有很多版本,且Linux内核中对所有版本都有实现。为了便于介绍和学习,我们以NFS v3为例进行介绍。 由于NFS基于VFS,因此不可避免的需要实现一套函数指针,并在挂载的时候进行注册。这主要是保证从VFS下……

    SE_Wang 2024-10-12
    15 0 0
  • 通过虚拟系统隔离企业部门(二层接入)

    通过虚拟系统隔离企业部门(二层接入) 设备二层接入企业网络,通过虚拟系统实现企业内不同部门的网络隔离,并为每个虚拟系统配置对应的管理员方便配置管理。 组网需求 如图1所示,某中型企业A购买一台防火墙作为网关。由于其内网员工众多,根据权限不同划分为研发部门、财经部门、行政部门三大网络。需要分别配置不同的安全策略。具体要求如下: 企业网络已经部署完成,不希望改变原来的网络拓扑,需要设备以二层模式接入网络。 财经部门禁止访问Internet,研发部门只有部分员工可以访问Internet,行政部门则全部可以访问Internet。 三个部门的业务量差不多,所以为它们分配相同的虚拟系统资源。 通过虚拟系统实现上述需求。 图1 网络隔离组网图(二层接入) 数据规划 项目 数据 说明 vsysa 虚拟系统名:vsysa 公网接口:GE1/0/1 公网接口所属安全区域:Untrust 私网接口:GE1/0/2 私网接口所属安全区域:Trust 分配的VLAN:VLAN10 管理员:admin@@vsysa 允许访问Internet的地址范围:10.3.0.2~10.3.0.10 公网接口GE1/0/1和私网接口GE1/0/2均为Trunk接口,根据VLAN的分配情况同时分配给多个虚拟系统。 vsysb 虚拟系统名:vsysb 公网接口:GE1/0/1 公网接口所属安全区域:Untrust 私网接口:GE1/0/2 私网接口所属安全区域:Trust 分配的VLAN:VLAN20 管理员:admin@@vsysb - vsysc 虚拟系统名:vsysc 公网接口:GE1/0/1 公网接口所属安全区域:Untrust 私网接口:GE1/0/2 私网接口所属安全区域:Trust 分配的VLAN:VLAN30 管理员:admin@@vsysc - 资源类 名称:r1 会话保证值:10000 会话最大值:50000 用户数:300 用户组:10 策略数:300 三个部门的业务量差不多,所以为它们分配相同的虚拟系统资源。 配置思路 配置GE1/0/1和GE1/0/……

    SE_YT 2024-10-12
    9 0 0
  • 信创平台下NFS协议及服务配置

    一、 NFS协议 NFS(Network File System,网络文件系统)是Linux最基本的文件共享协议,由 Sun Microsystems 公司于 1984 年开发。NFS 文件系统对客户端来说是完全透明的,访问 NFS 文件系统上的文件或目录就跟在访问本地的文件或目录一样!NFS 的配置和使用其实都非常简单,在 UNIX 操作系统中被广泛使用,许多非 UNIX 如Windows操作系统也对 NFS 提供了支持。NFS客户端和服务端通过RPC协议进行通信(RPC协议可以简单的理解为一个基于TCP的应用层协议)。NFS最大的特点是将服务端的文件系统目录树映射到客户端,而在客户端访问该目录树与访问本地文件系统没有任何差别。RPC 服务器的端口映射器监听 UDP 111 端口,客户端上的 RPC 程序连接到服务器上的 UDP 111 端口来通过端口映射器查询 NFS 各项服务所使用的端口,然后客户端分别连接 rpc.nfsd 和 rpc.mountd 所在的端口,取得挂载点信息之后将文件系统挂载起来,客户端就可以操作共享文件系统。 NFS常见用途: 局域网中在不同unix/linux电脑之间方便简单共享数据 局域网中节省本地存储空间,将常用的文件和数据存放在一台NFS服务器上,那么本地终端将可以减少自身存储空间的使用。 用户不需要在网络中的每个机器上都建有Home目录,Home目录可以放在NFS服务器上且可以在网络上被访问使用。 一些设备如软驱、CDROM和Zip(一种高储存密度的磁盘驱动器与磁盘)等都可以在网络上被别的机器使用。这可以减少整个网络上可移动介质设备的数量。 NFS使用的端口参考《NFS服务的端口分配》。NFS 服务器主要进程有: rpc.nfsd 进程:NFS 服务的主进程,主要管理客户端是否能够接入 NFS 服务器以及数据的传输。该进程固定监听 TCP/UDP 2049 端口。 rpc.mountd 进程:管理和维护 NFS 文件系统,根据所设定的权限决定是否允许客户端挂载指定的共享目录。该进程监听的端口默……

    SE_Wang 2024-10-11
    77 0 0
  • CentOS7 部署 RAID 磁盘阵列

    一、RAID 磁盘阵列概述 二、RAID 工作模式 1.RAID 0 2.RAID 1 3.RAID 5 4.RAID 10 三、部署 RAID 磁盘阵列 1.创建 RAID 0 2.创建 RAID 1 3.创建 RAID 5 4.模拟磁盘损坏 5.向 RAID 中增加存储硬盘 6.创建 RAID 10 一、RAID 磁盘阵列概述 ================================================================================ RAID (Redundant Array of lndependent Disk 独立冗余磁盘阵列)就是把多块独立的物理磁盘按不同的方式组合起来形成一个磁盘组(逻辑硬盘)。从而提供比单个磁盘更高的存储性能和提供数据备份技术。 二、RAID 工作模式 ============================================================================== RAID 0,RAID 1,RAID 5,RAID 10 1.RAID 0 RAID0 可以被称为带区卷。它将两个以上的磁盘并联起来,成为一个大容量的磁盘; 在存放数据时,分段后分散存储在这些磁盘中,因为读写时都可以并行处理,所以在所有的级别中,RAID0 的速度是最快的; 但是 RAID0 既没有冗余功能,也不具备容错能力,如果一个磁盘(物理)损坏,所有数据都会丢失。 | 容错性 | 无 | 冗余类型 | 无 | | — | — | — | — | | 热备盘 | 无 | 读性能 | 高 | | 随机写性能 | 高 | 连续写性能 | 高 | | 需要的磁盘数 | 1+N | 可用容量 | N* | 典型应用:对数据安全性要求不高,但对读写性能要求极高,如图形工作站等。 2.RAID 1 RAID1 把一个磁盘的数据镜像到另一个磁盘上,在不影响性能的情况下最大限度的保证系统的可靠性和可修复性上; 具有很高的数据冗余能力,但磁盘利用率为 50%,因为成本最高,所以多用在保护关键性的重要数据的场合; RAID1 的操作方式是把用户写入磁盘的数据百分百地复制到另外一个磁盘上。 | 容错性 | 有 | 冗余类型 | 镜像 | | — | — | — | — | | 热备盘 | 有 | 读性能 | 低(与单块磁盘……

    SE_Wang 2024-10-10
    77 0 0
  • SN3000 系列 1GbE~200GbE 高性能以太网交换机

    NVIDIA® Spectrum®-2 SN3000 以太网交换机是叶和脊数据中心网络解决方案的优秀之选,可实现更高的端口速度灵活性(每个端口从 1GbE 到 200GbE),端口密度可实现以任何速度与任何服务器的全机架连接。SN3000 的双向交换容量高达 6.4Tb/s,具有标志性的 8.33Bpps 数据包处理速率。SN3000 专为现代数据中心打造,将高性能、丰富的功能、可扩展性和可见性与灵活的外形规格相结合。 亮点 端口速度 200Gb/s 流计数器 51.2 万个条目 地址控制列表 (ACL) 51.2 万个条目 扩展网络地址转换 (NAT) 超过 10 万个条目 IPV4 路由 51.2 万个条目 可视化 NVIDIA Spectrum SN3000 交换机通过 NVIDIA What Just Happened®(故障快照)支持详细的上下文遥测数据。故障快照可在问题发生后,立即提供“时间”、“内容”、“人员”、“地点”和“原因”问题的答案,从而大大缩短了解决问题的平均时间。Spectrum 交换机实施硬件加速的直方图跟踪,并以亚微秒的粒度汇总队列深度。硬件加速的直方图避免了简单水印和基于阈值的方法中常见的误报。 性能 NVIDIA Spectrum SN3000 交换机具有全共享和整体式的数据包缓存架构。这种出色的缓存架构提供公平、可预测的高性能数据路径,这对于横向扩展软件定义的存储和现代多租户云部署至关重要。Spectrum 交换机为通过融合以太网进行远程直接内存访问 (RoCE) 和利用 GPUDdirect® 的机器学习应用程序提供强大的高带宽和低延迟数据路径。 规模 NVIDIA Spectrum SN3000 交换机支持一流的虚拟可扩展局域网 (VXLAN),支持 10 倍以上的隧道和隧道端点。其 51.2 万个共享转发条目可灵活用于访问控制列表 (ACL)、前缀匹配 (LPM) 路由、主机路由、MAC 表以及等价多路径 (ECMP) 和隧道应用程序。 优势 先进的网络虚拟化技术,支持高性能、单通道 VXLAN 路由以及 IPv6 和多协议标签交换 (MPLS) Segment Routing……

    SE_Gai 2024-10-10
    16 0 0