您现在的位置 >> Hadoop教程 >> Hadoop实战 >> 专题  
 

翻译:使用OpenStack Database(Trove):复制及聚合

【作者:Hadoop实战专家】【关键词:基础设施 slave 实例 复制 】 【点击:73433次】【2013-10-2】
3.如何创建slave?即使你这样做在一个受控的奢侈的数据中心在专用硬件,也很难操作数据库基础结构。没有Trove,用户可能要靠自己手动配置这些特性和管理失效和故障转移。第一个版本的这个特性,用户可以创建一个单独的MySQL实例,然后创建一个从属的实例。  

相关热门搜索:

大数据标签:bigdata

问题导读:
1.Trove可以满足怎样的应用场景?
2.DBaaS有什么特色?
3.如何创建slave?

随着应用程序迁移到云中,操作数据库的复杂性,在这个新环境变得非常明显。即使你这样做在一个受控的奢侈的数据中心在专用硬件,也很难操作数据库基础结构。云引入了性能的可变性及虚拟化开销,并在底层硬件为最终用户提供了更低级别的控制。在公共云,单个虚拟机实例的可靠性被认为是大大低于在数据中心的专用机器。操作大量的服务器时,观察到的失败更频繁。所有的这些使在云中操作数据库更具挑战性。

Database-as-a-Service通过在操作基础设施时减轻管理员的管理负担去简化对云中的数据库的操作。依靠紧紧结合在底层基础设施和把许多常见操作自动化,DBaaS大大简化了许多这样的活动。然而,失败(failures)可能导致服务中断。因此,至关重要的是,为了使failures对最终用户透明,DBaaS平台解释和处理它们的方式,

Trove实现了这几个方面
第一,trove与OpenSatck基础设施紧密结合,与Nova,Neutron,Swift,Cinder和keystone紧密集成。它把启动一个新的服务器所需的大量的配置和设定都自动化,类似于其他工具如Puppet,Chef和Ansible所做的那样。它还允许网站管理员建立标准配置和使用那些配置可靠地启动服务器。

这个配置支持尤为重要的领域是复制和聚合。没有Trove,用户可能要靠自己手动配置这些特性和管理失效和故障转移。Trove使这些功能自动化,并且这些功能正在被分阶段实施。

Trove中最初被实施的复制(replication)使用了mysql内置的复制(replication)特性,用于MysqL数据储存。后续阶段将此功能扩展到包括聚合和复制所有Trove支持的数据储存。第一个版本的这个特性,用户可以创建一个单独的MySQL实例,然后创建一个从属的实例。创建从属(slave)的行为会建立一个新的与最初的实例同等的复制实例

以下命令说明用户将如何做到这一点。以下的Trove实例运行一个mysql5.5:

1. $ trove list

2. +--------------------------------------+------+-----------+-------------------+--------+-----------+------+

3. | ID                                   | Name | Datastore | Datastore Version | Status | Flavor ID | Size |

4. +--------------------------------------+------+-----------+-------------------+--------+-----------+------+

5. | d2bd91ef-3d7c-43ae-97a9-f0726c91d322 | m1   | mysql     | 5.5               | ACTIVE | 7         |    2

6. +--------------------------------------+------+-----------+-------------------+--------+-----------+------+

复制代码
现在将创建第二个(slave)实例引用上面提供的master,如下。

1. $ trove create s1 7 --size 2 --slave_of d2bd91ef-3d7c-43ae-97a9-f0726c91d322

2. +-------------------+--------------------------------------+

3. | Property          | Value                                |

4. +-------------------+--------------------------------------+

5. | created           | 2014-06-13T14:33:27                  |

6. | datastore         | mysql                                |

7. | datastore_version | 5.5                                  |

8. | flavor            | 7                                    |

9. | id                | 9ffc7b3a-9205-412a-9cd2-521f95755c43 |

10. | name              | s1                                   |

11. | slaveOf           | d2bd91ef-3d7c-43ae-97a9-f0726c91d322 |

12. | status            | BUILD                                |

13. | updated           | 2014-06-13T14:33:27                  |

14. | volume            | 2                                    |

15. +-------------------+--------------------------------------+

复制代码
用户可以现在查看复制的状态对(replicated pair)如下所示。

1. $ trove show 9ffc7b3a-9205-412a-9cd2-521f95755c43

2. +-------------------+---------------------------------------------+

3. |      Property     |         Value                               |

4. +-------------------+---------------------------------------------+

5. |      created      | 2014-06-13T14:33:27                         |

6. |     datastore     | mysql                                       |

7. | datastore_version | 5.5                                         |

8. |       flavor      | 7                                           |

9. |         id        | 9ffc7b3a-9205-412a-9cd2-521f95755c43        |

10. |        name       | s1                                          |

11. |       slaveOf     | d2bd91ef-3d7c-43ae-97a9-f0726c91d322        |

12. |       status      | ACTIVE                                      |

13. |      updated      | 2014-06-13T14:33:27                         |

14. |      volume      | 2                                            |

15. +-------------------+---------------------------------------------+

复制代码
断开一个slave与master的连接,用户将会“分离(detach)”:

1. $ trove detach_replication 

复制代码
现在你已经了解了Trove的复制特性的基本结构。在下一篇文章中,我们将描述客户端和任务管理器的实现细节。

################################################################
译者:hochikong
本文译自:http://www.mirantis.com/blog/using-openstack-database-trove-replication-and-clustering/

大数据系列相关文章:

最新评论
仙人球2014-09-09 07:00:27
at org.apache.hadoop.yarn.server.nodemanager.NodeManager.initAndStartNodeManager(NodeManager.java:328)
缘来是你2014-09-09 01:26:08
虚拟机吗
小瑞_XiaoRui2014-09-08 11:20:09
What Is Hadoop_
小霞0洋葱2014-09-07 11:03:53
如果环境变量里面没有那么你启动脚本里应该有的
.。。。2014-09-07 11:41:51
Google后Hadoop时代的新“三驾马车”——Caffeine、Pregel、Dremel-CSDN.NET http://t.cn/RPUkSHq
helloworldbjfu2014-09-07 09:04:18
你不需要 Hadoop 做数据分析的 10 个理由 —— 使用之前必须测试其他替代品 - 技术翻译: 为你的业务使用大数据技术是一个非常有吸引力的事情,现在Apache Hadoop使得它更加吸引人了。 Hadoop是一个大规模可伸缩的数据存储平台,被用作许多大数据项目的基础。 ... http://t.cn/zQ5N0AE
震河_袁奎2014-09-06 07:03:45
Exception in thread "main" org.apache.hadoop.util.Shell$ExitCodeException:
Oo儿oO2014-09-05 10:51:59
二次开发你得拉个分支
亮子2014-09-05 08:35:23
大多数大数据供应商的研究重点都是软件架构、业务逻辑、数据分析算法等,很多都忽略了网络环节的优化。思科的测试结果表明,一个有弹性的网络对Hadoop集群非常重要。下文介绍了思科公司在Hadoop集群环境下的网络架构设计与优化经验。http://t.cn/8s9hn8X #技术新知客# @Hadoop中国 @社会网络与数据挖掘
小成2014-09-04 04:00:13
发表了博文 《hadoop伪分布修改为集群》 - 1、每台机器的hosts都应该保存有所有机器的映射 2、每台机器都安装hadoop,和jdk并配置环境变量 3、删除原伪分布机器中hadoop目录下的 http://t.cn/8FF8U71
 
  • Hadoop生态系统资料推荐