Laxcus大数据管理系统

(version 2.0)

Laxcus大数据实验室

摘要

  Laxcus是Laxcus大数据实验室全体系全功能设计研发的多用户多集群大数据管理系统,支持一到百万台级节点,提供零至EB量级数据存储、计算服务,集运行、开发、部署、维护为一体的平台。

  这是一个全新的产品,是在搜索引擎架构基础上,针对大数据特点,整合了数据库和中间件技术,又融入大量新的元素,逐渐演变发展而来,并经历多次修改提炼完善而成。在人机界面上,它与关系数据库系统保持了高度的兼容和一致,实现了一站式的数据处理,和与关系数据库的无缝对接。在技术上,是全体系自主设计,自主开发,全功能实现,拥有全部知识产权。现在的主要技术部分包括:网络的通信与管理、分布环境下的数据存储、计算和组织、灾难冗余和容错、安全策略、人机交互接口、可编程分布任务组件等。Laxcus采用Java/C++语言编写,支持多模式数据混合存储。用户以远程登录的方式接入系统,使用分布描述语言进行操作。Laxcus运行在普通硬件设备上,涵盖Linux/Windows系统平台。产品部署使用简单快捷,开放源代码,遵循LGPL协议。

  本文所述为Laxcus 2.0版内容。这个版本是在1.x版本基础上,总结此前系统运营过程中发现的问题和不足,进行大量综合性改进和深度优化的结果。新旧版本比较,对磁盘数据存取、网络传输、分布计算、负载控制、安全管理、冗灾冗余、流式处理等多项关键功能做了大幅度修改,系统的稳定性、可靠性、运行效率也因此获得明显提高,目前已经通过环境考核测试。另外还进一步丰富了分布描述语言,完善了分布任务组件和应用编程接口等工作。这些改进能够使用户在使用Laxcus大数据管理系统,或者开发分布任务组件的时候,更加简单和容易操作。

关键字: 集群、节点、安全、存储模型、数据块、FIXP协议、分布描述语言、分布任务组件、DSM、NSM、Invoke/Produce、Diffuse/Converge、Scan/Sift、Marshal/Educe、RPC、SQL。

目录

第一章 基础概述..................................5

  1.1 基于现状的一些思考............................5

  1.2 产品特点.........................................7

    1.2.1 以节点为单位的计算集群........................7
    1.2.2 超大规模集群......................................7
    1.2.3 多用户共享.........................................8
    1.2.4 低成本的硬件设备.................................8
    1.2.5 弱中心化管理.......................................8
    1.2.6 松耦合架构和系统群...............................9
    1.2.7 命令驱动的数据处理模式.........................9
    1.2.8 任务调度模型.......................................9
    1.2.9 负载自适应控制...................................10
    1.2.10 以大规模的读操作为主,兼顾少量的写操作.10
    1.2.11 数据存储方案....................................11
    1.2.12 流式处理..........................................11    

    1.2.13 即时存取..........................................11
    1.2.14 支持事务..........................................12
    1.2.15 命名...............................................12
    1.2.16 安全...............................................12
    1.2.17 分布任务组件....................................12
    1.2.18 人机交互语言....................................13

  1.3 节点..............................................13

    1.3.1 Top节点............................................14
    1.3.2 Home节点.........................................15
    1.3.3 Task节点...........................................15
    1.3.4 Log节点............................................15
    1.3.5 Data节点...........................................16
    1.3.6 Work节点..........................................16
    1.3.7 Build节点...........................................16
    1.3.8 Call节点.............................................16
    1.3.9 Aid节点.............................................17
    1.3.10 Front节点........................................17
    1.3.11 Watch节点.......................................18

第二章 数据组织..................................19

  2.1 基础..........................................................19

  2.2 数据类型....................................................21

  2.3 全局数据库.................................................22

  2.4 跨数据库操作..............................................22

  2.5 固定表......................................................22

  2.6 取消视图...................................................24

  2.7 带Where子句的Select检索..........................24

  2.8 数组列的压缩和加密.....................................24

  2.9 事务.........................................................25

  2.10 分布描述语言...........................................26

    2.10.1 三层结构模型...................................26
    2.10.2 命令分类........................................27
    2.10.3 自定义参数.....................................28

