我运行一个非常自定义的集群,用于处理基于LAMP基本设计的大量科学数据。一般来说,我运行一个单独的MySQL服务器,大约128GB的内存和大约1TB的存储空间。另外,我运行一个头节点,作为我的进程数据输入的nfs挂载点,以及一个显示结果的网络服务器。最后,我试用一些计算节点从mysql表中获取作业,从NFS获取数据,做一些繁重的工作,然后将结果放入mysql。
我遇到了一个我想要处理的数据集,这个数据集非常大(1TB的输入数据),而且我真的没有硬件可以处理它。结果,我开始研究谷歌计算引擎等,以及扩展实例的前景,以便快速处理这些数据,并将结果存储在mysql实例中。完成后,可以从云中转储mysql表并在本地进行分析。我可以毫无问题地部署MySQL服务器,以及其他LAMP部分和计算节点,但我无法弄清楚如何在云中实现这一点。
一个主要的问题似乎是缺少读/写NFS,这使我能够将数据存储到多个实例中,将其压缩,然后将结果推送到MySQL。这对我来说是必要的一步,因为我可以从Web服务器排队数百个作业,然后让实例(多达50-100个)通过连接到集中式mysql实例来查找实例需要的作业。做什么和数据在哪里。处理数据(发生了一个文件转换,使得写入部分成为必要),处理数据,然后将结果加载到mysql。我希望我能清楚地解释我的情况。这似乎是CPU密集型流程的一个很好的例子,可以在云中很好地扩展,我似乎无法将所有部分放在一起......任何输入都值得赞赏!