随着互联网技术的发展,面对海量数据的存储和分析,传统关系型数据库已经无法满足,由此衍生出一种与关系型数据库区别开的数据库NoSQL(Not Only SQL)。

国外做的比较成熟的NoSQL有MongoDB,Cassandra,ToKuMX等,不一一列举。

据我的粗略了解,BAT等巨头内部基本都有自己的NoSQL项目,有的是基于开源项目自行研发,有的是依托MongoDB等NoSQL为基础搭建数据分析平台。而近些年迅速成长的各类公有云服务提供商,在除了SQL Server,MySQL,MariaDB等关系数据库之外,也在开始尝试部署的NoSQL(当然,这些NoSQL数据库是以MongoDB为主)。

BAT等大互联网公司,财大气粗,大都养着一群程序员基于开源数据库做改进,使之更适合他们自己的业务,因此,很少这类产品发布。

值得庆幸的是,国内也有NoSQL研发商。广州巨杉发布的的企业级NoSQL:SequoiaDB,号称在功能和研发技术方面,并不输MongoDB。SequoiaDB之前名字还是很陌生的,但是近几个月来,经常在各类大数据主题的大会,论坛等场合出现,而且在近期宣布获得千万级美元的A轮,同时在ArchSummit峰会(门票太贵了,囧)上宣布开源,声名鹊起。

目前,SequoiaDB已经开源,据说相关社区也已经开放了,并在OSChina上已经建立了讨论组。作为开源爱好者,赶着这个台风和对产品的好奇,也去github上下载了一份代码业余研究一下。同比与火热的MongoDB,其相关的技术以及使用,已经在各大技术论坛炒爆了,书籍也出版了不少。因此我就不再借MongoDB来分析,而是借用国产货SequoiaDB来分析。国产手机已经不输国外货了,咱也来深入看看咱国产的NoSQL的质量。

广州巨杉软件对其产品SequoiaDB的简介是:SequoiaDB(巨杉数据库)是一款分布式文档型NoSQL数据库,是业界唯一支持事务和SQL的产品。SequoiaDB既可作为Hadoop与Spark的数据源以满足实时查询和分析的混合负载,也可独立作为高性能、灵活易用的数据库被应用程序直接使用。SequoiaDB已拥有的客户包括知名IT互联网公司和世界五百强企业。

经过这近些天的源码浏览,SequoiaDB大致有以下几个大模块:

  • PMD模块:这块和下面的EDU模块关系紧密,是SequoiaDB进程的入口;
  • EDU模块:其实就是线程控制模块,把SequoiaDB提供的服务线程框架化了,个人比较喜欢这个玩意儿;
  • OSS模块:这块大都是对不同平台的系统调用进行封装,Linux和windows的接口不尽相同;
  • RTN模块:这块是数据库操作的承载者,是对操作的真正实现;
  • DPS模块:这块是对数据库的日志文件记录模块;
  • DMS模块:这块是真正的数据存储服务模块了;
  • IXM 模块:这块是数据索引模块,保存对数据的索引;

此处可能列的不全,因为我也是大致看了看,后面的模块的再补上。SequoiaDB的模块划分还算清晰,代码风格也比较容易接受。虽然MongoDB的设计和架构很好,但是其代码风格,我不忍吐槽。说句题外话,最喜欢cocos2d-x的代码风格了,看起来非常舒服。开源代码都像cocos2d-x一样,那看代码就会和看美女一样美好哇。

依据上面所列,本博客将会陆续撰写一系列的文章:

我也要上班工作,只能利用闲暇时间分析,尽量保持一周写一篇。还没有写的我先拉上删除线,等写完再去掉,并补上链接 :)

准备环境:

  • 安装有Linux操作系统的PC(或远程虚拟机)一台(ubuntu,centos,suse等皆可,我用的deepin Linux),需要具备root权限;
  • 约 20G的磁盘空间;
  • SequoiaDB的安装包,可在SequoiaDB官网下载;附下载地址:SequoiaDB v1.10 下载

下一篇将用SequoiaDB的安装和集群的部署,敬请关注!

才疏学浅,学习过程中,难免认识不足及错误之处,为不误于人,请严词指正,敬谢!

=====>THE END<=====

NoSQL数据库之国产开源产品:SequoiaDB 分析前言的更多相关文章

  1. SequoiaDB创始人:比MongoDB领先一到两年 打造企业级NoSQL数据库

    CSDN.NET   这几年来, NoSQL数据库凭借其易扩展.高性能.高可用.数据模型灵活等特色吸引到了大量新兴互联网公司的青睐,包括国内的淘宝.新浪.京东商城.360.搜狗等都已经在局部尝试NoS ...

  2. 初识NoSQL 快速认识NoSQL数据库 分析Analytics For Hackers: How To Think About Event Data

    做了一年的大一年度项目了,对于关系型数据库结构还是有些了解了,有的时候还是觉得这种二维表不是很顺手.在看过一篇文章之后,对NoSQL有了初步的了解,(https://keen.io/blog/5395 ...

  3. [转载]12款免费与开源的NoSQL数据库介绍

    Naresh Kumar是位软件工程师与热情的博主,对于编程与新事物拥有极大的兴趣,非常乐于与其他开发者和程序员分享技术上的研究成果.近日,Naresh撰文谈到了12款知名的免费.开源NoSQL数据库 ...

  4. 12款免费与开源的NoSQL数据库

    Naresh Kumar是位软件工程师与热情的博主,对于编程与新事物拥有极大的兴趣,非常乐于与其他开发者和程序员分享技术上的研究成果.近日,Naresh撰文谈到了12款知名的免费.开源NoSQL数据库 ...

  5. .NET平台开源项目速览(7)关于NoSQL数据库LiteDB的分页查询解决过程

    在文章:这些.NET开源项目你知道吗?让.NET开源来得更加猛烈些吧!(第二辑) 与 .NET平台开源项目速览(3)小巧轻量级NoSQL文件数据库LiteDB中,介绍了LiteDB的基本使用情况以及部 ...

  6. NoSQL 数据库产品学习总结(一)

    NoSQL 数据库产品学习总结(一) 本篇文章共分为四个章节,会陆续整理下 Memcached.Redis.tair.mongodb.hbase.SequoiaDB. Cassandra的相关知识. ...

  7. 主流NoSQL数据库的分析与选择

    一因为新的数据项目的数据量级较大,因此考虑将mysql替换更高性能的数据库. 介绍一下NoSQL(不仅仅是关系型数据库)的不同种类和其擅长的业务. NoSQL的一个比较明显的特点是适用于现代大数据的存 ...

  8. 国产开源优秀新一代MPP数据库StarRocks入门之旅-数仓新利器(上)

    概述 背景 Apache Doris官方地址 https://doris.apache.org/ Apache Doris GitHub源码地址 https://github.com/apache/i ...

  9. 开源软件:NoSql数据库 - 图数据库 Neo4j

    转载自原文地址:http://www.cnblogs.com/loveis715/p/5277051.html 最近我在用图形数据库来完成对一个初创项目的支持.在使用过程中觉得这种图形数据库实际上挺有 ...

随机推荐

  1. GMT与UTC简介

    一.简介 许多人都知道两地时间表简称为GMT或UTC,而世界时区表则通称为World Time ,那么GMT与UTC的实质原意又是为何?世界时区又是怎么区分的?面盘上密密麻麻的英文单字代表着什么意义与 ...

  2. Mongodb 主从复制与副本集实验

    1.实验主从复制,并验证复制成功,抓图实验过程  Step1:创建相应的目录 Mkdir -p ./dbs/master Mkdir -p ./dbs/slave Step2:开启主服务 ./bin/ ...

  3. C# Reflection Type/MethodInfo

    C#反射 在C#的反射中,可以通过Type来执行类中的某个方法,也可以通过MethodInfo来执行方法 三种调用方法 下面的示例中使用了三种方法来执行方法 两个类:Class1和Demo1,通过反射 ...

  4. JMeter学习(二)录制脚本

    ---------------------------------------------------------------------------------------------------- ...

  5. “display:block-inline形式的Span或Div中添加文字后,导致Span或Div排版掉落、错位”的原因及解决方法

    最近在使用3个span(或div)制作带圆角边框的按钮时,按照常识,把span的display设置成inline-block,这样就可以设置span的width和height了,很爽的~ 可是当我在中 ...

  6. SQL2008安装后激活方式以及提示评估期已过解决方法(转)

    第一步:进入SQL2008配置工具中的安装中心第二步:再进入维护界面,选择版本升级第三步:进入产品密钥,输入密钥第四步:一直点下一步,直到升级完毕.SQL Server 2008 Developer: ...

  7. Jdev Run Page 没有反应

    从旧电脑把原有的Jdeveloper完整的拷贝至新电脑,且已完整配置JDEV_USER_HOME,JAVA_HOME等环境变量, Run Page报以下错误. [Starting OC4J using ...

  8. JS实现颜色值的转换

    从网上看了个案例,是实现颜色值转换的,就想着自己也写个.网上的案例链接找不到了,这里也就不贴了. JavaScript颜色转换的核心就是进制间的转换. rgba(0,0,0,.4)转换成#000000 ...

  9. JS insertAdajcentHTML 方法简介

    修改节点的内容除了常用的innerHTML和innerText之外,还有insertAdjacentHTML和insertAdjacentText方法,可以在指定的地方插入内容.insertAdjac ...

  10. 修改Matlab 2012b默认工作路径

    MATLAB的路径有多种,这里只讲一下启动时设置成MATLAB的用户的默认工作路径. 本人不想去改MATLAB的原来系统文件,而是尽量利用startup.m.这个文件默认在'/home/r/文档/MA ...