非关系型数据库SequoiaDB虚拟机下应用再探
上一次浅谈了SequoiaDB在虚拟机上的安装及在web下图形界面的基本操控,现在来体验命令行操作及运行samples文件。
基本DDL操作
首先在视窗窗口同时按Ctrl+Alt+T,进入到命令行窗口,这时要切换成超级用户root,进入到sequoiadb命令行窗口,执行:sudo su -,密码为sequoiadb,如图:

执行:/opt/sequoiadb/bin/sdb,进入SequoiaDB shell,如图:

执行:db=new Sdb(“localhost”,50000),创建一个协调节点的对象,如图:

执行:db.listCollectionSpaces(),查看当前所有数据库集合空间,如图:

执行:db.createCS(“testfoo”),创建数据库集合空间,如图:

执行:db.testfoo.createCL(“bar”,{ShardingKey:{a:1}}),创建数据库集合,在数据库集合中加入切分条件,以a字段为切分对象,升序切分,(会有几秒等待时间),如图:

执行:db.testfoo.bar.insert({a:1}),插入数据,如图:

执行:for(i=50;i<=150;i++){db.testfoo.bar.insert({a:i})},利用率for 循环批量插入数据,如图:

执行:db.testfoo.bar.find({a:{$lt:55}}),条件查询,查找字段为a值小于55的值,如

利用多个物理组,做数据切分。
执行:db.snapshot(4),查看原数据库存集合存放在哪一个组上,可以在打印的信息中看到”GroupName”:”group1” ,即原数据库集合存放在group1中,如图:(请看最下面两行)

执行:db.testfoo.bar.split(“group1”,”group2”,{a:100}),进行数据切分,以a为切分字段,a小于100的数据存放到group1组中,a大于等于100的数据存放到group2组中,如图:

执行:data1=new Sdb(“localhost”,51000),连接数据节点group1,如图:

执行:data1.testfoo.bar.count(),验证group1中的数据数量,应为51,如图:

执行:data2=new Sdb(“localhost”,54000),连接数据节点group2,如图:

执行:data2.testfoo.bar.count(),验证group2中的数据数量,应为51,如图:

执行:quit,退出Sequoiadb数据库命令,如图:

以上是Sequoiadb是一些基本DLL操作,下面看看如何停止及启动某一个sequoiadb数据库进程的一些操作。
执行:ps -ef | grep sequoiadb,查看sequoiadb开启的进程端口号,如果是用startSequoiadb.sh启动sequoiadb数据库,那么50000端口属于协调节点,30000属于编目节点,其余的端口为数据节点,如图:

执行:/opt/sequoiadb/bin/sdbstop -p 51000,可以停止端口为51000的数据节点,如图:

执行:ps -ef | grep sequoiadb,再次查看sequoiadb开启的进程端口号,可发现端口51000的进程已经停止了,如图:

执行:/opt/sequoiadb/bin/sdbstart -c /opt/sequoiadb/conf/local/51000,即可启动已经被停止的进程,如图:

执行:ps -ef | grep sequoiadb,再次查看sequoiadb开启的进程端口号,可发现端口51000的进程已经启动了,如图:

集合空间环境的清理
执行:/opt/sequoiadb/bin/sdb “db=new Sdb(‘localhost’,50000)”,如图:

执行:/opt/sequoiadb/bin/sdb “db.dropCS(‘foo’)”,清理集合空间“foo”如图:

执行:/opt/sequoiadb/bin/sdb “db.dropCS(‘foo’)”,当再次清理名为“foo”的集合空间是,dropCS命令返回-34,则意味集合空间“foo”已不存在,清空成功,如图:

运行samples文件
执行:cd /opt/sequoiadb/samples/CPP,进入/opt/sequoiadb/samples/CPP目录,如图:

执行:ls,可以查看到此目录下的文件,如图:

执行/opt/sequoiadb/samples/CPP/buildApp.sh 文件名(不需要加文件后缀),或在此目录下执行./buildApp.sh 文件名(不需要加文件后缀),可编译C、CPP文件。下面举例说明。例如:编译index.cpp文件,执行后会在/opt/sequoiadb /samples/CPP/build目录下生成可执行文件。
执行:/opt/sequoiadb/samples/CPP/buildApp.sh index,或./buildApp.sh index,然后ls可查看到新生成的目录build及其目录下的文件,如图:

执行:LD_LIBRARY_PATH=/opt/sequoiadb/lib/ \
/opt/sequoiadb/samples/CPP/build/index localhost 50000 “”“”,运行sample的可执行文件,参数有主机名、端口号、用户、密码,(运行时间稍长,约一分钟左右)如图:

