V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
kied
V2EX  ›  程序员

OushuDB 事物、资源管理、存储

  •  
  •   kied · 2021-11-23 17:19:26 +08:00 · 491 次点击
    这是一个创建于 886 天前的主题,其中的信息可能已经有所发展或是发生改变。
    1 、事务管理
    事务是数据管理系统一个非常重要的属性。大部分 Hadoop 里面的 SQL 引擎不支持事务。让程序员自己保证事务和数据的一致性是非常困难的事。OushuDB 支持事务的所有 ACID 属性,支持 Snapshot Isolation 。事务发生由 Master 节点协调和控制。采用的是泳道模型。并发插入时每个并发会使用各自的泳道,互不冲突。在事务提交的时候通过记录文件逻辑长度的方式来保证一致性。如果事务失败的时候,需要回滚,删除文件末尾的垃圾数据。起初 HDFS 是不支持 truncate 的,现在 HDFS 刚支持的 truncate 功能是根据 OushuDB 的需求做出的。 2 、资源管理器
    OushuDB 支持三级资源管理:
    ● 全局资源管理:可以集成 YARN ,和其他系统共享集群资源。
    ● OushuDB 内部资源管理:可以支持查询,用户等级别的资源管理。
    ● 操作符级别资源管理:可以针对操作符分配和强制资源使用。
    现在 OushuDB 支持多极资源队列。可以通过 DDL 方便的定义和修改资源队列。


    资源管理器中的各个组件作用如下:
    ● 请求处理器:接收查询派遣器进程的资源请求。
    ● 资源分配器:负责资源的分配。
    ● 资源池:保存所有资源的现有状态。
    ● 策略存储:保存所有的分配策略,将来会做到策略可定制。
    ● 资源代理:负责与全局资源管理器交互。

    3 、存储模块
    OushuDB 支持多种优化的存储格式,比如 AO, Parquet, ORC, Magma 。并提供 HDFS ,Hive 协议外部表。其他各种存储和存储格式通过可插拔扩展框架访问。针对用户专有格式,用户可以自己开发插件。同时支持各种压缩,多级分区等各种功能。
    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   871 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 21:45 · PVG 05:45 · LAX 14:45 · JFK 17:45
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.