巨杉数据库联合创始人王涛 - NewSQL技术解析与企业级应用案例

2020-02-27 58浏览

  • 1.NewSQL数据库技术与企业级应用 巨杉数据库 王涛
  • 2.公司简介: SequoiaDB巨杉数据库,成立于2011年专注于新一 代企业大数据平台研发, 其核心产品 SequoiaDB(巨杉数据库)是国内第一款新一代分 布式数据库; 核心产品完全自主研发,数据库引擎没有基于任何 开源数据库源代码, 已经成功部署并运行在多家世界 500强企业的生产环境中; 获著名基金启明创投(A轮)与DCM(B轮)融资; 中国第一款商业开源数据库产品 www.github.com/sequoiadb/sequoiadb www.sequoiadb.com
  • 3.
  • 4.行业与企业级用户 •  主要客户以金融、运营商、政府和互联网行业为基础 •  研发中心在深圳,现场支持队伍部署在北京、上海、广州三地
  • 5.大数据数据湖
  • 6.大数据思维 – 先有数据,再探索关系 大数据的应用特点:全量、关联、实时 数据成为真正核心全息资产,巨大的信息量足以支撑以前难以完成的任务 特定场景下基于样本数 据的挖掘 以问题为中心 以全量数据为基础的统计
  • 7.大数据数据湖(Data Lake) 传统的数据集市,为了优化数据 分析的性能, 只会存储一部分 的属性并且只操作已经聚合的数 据。 而“数据湖”则是将全量数据的 所有属性都进行存储,尤其是当 你并不确定从什么角度去分析和 使用这些数据时
  • 8.数据湖实现大数据价值(Data Lake)
  • 9.数据湖的优势 数仓报表 回单查询 实时风控 用户画像 Analy&cal Zone Opera&onal Zone 司法查询 风险管控 影像平台
  • 10.大数据技术框架划分 离线分析 计算层 在线业务 实时计算 分布式文件系统 存储层 分布式数据库
  • 11.大数据时代的数据库
  • 12.大数据时代 ---OLTP,OLAP外的新需求 大数据应用场景,催生出了传统OLTP和OLAP外的新需求就 是 实时数据操作(Operational)。 主要的技术需求包括: •  海量数据的存储管理 •  高并发实时查询 •  高性能的读写 OLTP Opera&onal OLAP
  • 13.大数据基础软件的发展:殊途同归 分布式存储以及批 处理数据仓库,基 于MapReduce算法 搭建实现 MPP数据库,基于 已有架构进行并行 计算 重建分布式架构, 专注于存储引擎的 建设 新一代分 布式数据 库
  • 14.分布式数据库的未来 •  传统关系型数据库 –  成为存量市场,逐渐萎缩 •  NoSQL –  开始支持ACID与关系模型,在提供自身特有特性的同事提供 标准SQL接口 •  SQL-on-Hadoop –  Hadoop成为分布式文件系统与分布式调度框架,MR被完全 淘汰,原生SQL引擎一统天下,Spark负责流处理与分析挖掘 •  NewSQL(新型分布式数据库) –  概念逐渐被泛指新型分布式数据库,传统NewSQL、新型的 支持SQL接口的NoSQL与SQL-on-Hadoop都可以被概括在 NewSQL的范畴之内
  • 15.NewSQL数据库的产品定位
  • 16.NewSQL技术特点
  • 17.分布式架构与扩展性 •  分布式 Share-Nothing架构 •  主-备 高可用机制 •  线性水平扩展
  • 18.SQL支持 •  SQL支持:ANSI SQL 2003 标准,OLAP扩展,标准 JDBC/ODBC支持 •  支持多种分区方法及多级分 区 •  多种UDF(用户自定义函数) 语言支持:java, python, c/ c++, perl, R等 •  动态扩容:动态按需扩容, 按照存储大小或者计算需求, 秒级添加节点。 SDB+SSQL SSQL执行节点 SSQL执行节点 SDB协调节点 SDB编目节点 SDB数据节点 SDB数据节点 SDB数据节点 SDB协调节点 SDB编目节点 SDB数据节点 SDB数据节点 SDB数据节点 SDB协调节点 SDB编目节点 SDB数据节点 SDB数据节点 SDB数据节点
  • 19./ •  时间序列数据的处理是常见需求,很多应用中海量数据的时间特性以递增为主,旧 数据的热度随着时间的推移递减 •  SequoiaDB提供集合分区(主子集合)机制可以轻松应对时间序数据 –  避免单一集合数据量膨胀时索引树过大而导致的写入性能雪崩 –  按时间序能直观反映数据访问热点,保障热点数据集合的性能 –  直观的分配资源给不同集合,直观的备份、归档规则 •  MongoDB和Hbase都没有提供类似的主子集合机制 db.cs.createCL(“My0101”) db.cs.MyHistory.attachCL( “cs.My0101”, {UpBound:'>UpBound: