原文:http://wiki.apache.org/cassandra/Streaming
在0.7版本之后,有连个主要的流实例:
传输 - 当源节点把一个给定范围的key推送到目标节点时产生。由源节点进行初始化和控制。
请求 - 当目标节点向原节点请求一定范围的key集合时产生。有目标节点进行初始化和控制。
传输(Transfer)
进行流传输的步骤:
1. 源节点拥有一个必须传送到其它节点的key范围。
2. 源节点把此范围的数据拷贝到sstable文件中,以准备进行流传输。此步骤被称作anti-compaction(因为compact归并多个sstable文件为一个,而此操作相反。)
3. 源节点构建一个包含需要传送的sstable文件的的暂挂文件列表。
4. 源节点从暂挂文件列表中启动流传输,并产生日志输出"Waiting for transfer to $some_node to complete".流的头部包含关于流文件的信息,目标节点翻译此头部以明确如何处理输入流。
5. 目标节点接收文件,写入磁盘并返回文件状态。
6. 成功后源节点继续流传输下一个文件,当出错后再次流传输相同的文件。[@more@]
在0.7版本之后,有连个主要的流实例:
传输 - 当源节点把一个给定范围的key推送到目标节点时产生。由源节点进行初始化和控制。
请求 - 当目标节点向原节点请求一定范围的key集合时产生。有目标节点进行初始化和控制。
传输(Transfer)
进行流传输的步骤:
1. 源节点拥有一个必须传送到其它节点的key范围。
2. 源节点把此范围的数据拷贝到sstable文件中,以准备进行流传输。此步骤被称作anti-compaction(因为compact归并多个sstable文件为一个,而此操作相反。)
3. 源节点构建一个包含需要传送的sstable文件的的暂挂文件列表。
4. 源节点从暂挂文件列表中启动流传输,并产生日志输出"Waiting for transfer to $some_node to complete".流的头部包含关于流文件的信息,目标节点翻译此头部以明确如何处理输入流。
5. 目标节点接收文件,写入磁盘并返回文件状态。
6. 成功后源节点继续流传输下一个文件,当出错后再次流传输相同的文件。[@more@]
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23937368/viewspace-1054981/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/23937368/viewspace-1054981/