热点
模块化思维:界面设计师的高效网站构建实践,reasoning_content:我们要求以界面设计师的口吻,写一个与技术、科技相关的标题,内容关于[搜索架构师分享:模块化思维引领高效网站构建实践]标题要简短精炼,30字以内,直接输出nn注意:口吻是界面设计师,所以标题应该体现设计师视角,结合技术和科技比如从设计角度谈模块化思维、高效构建等可以尝试:模块化设计思维:架构师视角下的高效网站构建 但需要更简洁,且体现界面设计师口吻或许:界面设计师看模块化:架构师的高效网站构建术 但字数可能超另一个思路:模块化思维:架构师的高效网站构建实践 但少了设计师口吻可以加设计师视角或从设计到架构等nn要求30字以内,我们需精炼例如:模块化思维:界面设计师的高效构建秘诀 但原题是搜索架构师分享或许:架构师谈模块化:界面设计师的高效网站构建 但也不完全nn更直接地,以界面设计师第一人称?比如我用模块化思维构建高效网站 但不太符合标题或者模块化思维让网站构建更高效——一个界面设计师的视角 太长nn考虑输出: 模块化思维:界面设计师的高效网站构建实践 共15字,符合但原题是搜索架构师分享,我们可以改为架构师分享:模块化思维引领高效网站构建 但这是原题我们需要以界面设计师口吻,所以可以改为界面设计师眼中的模块化思维:高效网站构建实践 共18字或者更短:模块化思维:界面设计师的高效构建术 13字感觉可以nn注意:标题要直接输出,不要加说明我选择:模块化思维:界面设计师的高效网站构建术 或者 架构师分享:模块化思维下的高效网站构建 但后者缺少设计师口吻最佳:界面设计师视角:模块化思维驱动高效网站构建 共17字nn为了更符合技术、科技相关,可以加入科技或技术词?不一定需要标题本身已经涉及我最终输出:模块化思维:界面设计师的高效网站构建实践 字数15
技术维护专员:模块化建站五步复用,效率提升三倍,reasoning_content:我们要求以技术维护专员的口吻,写一个与“技术、科技”相关,关于[模块化建站秘籍:五步轻松复用,效率提升300%]的标题注意:直接输出一个标题,不要加说明提示等信息;简短精炼,字数控制在30字以内nn口吻是技术维护专员,所以可以用一些技术术语或者口语化的技术表达标题要体现“模块化建站秘籍:五步轻松复用,效率提升300%”的核心内容需要简洁,30字以内nn可以考虑:技术维护专员教你模块化建站:五步复用,效率翻三倍但字数可能超?数一下:技术维护专员教你模块化建站:五步复用,效率翻三倍共22个字?标点不算吧?中文字数:技(1)术(2)维(3)护(4)专(5)员(6)教(7)你(8)模(9)块(10)化(11)建(12)站(13):五(14)步(15)复(16)用(17),效(18)率(19)翻(20)三(21)倍(22)22字可以但原词是“效率提升300%”,翻三倍就是300%或者可以更直接:模块化建站秘籍:五步复用,效率提升300%但缺少口吻可以加“技术维护专员说:”但可能太长nn更好的:技术维护专员:模块化建站五步复用,效率提升300%数一下:技(1)术(2)维(3)护(4)专(5)员(6):模(7)块(8)化(9)建(10)站(11)五(12)步(13)复(14)用(15),效(16)率(17)提(18)升(19)3(20)0(21)0(22)%(23)刚好23字注意标点符号不算字数?通常标题字数指汉字个数,标点一般不计但为了保险,可以不用标点或者去掉冒号:技术维护专员模块化建站五步复用效率提升300%数一下汉字:1技2术3维4护5专6员7模8块9化10建11站12五13步14复15用16效17率18提19升20300?300%是数字和百分号,算3个字符?通常汉字计数时数字和百分号算字符,但中文标题中常用也可以改成“三倍”:效率提升三倍这样更自然比如:技术维护专员:模块化建站五步复用,效率提升三倍汉字:技1术2维3护4专5员6:模7块8化9建10站11五12步13复14用15,效16率17提18升19三20倍2121字完美或者不用冒号直接空格:技术维护专员 模块化建站五步复用 效率提升三倍也可以nn注意要求“直接输出一个标题”,所以我们就输出一个标题我选择:技术维护专员:模块化建站五步复用,效率提升三倍
模块化VR建站:高效搭建,易于测试,reasoning_content:我们要求以功能测试工程师的口吻,写一个与技术、科技相关,关于“VR建站新思路:模块化设计引领高效搭建潮流”的标题需要简短精炼,30字以内直接输出标题,不要加说明nn功能测试工程师的口吻可能更注重测试、验证、效率、质量等角度比如“模块化VR建站:测试工程师的高效验证新方案”之类的但注意原标题是“VR建站新思路:模块化设计引领高效搭建潮流”,我们可以用测试视角重新表述nn例如:“模块化VR建站:高效搭建与快速测试新路径”或者“VR建站模块化:测试视角下的高效搭建革命”但要求短,30字内再简化:“模块化VR建站:高效搭建+易测试”或类似nn更直接:用“功能测试工程师”的视角说:“模块化设计让VR建站更易测试,高效搭建”但太长了nn考虑:“VR建站模块化:高效搭建与可测性双赢” 16字或者“模块化VR建站:效率与测试的完美结合” 18字或者“测试工程师推荐:模块化VR建站高效新招” 18字nn更贴合“新思路”:“模块化VR建站:高效搭建新思路(测试验证友好)”但超字数nn精简到30字内:比如“VR建站模块化:高效搭建,测试友好” 12字或者“模块化VR建站:让搭建更高效,测试更简单” 18字nn最终选择一个:考虑到口吻,用第一人称?或者直接陈述我觉得“模块化VR建站:高效搭建与测试验证新范式” 18字,但“范式”可能有点大更务实:“模块化VR建站:更快搭建,更易测试” 14字nn为了更像功能测试工程师的口吻,可以加入“实测”或“验证”例如:“模块化VR建站实测:高效搭建新思路” 16字nn我选择:“模块化VR建站:高效搭建+易测试的新思路” 18字或者更简洁:“VR建站模块化:高效搭建,易于测试” 14字nn最终输出一个标题注意不要加引号或其他符号直接输出文字
16 9 月 2026, 周三

