将数据从本地运行的Java应用程序获取到谷歌云应用程序并返回

时间:2017-05-31 18:28:29

标签: google-cloud-platform google-cloud-dataflow

我想深入了解分布式系统,云计算,物联网等世界,我要说实话,我想象一切都比最终结果更直观。 我考虑过一个很小的测试架构,我想设置Google云端及其服务,但我有点卡住,因为我无法理解一些概念。

我基本上想要做的(作为第一步)是编写一个在我的计算机上本地运行的简单Java应用程序。此应用程序应该只生成随机数,并以某种方式将这些数字发送到谷歌云。在云上,我想定义另一个java应用程序,它将以某种方式操作这些随机数(实际上并不重要)。之后,输出应该以某种方式回到我身边。实际上,目前,我甚至不关心究竟是怎么回事。它可能以某种方式回到我的本地应用程序(有某种倾听者,这可能吗?)。但它也可以简单地将结果存储在谷歌云上?或者也许将它们上传到我的谷歌硬盘?

我猜你已经注意到 - 在某些时候 - 我甚至不知道我想要什么,因为我不确定什么是可能的,什么不可以。

你可以帮我设置一下吗? 对我来说,最重要的问题是:

  • 我是否需要使用pubsub系统,我的生成号码将被发送到该系统 to,然后将其转发到云应用程序,转换我的 数据?
  • 如何将我的数据从本地应用程序获取到云服务?
  • 我的数据转换应用会在Google数据流上运行吗?
  • 上面我写了“作为第一步”...因为后来我还想将配置文件(例如json格式或xml)发送到云端,并且 云应用程序应该转换那些配置文件...如果我得到了 第一个场景运行我猜这个犯规也没问题 正确?

这些只是我目前想到的一些问题。我猜是最重要的。

这将是一个很大的帮助。对不起,如果问题不是很精确,但我真的需要某种指向正确的方向。

提前谢谢!

1 个答案:

答案 0 :(得分:0)

我认为阅读你在这里提到的一些技术会很好:

  • Google Cloud Pubsub:发布/订阅可让您将消息发布到主题,并在(Google)云中的其他位置使用它们。您可以在链接中看到一些不同的发布者和消费者示例。在您的情况下,您可以编写一个Java应用程序,将随机数写入Pub / Sub队列,在那里它们将被放置7天以供另一个组件使用(例如,Google Cloud Dataflow)。要开始开发,您可以找到SDK here(有一个Java SDK)。
  • Google Cloud Dataflow是运行Apache Beam管道的托管服务,可以大规模处理您的数据。您可以了解不同的概念here并开始设计管道here。我建议先看看一些例子,这样可以更容易地掌握实际情况。 Dataflow有一个PubSub连接器,因此在您的应用程序中,您将能够阅读之前创建的主题。在数据流中,您可以将所有随机数相乘并将其写入某个接收器(例如Google Cloud Storage,甚至是BigQuery或PubSub)。
  • Google Cloud Storage:是一个云存储,您可以在其中放置文件,例如Dataflow管道的输出。您可以使用Cloud Console UI手动下载文件,也可以使用SDKs之一以编程方式下载输出。

希望这能为您提供一个概述和一些指示。每当您准备好并考虑更具体的用例时,您就可以开始查看更多组件了。