第三章 数据存取................................29

  3.1 数据块.........................................29

  3.2 存储模型.....................................30

  3.3 行级锁........................................31

  3.4 元数据........................................31

  3.5 内存计算.....................................32

  3.6 快照和备份...................................32

  3.7 完整性检查...................................33

  3.8 提高数据处理效率的一些措施.............33

  3.9 主块冲突.....................................33

  3.10 数据负载检测..............................33

第四章 数据计算...............................34

  4.1 Diffuse/Converge算法.................34

  4.2 数据计算过程中的数据平均分配问题.....35

第五章 数据构建...............................36

  5.1 数据优化......................................36

  5.2 数据重组.....................................37

    5.2.1 Scan/Sift算法................................38
    5.2.2 Marshal/Educe接口.........................39

第六章 网络通信...............................39

  6.1 FIXP协议....................................40

    6.1.1 协议结构......................................40
    6.1.2 命令结构......................................40
    6.1.3 消息结构......................................41

  6.2 通信方案......................................41

    6.2.1 TCP通信......................................41
    6.2.2 UDP通信......................................41
    6.2.3 KEEP UDP通信..............................41
    6.2.4 RPC通信......................................42

  6.3 通信检测...................................42

  6.4 通信服务器................................42

  6.5 全局时间...................................42

  6.6 流量控制...................................43

第七章 分布任务组件........................43

  7.1 阶段命名...................................44

  7.2. 数据计算和Conduct命令.............44

    7.2.1 Init阶段......................................44
    7.2.2 From阶段...................................44
    7.2.3 To阶段.......................................45
    7.2.4 Balance阶段................................45
    7.2.5 Put阶段......................................45

  7.3 数据构建和Establish命令...............45

    7.3.1 Issue阶段...................................45
    7.3.2 Scan阶段....................................46
    7.3.3 Assign阶段.................................46
    7.3.4 Sift阶段......................................46
    7.3.5 Each阶段....................................46
    7.3.6 Rise阶段.....................................46
    7.3.7 End阶段.....................................47

  7.4 打包........................................47

  7.5 发布........................................48

  7.6 分区........................................48

  7.7 数据平衡..................................48

  7.8  内存模式.................................49

第八章 安全.................................49

  8.1 环境安全..................................50

  8.2 通信安全.................................51

  8.3 节点准入制度............................51

  8.4 用户账号安全............................52

  8.5 用户权限管理............................52

  8.6 私有业务安全............................53

  8.7 分布任务组件安全.......................53

  8.8 数据块安全...............................54

  8.9 DSM/NSM安全........................54

第九章 容错.................................55

  9.1 硬件容错...................................55

    9.1.1 网络故障.....................................55
    9.1.2 计算机故障..................................55
    9.1.3 硬盘故障.....................................55

  9.2 节点容错...................................56

    9.2.1 管理节点容错...............................56
    9.2.2 Data节点容错..............................57
    9.2.3 集群内其它节点容错......................58

  9.3 数据容错...................................58

  9.4 分布任务组件容错........................58

  9.5 管理员责任................................59

第十章 运行..................................59

  10.1 配置.......................................59

  10.2 管理.......................................60

  10.3 元数据....................................62

  10.4 数据操作.................................64

  10.5 Sort Benchmark测试...............65

    10.5.1 排序测试....................................65
    10.5.2 排序分析....................................67
    10.5.3 排序优化....................................68

总结...........................................69

后记...........................................71

