最近想深入研究一下Cassandra,而Cassandra没有中文文档,仅有的一些参考书都是0.7/0.6版本的.因此有个计划,一边学习文档(地址:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html),一边有选择的翻译部分内容并且加上自己的解读.英语一直是我的弱项,因此,也希望借此机会锻炼一下自己的英语.因为一直在网上找不到很好的Cassandra教程,所以希望能有所贡献.出错难免,请大家帮忙指正~也借此机…
参考文档:http://www.datastax.com/documentation/cql/3.0/webhelp/index.html#cql/ddl/ddl_primary_index_c.html#concept_ds_vk2_dyz_zj 索引提供了一种手段通过属性来获取 Cassandra中数据而不是分区键.好处是提供了快速的.高效的按照指定条件找出数据的查询. 列的值的索引在一个与值分开的.隐藏的表中.Cassandra有很多技术用来防止出现不良的情况——数据可能检索不正确,查询的…
参考文档:http://www.datastax.com/documentation/cql/3.0/webhelp/index.html#cql/ddl/ddl_anatomy_table_c.html#concept_ds_qqw_1dy_zj 在一个层次上来说,Cassandra中的表.行和列可以认为和关系型数据库是相同的.在SQL和CQL中你可以定义表(包含已经定义好的行和与之相关的数据类型),你可以创建索引去增加查询效率. 然而,一个重要的不同是因为Cassandra是被设计来分组成为…
三.集合列 CQL 3 引入了一下集合类型: •set •list •map 在关系型数据库中,允许用户拥有多个email地址,你可以创建一个email_addresses表与users表存在一个多对一关系.CQL 3能够处理经典的多个电子邮件地址的使用情况,其他使用的情况下可以通过定义的列达到集合的效果.利用集合来解决多个邮件地址的问题是方便和直观的. 集合类型的另一个用途被证明可以使用音乐服务作为例子. 四.往表中增加一个集合 上面说的音乐服务的例子包括给歌曲标记标签.从一个关系的角度看,你…
参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/dml/dml_config_consistency_c.html 一致性指的是怎样更新到最新并且在所有副本节点上同步Cassandra的一行数据.Cassandra通过提供可以调节的数据一致性扩充了最终一致性的观点,对于任何读取或写入操作,客户端决定请求数据的一致性. 除了可配置的一致性以外,Cassandra通过很多的bu…
参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/dml/dml_about_reads_c.html#concept_ds_vrp_4qx_zj 不像大部分数据库.Cassandra从固态硬盘中平行随机读取数据性能很好,具有极低的延迟.不推荐使用常见的硬盘.Cassandra读和写一样,数据是被key分隔开,去除了很多关系型数据库需要用到的复杂查询. 首先,Cassandr…
参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/architecture/architecturePartitionerAbout_c.html#concept_ds_dwv_npf_fk 一个分区器决定了数据是怎样分布在集群中的节点上的.通常,一个分区器就是一个hash函数去计算每一行键值的hash值——token.每一行数据通过一个键值唯一标识并且在集群中按token分…
参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/architecture/architectureIntro_c.html Cassandra是一个Nosql数据库,是用来通过多节点来处理大数据的,并且没有单点故障.也就说,即使一个节点坏了整个系统仍然能够正常运行.Cassandra架构的前提或者说在设计架构的时候就考虑到系统故障和者硬件故障是可能发生的.为了处理这个问题,…
参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/dml/dml_schema_changes_c.html#concept_ds_rdc_lvr_gk 在Cassandra1.2及之后,大量的模式变化可以同时发生在一个集群中,而节点之间没有任何模式的分歧.例如,如果一个客户端设置一个列为integer而另一个客户端设置为text,一个或另一个动作会立马生效.哪一个动作会生效…
数据参考:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/dml/manage_dml_intro_c.html#concept_ds_g2s_y1w_zj 为了管理Cassandra上的数据,了解Casssandra是如何写入和读取数据.hint机制.一致性和非一致性是等数据库特性非常有必要的.在Cassandra中,一致性指的是如何使一行数据在所有的副本更新到最新数据保持同步.…
参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/dml/dml_about_transactions_c.html#concept_ds_j1p_m5x_zj Cassandra不提供完整的符合ACID特性的事务,ACID事务是关系型数据库系统的标准事务行为: •原子性 在事务中每一个步要么成功或者回滚整个事务. •一致性 一个事务不能使数据库处于不一致的状态. •隔离性…
参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/dml/dml_about_hh_c.html Hint机制是Cassandra的特性当一致性不要求时保证了写入的高可用性.但临时故障发生如网络问题,Hint机制显著地提升了反应的一致性.通过配置cassandra.yaml文件,你选择是否启用Hint机制. 一.Hint机制是如何工作的 当一个写入发生,应当被写入的副本节点被…
参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/dml/dml_about_deletes_c.html 相比于传统的关系型数据库,Cassandra采用了另一种方式去删除数据.关系型数据库会花时间扫描并删除过期数据或者管理员可能需要每月分区过期数据,例如,让数据库更快一些.在Cassandra中,你不需要移除过期的数据. 关于Cassandra删除数据有两个因素需要记住:…
数据参考:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/dml/dml_manage_ondisk_c.html#concept_ds_rwq_d4x_zj Cassandra使用的数据存储结构类似于日志结构的合并树,不同于典型的关系型数据库使用B-树.存储引擎使用追加模式按顺序写入磁盘中,数据存储是连续的.在各个节点和一台机器的操作都是平行的.因为Cassandra不适用B-tr…
参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/architecture/architectureClientRequestsAbout_c.html#concept_ds_xf3_5nl_fk 可以在集群的任意节点上进行读写请求因为在Cassandra中所有的节点都是同等的. 当一个客户端连接到一个节点并发出一个读或写的请求,在那次特定的客户端操作中那个节点作为协调者.协…
参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/architecture/architectureDataDistributeAbout_c.html#concept_ds_g43_g3f_fk 在Cassandra中,数据分配和复制是同时进行的.这是因为Cassandra被设计为一个点对点的系统,数据有多个复制,被分发到一组节点上.数据按照表的形式构建以主键进行标识.主键…
参考文档:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/architecture/architectureGossipAbout_c.html#concept_ds_elb_tgd_fk 一.什么是gossip Cassandra使用一个名为gossip的协议去获得集群中其他节点的位置和状态信息.Gossip是一个点对点的通信协议,在这个协议中,节点之间定期交换状态信息.Gossi…
参考数据:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/dml/dml_about_inserts_c.html#concept_ds_xvr_knw_zj 插入和更新操作是相同的.当插入和更新发生的时候,Cassandra不会覆盖已经有的行,但是会在memtabel中插入和更新. 任何数目的column可以被同时插入和更新.当往一个表中插入和更新数据的时候,客户端程序会标识那些数…
数据参考:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/architecture/architecturePlanningAbout_c.html 当规划一个Cassandra集群部署时,关于你初始存储的数据的数据量你应当有一个好的想法,并且对于程序的工作量有一个很好的预计. 下面是规划集群时需要考虑的: 1.选择企业实现级别的硬件: 根据下列资源选择适当的硬件:CPU.内存.平衡…
参考资料:http://www.datastax.com/documentation/cassandra/1.2/webhelp/index.html#cassandra/architecture/architectureSnitchesAbout_c.html#concept_ds_c34_fqf_fk 一个snitch(告密者)决定应当从哪个数据数据中心和机架写入和读取数据.snitch通知Cassandra关于网络的拓扑情况以保证数据请求能够高效地路由并且允许通过把机器按数据中心和机架分组…
bulk 批量操作-实现多个文档的创建.索引.更新和删除 ------------------------------------------------------------------------------ 1.命令格式 {action:{metadata}}\n {request body} {action:{metadata}}\n {request body} 其中,action的值有 create\index\update\delete create:当文档不存在时创建之 ind…
概述 jQuery EasyUI 是一组基于jQuery 的UI 插件集合,它可以让开发者在几乎完全不需要CSS以及复杂的JS代码情况下完成美观且功能强大的Web界面. 本文主要说明一些如何利用EasyUI文档快速学习的心得.官网文档介绍的比较详细,也可以使用中文文档. 官网文档: http://www.jeasyui.com/tutorial/index.php http://www.jeasyui.com/documentation/index.php 中文官网文档: http://www.…
Spring文档学习 参考Spring Framework Documentation学习 1. IoC 容器 1.1 容器实例化 <beans> <import resource="services.xml"/> <import resource="resources/messageSource.xml"/> <import resource="/resources/themeSource.xml"/&…
目录: »  plot 最常用的二维曲线绘图函数 >  帮助文档 >  基本使用语法 >  线条的样式.符号和颜色调整 >  图形属性调整 >  使用图形句柄进行设置 »  line 点点连线 »  subplot  子图绘制 >  子图绘制 >  子图句柄 »  plotyy  双纵坐标绘图 >  双纵坐标的绘图 >  双纵坐标的句柄 »  hold  图形叠绘 写在前面 : MATLAB中函数的学习,一定要学会使用软件自带的Help帮助文档 . 在…
1.集群 节点(一个elasticsearch实体)  索引  主节点 :集群级别变更,新增或移除节点,索引:  主节点不参与文档级别搜索和变更. 分片(shard):一个完整的搜索引擎,lucene实例.  文档--分片--索引,主分片个数*主分片大小=索引大小 node.master = true node.data = false index.number_of_shards: 3 index.number_of_replicas: 1…
1 零基础小白如何进行 iOS 系统学习 首先,学习目标要明确: 其次,有了目标,要培养兴趣,经常给自己一些正面的反馈,比如对自己的进步进行鼓励,在前期小步快走: 再次,学技术最重要的一点就是多动手. 推荐书目: <Objective-C 基础教程> <iOS 编程> <iOS 开发指南> 推荐两个开源的 APP:SegmentFault.懒人笔记 2 基础入门后,如何进行高级进阶 2.1 原理和基础:掌握扎实的原理和基础是进阶的必要条件 首先是语言.入门时候可能只要对…
校验xml文档,可以通过程序来校验,利用一段js代码即可. 各行代码的含义已经写出,运行这个html文件,检验如下xml代码: 结果如下: 如果xml文档出现错误: 结果如下: 其中,obj.async=false是关闭对象的异步加载模式,所谓异步是加载一句解释一句,同步是加载完成后再解释.…
文档参考地址:https://nodejs.org/dist/latest-v4.x/docs/api/ Assert(断言) assert模块提供了一组简单的断言测试方法,可以拥有测试不变量.该模块本意是用于node.js内部使用,但是现在可以通过require('assert')引入模块的方式在应用程序代码中使用.然而,断言并不是一个测试框架,也不是用来作为一个通用的断言库. assert模块的API是锁级别的.这意味着该模块实现的方法和暴露的任何方法将不可增加或更改. assert(val…
文档参考地址:https://nodejs.org/dist/latest-v4.x/docs/api/ 简介 下面是用nodejs编写的一个web服务的例子,返回"Hello World". const http = require('http'); http.createServer( (request, response) => { response.writeHead(200, {'Content-Type': 'text/plain'}); response.end('…
ptmalloc http://www.malloc.de/en/ tcmalloc https://github.com/gperftools/gperftools jcmalloc http://jemalloc.net/ https://people.freebsd.org/~jasone/jemalloc/bsdcan2006/jemalloc.pdf  论文文档 https://owent.net/2013/867.html http://www.cnhalo.net/2016/06/…