




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一:MongoDBNoSQL的兴起:查找网页2)nosql数据库介绍3)MongoDB的特点4)传统的数据库:SQLservernosqlweb2.0的异军突起,传统的关系数据库为了保证“通用性”的设计而带来的功能NOSQL实现了大表的自动分割功能,更好的支持可靠性之间的折中nosql数据库接收-一个键/值对的高性能的分布式内存缓存服务器,用于动态Web基于libevent的时间处理(I/O处理性能好,IO是基于libevent的,是以异步处redis数据库介绍-一个key-value系统,和Memcached类slavelis(se()6)push/pop,允许用户实现消息机制nosql数据库介绍-3)Java8)支持事物(用javaapi)nosql数据库介绍-HBase利用HadoopHDFS作为其文件系统利用HadoopMapReduce来处理5)协议:HTTP/thrift支持数十亿行XMongoDB ,支持javascript可在服务器端执行任意的javascript322.5Gb,64制二:MongodbHBaseMongoDBbson文档型数据库,整个数据都存在磁盘中,Hbase是列式数据库,集群familycolumnhdfs文件中。Mongodb主键是“_id”,主键上面可以不建索引,记录插入的顺序和存放的顺序一样,hbaserowkey,可以是任意字符串(最大长度是64KB,实际应用中长度一般为10-100bytes),在hbase内部,rowkey保存为字节数组。时,数据按照Rowkey的字典序(byteorder)排序。设计key时,要充分排序这个特性,将经常一起读MongodbskiplimitMySQL的nosql数据库,而hbase只支持三种查找:通过单个rowkey,通过rowkey的mongodb的update是update-in-ce,也就是原地更新,除非原地容纳不下更新后的hbaseput,putrowkeyhbase来而已,hbase3。mongodbdeletemongodb在删除记录时并不是remove,而是将该删除记录数据置空(0或特殊数字加以标识)list列表“释放列表”中,这样做的好就是就是如果有用户要执行插入记录操作时,mongodb会首先从该“释放列表”size合适的“已删除记录”地址返回,这种方提升性能(避免了malloc内存操作),同时mongodb也使用了bucketsizesizesize大小放到合适的“释放列表”中。Hbasedeletetombstonemarkers,然后读的tombstonemarkers做merge,在发生majorcompactiondelete的数据记录mongodbhbasemapreducemongodbmapreducemongodb,mapreducemongodbshardhbaserowkeyshardkeyrowkeyserverserverkeykeykeymongodb的读效率比写高,hbase默认适合写多读少的情况,可以通过hfile.block.cache.sizestorefileHeap的大小百分比,0.2表示20%0.4-0.5也没问题。如果读写较均衡,0.30.2吧。设置这个值的时候,你同时要参考hbase.regionserver.global.memstore.upperLimitmemstoreheap的最大百分80-90%OOM的风hbase采用的LSM思想(Log-StructuredMerge-Tree),就是将对数据的更改hold在内threadhold后将该批更改merge后批量写入到磁盘,这样将单个写变mergedisk上的数据和memory中的修改数据,这显然降低了读的性能。mongodb采用的是mapfile+Journal思想,如果记录不在内存,先加载到内存,然后在内存中更改后记录日data文件,这样对内存的要求较高,至少需要容纳下热点MongoDBWeb1)MongoDB官网 Linux64,3264位,winmongodb也是64位mongodb的特色就是简洁报错:exceptionininitAndListen29Datadirectorydata/dbnotmongo默认启动数据库 [beifeng@hadoop-senior01bin]$sudo–pmkdir/data/db[root@hadoop-senior01bin]#./mongod[root@hadoop-senior01bin]#./mongod--smallfiles[beifeng@hadoop-senior01bin]$./mongod-f-f启动配置文件,参数可以定义在配置文件etc存放配置文件:[root@hadoop-senior01etc]#vimongodb.conf ##默认是false,true是以守护进程的方式在运行[root@hadoop-senior01mongodb-linux-x86_64-rhel62-3.4.2]#mkdirlog[root@hadoop-senior01beifeng]#mkdir-p/data/db[root@hadoop-senior01bin]#./mongod-f[root@hadoop-senior01bin]#./mongod-f../etc/mongodb.conf--smallfiles[root@hadoop-senior01bin]#./mongod-f../etc/mongodb.confabouttoforkchildprocess,waitinguntilserverisreadyforconnections.forkedprocess:2211childprocessstartedsuccessfully,parent[root@hadoop-senior01binpsef|grepmongod[root@hadoop-senior01log]#more [thread1]waitingconnectionsonport[root@hadoop-senior01log]#tail-fmongodb.log查看27017端口有没有进程在:[root@hadoop-senior01db]#netlocalhost27017mongodb在web上也可以:打开web:[root@hadoop-senior01etc]#vimongodb:----重新启动:./mongodfListallcommands|ReplicasetCommands:isMasterlistDatabasesserverStatustopbuildInforeplSetGetStatusfeatureslockInfohostInforeplSetGetConfig-.././mongodshutdown或./mongodfetc/mongodb.conf 配置文件rest=trueweb控制台28017url:mongodb启动关闭,自定义参数mongodbweb控制台使用三:MongoDBs详1)s使用及常用命s使用常用命令./mongo--portshowdbs---已有数据库列表showcollections已有集合列表showusers---已有用户列表usedbname切换数据库,系统自动延迟创建该数据库db.account.save({'name':'test','addr':''})--创建集合db.dropDatabase()---删除数据库(当前) [root@hadoop-senior01bin]#./mongo[root@hadoop-senior01bin]#./mongo--portshow 库不一样usesbswitchedtodbsbshowWriteResult({"nInserted":1})showcollectionsshowdbs {"_id": "),"name":"addr":""mongodbid,也可以自定义,通常使用自定义算法{"dropped":"sb","ok":1showdbs mongodumphdbhostddbnameodbdirectorymongorestorehdbhostddbnamedirectoryperdbdbdirectory--./mongoexport-dbbscaccount-q{}-fname,addr--csv>account.csv--数据导出工具,csv格式./mongoexportdbbscaccountqfname,addr>account.json导出为json./mongoexportdbbscaccountqname”:”test2fname,addrcsv>account.csv带./mongoimportdssbcaccounttypecsvheaderlinedropmydata/account.csv--数据导入工具,导入csv文件./mongoimportdbbscaccounttypejsondrop<account.jsonjson四:MongoDB文档是MongoDB中数据的基本单元,是MongoDB的概念,很类似关系数据库{“user”:”11”}与{“user”:11}不同,{“User”:”11”}与{“user”:11”},oracle默认是不区分大小showUTF-864不能是空字符串不能含’’号和.号和$号和\号和\0***一个MongoDB实例可承载多个数据库***:data/db2重新启动MongoDB:bin/monoddbpath=../data/db2port27018Web端口:28018启动 限local:这个数据库中的数据不会被,可以用于限于本地数据单台服config:分片时,config数据库在,保存分片信息(config数据就保存分片长度过121字节,实际使用时应小于100字节 五MongoDB数据类 描 举 {“x:null}布尔 真或者假:true或者false{“x:true}3)32位整数 32位整数 中默认回转换成64位浮4)64位整数 64位整数,s 中默认回转换成64位浮点5)64位浮点 64位浮点数 中的数字就是这一种类型字符 UTF-8字符串{“foo“bar”}符 s不支持,s会将数据库中的符号类型的数据自动转换成字符(bson的数据类型对象 文档的12字节(一个字节相当于2个字符)的唯一id{idObjectI(} 从标准开始的毫秒数“datenewDate()} ***json官网(字符串格式 (stringte(array***日期 {“foo --i代 {“x:function()}二进制数据任意字节的二进制串组成 最大值BSON包含一个特殊类型,表示可能的最大值,shel最小值BSON包含一个特殊类型,表示可能的最小值 不支未定义 {“x:unefined} 不支数 {“arr:[a”:”b”]}内嵌文 value{“x:{“foo:”bar”}}***i忽略大小写,i(,m(:bsonspecorg***Bson可以的数据类型要比json更广泛***时间Integer在JAVA内用32位表示,因此32位能表示的最大值是2147483647。另外1年365 =6
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 第三人称单数形式的辨别与应用:小学英语教案
- 我的老师敬爱的语文老师演讲稿10篇
- 供应链管理与物流合作协议规定事项表
- 食品营养学专业知识问答练习集
- 绿色发展理念对产业提质增效的影响
- 银行业风险管理测试卷
- 技术进步对高素质应用型人才培养的影响分析
- 教育用品类型及价格列表
- 跨学科合作促进地理学实践教学的多元化
- 智能仓储物流解决协议
- 上海浦东新区公办学校储备教师教辅招聘笔试真题2024
- 2025年中国水性马克笔行业市场前景预测及投资价值评估分析报告
- 电动汽车充换电站建设资料标准
- JG/T 375-2012金属屋面丙烯酸高弹防水涂料
- 南邮综评面试题目及答案
- 施工现场劳动力调配与材料保障措施
- 工商业光伏技术方案
- 2025届四川省宜宾市叙州区英语七下期末质量检测试题含答案
- T/CCOA 62-2023大豆油生产技术规范
- 2025国家开放大学《人文英语1》综合测试形考任务答案
- 电影院线电影票房分成合同
评论
0/150
提交评论