aerospike删除数据_通过Aerospike的内存速度满足大数据分析的需求

本文探讨了云环境中对内存计算的需求,尤其是针对大数据分析。Aerospike作为一个开源数据库,专注于内存中NoSQL操作,提供高速、低延迟、高可靠性的解决方案。文章介绍了如何在IBM SoftLayer云中安装和配置Aerospike,展示了它如何在实时大数据应用中发挥关键作用,特别是在实时分析和上下文驱动服务中的优势。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

云环境中越来越多地使用流程和数据密集型应用程序。 云概念正在发生变化,将其定位为满足各种IT需求的一站式解决方案。 随着当前数据收集的指数增长,高质量的数据分析算法比比皆是。 云引发的基础架构优化通过许多机制在不断增加,例如:

  • 合并
  • 集权
  • 联邦
  • 虚拟化
  • 货柜化
  • 商品化
  • 工业化

我们有基于策略和软件定义的抽象,自动化,标准化和简化方法。 这些提供了自适应,即时启动和优化的基础架构(服务器,存储和网络元素)。 为了优雅地在弹性云中托管和运行,并满足大数据世界的各种需求,我们提供了出色的IT解决方案:通用的内存计算,NoSQL和NewSQL数据库以及并行文件系统。

Aerospike是一个从头开始建立的开源数据库,旨在推动闪存,处理器和网络的极限。 它旨在在高吞吐量下以可预测的低延迟运行,并具有不折不扣的可靠性-高可用性和ACID保证。 Aerospike是:

  • 以线速运行的内存中NoSQL数据库和键值存储。
  • 无需合并用于分片和集群更改的逻辑,因此能够大大简化您的工作负载。
  • 改变游戏规则的数据库解决方案,消除了数据丢失或停机的烦恼。
  • 以内存速度和全球规模运行,并具有企业级的可靠性。
  • 非常适合必须立即感知和响应的实时大数据或上下文驱动的应用程序。

在本文中,学习如何将Aerospike迁移到IBM SoftLayer云环境并对其进行配置以满足您的需求。 一个示例应用程序展示了Aerospike在利用数据密集型工作负载方面的功能。

实时分析对内存计算的需求

数据处理系统,应用程序和产品(SAP)SE公司拥护其HANA平台来运营整个公司,其中包括:

  • 关键任务交易应用程序,例如ERP和CRM。
  • 以前由单独的数据库管理系统(DBMS)处理的分析需求是支撑数据仓库和数据集市的基础。

IBM拥有用于DB2®的BLUAcceleration®,该技术将列压缩和内存处理结合起来以加速分析。 Teradata引入了智能内存功能,该功能可将最常查询的数据自动移动到RAM中,以确保最快的查询响应速度。

毫无疑问,Aerospike领导着促进内存中NoSQL数据库的产品组合。 SAP的全内存HANA平台与Aerospike之间存在重大的技术差异,该平台吹捧其无中断部署的内存选项(无需翻录和替换现有应用程序)。 我们的重点是探索业务环境中对速度的需求。 几家企业声称内存速度的需求是真实存在的,随后的业务收益可能是巨大的。

关于Aerospike

相同的Aerospike服务器可以横向扩展以形成无共享群集,该群集透明地对数据进行分区并跨节点并行处理。 集群中的节点是相同的; 您可以从两个开始,而只需添加更多硬件。 群集线性扩展。

用例

Aerospike是一个键值存储,通常用作缓存或具有持久性的上下文存储。 上下文存储可用于:

  • 服务器端会话存储
  • 饼干店
  • 设备ID存储
  • ID映射
  • 用户首选项或用户个人资料,以提出实时建议并个性化Web门户上的用户体验
  • 电子商务
  • 旅游网站

Aerospike还是跨展示广告,移动,视频,社交媒体,游戏,本地广告和互联网电视的实时竞标平台的首选数据库。

对于大数据应用
当人们访问网站并使用移动应用程序单击,滑动或喜欢时,他们会留下大量的大数据,其中包括:页面视图和来自他们所穿事物的传感器数据,例如活动跟踪器; 以及他们拥有的东西,例如家中的光线,烟雾和温度传感器。 新一代应用程序正在使用此数据或上下文来预测需求并做出预测。
对于上下文驱动的应用程序
上下文驱动的应用程序包括数字广告,多渠道营销,电子邮件营销,动态内容服务,身份管理,跨渠道支持和忠诚度管理平台。 常见的应用程序包括:旅行门户,具有动态产品定价和库存管理的电子商务门户,电子商务搜索和个性化产品推荐,网络安全,欺诈检测以及类似的应用程序。

