专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-683-0016      微信咨询  |  联系我们

mysql合并表查询,Bigtable和MapReduceGFS之间的关系是什么_数据库

当前位置:网站建设 > 技术支持
资料来源:网络整理       时间:2023/3/5 19:57:23       共计:3617 浏览
mysql合并表查询,Bigtable和MapReduceGFS之间的关系是什么?

GFS、Bigtable、MapReduce的关系

GFS(Google File System)使Google的分布式文件系统,Bigtable也是构建在GFS之上的,MapReduce也需要利用GFS作为数据的输入和输出。

Bigtable是什么

Bigtable是分布式表格系统,表格由很多行组成,每行通过一个rowkey唯一标识,每行包含很多列,多个列组成列族。列族是访问控制的基本单元。Bigtable构建在GFS之上,并且依赖于Goole的Chubby进行服务器的选举和全局信息的维护。

读写

当有客户端向 发送写操作时,它会先向 tablet log追加一条记录,在日志成功追加之后再向 memtable 中插入该条记录,写比较方便。

当有客户端进行读操作时,会在 memtable 和 SSTable 上进行合并查找。读就比较复杂了,还需要确认数据在哪里,当然这里会使用很多优化的方法,比如缓存数据,使用Bloom lters快速确认数据是不是存在一个SSTable里。

memtable和SSTable中的数据都是有序的,SSTable是由memtable生成的,当memtable达到一定量时,就会被冻结,新的memtable就会被生成,被冻结的memtable就会转化成SSTable,并写入到GFS上。

LevelDB 是对Bigtable 论文中描述的键值存储系统的实现,并且由 Bigtable 的作者 Jeff Dean 和 Sanjay Ghemawat 共同完成,可以参考下LevelDB的实现。

总结

了解Bigtable,需要了解下LSM树,现在的数据存储引擎一般就是哈希、B树、LSM树。像我们使用的mysql的InnoDB存储引擎就是B+树。

希望对你有所帮助,有帮助记得点赞哦!可以关注下,后面持续分享架构和Java的文章,谢谢!

版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
·上一条:该从哪门语言入手呢_数据库 | ·下一条:mysql数据库管理,MySQL日志管理详解_数据库

Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有    粤ICP备16019765号 

广州京杭网络科技有限公司 版权所有