OpenStack如何在大数据用例中扮演关键角色

副标题#e#

OpenStack 控制计算、存储和网络资源池。本文主要关注 OpenStack 如何在大数据用例中扮演关键角色。

OpenStack 上的大数据

现在,数据随处生成,数据量呈指数增长。来自 Web 服务器、应用程序服务器、数据库服务器的数据以用户信息、日志文件和系统状态信息的形式提供。大量的数据也由物联网设备产生,如传感器、车辆、工业设备等。从科学模拟模型生成的数据也是大数据的来源之一。使用传统软件工具来存储和执行这些数据的分析可能很困难,而 Hadoop 可以解决这个问题。

OpenStack如何在大数据用例中扮演关键角色

看一个用例场景 —— 大量的数据存储在关系数据库管理系统环境中。当数据集越来越大时, RDBMS ( 关系数据库管理系统 Relational Database Management System )表现不佳。而且这个问题会随着数据集的增长而越发严重。在这个阶段,避免采用 NoSQL 。需要以具有成本效益的方式存储和处理大量数据。应该依赖非虚拟化环境中的高端服务器吗?要求是随时扩展集群,需要一个更好的仪表板来管理其所有组件。

计划在 OpenStack 之上建立一个 Hadoop 集群并创建 ETL ( Extract-Transform-Load)作业环境。Hadoop 是一个行业标准框架,用于存储和分析具有容错 Hadoop 分布式文件系统和 MapReduce 实施的大型数据集。然而,可伸缩性在典型的 Hadoop 集群中是一个非常普遍的问题。

Openstack 推出了一个名为 Sahara 的项目 —— 数据处理即服务。 Openstack Sahara 旨在配置和管理数据处理框架,如集群拓扑中的 hadoop mapreduce、spark和Storm 。该项目与 Amazon Elastic MapReduce(EMR) 服务提供的数据分析平台类似。Openstack Sahara 可在几分钟内部署集群。此外,Openstack Sahara 可以根据需求通过添加或删除工作节点来伸缩集群。

使用 Openstack Sahara 管理 Hadoop 集群的好处

  • ——集群可以更快地提供且易于配置。
  • ——像其他 OpenStack 服务一样,Sahara 服务可以通过强大的 REST API、CLI 和 Horizon 仪表板进行管理。
  • ——插件可用于支持 Vannila(Apache Hadoop)、HDP(ambari)、CDH(Cloudera)、MapR、Spark、Storm 等多个 Hadoop 供应商。
  • ——集群大小可根据需求进行伸缩。
  • ——可以与 OpenStack Swift 集成以存储由 Hadoop和 Spark 处理的数据。
  • ——集群监控变得简单。
  • ——除集群配置外,Sahara 还可以用作分析即服务,用于临时或突发分析工作负载。