Aerospike用于大数据分析

当今的Web规模企业级应用程序体系结构通常由Aerospike组成,位于Web应用程序层之后,传统DBMS或HDFS群集之前。 大量(即PB)的存档和历史数据存储在低成本的旋转驱动器上。 来自“ HDFS分析”的见解或细分会定期移入Aerospike。 这些见解然后与存储在RAM或Aerospike上的闪存中的TB级实时数据结合在一起。 应用程序使用此丰富的用户上下文以及Aerospike中的“热分析”(即大规模分布式聚合)来做出最佳决策和建议。

您还可以将Aerospike配置为存储最新数据,并自动使旧数据过期或过期。 图1显示了基于Aerospike的大数据分析的架构。

图1.基于Aerospike的大数据分析的架构
设备,应用服务器,交易,分析

Aerospike是一种行存储,其中数据存储在记录(键值)中,并分组为集合和名称空间(表)。 每个128K-2MB记录都可以包含可以立即更改的值(映射,列表,整数,字符串,blob类型)。

样品申请

我们的示例应用程序显示,键值存储之上的Aerospike数据结构是使用Aerospike作为唯一数据库编写应用程序的有效方法。 该示例描述了类似Twitter的应用程序的设计和实现。 该代码易于理解,但足够坚固,可以用作利用Aerospike技术的基础。 您还可以将样本用作扩展的种子应用程序。

示例应用程序的先决条件:

  • Aerospike服务器
  • Aerospike Java™软件包客户端

IBM SoftLayer云中Aerospike的最低要求

记忆体(RAM)
您将需要4GB的RAM。 由于索引存储在内存本身中,因此内存量将限制硬件可以存储的行数。 Aerospike的内存效率很高,每一行(对象或记录)仅需要64字节的内存来存储索引。 每GB内存可以索引1600万行,而4GB内存配置只能索引6400万个对象。 出于开发目的,您可以提供少至2GB的RAM。
中央处理器
您将需要一个四核CPU。 尽管不直接依赖于CPU,但您可能会发现CPU因系统中断而很快饱和。 我们的示例使用8GB的RAM,因为我们将在单个节点上安装Aerospike实例和Aerospike管理控制台。 (可以选择在不同的节点上安装Aerospike和管理控制台,因此如果需要,我们可以选择两个节点。)

您需要通过SoftLayer门户从IBM SoftLayer云中获得VM。 VM的最低配置是8GB RAM,25GB磁盘存储和两个内核。 这适用于所有主要的Linux发行版。 我们的概念证明(PoC)示例应用程序是使用CentOS 64位实现的。

主机名
aerospikepoc.softlayer.com
地址:10.76.60.39 / 184.173.49.2
用户
根/ xxxxxx

安装Aerospike

要安装Aerospike,请打开您的VM会话,然后按照以下步骤操作。

  1. 在命令行中,输入清单1中的命令。
    清单1.获取aerospike.tgz文件
    cd /usr
    wget -O aerospike.tgz 'http://aerospike.com/download/server/latest/artifact/el6'

    屏幕上应显示HTTP请求和连接消息,如下例所示。

    http请求和连接消息
  2. 您应该在/ usr目录中的主机中看到aerospike.tgz文件,如图2所示。
    图2. / usr目录中的aerospike.tgz文件
    / usr目录以及aerospike.tgz文件

在安装Aerospike 之前 ,您必须:

  1. 关闭SELinux。 在命令行中,输入SELINUX=disabled ,如下所示。
    selinux = disabled由usr root输入
    selinuxtype = targeted显示在屏幕上
  2. 关闭IPTables。 在命令行中,如下所示输入chkconfig iptables off ,然后输入iptable stop
    chkconfig iptables关闭输入
  3. 打开NTP。 在命令行中,输入清单2中所示的命令。
    清单2.打开NTP
    sudo /sbin/chkconfig ntpd on
     sudo ntpdate pool.ntp.org
     /etc/init.d/ntpd start
  4. 转到Aerospike目录。 在命令行中,输入cd /usr命令。
    [root @ aerospikepoc用户]命令行
  5. 提取aerospike.tgz。 在命令行中,输入tar -xvf aerospike.tgz命令。 您将在软件包中看到工具,文件和许可证的简短列表。
    工具和许可证安装
    aerospike-服务器社区3.4.1-e16

安装并启动Aerospike服务器和工具