Laxcus大数据管理系统2.0 (1) - 摘要和目录的更多相关文章

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

    第二章 数据组织 在数据的组织结构设计上,Laxcus严格遵循数据和数据描述分离的原则,这个理念与关系数据库完全一致.在此基础上,为了保证大规模数据存取和计算的需要,我们设计了大量新的数据处理技术.同 ...

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

    第七章 分布任务组件 Laxcus 2.0版本的分布任务组件,是在1.x版本的基础上,重新整合中间件和分布计算技术,按照新增加的功能,设计的一套新的.分布状态下运行的数据计算组件和数据构建组件,以及依 ...

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

    第八章 安全 由于安全问题对大数据系统乃至当前社会的重要性,我们在Laxcus 2.0版本实现了全体系的安全管理策略.同时我们也考虑到系统的不同环节对安全管理的需求是不一样的,所以有选择地做了不同的安 ...

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

    第六章 网络通信 Laxcus大数据管理系统网络建立在TCP/IP网络之上,从2.0版本开始,同时支持IPv4和IPv6两种网络地址.网络通信是Laxcus体系里最基础和重要的一环,为了能够利用有限的 ...

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

    1.2 产品特点 Laxcus大数据管理系统运行在计算机集群上,特别强调软件对分布资源可随机增减的适应性.这种运行过程中数据动态波动和需要瞬时感知的特点,完全不同与传统的集中处理模式.这个特性衍生出一 ...

  6. Laxcus大数据管理系统2.0(6)- 第四章 数据计算

    第四章 数据计算 Laxcus所有数据计算工作都是通过网络实施.相较于集中计算,在网络间进行的数据计算更适合处理那些数据量大.复杂的.耗时长的计算任务.能够实施网络计算的前提是数据可以被分割,就是把一 ...

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

    后记 Laxcus最早源于一个失败的搜索引擎项目,项目最后虽然终止了,但是项目中的部分技术,包括FIXP协议.Diffuse/Converge算法.以及很多新的数据处理理念却得以保留下来,这些成为后来 ...

  8. Laxcus大数据管理系统2.0(12)- 第十章 运行

    第十章 运行 本章将介绍一些Laxcus集群基本运行.使用情况,结合图片和表格表示.地点是我们的大数据实验室,使用我们的实验集群.数据来自于我们的合作伙伴,软件平台混合了Windows和Fedora  ...

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

    第九章 容错 在当前,由于集群庞大的组织体系和复杂性,以及用户普遍要求低成本硬件,使得集群在运行过程中发生的错误概率,远远高于单一且性能稳定的小型机服务器,并且集群在运行过程中几乎是不允许停止的,这就 ...

随机推荐

  1. HDU 2199 Can you solve this equation?(二分解方程)

    传送门: http://acm.hdu.edu.cn/showproblem.php?pid=2199 Can you solve this equation? Time Limit: 2000/10 ...

  2. SpringBoot非官方教程 | 第二十四篇: springboot整合docker

    转载请标明出处: 原文首发于:https://www.fangzhipeng.com/springboot/2017/07/11/springboot24-docker/ 本文出自方志朋的博客 这篇文 ...

  3. SpringBoot非官方教程 | 第二十一篇: springboot集成JMS

    转载请标明出处: http://blog.csdn.net/forezp/article/details/71024024 本文出自方志朋的博客 springboot对JMS提供了很好的支持,对其做了 ...

  4. Golang学习笔记(一)

    一段基础的go语言代码解析 package main import "fmt" func main(){ fmt.Println("hello golang") ...

  5. CF605A Sorting Railway Cars(递推)

    题目描述 An infinitely long railway has a train consisting of n cars, numbered from 1 to n (the numbers ...

  6. 尚硅谷SpringBoot项目学习源码记录

    链接:https://pan.baidu.com/s/1aNUL1QlHMhDIFtWGhC1mtQ 密码:793v

  7. 上传文件到阿里云linux服务器

    在“运行”中输入cmd,打开控制台,切换到刚才Putty的安装目录下,我的是E:\Putty,然后输入pscp命令,我们需要这个命令来实现文件的上传.如下图所示,命令格式为: pscp D:\recy ...

  8. 【c学习-13】

    /*库函数 1:数学函数库:math.h abs():绝对值; acos(),asin(),atan():cos,sin,tan的倒数 exp():指数的次幂 pow(x,y):x的y次幂 log() ...

  9. 浅谈React虚拟DOM

    为什么要使用虚拟DOM 因为浏览器的DOM渲染是非常消耗性能的,很低效,我们使用虚拟DOM是为了提高DOM的渲染性能: 什么是虚拟DOM 虚拟DOM就是把真实的DOM树通过createElement转 ...

  10. 一个好用的C# HttpCookieHelper.cs类

    using System; using System.Collections.Generic; using System.Text; using System.Text.RegularExpressi ...