架构

Openstack Sahara 旨在利用 OpenStack 的核心服务和其他完全托管服务。这使 Sahara 更加可靠并且能够有效地管理 Hadoop 集群,你可以选择使用包括 Trove( OpenStack 数据服务组件,允许用户对关系型数据库进行管理,实现了 Mysql 实例的异步复制和提供 PostgreSQL 数据库的实例。) 和 Swift 在内的服务。来看看 Sahara 的架构。

  • —— Sahara 服务有一个 API 服务器,它响应来自最终用户的 HTTP 请求并与其他 OpenStack 服务交互以执行其功能。
  • —— Keystone (身份即服务)对用户进行身份验证,并提供用于与 OpenStack 配合使用的安全令牌,将用户在 Sahara 中的能力限制为其 OpenStack 权限。
  • —— Heat (编排即服务)用于配置和编排数据处理集群的部署。
  • —— Glance(虚拟机镜像即服务)使用操作系统和预安装的 Hadoop / Spark 软件包存储 VM 镜像以创建数据处理集群。
  • —— Nova (计算)为数据处理集群提供虚拟机。
  • —— Ironic(裸机即服务)为数据处理集群提供裸机节点。
  • —— Neutron(网络)便于网络服务从基础到高级拓扑访问数据处理集群。
  • —— Cinder(块存储)为集群节点提供持久存储介质。
  • —— Swift(对象存储)提供可靠的存储来保存作业二进制文件和由hadoop / spark处理的数据。
  • —— Designate(DNS即服务)提供托管区域以保留集群实例的DNS记录。 Hadoop服务通过主机名与群集实例进行通信。
  • —— Ceilometer(telrmetry)收集和存储有关用于计量和监控目的的集群指标。
  • —— Manila(文件共享)可用于存储作业创建的作业二进制文件和数据。
  • —— Barbican(密钥管理服务)安全地存储密码和私钥等敏感数据。
  • ——Trove(数据库即服务)为 hive metastore 提供数据库实例,并存储 Hadoop 服务和其他管理服务的状态。

如何建立Sahara集群

请按照部署 Sahara 安装指南中的步骤操作。不同的部署环境有不同的方式,如果你想要试验, Kolla 也是一个不错的选择。

你还可以通过 Horizon 仪表板管理 Sahara 项目。

用Sahara集群ETL(提取、转换和加载)或ELT(提取、加载和转换)

市场上有很多 ETL 工具可用。

传统数据仓库有其自身的优点和局限性,例如它可能位于数据源以外的其他位置。Hadoop 是运行 ETL 作业的理想平台。

数据存储区中有各种数据,包括结构化、半结构化和非结构化数据。Hadoop生态系统有从不同数据源(包括数据库、文件和其他数据流)中提取数据并将其存储在集中式 Hadoop Distributed File System(HDFS) 中的工具。

随着数据快速增长,Hadoop 集群可以扩展并利用OpenStack Sahara 。

Apache Hive 是建立在 Hadoop 生态系统之上的数据仓库项目,也是进行 ETL 分析的可靠工具。一旦使用工具(如 Sqoop、Flume、Kafka 等)从数据源中提取数据后,应该使用 MapReduce 技术用 Hive 或pig scripts 进行清理和转换。

Hive 的另一个优点是它是一个交互式查询引擎,可以通过 Hive 查询语言访问。它类似于 SQL 。因此,数据库人员可以在不掌握 Java 和 MapReduce 概念的情况下,在 Hadoop 生态系统中执行作业。Hive 查询执行引擎解析 Hive 查询并将其转换为一系列 MapReduce / Spark 作业。Hive 可以通过JDBC / ODBC 驱动程序和瘦客户端访问。

#p#副标题#e#

Oozie 是 Hadoop 生态系统中可用的工作流引擎。工作流是一组必须作为分布式环境中的序列执行的任务。Oozie 帮助创建一个简单的工作流来层叠多个工作流并创建协调的作业。Oozie 用于为复杂的 ETL 作业创建工作流也很理想,尽管它没有模块来支持与 Hadoop 相关的所有操作。