至此,SequoiaDB数据库命令行基本操控简单介绍完毕,由于接触时间不久,只能做到管中窥豹,愿能起到抛砖引玉吧,若深入了解请详见官网技术文档SequoiaDB信息中心,欢迎更多朋友交流心得体会,谢谢。
原文链接:http://blog.sequoiadb.com/?p=212
学习教程下载
SequoiaDB Demo VMware 学习教程
Linux 平台(社区版)
Sequoiadb-1.3 for IBM Power Linux 64 Installer 202.60MB
Sequoiadb-1.3 for Linux x86_64 Installer 201.72MB
非关系型数据库SequoiaDB虚拟机下应用再探的更多相关文章
- 非关系型数据库SequoiaDB虚拟机下应用初探
SequoiaDB是广州巨杉软件有限公司开发的一款新型分布式非关系型数据库.可应用于linux操作系统下.在虚拟机下试用了一下(操作系统Ubuntu),感觉不错,操控简单易上手,在此分享一下心得. 下 ...
- 一文读懂非关系型数据库(NoSQL)
为了更好的理解非关系型数据库,我又深入的度娘了下 原文地址:https://baijiahao.baidu.com/po/feed/share?wfr=spider&for=pc&co ...
- 非关系型数据库(NoSql)
最近了解了一点非关系型数据库,刚刚接触,觉得这是一个很好的方向,对于大数据 方面的处理,非关系型数据库能起到至关重要的地位.这里我主要是整理了一些前辈的经验,仅供参考. 关系型数据库的特点 1.关系型 ...
- 使用.Net+非关系型数据库MongoDB 实现LBS商家按距离排序_按离我最近排序
.Net MongoDB LBS地理位置定位 开发过程,实现商家按距离排序 前言: 在使用美团点外卖,看电影,找好吃的时候,经常会注意到软件有一个按距离排序,找离我最近的商家,心中有一些疑问,.Net ...
- Redis非关系型数据库
1.简介 Redis是一个基于内存的Key-Value非关系型数据库,由C语言进行编写. Redis一般作为分布式缓存框架.分布式下的SESSION分离.分布式锁的实现等等. Redis速度快的原因: ...
- 数据库基础 非关系型数据库 MongoDB 和 redis
数据库基础 非关系型数据库 MongoDB 和 redis 1 NoSQL简介 访问量增加,频繁的读写 直接访问(硬盘)物理级别的数据,会很慢 ,关系型数据库的压力会很大 所以,需要内存级的读写操作, ...
- 非关系型数据库--redis
0.1 新单词 expire 美 /ɪk'spaɪɚ/ 到期 range 美 /rendʒ/ 范围 idle美 /'aɪdl/ 闲置的 0.2 面试题:mysql和redis和memcached区别? ...
- 关系型数据库和非关系型数据库区别、oracle与mysql的区别
一.关系型数据库 关系型数据库,是指采用了关系模型来组织数据的数据库. 关系模型是在1970年由IBM的研究员E.F.Codd博士首先提出的,在之后的几十年中,关系模型的概念得到了充分的发展并逐 ...
- 非关系型数据库来了,CRL快速开发框架升级到版本4
轮子?,我很任性,我要造不一样的轮子,同时支持关系型和非关系型的框架有没有 新版数据查询作了些调整,抽象了LabmdaQueryy和DBExtend,升级到版本4,非关系数据库MongoDB被支持了! ...
随机推荐
- 【翻译】什么是 eCPM & RPM 与其计算公式
[原文链接] What is eCPM & RPM. How to Calculate eCPM & RPM using Formula eCPM代表着每千次网页爆光转换率(或者是每千 ...
- 业务gis 怎么让别的开发人员不需要懂gis就可以搞开发? (五)
我们稍微搭建了一个比较简单的图形使用模板,flex端操作这里我就不说了,按大家喜好写,最后javascript部分可以通过jsduck工具生成一个开发文档给业务开发人员,前提注释部分要写好,要公开的注 ...
- 学习总结 DML数据库增删改语句
insert into score t values('111','3-105',88)--插入一行数据 insert into score(sno,cno) values('111','3-105' ...
- Socket连接
socket中TCP的三次握手建立连接详解 我们知道tcp建立连接要进行“三次握手”,即交换三个分组.大致流程如下: 客户端向服务器发送一个SYN J 服务器向客户端响应一个SYN K,并对SYN J ...
- 将Windows 7导航窗格中的收藏夹、库、家庭组、网络全部去掉
将Windows 7导航窗格中的收藏夹.库.家庭组.网络全部去掉,只剩下计算机.右键单击ShellFolder,选择权限->Administrators,勾选上“完全控制”,确定后双击右侧窗格中 ...
- PayPal 开发详解(四):买家付款
1.点击[立即付款] 2.使用[个人账户]登录paypal Personal测试帐号 3.核对商品信息 4.确认信息无误,点击[立即付款],提示付款成功,跳转到商家设置的URL 5.URL中包含pa ...
- [原]Hrbust1053 Warcraft III (完全背包)
本文出自:http://blog.csdn.net/svitter 原题:http://acm.hrbust.edu.cn/index.php?m=ProblemSet&a=showProbl ...
- 简单linux字符设备驱动程序
本文代码参考<LINUX设备驱动程序>第三章 字符设备驱动程序 本文中的“字符设备”是一段大小为PAGE_SIZE的内存空间 功能:向字符设备写入字符串:从字符设备读出字符串 代码: 1. ...
- Linux Hugetlbfs内核源码简析-----(二)Hugetlbfs挂载
本文只讨论执行"mount none /mnt/huge -t hugetlbfs"命令后,mount系统调用的执行过程(基于Linux-3.4.51),不涉及进程相关的细节. m ...
- toggleClass
toggleClass 用来给匹配元素切换类 语法 参考 http://www.w3schools.com/jquery/html_toggleclass.asp $(selector).toggle ...