CN104662530A - 对于分布式数据存储和处理***的调整(tune) - Google Patents

对于分布式数据存储和处理***的调整(tune) Download PDF

Info

Publication number
CN104662530A
CN104662530A CN201380049962.XA CN201380049962A CN104662530A CN 104662530 A CN104662530 A CN 104662530A CN 201380049962 A CN201380049962 A CN 201380049962A CN 104662530 A CN104662530 A CN 104662530A
Authority
CN
China
Prior art keywords
configuration
distributed storage
disposal system
regulator module
equipment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201380049962.XA
Other languages
English (en)
Other versions
CN104662530B (zh
Inventor
G·D·廖
N·伊伊特巴舍
T·维尔克
K·达塔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN104662530A publication Critical patent/CN104662530A/zh
Application granted granted Critical
Publication of CN104662530B publication Critical patent/CN104662530B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/217Database tuning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/501Performance criteria
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5018Thread allocation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本公开描述了对于分布式数据存储和处理***的调整。一种设备可以包括调整器模块,所述调整器模块被配置为至少基于在所述设备中可用的配置信息来确定分布式数据存储和处理***配置,并且基于基线配置来调节所述分布式数据存储和处理***配置。所述调整器模块可以被进一步配置为接着确定从实际的分布式数据存储和处理***操作推导的针对所述分布式数据存储和处理***的样本信息,并且在创建所述分布式数据存储和处理***的性能模型时使用所述样本信息。所述调整器模块可以被进一步配置为接着基于所述性能模型来评估对所述***的配置改变,并且基于所述评估来确定推荐的分布式数据存储和处理***配置。

Description

对于分布式数据存储和处理***的调整(tune)
技术领域
本公开涉及分布式***优化,并且更加具体地涉及用于调整分布式数据存储和处理***的配置的***。
背景技术
现代社会的虚拟化(例如,对于要通过互联网进行的个人和商业交互二者的增长的趋势)已经在如何管理由完全在线的交互生成的大量信息方面产生了至少一个挑战。支持增长的在线企业所需的存储空间和/或处理要求可能几乎立即超出单个机器(例如,服务器)的能力,并且因而会需要成组的服务器来管理信息。较大的企业会采用许多服务器机架,每一个服务器机架包括全部承担存储和处理企业数据的多个服务器。要被协调的服务器的产生的数量会是相当地大。
由于解决方案有时产生其它问题,不得不考虑如何管理大量服务器以帮助确保对信息进行快速处理和安全存储。可以用于管理大量服务器的现有解决方案的至少一个示例是由Apache Software Foundation制造的Hadoop软件库。Hadoop提供允许贯穿集群(例如,成组的计算机)对大量信息进行分布式处理的框架。例如,Hadoop可以被配置为向适合于处理任务的服务器(例如,包括完成该任务所需的信息的服务器)分配该任务。Hadoop也可以管理信息的拷贝以便确保服务器或者甚至是机架的丢失不意味着将失去对信息的访问。尽管Hadoop和其它类似的管理解决方案在它们最大化分布式数据存储和处理***的效率的能力方面已经具有大的潜力,但是它们的潜力仅能够经过正确的配置实现。当前必须由了解***架构的操作者经过连续的***“微调”处理来手动地进行配置。
附图说明
通过下面进行的详细描述并且参照附图,请求保护的主题的各种实施例的特征和优点将变得明显,其中类似的附图标记指代类似的部件,并且在附图中:
图1说明了根据本公开至少一个实施例包括调整器模块的分布式数据存储和处理***的示例;
图2说明了根据本公开至少一个实施例的所述调整器模块可以位于其上的设备的示例配置;
图3说明了根据本公开至少一个实施例用于调整分布式数据存储和处理***的示例操作的流程图;并且
图4说明了在先前关于图3公开的示例操作中可以采用的信息和/或在先前关于图3公开的示例操作期间可以执行的任务的示例。
尽管下面的详细描述参照说明性实施例来进行,但是对于本领域的技术人员来说,该说明性实施例的许多替代、修改和变化将是明显的。
具体实施方式
本公开描述了涉及对于分布式数据存储和处理***的调整的***和方法。首先,遍及这一公开互换地使用了术语“信息”和“数据”。如本文引用的,“分布式数据存储和处理***(DDSPS)”可以包括通过一个或多个网络连接的多个设备,该多个设备被配置为执行下列动作中的至少一个:存储数据或者处理数据。在某些情况下,多个设备可以一起行动以便存储和/或处理针对作业(例如,针对单个数据消费者)的数据。例如,多个设备可以包括计算设备(例如,服务器),该计算设备包括处理资源(例如,一个或多个处理器)和存储资源(例如,机电或者固态存储设备)。尽管在本文出于解释的原因引用了典型地与Hadoop相关联的结构、术语等等,但是各种公开的实施例并不意在局限于仅在采用Hadoop的DDSPS中的实现。相反,可以使用允许与本公开一致的功能的任何DDSPS管理***来实现实施例。
在一个实施例中,设备可以包括调整器模块。调整器模块可以例如被部分地或者全部地体现为在设备内可执行的软件。通常,调整器模块可以被配置为执行最终导致针对DDSPS的推荐配置的活动。例如,调整器模块可以被配置为至少基于配置信息来确定DDSPS配置,并且接着基于基线配置来调节DDSPS配置。调整器模块可以被进一步配置为接着确定由实际DDSPS操作推导的针对DDSPS的样本信息,并且在创建DDSPS的性能模型时使用该样本信息。调整器模块可以被进一步配置为接着基于该性能模型来评估对***的配置改变,并且基于该评估来确定推荐配置。
确定针对DDSPS的配置可以例如包括确定***设置(provision)配置和***参数配置。在Hadoop DDSPS(例如,具有至少一个Hadoop集群的DDSPS)中,可以基于Hadoop分布式文件***(HDFS)和HadoopMapReduce引擎配置文件来确定HDSPS配置。调节DDSPS配置可以例如包括调节网络配置、***配置或者DDSPS中的至少一个设备的配置。当在Hadoop DDSPS上操作时,调整器模块可以被配置为确定一个或多个样本,该一个或多个样本中的每一个至少包括配置,以便运行Hadoop集群中的工作负荷、与该工作负荷相对应的工作日志以及与该工作负荷相对应的资源使用信息。创建针对DDSPS的性能模型可以包括调整器模块被配置为基于一个或多个样本来编译DDSPS的数学模型,该数学模块描述***性能和***依赖性中的至少一个。
调整器模块可以被配置为接着评估性能模型。例如,调整器模块可以被进一步配置为通过在配置空间上进行搜索并且使用该性能模型评估可能的配置来确定推荐配置。在一个实施例中,在确定推荐配置时,调整器模块也可以被配置为使得在DDSPS中实现该推荐配置。在相同或者不同的实施例中,调整器模块也可以被配置为提供总结,该总结包括将DDSPS的配置改变到推荐配置所需的建议的改变。
图1说明了根据本公开至少一个实施例包括调整器模块114的示例DDSPS 100。使用通常与Hadoop架构相关联的术语,DDSPS 100可以例如包括主机102和HDFS集群104。主机可以例如包括作业***106、名称节点108和调整器模块114。每一个集群1……n可以例如包括工作组件A……n,每一个工作组件包括相对应的任务***110A……n和数据节点112A……n。可用于对***100进行可视化的物理布局的示例是集群104可以包括一个或多个服务器机架,并且工作组件A……n与一个或多个服务器机架中的计算设备(例如,服务器)相对应。
主机102可以被配置为管理集群104的配置并且还向集群104中的工作组件A……n分配任务。在Hadoop中,集群104的数据管理可以由HDFS进行,而向集群1……n中的工作组件A……n分配任务可以由HadoopMapReduce引擎或者作业***106确定。HDFS可以被配置为跟踪存储在每一个工作组件A……n中的信息。例如,可以将描述数据节点112A……n的信息内容的元数据从工作组件A....n中的数据节点112A……n传送到主机102中的名称节点108。持有这一信息,HDFS可以不仅意识到数据驻留在哪里,而且还可以监督数据的复制,以便帮助确保在服务器/机架断电期间的连续数据访问。例如,HDFS可以防止相同数据的拷贝驻留在相同的服务器机架上,以便确保如果服务器机架停止(例如,由于异常、维修等等),该数据在DDSPS 100中也将是可用的。工作组件A……n的位置和构成也可以由MapReduce引擎采用,以便向工作组件A……n分配任务。MapReduce可以被配置为将作业划分为可以被分配到工作组件A……n用于处理的较小任务。在完成每一项任务时,工作组件A……n可以将每一项任务的结果返回到主机,在该主机处,该结果可以被编译为针对该作业的结果。例如,作业***106可以被配置为调度要由***100执行的作业,并且在意识到数据位置的情况下,将该作业划分为针对任务***110A……n的任务。例如,可以将对于要求存储在数据节点(例如,数据节点112B)中的数据的任务的处理分配到相对应的服务器(例如,工作组件B),这可以通过消除在工作组件A……n之间不需要的数据传输来削减网络流量。
调整器模块114可以被配置为基于从DDSPS 100接收的配置信息以及基于DDSPS 100的实际操作的建模的组合来调整DDSPS 100的配置。例如,调整器模块114可以被安装在主机中以便允许到针对DDSPS 100的配置文件的访问。在其中Apache Hadoop已经被部署为管理DDSPS 100的示例中,HDFS配置文件和至少作业***106可以对于调整器模块114可访问。可选地,调整器模块114可以被进一步配置为与作业***106和名称节点108二者进行交互。与名称节点108的可选交互可以例如取决于由调整器模块114确定针对DDSPS 100的推荐配置所需的信息、该推荐配置的实现方式(例如,手动或者自动)等等。
图2说明了根据本公开至少一个实施例的所述调整器模块114可以位于其上的设备的示例配置。一般地,设备200可以是具有合适的资源(例如,处理功率和存储器)以便执行调整器模块114连同针对DDSPS 100的管理软件(例如,Apache Hadoop)的任何计算设备。示例设备可以包括平板计算机、膝上型计算机、桌面计算机、服务器等等。尽管DDSPS 100的主机可以由多个设备组成,例如由于控制大的DDSPS 100所需的资源,但是调整器模块114可以仅位于一个机器上。当采用Hadoop时,这可以是相同的设备,其中安装至少HDFS配置文件、MapReduce配置文件和作业***106。设备200可以例如包括***模块202,该***模块202可以被配置为管理设备200中的操作。***模块202可以例如包括处理模块204、存储器模块206、功率模块208、用户接口模块210和可以被配置为与通信模块214交互的通信接口模块212。在所说明的实施例中,调整器模块114被表示为主要由驻留在存储器模块206中的软件组成。然而,本文公开的各种实施例并不仅仅局限于这一实现,并且可以包括其中调整器模块114包括硬件元件和软件元件二者的实现。进而,被示出位于***模块200外部的通信模块214在本文中仅仅出于解释的目的。与通信模块214相关联的一些或者全部功能也可以被结合在***模块202中。
在设备200中,处理模块204可以包括位于分离的部件中的一个或多个处理器,或者可选地,可以包括体现在单个部件(例如,在片上***(SOC)配置中)和任何处理器相关的支持电路(例如,桥接接口等等)中的一个或多个处理核心。示例处理器可以包括从英特尔公司可获得的各种基于x86的微处理器,包括Pentium、Xeon、Itanium、Celeron、Atom、Core i-系列产品家族中的微处理器。支持电路的示例可以包括被配置为提供处理模块204可以经过其与设备200中的其它***部件进行交互的接口的芯片集(例如,从英特尔公司可获得的北桥、南桥等等),这些其它***部件可以按照不同的速度、在不同的总线上进行操作,等等。通常与支持电路相关联的一些或者全部功能也可以被包括在与处理器相同的物理封装中(例如,类似从英特尔公司可获得的Sandy Bridge集成电路的SOC封装)。在一个实施例中,处理模块204可以配备有允许在单个硬件平台上执行多个虚拟机(VM)的虚拟化技术(例如,在从英特尔公司可获得的一些处理器和芯片集中可用的VT-x技术)。例如,VT-x技术也可以结合被配置为使用硬件强制的测量启动环境(MLE)来加强基于软件的保护的受信执行技术(TXT)。
处理模块204可以被配置为执行设备200中的指令。指令可以包括被配置为使处理模块204执行与读取数据、写入数据、处理数据、规划数据、转换数据、变换数据等等有关的活动。信息(例如,指令、数据等等)可以被存储在存储器模块206中。存储器模块206可以包括固定或者可移除格式的随机存取存储器(RAM)和只读存储器(ROM)。RAM可以包括被配置为在设备200的操作期间保持信息的存储器,例如以静态RAM(SRAM)或者动态RAM(DRAM)为例。ROM可以包括诸如被配置为当设备200激活时提供指令的基本输入输出***存储器的存储器、诸如电可编程ROM(EPROM)、闪存等等的可编程存储器。其它固定和/或可移除存储器可以包括例如以磁盘、硬驱等等为例的磁性存储器,诸如固态闪存的电子存储器(例如,嵌入式多媒体卡(eMMC)等等),可移除存储卡或者存储棒(例如,微存储设备(uSD)、USB等等),诸如基于压缩盘的ROM(CD-ROM)的光学存储器等等。功率模块208可以包括内部功率源(例如,电池)和/或外部功率源(例如,机电或者太阳能发电机、电力网等等),以及被配置为向设备200供应操作所需的功率的相关电路。
用户接口模块210可以包括被配置为允许用户与设备200进行交互的电路,例如以各种输入机制(例如,麦克风,开关,按钮,旋钮,键盘,扬声器,触摸表面,被配置为捕获图像和/或感测接近度、距离、运动、手势等等的一个或多个传感器)以及输出机制(例如,扬声器,显示器,发光/闪光指示器,用于振动和运动的机电部件等等)为例。通信接口模块212可以被配置为处理针对通信模块214的分组路由和其它控制功能,这可以包括被配置为支持有线和/或无线通信的资源。有线通信可以包括串行和并行有线介质,例如以以太网、通用串行总线(USB)、Firewire、数据视觉接口(DVI)、高清多媒体接口(HDMI)等等为例。无线通信可以例如包括近距离无线介质(例如,基于诸如近场通信(NFC)标准的射频(RF)、红外(IR)、光学字符识别(OCR)、磁特性感测等等)、短距离无线介质(例如,蓝牙、WLAN、Wi-Fi等等)和长距离无线介质(例如,蜂窝、卫星等等)。在一个实施例中,通信接口模块212可以被配置为防止在通信模块214中活动的无线通信彼此干扰。在执行这一功能时,通信接口模块212可以例如基于等待传输的消息的相对优先级来调度针对通信模块214的活动。
在操作的过程期间,调整器模块114可以与上面关于设备200描述的一些或者全部模块进行交互。例如,在一些实例中,调整器模块114可以采用与DDSPS 100中的其它设备进行通信的通信模块214。与DDSPS 100中的其它设备的通信可以发生,以便例如获得针对DDSPS 100的配置信息、确定DDSPS 100中的设置、实现针对DDSPS 100的推荐配置等等。在一个实施例中,调整器模块114也可以被配置为与用户接口模块210进行交互,以便例如总结实现DDSPS 100中的推荐配置所需的改变。
图3说明了根据本公开至少一个实施例用于调整DDSPS 100的示例操作的流程图。在操作300中的开始之后,调整器模块114可以被配置为在操作302和304中初始浏览DDSPS 100的配置。在一个实施例中,可以将配置划分为设置配置和参数配置。在操作302中,如果需要,可以浏览和重新配置DDSPS 100的设置配置。如在图4中的400处说明的,设置配置可以基于DDSPS 100的物理组成,例如包括DDSPS 100中的设备(例如,服务器)、每一个设备的能力(例如,处理、存储等等)、每一个设备(例如,建筑物、机架等等)的位置以及链接该设备的网络的能力(例如,吞吐量、稳定性等等)。基于这一信息,调整器模块114可以重新配置DDSPS100,以便例如利用具有更多处理功率或者更多冗余存储资源的设备,组织在某些位置(例如,相同的机架)中操作的资源来平衡处理/存储资源,最小化需要经过较慢的网络链路、较慢的设备等等进行的负荷。例如,具有强大的多核处理器和较低容量固态驱动的设备可以用于处理时间敏感的事务,而具有较小功率处理器和大容量磁盘驱动的设备可以用于存放大量信息。可以做出的特定改变的示例可以例如包括配置针对DDSPS 100的Hadoop中间数据和HDFS数据的存储位置、配置增加的数据尺寸(例如,基于类似Hadoop的Java编程语言的针对***的Java虚拟机(JVM)堆尺寸)、配置故障容限(例如,数据将被复制到的以便避免该数据变为不可用的位置,数据应该被复制的程度,等等)。
在操作304中,调整器模块114可以评估DDSPS 100的参数配置。在浏览该参数配置时,调整器模块114可以被配置为访问针对DDSPS 100和构成DDSPS 100的设备的配置文件。调整器模块114可以接着对照DDSPS100的“基线”配置来评估上述二者的参数配置,并且可以因此重新配置DDSPS 100中的各种参数。如在本文中引用的,基线可以包括可能被要求仅操作DDSPS 100(例如,在基本上无错误的状态中)的优选的网络级配置、优选的***级配置、优选的设备级配置等等。例如,DDSPS 100的基线配置可以由管理软件(例如,Apache Hadoop)的提供方支配(dictate)。如在图4中的402处所示,可以由调整器模块114进行评估和/或重新配置的参数的示例可以例如包括使能或者禁止DDSPS 100内的一个或多个设备中的文件***属性(例如,其中“本地”表明设备级配置),使能或者禁止本地操作***(OS)中的文件高速缓存和预取回,使能或者禁止不必要的本地安全和/或备份保护,禁止复制的本地活动等等。例如,在DDSPS 100中的参数评估之后,调整器模块114可以禁止将防止DDSPS 100的管理软件存取构成DDSPS 100的设备中的存储资源的安全措施,禁止可能延迟信息在设备之间的传输的任何本地存取配置,并且禁止任何局部故障保护(例如,服务器RAID***),因为DDSPS 100的管理***可以包括类似的保护(例如,Hadoop支持在DDSPS 100内的分离位置中的数据复制)。
在初始配置阶段之后,调整器模块114可以被配置为基于由DDSPS 100的操作推导的样本信息来确定性能模型,并且基于使用该性能模型在配置空间上进行搜索来确定针对DDSPS 100的推荐配置。如在本文引用的,在配置空间上进行搜索可以例如包括首先确定针对性能模型的全部可能参数配置(例如,确定配置空间)并且接着通过尝试各种参数组合(例如,基于优化算法)来“搜索”配置空间,以便确定该***与先前的***配置相比较将如何执行。由从实际操作中汲取样本可以实现的至少一个优点是调整器模块114可以在DDSPS 100的正常操作期间执行调整。例如,在其中调整器模块114被配置为自动地实现DDSPS 100的推荐配置的情况下,可以按照对于DDSPS 100的操作者透明的方式来连续地执行调整。性能模型的确定可以包括在操作306中收集样本信息,其中该样本信息可以包括由DDSPS 100推导的一个或多个样本。在其中Hadoop被用于管理DDSPS 100的实例中,每一个样本可以例如包括用于运行DDSPS 100中的工作负荷的配置,与该工作负荷相对应的作业日志(例如,从与作业***102相关联的作业日志文件获得),与该工作负荷相对应的资源使用信息,等等。DDSPS 100的配置/参数空间可以相当大,因此在至少一个实施例中,可以使用“智能”采样来选择样本。智能采样可以包括使用例如基于遗传算法、模拟退火、单纯形法、梯度下降法、回归随机采样等等的直接搜索算法,以便在参数空间上智能地收集样本(例如,如上所述的工作负荷信息的集合)。选择某些样本(例如,最好地反映DDSPS 100的正常操作)可以降低精确地代表DDSPS 100的操作行为所需的样本的总数量。
在一个实施例中,性能模型可以是机器学习模型,该性能模型可以基于在操作306中收集的样本而在操作308中被训练。例如,性能模型可以是包括可配置参数的数学模型,该可配置参数可以模拟DDSPS 100的性能。性能模型的规划可以例如由于将在操作306中从DDSPS 100提取的样本输入到被监督的机器学习算法中而产生,该机器学习算法可以被配置为对不同参数之间的非线***互/依赖进行有效建模。示例的被监督的机器学习算法可以包括人工神经网络(ANN)、M5决策树、支持向量回归(SVR)等等。性能模型可以使用各种参数来描述DDSPS 100的***性能。如在图4中的404处所示,当由Hadoop管理时会涉及DDSPS 100的示例参数可以例如包括Map和Reduce任务级参数、扰乱参数、作业和/或任务完成时间关系、工作组件资源活动和分布式***(例如,DDSPS 100)资源设置。在操作310中,采样和训练可以继续,直到在仿真DDSPS 100的性能时具有要求的精确度的性能模型结果为止。精确度可以例如通过将工作负荷的参数***到性能模型中并且确定该性能模型的性能预测是否足够接近在从DDSPS 100提取的样本中观察到的实际结果(例如,在允许的误差内)来进行验证。
在操作308和310中训练了性能模型之后,调整器模块114可以被配置为使用该性能模型来搜索DDSPS 100的可能配置改变,最终目标是实现针对DDSPS 100的推荐配置。在操作312中,调整器模块114可以采用最优搜索算法来搜索配置空间并且使用该性能模型来测试配置,以便确定DDSPS 100的最佳配置。例如,在操作316和318中,调整器模块114可以被配置为基于该优化算法来选择参数配置,并且使用该模型来测试参数配置的性能。可以将该参数配置的性能与先前配置进行比较,以便确定DDSPS 100的性能是否将由于改变而得到改善。搜索算法可以例如在确定可以被实现为缓解***性能问题(例如,关系、瓶颈、依赖性等等)的参数配置时考虑该***性能问题。
如果在操作318中实现了最佳配置,则在操作320中,调整器模块114可以作用于该推荐配置。在一个实施例中,调整器模块114可以被配置为在DDSPS 100中自动地实现推荐配置。自动地实现该推荐配置可以例如包括使DDSPS 100中的管理软件(例如,Apache Hadoop)实现获得该推荐配置的改变。这可以通过调整器模块114修改或更新HDFS和MapReduce配置文件中的信息,与DDSPS 100中的特定设备进行通信以便改变本地配置,与网络设备进行通信以便改变网络配置等等来发生。在相同或者不同的实施例中,调整器模块114也可以被配置为总结对DDSPS 100的配置的建议的改变,以便实现该推荐配置。例如,调整器模块114可能不能够使推荐配置中的一些或者全部自动地实现,并且可能代替地例如以报告的格式来总结所需的改变(例如,可以显示该报告或者提供该报告用于打印到纸张)。该报告可以例如指示DDSPS 100中要被重新配置的部分,并且可能指示用于对DDSPS 100进行这些改变的过程。单独地,或者与重新配置建议相组合,该报告也可以将特定的设备、网络设备等等识别为DDSPS 100中的瓶颈,并且可以推荐对于有问题的设备、网络设备等等的升级或者更换。
尽管图3说明了根据实施例的各种操作,但是要理解的是,对于其它实施例,并不是图3中阐释的所有操作都是必要的。实际上,在本文中完全设想,在本公开的其它实施例中,可以按照在附图中没有专门示出但是仍然完全符合本公开的方式来组合在图3中阐释的操作和/或在本文描述的其它操作。因而,涉及在一幅图中没有精确示出的特征和/或操作的权利要求被认为在本公开的范围和内容内。
如在本文的任意实施例中使用的,词语“模块”可以指代被配置为执行前述操作中的任意一个的软件、固件和/或电路。软件可以被体现为软件包、代码、指令、指令集和/或记录在非暂态计算机可读存储介质上的数据。固件可以被体现为被硬编码(例如非易失性)在存储器设备中的代码、指令或指令集和/或数据。如在本文的任意实施例中使用的,“电路”可以例如单独或者组合地包括硬连线电路、诸如包括一个或多个单独的指令处理核心的计算机处理器的可编程电路,状态机电路和/或存储由可编程电路执行的指令的固件。模块可以被共同地或者单独地体现为形成较大***的一部分的电路,该较大***例如是集成电路(IC)、片上***(SoC)、桌面计算机、膝上型计算机、平板计算机、服务器、智能电话等等。
本文描述的任意操作可以被实现在包括一个或多个存储介质的***中,在该一个或多个存储介质上单独地或者组合地存储有当由一个或多个处理器执行时执行该方法的指令。这里,处理器可以例如包括服务器CPU、移动设备CPU和/或其它可编程电路。并且,期望本文描述的操作可以在多个物理设备之间分布,例如在多于一个不同的物理位置处的处理结构。存储介质可以包括任意类型的有形介质,例如,任意类型的磁盘,包括硬盘、软盘、光盘、压缩盘只读存储器(CD-ROM)、压缩盘可重写(CD-RW)和磁光盘,诸如动态和静态随机存取存储器(RAM)的RAM、可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、闪存、固态盘(SSD)、嵌入式多媒体卡(eMMC)、安全数字输入/输出(SDIO)卡、磁卡或者光学卡、或者适合于存储电子指令的任意类型的介质。其它实施例可以被实现为由可编程控制设备执行的软件模块。
因而,本公开描述了用于分布式数据存储和处理***的调整。一种设备可以包括调整器模块,该调整器模块被配置为至少基于在该设备中可用的配置信息来确定分布式数据存储和处理***配置,并且基于基线配置来调节该分布式数据存储和处理***配置。调整器模块可以被进一步配置为接着确定从实际的分布式数据存储和处理***操作推导的针对该分布式数据存储和处理***的样本信息,并且在创建该分布式数据存储和处理***的性能模型时使用该样本信息。该调整器模块可以被进一步被配置为接着基于该性能模型来评估对于该***的配置改变,并且基于该评估确定推荐的分布式数据存储和处理***。
下面的示例涉及进一步的实施例。在一个示例实施例中,提供一种设备。该设备可以包括至少调整器模块,该调整器模块被配置为至少基于配置信息来确定针对分布式数据存储和处理***的配置,基于基线分布式数据存储和处理***皮遏制来调节该分布式数据存储和处理***的配置,确定针对该分布式数据存储和处理***的样本信息,该所述信息从该分布式数据存储和处理***的操作推导,基于该样本信息创建该分布式数据存储和处理***的性能模型,使用该性能模型来评估对于该分布式数据存储和处理***的配置改变,并且基于该配置改变评估来确定推荐配置。
上面的示例设备可以被进一步配置,其中,所述调整器模块包括软件部件,所述设备进一步包括至少一个处理器,所述处理器被配置为执行存储在所述设备中的存储器内的程序代码,所述程序代码的执行生成所述软件部件。
上面的示例设备可以被单独地或者除了上面的示例配置之外进行进一步配置,其中,被配置为确定所述分布式数据存储和处理***的所述配置的所述调整器模块包括被配置为确定针对所述分布式数据存储和处理***的***设置配置和***参数配置的所述调整器模块。
上面的示例设备可以被单独地或者除了上面的示例配置之外进行进一步配置,其中,被配置为调节所述分布式数据存储和处理***的所述配置的所述调整器模块包括被配置为调节所述分布式数据存储和处理***中的网络配置、***配置或者至少一个设备的配置中的至少一个的所述调整器模块。
上面的示例设备可以被单独地或者除了上面的示例配置之外进行进一步配置,其中,所述分布式数据存储和处理***包括至少一个Hadoop集群,并且被配置为确定样本信息的所述调整器模块包括被配置为访问与所述至少一个Hadoop集群相对应的至少作业日志文件的所述调整器模块,所述作业日志文件在所述设备中可用。在这一配置中,所述示例设备可以被进一步配置,其中,所述样本信息包括一个或多个样本,每一个样本包括用于在所述至少一个Hadoop集群中运行工作负荷的至少配置,与所述工作负荷相对应的作业日志,以及与所述工作负荷相对应的资源使用信息。在这一配置中,所述示例设备可以被进一步配置,其中,被配置为创建所述分布式数据存储和处理***的性能模型的所述调整器模块包括被配置为基于所述一个或多个样本来编译所述分布式数据存储和处理***的数学模型的所述调整器模块,所述数学模型描述***性能和***依赖性中的至少一个。
上面的示例设备可以被单独地或者除了上面的示例配置之外进行进一步配置,其中,被配置为评估对所述分布式数据存储和处理***的配置改变的所述调整器模块包括被配置为通过搜索配置空间并且使用所述性能模型评估配置以便确定所述推荐配置来优化***性能的所述调整器模块。
上面的示例设备可以单独地或者除了上面的示例配置之外进一步包括被配置为在所述分布式数据存储和处理***中实现所述推荐配置的所述调整器模块。
上面的示例设备可以单独地或者除了上面的示例配置之外进一步包括被配置为提供包括将所述分布式数据存储和处理***的所述配置改变到所述推荐配置所需的建议的改变的总结的所述调整器模块。
在另一示例实施例中,提供一种方法。所述方法可以包括至少基于配置信息来确定分布式数据存储和处理***的配置,基于基线分布式数据存储和处理***配置来调节所述分布式数据存储和处理***的所述配置,确定针对所述分布式数据存储和处理***的样本信息,所述样本信息是从所述分布式数据存储和处理***的操作推导的,基于所述样本信息创建所述分布式数据存储和处理***的性能模型,使用所述性能模型来评估对所述分布式数据存储和处理***的配置改变,并且基于配置改变评估来确定推荐配置。
上面的示例方法可以被进一步配置,其中,确定所述分布式数据存储和处理***的所述配置包括确定针对所述分布式数据存储和处理***的***设置配置和***参数配置。
上面的示例方法可以被单独地或者除了上面的示例配置之外进行进一步配置,其中,调节所述分布式数据存储和处理***的所述配置包括调节所述分布式数据存储和处理***中的网络配置、***配置或者至少一个设备的配置中的至少一个。
上面的示例方法可以被单独地或者除了上面的示例配置之外进行进一步配置,其中,所述分布式数据存储和处理***包括至少一个Hadoop集群,并且确定样本信息包括访问与所述至少一个Hadoop集群相对应的至少作业日志文件。在这一配置中,所述示例方法可以被进一步配置,其中,所述样本信息包括一个或多个样本,每一个样本包括用于在所述至少一个Hadoop集群中运行工作负荷的至少配置,与所述工作负荷相对应的作业日志,以及与所述工作负荷相对应的资源使用信息。在这一配置中,所述示例方法可以被进一步配置,其中,创建所述分布式数据存储和处理***的性能模型包括基于所述一个或多个样本来编译所述分布式数据存储和处理***的数学模型,所述数学模型描述***性能和***依赖性中的至少一个。
上面的示例方法可以被单独地或者除了上面的示例配置之外进行进一步配置,其中,评估对所述分布式数据存储和处理***的配置改变包括通过搜索配置空间并且使用所述性能模型评估配置以便确定所述推荐配置来优化***性能。
上面的示例方法可以单独地或者除了上面的示例配置之外进行进一步包括在所述分布式数据存储和处理***中实现所述推荐配置。
上面的示例方法可以单独地或者除了上面的示例配置之外进行进一步包括提供包括将所述分布式数据存储和处理***的所述配置改变到所述推荐配置所需的建议的改变的总结。
在另一示例实施例中,提供一种***,所述***包括设备,所述设备包括至少调整器模块,所述***被布置为执行上面的示例方法中的任意一种。
在另一示例实施例中,提供一种芯片集,所述芯片集被布置为执行上面的示例方法中的任意一种。
在另一示例实施例中,提供至少一种机器可读介质,所述机器可读介质包括多个指令,所述多个指令对在计算设备上被执行做出响应而使所述计算设备执行上面的示例方法中的任意一种。
在另一示例实施例中,提供一种设备,所述设备被配置用于调整分布式数据存储和处理***,所述设备被布置为执行上面的示例方法中的任意一种。
在另一示例实施例中,提供一种设备,所述设备具有用于执行上面的示例方法中的任意一种的模块。
在另一示例实施例中,提供一种***,所述***包括具有单独地或者组合地存储在其上的指令的至少一种机器可读存储介质,所述指令当由一个或多个处理器执行时使所述***执行上面的示例方法中的任意一种。
在另一示例实施例中,提供一种设备。所述设备可以包括至少调整器模块,所述至少调整器模块被配置为至少基于配置信息来确定分布式数据存储和处理***的配置,基于基线分布式数据存储和处理***配置来调节所述分布式数据存储和处理***的配置,确定针对所述分布式数据存储和处理***的样本信息,所述样本信息是从所述分布式数据存储和处理***的操作推导的,基于所述样本信息来创建所述分布式数据存储和处理***的性能模型,使用所述性能模型来评估对所述分布式数据存储和处理***的配置改变,并且基于配置改变评估来确定推荐配置。
上面的示例设备可以被进一步配置,其中,所述分布式数据存储和处理***包括至少一个Hadoop集群,并且被配置为确定样本信息的所述调整器模块包括被配置为访问与所述至少一个Hadoop集群相对应的至少作业日志文件的所述调整器模块,所述作业日志文件在所述设备中可用。在这一配置中,所述示例设备可以被进一步配置,其中,所述样本信息包括一个或多个样本,每一个样本包括用于在所述至少一个Hadoop集群中运行工作负荷的至少配置,与所述工作负荷相对应的作业日志,以及与所述工作负荷相对应的资源使用信息。在这一配置中,所述示例设备可以被进一步配置,其中,被配置为创建所述分布式数据存储和处理***的性能模型的所述调整器模块包括被配置为基于所述一个或多个样本来编译所述分布式数据存储和处理***的数学模型的所述调整器模块,所述数学模型描述***性能和***依赖性中的至少一个。
上面的示例设备可以被单独地或者除了上面的示例配置之外进行进一步配置,其中,被配置为评估对所述分布式数据存储和处理***的配置改变的所述调整器模块包括被配置为通过搜索配置空间并且使用所述性能模型评估配置以便确定所述推荐配置来优化***性能的所述调整器模块。
上面的示例设备可以单独地或者除了上面的示例配置之外进一步包括被配置为在所述分布式数据存储和处理***中实现所述推荐配置或者提供包括将所述分布式数据存储和处理***的所述配置改变到所述推荐配置所需的建议的改变的总结中的至少一个。
在另一示例实施例中,提供一种方法。所述方法可以包括至少基于配置信息来确定分布式数据存储和处理***的配置,基于基线分布式数据存储和处理***配置来调节所述分布式数据存储和处理***的所述配置,确定针对所述分布式数据存储和处理***的样本信息,所述样本信息是从所述分布式数据存储和处理***的操作推导的,基于所述样本信息创建所述分布式数据存储和处理***的性能模型,使用所述性能模型来评估对所述分布式数据存储和处理***的配置改变,并且基于配置改变评估来确定推荐配置。
上面的示例方法可以被进一步配置,其中,所述分布式数据存储和处理***包括至少一个Hadoop集群,并且确定样本信息包括访问与所述至少一个Hadoop集群相对应的至少作业日志文件。在这一配置中,所述示例方法可以被进一步配置,其中,所述样本信息包括一个或多个样本,每一个样本包括用于在所述至少一个Hadoop集群中运行工作负荷的至少配置,与所述工作负荷相对应的作业日志,以及与所述工作负荷相对应的资源使用信息。在这一配置中,所述示例方法可以被进一步配置,其中,创建所述分布式数据存储和处理***的性能模型包括基于所述一个或多个样本来编译所述分布式数据存储和处理***的数学模型,所述数学模型描述***性能和***依赖性中的至少一个。
上面的示例方法可以被单独地或者除了上面的示例配置之外进行进一步配置,其中,评估对所述分布式数据存储和处理***的配置改变包括通过搜索配置空间并且使用所述性能模型评估配置以便确定所述推荐配置来优化***性能。
上面的示例方法可以单独地或者除了上面的示例配置之外进行进一步包括在所述分布式数据存储和处理***中实现所述推荐配置或者提供包括将所述分布式数据存储和处理***的所述配置改变到所述推荐配置所需的建议的改变的总结中的至少一个。
在另一示例实施例中,提供一种***,所述***包括设备,所述设备包括至少调整器模块,所述***被布置为执行上面的示例方法中的任意一种。
在另一示例实施例中,提供一种芯片集,所述芯片集被布置为执行上面的示例方法中的任意一种。
在另一示例实施例中,提供至少一种机器可读介质,所述机器可读介质包括多个指令,所述多个指令对在计算设备上被执行做出响应而使所述计算设备执行上面的示例方法中的任意一种。
在另一示例实施例中,提供一种设备,所述设备可以包括至少调整器模块,所述调整器模块被配置为至少基于配置信息来确定分布式数据存储和处理***的配置,基于基线分布式数据存储和处理***配置来调节所述分布式数据存储和处理***的所述配置,确定针对所述分布式数据存储和处理***的样本信息,所述样本信息是从所述分布式数据存储和处理***的操作推导的,基于所述样本信息来创建所述分布式数据存储和处理***的性能模型,使用所述性能模型来评估对所述分布式数据存储和处理***的配置改变,并且基于配置改变评估来确定推荐配置。
上面的示例设备可以被进一步配置,其中,所述调整器模块包括软件部件,所述设备进一步包括至少一个处理器,所述至少一个处理器被配置为执行存储在所述设备中的存储器内的程序代码,所述程序代码的执行生成所述软件部件。
上面的示例设备可以被单独地或者除了上面的示例配置之外进行进一步配置,其中,被配置为确定所述分布式数据存储和处理***的所述配置的所述调整器模块包括被配置为确定针对所述分布式数据存储和处理***的***设置配置和***参数配置的所述调整器模块。
上面的示例设备可以被单独地或者除了上面的示例配置之外进行进一步配置,其中,被配置为调节所述分布式数据存储和处理***的所述配置的所述调整器模块包括被配置为调节所述分布式数据存储和处理***中的网络配置、***配置或者至少一个设备的配置中的至少一个的所述调整器模块。
上面的示例设备可以被单独地或者除了上面的示例配置之外进行进一步配置,其中,所述分布式数据存储和处理***包括至少一个Hadoop集群,并且被配置为确定样本信息的所述调整器模块包括被配置为访问与所述至少一个Hadoop集群相对应的至少作业日志文件的所述调整器模块,所述作业日志文件在所述设备中可用。在这一配置中,所述示例设备可以被进一步配置,其中,所述样本信息包括一个或多个样本,每一个样本包括用于在所述至少一个Hadoop集群中运行工作负荷的至少配置,与所述工作负荷相对应的作业日志,以及与所述工作负荷相对应的资源使用信息。在这一配置中,所述示例设备可以被进一步配置,其中,被配置为创建所述分布式数据存储和处理***的性能模型的所述调整器模块包括被配置为基于所述一个或多个样本来编译所述分布式数据存储和处理***的数学模型的所述调整器模块,所述数学模型描述***性能和***依赖性中的至少一个。
上面的示例设备可以被单独地或者除了上面的示例配置之外进行进一步配置,其中,被配置为评估对所述分布式数据存储和处理***的配置改变的所述调整器模块包括被配置为通过搜索配置空间并且使用所述性能模型评估配置以便确定所述推荐配置来优化***性能的所述调整器模块。
上面的示例设备可以单独地或者除了上面的示例配置之外进一步包括被配置为在所述分布式数据存储和处理***中实现所述推荐配置的所述调整器模块。
上面的示例设备可以单独地或者除了上面的示例配置之外进一步包括被配置为提供包括将所述分布式数据存储和处理***的所述配置改变到所述推荐配置所需的建议的改变的总结的所述调整器模块。
在另一示例实施例中,提供一种方法,所述方法包括至少基于配置信息来确定分布式数据存储和处理***的配置,基于基线分布式数据存储和处理***配置来调节所述分布式数据存储和处理***的所述配置,确定针对所述分布式数据存储和处理***的样本信息,所述样本信息是从所述分布式数据存储和处理***的操作推导的,基于所述样本信息创建所述分布式数据存储和处理***的性能模型,使用所述性能模型来评估对所述分布式数据存储和处理***的配置改变,并且基于配置改变评估来确定推荐配置。
上面的示例方法可以被进一步配置,其中,确定所述分布式数据存储和处理***的所述配置包括确定针对所述分布式数据存储和处理***的***设置配置和***参数配置。
上面的示例方法可以被单独地或者除了上面的示例配置之外进行进一步配置,其中,调节所述分布式数据存储和处理***的所述配置包括调节所述分布式数据存储和处理***中的网络配置、***配置或者至少一个设备的配置中的至少一个。
上面的示例方法可以被单独地或者除了上面的示例配置之外进行进一步配置,其中,所述分布式数据存储和处理***包括至少一个Hadoop集群,并且确定样本信息包括访问与所述至少一个Hadoop集群相对应的至少作业日志文件。在这一配置中,所述示例方法可以被进一步配置,其中,所述样本信息包括一个或多个样本,每一个样本包括用于在所述至少一个Hadoop集群中运行工作负荷的至少配置,与所述工作负荷相对应的作业日志,以及与所述工作负荷相对应的资源使用信息。在这一配置中,所述示例方法可以被进一步配置,其中,创建所述分布式数据存储和处理***的性能模型包括基于所述一个或多个样本来编译所述分布式数据存储和处理***的数学模型,所述数学模型描述***性能和***依赖性中的至少一个。
上面的示例方法可以被单独地或者除了上面的示例配置之外进行进一步配置,其中,评估对所述分布式数据存储和处理***的配置改变包括通过搜索配置空间并且使用所述性能模型评估配置以便确定所述推荐配置来优化***性能。
上面的示例方法可以单独地或者除了上面的示例配置之外进一步包括在所述分布式数据存储和处理***中实现所述推荐配置。
上面的示例方法可以单独地或者除了上面的示例配置之外进一步包括提供包括将所述分布式数据存储和处理***的所述配置改变到所述推荐配置所需的建议的改变的总结。
在另一示例实施例中,提供一种***。所述***可以包括用于至少基于配置信息来确定分布式数据存储和处理***的配置的模块,用于基于基线分布式数据存储和处理***配置来调节所述分布式数据存储和处理***的所述配置的模块,用于确定针对所述分布式数据存储和处理***的样本信息的模块,所述样本信息是从所述分布式数据存储和处理***的操作推导的,用于基于所述样本信息来创建所述分布式数据存储和处理***的性能模型的模块,用于使用所述性能模型来评估对所述分布式数据存储和处理***的配置改变的模块,以及用于基于配置改变评估来确定推荐配置的模块。
上面的示例***可以被进一步配置,其中,确定所述分布式数据存储和处理***的所述配置包括确定针对所述分布式数据存储和处理***的***设置配置和***参数配置。
上面的示例***可以被单独地或者除了上面的示例配置之外进行进一步配置,其中,调节所述分布式数据存储和处理***的所述配置包括调节所述分布式数据存储和处理***中的网络配置、***配置或者至少一个设备的配置中的至少一个。
上面的示例***可以被单独地或者除了上面的示例配置之外进行进一步配置,其中,所述分布式数据存储和处理***包括至少一个Hadoop集群,并且确定样本信息包括访问与所述至少一个Hadoop集群相对应的至少作业日志文件。在这一配置中,所述示例方法可以被进一步配置,其中,所述样本信息包括一个或多个样本,每一个样本包括用于在所述至少一个Hadoop集群中运行工作负荷的至少配置,与所述工作负荷相对应的作业日志,以及与所述工作负荷相对应的资源使用信息。在这一配置中,所述示例***可以被进一步配置,其中,创建所述分布式数据存储和处理***的性能模型包括基于所述一个或多个样本来编译所述分布式数据存储和处理***的数学模型,所述数学模型描述***性能和***依赖性中的至少一个。
上面的示例***可以被单独地或者除了上面的示例配置之外进行进一步配置,其中,评估对所述分布式数据存储和处理***的配置改变包括通过搜索配置空间并且使用所述性能模型评估配置以便确定所述推荐配置来优化***性能。
上面的示例***可以单独地或者除了上面的示例配置之外进一步包括用于在所述分布式数据存储和处理***中实现所述推荐配置的模块。
上面的示例***可以单独地或者除了上面的示例配置之外进一步包括用于提供包括将所述分布式数据存储和处理***的所述配置改变到所述推荐配置所需的建议的改变的总结的模块。
本文采用的术语和表述被用作描述而非限制的项,并且在这样的术语和表述的使用中,并不意在排除所示出和描述的特征(或者其部分)的任何等同物,并且意识到在权利要求的范围内的各种修改是可能的。因此,权利要求意在覆盖所有这样的等同物。

Claims (24)

1.一种设备,包括:
至少一调整器模块,所述调整器模块被配置为:
至少基于配置信息来确定分布式数据存储和处理***的配置;
基于基线分布式数据存储和处理***配置来调节所述分布式数据存储和处理***的所述配置;
确定针对所述分布式数据存储和处理***的样本信息,所述样本信息是从所述分布式数据存储和处理***的操作推导的;
基于所述样本信息来创建所述分布式数据存储和处理***的性能模型;
使用所述性能模型来评估对所述分布式数据存储和处理***的配置改变;并且
基于配置改变评估来确定推荐配置。
2.根据权利要求1所述的设备,其中,所述调整器模块包括软件部件,所述设备进一步包括至少一个处理器,所述至少一个处理器被配置为执行存储在所述设备中的存储器内的程序代码,所述程序代码的执行生成所述软件部件。
3.根据权利要求1所述的设备,其中,被配置为确定所述分布式数据存储和处理***的所述配置的所述调整器模块包括被配置为确定针对所述分布式数据存储和处理***的***设置配置和***参数配置的所述调整器模块。
4.根据权利要求1所述的设备,其中,被配置为调节所述分布式数据存储和处理***的所述配置的所述调整器模块包括被配置为调节所述分布式数据存储和处理***中的网络配置、***配置或者至少一个设备的配置中的至少一个的所述调整器模块。
5.根据权利要求1所述的设备,其中,所述分布式数据存储和处理***包括至少一个Hadoop集群,并且被配置为确定样本信息的所述调整器模块包括被配置为至少访问与所述至少一个Hadoop集群相对应的作业日志文件的所述调整器模块,所述作业日志文件在所述设备中可用。
6.根据权利要求5所述的设备,其中,所述样本信息包括一个或多个样本,每一个样本包括用于在所述至少一个Hadoop集群中运行工作负荷的至少一配置,与所述工作负荷相对应的作业日志,以及与所述工作负荷相对应的资源使用信息。
7.根据权利要求6所述的设备,其中,被配置为创建所述分布式数据存储和处理***的性能模型的所述调整器模块包括被配置为基于所述一个或多个样本来编译所述分布式数据存储和处理***的数学模型的所述调整器模块,所述数学模型描述***性能和***依赖性中的至少一个。
8.根据权利要求1所述的设备,其中,被配置为评估对所述分布式数据存储和处理***的配置改变的所述调整器模块包括被配置为通过搜索配置空间并且使用所述性能模型评估配置以便确定所述推荐配置来优化***性能的所述调整器模块。
9.根据权利要求1所述的设备,进一步包括被配置为在所述分布式数据存储和处理***中实现所述推荐配置的所述调整器模块。
10.根据权利要求1所述的设备,进一步包括被配置为提供包括将所述分布式数据存储和处理***的所述配置改变到所述推荐配置所需的建议的改变的总结的所述调整器模块。
11.一种方法,包括:
至少基于配置信息来确定分布式数据存储和处理***的配置;
基于基线分布式数据存储和处理***配置来调节所述分布式数据存储和处理***的所述配置;
确定针对所述分布式数据存储和处理***的样本信息,所述样本信息是从所述分布式数据存储和处理***的操作推导的;
基于所述样本信息创建所述分布式数据存储和处理***的性能模型;
使用所述性能模型来评估对所述分布式数据存储和处理***的配置改变;并且
基于配置改变评估来确定推荐配置。
12.根据权利要求11所述的方法,其中,确定所述分布式数据存储和处理***的所述配置包括确定针对所述分布式数据存储和处理***的***设置配置和***参数配置。
13.根据权利要求11所述的方法,其中,调节所述分布式数据存储和处理***的所述配置包括调节所述分布式数据存储和处理***中的网络配置、***配置或者至少一个设备的配置中的至少一个。
14.根据权利要求11所述的方法,其中,所述分布式数据存储和处理***包括至少一个Hadoop集群,并且确定样本信息包括至少访问与所述至少一个Hadoop集群相对应的作业日志文件。
15.根据权利要求14所述的方法,其中,所述样本信息包括一个或多个样本,每一个样本包括用于在所述至少一个Hadoop集群中运行工作负荷的至少一配置,与所述工作负荷相对应的作业日志,以及与所述工作负荷相对应的资源使用信息。
16.根据权利要求15所述的方法,其中,创建所述分布式数据存储和处理***的性能模型包括基于所述一个或多个样本来编译所述分布式数据存储和处理***的数学模型,所述数学模型描述***性能和***依赖性中的至少一个。
17.根据权利要求11所述的方法,其中,评估对所述分布式数据存储和处理***的配置改变包括通过搜索配置空间并且使用所述性能模型评估配置以便确定所述推荐配置来优化***性能。
18.根据权利要求11所述的方法,进一步包括在所述分布式数据存储和处理***中实现所述推荐配置。
19.根据权利要求11所述的方法,进一步包括提供包括将所述分布式数据存储和处理***的所述配置改变到所述推荐配置所需的建议的改变的总结。
20.一种***,所述***包括设备,所述设备包括至少一调整器模块,所述***被布置为执行根据权利要求11到19中的任意一项所述的方法。
21.一种芯片集,所述芯片集被布置为执行根据权利要求11到19中的任意一项所述的方法。
22.至少一种机器可读介质,所述机器可读介质包括多个指令,所述多个指令对在计算设备上被执行做出响应而使所述计算设备执行根据权利要求11到19中的任意一项所述的方法。
23.一种设备,所述设备被配置用于调整分布式数据存储和处理***,所述设备被布置为执行根据权利要求11到19中的任意一项所述的方法。
24.一种设备,所述设备具有用于执行根据权利要求11到19中的任意一项所述的方法的单元。
CN201380049962.XA 2012-10-30 2013-10-04 对于分布式数据存储和处理***的调整(tune) Expired - Fee Related CN104662530B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/663,901 2012-10-30
US13/663,901 US20140122546A1 (en) 2012-10-30 2012-10-30 Tuning for distributed data storage and processing systems
PCT/US2013/063476 WO2014070376A1 (en) 2012-10-30 2013-10-04 Tuning for distributed data storage and processing systems

Publications (2)

Publication Number Publication Date
CN104662530A true CN104662530A (zh) 2015-05-27
CN104662530B CN104662530B (zh) 2018-08-17

Family

ID=50548415

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380049962.XA Expired - Fee Related CN104662530B (zh) 2012-10-30 2013-10-04 对于分布式数据存储和处理***的调整(tune)

Country Status (5)

Country Link
US (1) US20140122546A1 (zh)
EP (1) EP2915061A4 (zh)
JP (1) JP6031196B2 (zh)
CN (1) CN104662530B (zh)
WO (1) WO2014070376A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106020982A (zh) * 2016-05-20 2016-10-12 东南大学 一种软件组件资源消耗模拟方法
WO2018098670A1 (zh) * 2016-11-30 2018-06-07 华为技术有限公司 一种进行数据处理的方法和装置
CN108509723A (zh) * 2018-04-02 2018-09-07 东南大学 基于人工神经网络的LRU Cache预取机制性能收益评估方法

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140298343A1 (en) * 2013-03-26 2014-10-02 Xerox Corporation Method and system for scheduling allocation of tasks
US9298590B2 (en) * 2014-06-26 2016-03-29 Google Inc. Methods and apparatuses for automated testing of streaming applications using mapreduce-like middleware
TWI510931B (zh) * 2014-08-27 2015-12-01 Inst Information Industry 用於一叢集運算系統之主裝置、從屬裝置及其運算方法
US9811379B2 (en) 2015-06-01 2017-11-07 Samsung Electronics Co., Ltd. Highly efficient inexact computing storage device
US10489197B2 (en) 2015-06-01 2019-11-26 Samsung Electronics Co., Ltd. Highly efficient inexact computing storage device
US10733023B1 (en) * 2015-08-06 2020-08-04 D2Iq, Inc. Oversubscription scheduling
JP6129290B1 (ja) 2015-12-24 2017-05-17 財團法人工業技術研究院Industrial Technology Research Institute 分散計算におけるアプリケーションパラメータ設定およびシステム仕様設定を推奨する方法およびシステム
US10013289B2 (en) * 2016-04-28 2018-07-03 International Business Machines Corporation Performing automatic map reduce job optimization using a resource supply-demand based approach
US10528447B2 (en) 2017-05-12 2020-01-07 International Business Machines Corporation Storage system performance models based on empirical component utilization
CN110389816B (zh) * 2018-04-20 2023-05-23 伊姆西Ip控股有限责任公司 用于资源调度的方法、装置以及计算机可读介质
US10831633B2 (en) 2018-09-28 2020-11-10 Optum Technology, Inc. Methods, apparatuses, and systems for workflow run-time prediction in a distributed computing system
CN112693502A (zh) * 2019-10-23 2021-04-23 上海宝信软件股份有限公司 基于大数据架构的城市轨道交通监察***及方法
US11106509B2 (en) 2019-11-18 2021-08-31 Bank Of America Corporation Cluster tuner
US11429441B2 (en) 2019-11-18 2022-08-30 Bank Of America Corporation Workflow simulator
KR102160950B1 (ko) * 2020-03-30 2020-10-05 주식회사 이글루시큐리티 보안취약점 점검 시 데이터 분산처리 시스템 및 그 방법
US11561843B2 (en) * 2020-06-11 2023-01-24 Red Hat, Inc. Automated performance tuning using workload profiling in a distributed computing environment

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101395602A (zh) * 2005-12-29 2009-03-25 亚马逊科技公司 用于分布式文件存储和索引服务的方法和装置
CN101663651A (zh) * 2007-03-30 2010-03-03 完美天空Jsat株式会社 分布式存储***

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6223171B1 (en) * 1998-08-25 2001-04-24 Microsoft Corporation What-if index analysis utility for database systems
US7747422B1 (en) * 1999-10-13 2010-06-29 Elizabeth Sisley Using constraint-based heuristics to satisfice static software partitioning and allocation of heterogeneous distributed systems
JP4771528B2 (ja) * 2005-10-26 2011-09-14 キヤノン株式会社 分散処理システムおよび分散処理方法
US8065397B2 (en) * 2006-12-26 2011-11-22 Axeda Acquisition Corporation Managing configurations of distributed devices
US20110153606A1 (en) * 2009-12-18 2011-06-23 Electronics And Telecommunications Research Institute Apparatus and method of managing metadata in asymmetric distributed file system
US20120030018A1 (en) * 2010-07-28 2012-02-02 Aol Inc. Systems And Methods For Managing Electronic Content
US20120182891A1 (en) * 2011-01-19 2012-07-19 Youngseok Lee Packet analysis system and method using hadoop based parallel computation
US20130318538A1 (en) * 2011-02-02 2013-11-28 Abhishek Verma Estimating a performance characteristic of a job using a performance model
EP2686764A4 (en) * 2011-03-17 2015-06-03 Hewlett Packard Development Co DATA SOURCE ANALYTICS
US9223845B2 (en) * 2012-08-01 2015-12-29 Netapp Inc. Mobile hadoop clusters
US9047181B2 (en) * 2012-09-07 2015-06-02 Splunk Inc. Visualization of data from clusters
US20140101298A1 (en) * 2012-10-05 2014-04-10 Microsoft Corporation Service level agreements for a configurable distributed storage system
US9253053B2 (en) * 2012-10-11 2016-02-02 International Business Machines Corporation Transparently enforcing policies in hadoop-style processing infrastructures
US20140173618A1 (en) * 2012-10-14 2014-06-19 Xplenty Ltd. System and method for management of big data sets

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101395602A (zh) * 2005-12-29 2009-03-25 亚马逊科技公司 用于分布式文件存储和索引服务的方法和装置
CN101663651A (zh) * 2007-03-30 2010-03-03 完美天空Jsat株式会社 分布式存储***

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
SHIVNATH BABU,ET AL.: "Towards Automatic Optimization of MapReduce Programs", 《SOCC’10 PROCEEDINGS OF THE 1ST ACM SYMPOSIUM ON CLOUD COMPUTING》 *
杨锦,等.: "异构分布式***的负载均衡调度算法", 《计算机工程》 *
赵铁柱.: "分布式文件***性能建模及应用研究", 《中国博士学位论文全文数据库 信息科技辑》 *
陈志刚,等.: "分布式***中一种动态负载均衡策略、相关模型及算法研究", 《小型微型》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106020982A (zh) * 2016-05-20 2016-10-12 东南大学 一种软件组件资源消耗模拟方法
WO2018098670A1 (zh) * 2016-11-30 2018-06-07 华为技术有限公司 一种进行数据处理的方法和装置
CN108463813A (zh) * 2016-11-30 2018-08-28 华为技术有限公司 一种进行数据处理的方法和装置
CN108463813B (zh) * 2016-11-30 2020-12-04 华为技术有限公司 一种进行数据处理的方法和装置
CN108509723A (zh) * 2018-04-02 2018-09-07 东南大学 基于人工神经网络的LRU Cache预取机制性能收益评估方法

Also Published As

Publication number Publication date
CN104662530B (zh) 2018-08-17
US20140122546A1 (en) 2014-05-01
WO2014070376A1 (en) 2014-05-08
EP2915061A4 (en) 2016-07-06
JP6031196B2 (ja) 2016-11-24
JP2015532997A (ja) 2015-11-16
EP2915061A1 (en) 2015-09-09

Similar Documents

Publication Publication Date Title
CN104662530A (zh) 对于分布式数据存储和处理***的调整(tune)
CN107924323B (zh) 基于依赖的容器部署
US20210373973A1 (en) Workload Placement Based On Carbon Emissions
US10289959B2 (en) Artificial intelligence and knowledge based automation enhancement
US9406023B2 (en) System recommendations based on incident analysis
US11947814B2 (en) Optimizing resiliency group formation stability
US20210349649A1 (en) Heterogeneity supportive resiliency groups
US20220391124A1 (en) Software Lifecycle Management For A Storage System
US20220253216A1 (en) Converting Data Formats In A Storage System
CN105579953A (zh) 灵活引导程序代码架构
US11816356B2 (en) Container orchestrator-aware storage system
CN101689196A (zh) Discosql:结构化查询的分布式处理
US10120671B1 (en) Multi-level image extraction
US11789651B2 (en) Compliance monitoring event-based driving of an orchestrator by a storage system
US20230342243A1 (en) Intelligent power loss protection allocation
US20230020268A1 (en) Evaluating Recommended Changes To A Storage System
US20210073653A1 (en) Information technology service management system replacement
US20230195577A1 (en) Profile-Based Disaster Recovery for a Containerized Application
US20190325341A1 (en) Artificial intelligence & knowledge based automation enhancement
US20230134266A1 (en) Storage Operation Routing in a Container System
US20230393905A1 (en) Disaggregated Storage Systems For Hyperscale Deployments
US12001300B2 (en) Assessing protection for storage resources
US12026382B2 (en) Storage path routing in a container system
US12001293B2 (en) Coordinated data backup for a container system
CN104769548A (zh) 打包、存储和分发指南包

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180817

Termination date: 20191004

CF01 Termination of patent right due to non-payment of annual fee