要安装Aerospike服务器和工具包:

  1. 在命令行中,输入清单3中的命令。
    清单3.开始安装Aerospike
    cd /usr/aerospike-server-community-3.4.1-el6
       ./asinstall

    安装Python,许可证,文件和组后,您会在屏幕上看到消息。

    python已安装
    Aerospike组,用户,已安装服务器

    安装完成后,服务器应已准备好与默认配置文件一起使用。 (有关更多详细信息,请参见目录结构。)

  2. Aerospike使用几个目录来存储工具,系统文件和数据文件。 要获取使用目录的描述或手动管理文件(它们通常通过Aerospike工具进行管理),请从命令行输入/opt/aerospike aerospike。

通过Linux软件包管理安装时,Aerospike目录由Aerospike软件包创建和管理。 它包含几个子目录,其中一些是由工具包创建的,而另一些是由服务器包创建的,并在服务器运行时维护。 如下所示,包括bin,data,doc,examples,lib,cmd,sys和usr。

bin数据文档示例lib cmd sys usr目录

要启动Aerospike服务器,请从命令行输入清单4中的命令。

清单4.启动Aerospike服务器
cd /etc/init.d
./aerospike start

在屏幕上,您会看到类似于以下内容的列表:abrt-ccpp,​​abrtd,abrt-oops,acpid,aerospike,atd,audited,blk-availability,cpuspeed,crond,functions,haldaemon,halt,htcacheclean,HTTPd, ip6tables,iptables和irqbalance。

上面列出的6列项目列表
输入了aerospike start命令

要检查服务器状态,请从命令行输入/aerospike status

输入了航空突击状态命令

安装Aerospike客户端Java软件包

要安装Aerospike客户端Java软件包,可以使用WinSCP工具将aerospike-client-java-3.0.33.tgz软件包复制到/ usr目录。 要提取软件包,请tar -xvf aerospike-client-java-3.0.33.tgz输入tar -xvf aerospike-client-java-3.0.33.tgz

安装了client / src / resources / udf文件
aerospike-服务器-社区-3.4.1-e16消息

安装Aerospike管理控制台手册

Aerospike文档网站下载包含Aerospike管理控制台(AMC)手册的文件 ,然后使用WinSCP工具通过输入清单5中的命令将其移动到/ usr目录。

清单5.将文档放在/ usr目录中
cd /usr 
yum install aerospike-amc-community-3.5.0-el5.x86_64.rpm

您将看到正在安装的插件和已解决的依赖关系。

加载插件最快的镜像,安全性
依赖安装

启动AMC服务器

要启动AMC服务器,请转到amc目录,然后从命令行输入清单6中的命令。

清单6.启动AMC服务器
cd /etc/init.d
./amc start
VM屏幕上显示命令时,味精AMC已启动

要检查AMC服务器的./amc status ,请从命令行输入./amc status 。 输出显示AMC正在运行。

消息:AMC正在运行

现在,您可以通过输入清单7中的命令来启动Aerospike服务器。

清单7.启动Aerospike服务器
cd /etc/init.d
./aerospike start
./aerospike status
asd(pid 5722)正在运行...

之后,在浏览器中使用URL http://184.173.49.2:8081 ; 这将打开图3所示的窗口。

图3.连接到节点
输入主机名或IP进行连接

输入Host NameIP然后单击“ 连接”以查看Aerospike仪表板,如图4和图5所示。

图4. Aerospike仪表板
显示仪表板元素
图5. Aerospike仪表板,续
显示仪表板元素

使用Aerospike

在Aerospike主仪表板屏幕的顶部,您可以从以下选项中选择(企业版将具有其他页面):

  • 仪表板
  • 统计
  • 定义
  • 工作

单击窗口右上方的“ 更改集群”链接以监视另一个集群。

您可以通过更改Snapshot for last值来更改正在绘制的时间间隔。 图6中的统计板显示了结果。

图6.统计视图
属性统计

在塞式仪表板的顶部选择定义看到一个命名空间的定义中,如示于图7。

图7.定义仪表板
有关名称空间的信息

您可以使用系统监视器来检查集群的运行状况。 在VM命令行中,输入asmonitor命令。 示例输出显示了在群集中创建了一个初始配置文件和一个主机:10.76.60.39:3000。

asmonitor命令,群集中有1台主机

输出显示三种类型的监视器:

  • info ,这是有关Aerospike集群的高级信息。
    节点和命名空间详细信息
  • latency ,它提供有关集群吞吐量和延迟的详细信息。
    写入回复,读取,udf,代理,查询详细信息
  • printconfig ,显示节点的配置(其实际输出)。
    printconfig详细信息

