Laxcus大数据管理系统(2)- 第一章 基础概述 1.1 基于现状的一些思考

第一章 基础概述

1.1 基于现状的一些思考

  在过去十几年里,随着互联网产业的普及和高速发展,各种格式的互联网数据也呈现爆炸性增长之势。与此同时,在数据应用的另一个重要领域:商业和科学计算,在各种新兴技术和产业需求的推动下,对数据存储和计算要求也日益提高,并且对计算数据的准确性和精度也远高于互联网数据。而在这些现象的背后,当前的数据计算早已经突破MB量级,GB成为常态,TB变得流行,正在向PB迈进的时候,面对如此庞大的数据量,如果管理和使用它们,满足各种计算需求,发现和筛选其中有价值的信息,通常以提高芯片性能,增加内存、磁盘的做法,已经变得越来越难以为继,甚至不可行。在这种背景下,以网络和网络通信技术为基础,将分散在不同地理位置的计算机连接起来,组成空间上分散、逻辑上统一的计算机集群,就成为实施大规模数据处理的必需选择。

  计算机集群的优势在于:它强调整体的处理能力,每台计算机做为一个节点参与处理过程,承担其中一部分处理任务,处理能力的强弱由全部节点来共同决定。这种工作模式极大地发挥出集体的力量,使得单台计算机的处理性能变得不再重要。并且因为网络的连接,每台计算机随时可以加入或者撤离计算过程。这种类似U盘“热插拔”的功能,使得计算机集群在运行过程中可以动态地调整自己的计算能力,赋与了集群计算近乎无限增长的可能,这是传统的集中式计算无法比拟的。同时因为不再追求单台计算机的处理性能,在采购硬件设备时,可以根据实际需要酌情考量,为节约成本提供了选择的空间。

  但是必须看到,正如硬币的两面一样,集群计算在提供了前所未有的处理能力的同时,也有它与生俱来的许多问题。

  首先由于连接的节点众多且分散,集群的组织结构变得十分庞大。个体硬件品质良莠不一,网络线路、通信设备、计算机之间的连接和通信过程存在着大量的不确定性,硬件设备本身、设备与设备、设备与外界环境,彼此互相交叉影响。在这样的条件下,保证每台设备完全稳定运行已无可能,解决计算机集群在不安定状态下的稳定存储和计算成为首要要求。

  另外,与单台计算机的数据处理根本区别是,集群的数据处理是一个分散的计算过程。它在前端受理大量的请求任务,然后将这些任务分配到后端众多的计算机上去执行。一个高效并且合理的分布计算算法成为必须。这个算法需要解决的问题包括:任务分配、过程调度、故障容错、数据筛选、数据平衡、数据汇总等诸多环节的工作,最终形成与集中计算一样的数据处理结果。这个过程十分复杂。

  数据管理益变得重要。在成批量并行处理的数据队列中,要保证完全正确的处理结果,任何单点上的数据都不能遗漏。这需要感知每个数据的存在,确定数据的物理位置,验证数据的可用性和正确性,即使在故障状态下,仍然需要保证计算过程的正常进行。这是数据处理的基本要求。

  但是,随着数据储量的不断增加,另一个现象开始凸显出来,并且已经不容忽视:当前的各种数据已经越来越超越数字内容本身,逐渐演变成一种资产,其中蕴藏和可能产生的价值有时候往往不可估量。如何保护好这些数据只被数据所有人拥有,而不会受到外来的侵犯,成为必须要解决的问题。

  更重要的一项来自用户体验。没有人会喜欢一个复杂、繁琐、难以维护的系统。相反,一个人机界面友好、容易操作和管理的产品更容易受到用户青睐。这需要在产品设计阶段做很多工作,综合考量产品的应用范围、处理效率、运营成本,以及用户的使用行为和习惯,做出必要的取舍,辅以技术实现,才能获得良好的用户体验。

  当能够提供的硬件基础设施已经固定,各种应用需求还在不断发展和变化中,如何适应这种变革的趋势,贴近用户的使用需求,开发出用户满意的产品,以上种种,都是大数据软件设计者们需要思考的问题。

时间: 2024-08-23 19:17:55

Laxcus大数据管理系统(2)- 第一章 基础概述 1.1 基于现状的一些思考的相关文章

Laxcus大数据管理系统(3)- 第一章 基础概述 1.2 产品特点

1.2 产品特点 Laxcus大数据管理系统运行在计算机集群上,特别强调软件对分布资源可随机增减的适应性.这种运行过程中数据动态波动和需要瞬时感知的特点,完全不同与传统的集中处理模式.这个特性衍生出一系列的新变化,需要重新审视产品的目标,设计新的架构,当我们把这些需求和定位综合起来,然后逐一分解归并后,最终形成与以往完全不同的结果. 1.2.1 以节点为单位的计算集群 在Laxcus设计里,节点是计算机集群的基本单位.相较与物理性质的计算机来说,节点是一个逻辑概念的单位.以一台实体计算机为例,在

Laxcus大数据管理系统2.0(9)- 第七章 分布任务组件