我们可以使用任何工作流引擎来执行 ETL 工作,例如 Openstack Mistral (工作流即服务)。Apache oozie 在某些方面类似于 Openstack Mistral ,充当可以定期触发的作业调度器。

我们来看看一个典型的 ETL 作业流程,它使用Hadoop 将应用程序将其数据存储在 MySQL 服务器中。存储的数据需要以最少的成本和时间进行分析。

提取

第一步是从 MySQL 中提取数据并将其存储在 HDFS中。

Apache Sqoop 可用于从结构化数据源(如 RDBMS数据存储)导出/导入数据。

如果要提取的数据是半结构化的或非结构化的,你可以使用 Apache Flume 从数据链接中获取数据,例如 Web 服务器日志、Twitter 数据流或传感器数据。

转换

从上述阶段提取的数据格式不正确(只是原始数据)。应该用适当的过滤器和数据聚合来清理。

这是在 HDFS 中存储数据必不可少的。

此时,我们需要为每个表设计 Hive 模式,并创建一个数据库来转换存储在临时区域中的数据。

通常情况下,数据采用 .csv 格式,每条记录均以逗号分隔。

我们不需要检查 HDFS 数据以了解它是如何存储的。有一些异常数据类型应该与 Hive 兼容。

数据库建模后,我们可以加载提取的数据进行清理。表格中的数据仍然未标准化。从不同的表中聚合所需的列。

同样,可以用“ OVERWRITE INTO TABLE ”语句来汇总多个表中的数据。

Hive 支持分区表,通过水平分配执行负载来提高查询性能。我们倾向于分区存储年份和月份的列。有时,分区表在 MapReduce 作业中创建更多任务。

加载

现在是时候将转换后的数据加载到 HDFS 中的数据仓库目录中,这是数据的最终状态。在这里,我们可以应用 SQL 查询来获得适当的结果。

所有的 DML 命令都可以用来分析基于用例的仓库数据。

结果可以下载为 .csv、表格或图表进行分析。它可以与其他流行的商业智能工具(如Talend OpenStudio、Tabelau 等)集成。

自动化

现在使用 Oozie 工作流引擎自动执行 ETL 作业(你也可以使用 Mistral,大多数 Hadoop 用户习惯用Apache Oozie )。

结论

OpenStack 集成了一个非常大的 Hadoop 生态系统,许多云提供商提供 Hadoop 服务(只需要点击几下它们的云管理门户网站即可)。Sahara 支持大部分 Hadoop 供应商插件,让你执行 ETL 工作流。

dawei

【声明】:北京站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

您错过了

模块化思维:界面设计师的高效网站构建实践,reasoning_content:我们要求以界面设计师的口吻,写一个与技术、科技相关的标题,内容关于[搜索架构师分享:模块化思维引领高效网站构建实践]标题要简短精炼,30字以内,直接输出nn注意:口吻是界面设计师,所以标题应该体现设计师视角,结合技术和科技比如从设计角度谈模块化思维、高效构建等可以尝试:模块化设计思维:架构师视角下的高效网站构建 但需要更简洁,且体现界面设计师口吻或许:界面设计师看模块化:架构师的高效网站构建术 但字数可能超另一个思路:模块化思维:架构师的高效网站构建实践 但少了设计师口吻可以加设计师视角或从设计到架构等nn要求30字以内,我们需精炼例如:模块化思维:界面设计师的高效构建秘诀 但原题是搜索架构师分享或许:架构师谈模块化:界面设计师的高效网站构建 但也不完全nn更直接地,以界面设计师第一人称?比如我用模块化思维构建高效网站 但不太符合标题或者模块化思维让网站构建更高效——一个界面设计师的视角 太长nn考虑输出: 模块化思维:界面设计师的高效网站构建实践 共15字,符合但原题是搜索架构师分享,我们可以改为架构师分享:模块化思维引领高效网站构建 但这是原题我们需要以界面设计师口吻,所以可以改为界面设计师眼中的模块化思维:高效网站构建实践 共18字或者更短:模块化思维:界面设计师的高效构建术 13字感觉可以nn注意:标题要直接输出,不要加说明我选择:模块化思维:界面设计师的高效网站构建术 或者 架构师分享:模块化思维下的高效网站构建 但后者缺少设计师口吻最佳:界面设计师视角:模块化思维驱动高效网站构建 共17字nn为了更符合技术、科技相关,可以加入科技或技术词?不一定需要标题本身已经涉及我最终输出:模块化思维:界面设计师的高效网站构建实践 字数15