要离开监视器部分,请从VM命令行输入exit命令。

将测试数据添加到Aerospike中

要将测试数据添加到Aerospike,请输入清单8中的命令。

清单8.将测试数据添加到Aerospike
ascli put <ns> <set> <key> <record>
ascli put test testset testkey1 '{"name": "John"}'
虚拟机屏幕上的上述命令
上面的命令
ascli放置测试testset testkey1名称天空
上面的命令

根据输入到磁盘中的数据和RAM的使用情况,使用情况将发生变化,如图8所示。 群集吞吐量(隐藏)也将显示一些变化。

图8.群集磁盘使用情况
磁盘和RAM使用情况,群集摘要

行政任务

要启动Aerospike服务器,请从命令行输入sudo service aerospike start

要验证Aerospike是否正在运行,请从命令行输入sudo service aerospike status

AMC服务器任务

要启动AMC,请从命令行输入sudo /etc/init.d/amc start

要停止AMC服务器,请从命令行输入sudo /etc/init.d/amc stop

要重新启动AMC服务器,请从命令行输入sudo /etc/init.d/amc restart

要查看AMC服务器是否已启动并正在运行,请从命令行输入sudo /etc/init.d/amc status

要更改密码,请从命令行输入清单9中的命令。

清单9.更改密码
sudo /opt/amc/bin/reset_password [-u <username>] [-p <password>]

此命令中的选项是:

  • -u :可选的用户名(目前仅允许使用admin )。
  • -p :可选的新密码。 如果未指定,则默认密码为admin

要查看服务器日志,请从命令行输入清单10中的命令。

清单10.查看服务器日志
var/log/aerospike/aerospike.log
grep cake /var/log/aerospike/aerospike.log

结论

对海量,流式和多结构数据进行实时分析并不容易。 我们需要多方面的解决方案和平台。 提取关于大而快速的数据的可行见解对于产品供应商而言是一项严峻的挑战。

Aerospike是一种创新的解决方案,可在不影响任何技术要求的情况下简化和简化实时分析。 借助Aerospike,您可以在开始大数据实时分析之前完全确保性能,可用性,可扩展性和安全性。 Aerospike的主要区别在于系统内存中的NoSQL数据库,该数据库允许实时数据分析。


翻译自: https://www.ibm.com/developerworks/analytics/library/ba-aerospike-trs/index.html

### Matlab 中的微分方程 (ODE) 实现与求解 MATLAB 提供了一套强大的工具来解决微分方程Ordinary Differential Equations, ODEs),这些工具被称为 ODE 求解器。它们能够处理各种类型的初值问题,包括刚性和非刚性系统。 #### MATLAB 的 ODE 求解器概述 MATLAB 的 ODE 求解器是一组函数,用于求数值解。见的求解器有 `ode45`、`ode23`、`ode113` 等,适用于不同的问题类型[^4]。对于大多数非刚性问题,推荐使用 `ode45`,它是一种基于显式 Runge-Kutta 方法的算法。而对于刚性问题,则可以选择更高效的求解器如 `ode15s` 或 `ode23s`。 以下是使用 MATLAB 解决 ODE 的基本流程: #### 定义 ODE 函数 定义一个描述 ODE 的函数文件或匿名函数。例如,考虑如下一阶线性 ODE: \[ \frac{dy}{dt} = -\lambda y \] 可以通过以下方式定义该 ODE: ```matlab function dydt = odefun(t, y, lambda) dydt = -lambda * y; end ``` 或者使用匿名函数简化表达: ```matlab lambda = 0.5; % 参数设置 odefun = @(t,y) -lambda*y; ``` #### 设置初始条件和时间范围 设定初始条件 \(y_0\) 和积分的时间区间 `[t0 tf]`。例如: ```matlab tspan = [0 10]; % 时间跨度从 t=0 到 t=10 y0 = 1; % 初始条件 y(0)=1 ``` #### 调用 ODE 求解器 调用合适的 ODE 求解器并传入必要的参数。例如,使用 `ode45` 来解决问题: ```matlab [t, y] = ode45(@(t,y) odefun(t,y), tspan, y0); ``` 这里返回的结果是一个矩阵 `t` 表示时间点,而 `y` 是对应的数值解。 #### 绘制结果 最后可以绘制解决方案以便可视化分析: ```matlab plot(t, y, '-o'); xlabel('Time t'); ylabel('Solution y'); title('Numerical Solution of ODE using ode45'); grid on; ``` 以上过程展示了一个简单的例子如何利用 MATLAB 工具箱有效求解 ODE 并进行图形表示[^5]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值