第七章 分布任务组件 Laxcus 2.0版本的分布任务组件,是在1.x版本的基础上,重新整合中间件和分布计算技术,按照新增加的功能,设计的一套新的.分布状态下运行的数据计算组件和数据构建组件,以及依此建立的新的运行框架.操作管理规范.API接口等. 新分布任务组件的改变主要体现在数据处理能力方面.经过重新调整后的运行架构,原来因为架构问题受到的诸多限制被全部取消,分布任务组件可以随着集群的不断扩充,同步提供无限制的数据处理能力.这足以满足我们当前以及未来相当长一段时间内,对各种大规模数据处理业

Laxcus大数据管理系统2.0(8)- 第六章 网络通信

第六章 网络通信 Laxcus大数据管理系统网络建立在TCP/IP网络之上,从2.0版本开始,同时支持IPv4和IPv6两种网络地址.网络通信是Laxcus体系里最基础和重要的一环,为了能够利用有限的网络资源,获得最大化的使用效率,我们根据大数据网络环境的特点,设计了一套专属网络通信协议,以及在此协议基础上实现的多套网络通信方案,它们共同组成了Laxcus集群的网络通信基础.本章将以TCP/IP协议为起点,介绍与网络通信有关的各个组成部分. 6.1 FIXP协议 Laxcus采用FIXP协议通信

Laxcus大数据管理系统(5)- 第二章 数据组织

第二章 数据组织 在数据的组织结构设计上,Laxcus严格遵循数据和数据描述分离的原则,这个理念与关系数据库完全一致.在此基础上,为了保证大规模数据存取和计算的需要,我们设计了大量新的数据处理技术.同时出于兼顾用户使用习惯和简化数据处理的目的,继续沿用了一些关系数据库的设计和定义,其中不乏对SQL做适量的修订.在这些变化中,核心仍然是以关系代数的理念去处理数据,以及类自然语言风格的数据描述.所以用户在使用体验上,和关系数据库相比,不会感觉到有太多的差异. 本章将介绍Laxcus数据结构的组成,并

Laxcus大数据管理系统2.0(10)- 第八章 安全

第八章 安全 由于安全问题对大数据系统乃至当前社会的重要性,我们在Laxcus 2.0版本实现了全体系的安全管理策略.同时我们也考虑到系统的不同环节对安全管理的需求是不一样的,所以有选择地做了不同的安全设计和处理.图8是Laxcus安全管理架构,首先使用SHA1签名获得基本确认,然后在FIXP网络层面,数据通信采用RSA加密,后面分别是对称加密.系统安全策略.签名.用户安全策略.SHA1是一种数字签名,可以保证网络间传输的内容正确性,RSA是目前安全度最高的加密手段,对称加密则次之,系统安全策略

Laxcus大数据管理系统单机集群版

Laxcus大数据管理系统是我们Laxcus大数据实验室历时5年,全体系全功能设计研发的大数据产品,目前的最新版本是2.1版本.从三年前的1.0版本开始,Laxcus大数据系统投入到多个大数据和云计算项目中使用.2.0版本的Laxcus大数据管理系统,已经从紧耦合架构转为松耦合架构,整合了最新的大数据和关系数据库的技术,实现了一站式数据处理,大幅度提高了并行处理能力,同时兼具易操作.易维护.运行稳定的特点,节点数和数据存储计算规模已经达到百万台级和EB量级.目前已经覆盖的技术包括:行列混合存储.

Laxcus大数据管理系统集群单机版

Laxcus大数据管理系统是我们Laxcus大数据实验室历时5年,全体系全功能设计研发的产品,目前已经发展到2.1版本,并投入到多个大数据和云计算项目中使用.Laxcus大数据管理系统采用松耦合架构,整合了大数据和关系数据库的技术,实现了一站式数据处理,具有易操作.易维护.运行稳定的特点,并行节点数和数据存储计算规模可以达到百万台级和EB量级.Laxcus大数据管理系统涉及的技术包括:行列混合存储.分布计算.数据构建(ETL).内存计算.网络通信.网络安全和数据安全.人机交互.冗灾管理.SQL.

Laxcus大数据管理系统2.0(14)- 后记

后记 Laxcus最早源于一个失败的搜索引擎项目,项目最后虽然终止了,但是项目中的部分技术,包括FIXP协议.Diffuse/Converge算法.以及很多新的数据处理理念却得以保留下来,这些成为后来研发Laxcus的基础.此后又经历过一些海量数据处理项目,因为时代和行业的变化,用关系数据库做底层存取已经越来越无法满足不断扩张的业务需要,于是希望改用能够支持海量数据处理的软件,然后在其之上结合实际应用做进一步整合.项目完成后,在推广和使用中遇到了很多阻碍.这里面除了产品本身的一些问题外,更多的困

Laxcus大数据管理系统2.0(11)- 第九章 容错

第九章 容错 在当前,由于集群庞大的组织体系和复杂性,以及用户普遍要求低成本硬件,使得集群在运行过程中发生的错误概率,远远高于单一且性能稳定的小型机服务器,并且集群在运行过程中几乎是不允许停止的,这就更需要提供比单机环境复杂得多的错误管理方案.实际上,我们在产品设计.开发.运营的各个阶段,有相当大一部分精力,都是用来获取各种故障,和解决各种故障发生后的错误处理问题.对于这些错误处理,我们整体遵循这样一个思路来解决:首先由软件感知来发现和定位故障点,然后进行判断,如果属于软件可以解决的故障,那么通