设为首页 收藏本站
查看: 1206|回复: 0

[经验分享] 「2014-2-6」TokuMX and MongoDB related materials collection

[复制链接]

尚未签到

发表于 2015-7-8 11:55:46 | 显示全部楼层 |阅读模式
  简介参考 TokuMX 和 MongoDB 各自的官方站点。
DSC0000.png       DSC0001.png
  ##  
Tokutek 最重要的特点和 marketing word 是所谓 fractal tree indexing technology,相关链接:
DSC0002.png
  1. 由于 per-node buffer 的引入所导致的 ACID 里的 Durability 问题应对方式(通过更合理的规划物理机器布局、增加单事务数据量等方式来分摊 fsync 开销;更「松弛」的持久化处理,即不要求每次 operation 都做持久化、而是「延迟容忍」的持久化机制)。   
http://www.tokutek.com/2010/01/high-insertion-rates-into-a-tokudb-table-with-durable-transactions/
  2. 微博上 fractal tree 相关的链接。
  ##  
MongoDB 的一条融资新闻,觉得在 community 运作和开发模式(开源社区和公司运营相结合,所有的 issue 和 bug fix 都是可公开访问的,有很高的透明度)上,MongoDB 做的很棒。简单初步看了一下,记录在此,不一定准确和全面。
  1. 数据建模的基本策略,embedded data & references 两种最基本的类型:前者直接在 document 里嵌入 sub-document 形成从属和绑定的关系,好处是能够以更少的读操作,从 collection 里获取数据,并且对原子写入支持更好(写操作的 atomicity 是建立在 document 基础上);后者通过 reference 引用其他 collection 里的 document,好处是能够降低 duplicate data fields(类似于用指针代替物理拷贝),对存储空间更友好,坏处则是对业务逻辑上的某个 record 做操作可能意味着对多个 documents 做操作。     
基本介绍,如何建模 relationship between documents(有别于简单 key-value 数据库的地方),设计数据模型时必要的一些考量(such as lifecycle management, indexing, atomicity, horizontal scalability, and document growth)。
  2. 同 SQL 常见术语和概念的对照表。如,行和列分别对应于 BSON document 和 field,主键(primary key)术语一致但稍有不同(MongoDB 里制定了 BSON ObjectID _id 做为主键);值得注意的是,table join 的对应项是 embedded documents and linking,这挺有趣的,基于目前极其有限的了解,我的猜测是,MongoDB 尽管是 schema free No-SQL 数据库,但它可能对早期的 data modeling 提出了更高的要求。
  3. FAQ 里对于「Do MongoDB databases have schemas?」的回答,最有价值的一点,可能就在于「simplifies and facilitates iterative software development with MongoDB」。
  4. 关于 MongoDB 的典型应用场景和是否支持事务的 FAQ。
  
     MongoDB has a general-purpose design, making it appropriate for a large number of use cases. Examples include content management systems, mobile applications, gaming, e-commerce, analytics, archiving, and logging.      
Do NOT use MongoDB for systems that require SQL, joins, and multi-object transactions.
    5. 数据持久性方面的问题《Are writes written to disk immediately, or lazily?》。
  
     Writes are physically written to the journal within 100 milliseconds, by default. At that point, the write is _durable_ in the sense that after a pull-plug-from-wall event, the data will still be recoverable after a hard restart.
    
  Jounaling mechanism - http://docs.mongodb.org/manual/core/journaling/。注意 private view / shared view / data files 三者在不同操作下的 memory view 映射。
  ##   
其他相关的链接:
  1. 《main rules of efficient SQL》,其中也提到了 Oracle 数据库 table join 的三种机制如 hash join 等等。
  2. 《What do Clustered and Non clustered index actually mean?》
  
     Regarding multiple indexes. You can have only one clustered index per table because this defines how the data is physically arranged. If you wish an analogy, imagine a big room with many tables in it. You can either put these tables to form several rows or pull them all together to form a big conference table, but not both ways at the same time. A table can have other indexes, they will then point to the entries in the clustered index which in its turn will finally say where to find the actual data.
    3. 《How does database indexing work?》,以及一个相关的问题,数据库里的 cardinality 含义。
  
     Also given the nature of a binary search, the cardinality or uniqueness of the data is important. Indexing on a field with a cardinality of 2 would split the data in half, whereas a cardinality of 1,000 would return approximately 1,000 records. With such a low cardinality the effectiveness is reduced to a linear sort, and the query optimizer will avoid using the index if the cardinality is less than 30% of the record number, effectively making the index a waste of space.
    4. 《关于 MongoDB 你需要知道的几件事》《千万别用 MongoDB ?真的吗?》。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-84472-1-1.html 上篇帖子: 使用CSharp Driver操作Mongodb介绍 下篇帖子: MongoDB Python create by lee
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表