我需要对整个谷歌云有一些基本的了解。假设我有一个 android 应用程序可以将用户的联系人、照片等存储到云中,在这种情况下-
1.我应该使用哪种服务 - 谷歌云存储还是谷歌云端硬盘?
如果我使用谷歌云存储,我该怎么做?这就是我们如何使用带有端点类的实体类创建应用程序引擎后端,从而将其保存到云的无模式 NoSQL 数据存储中吗?如果我这样做,应用程序可以使用的存储空间是否有任何限制?
2.如果我使用google drive,我该怎么做?我应该先将数据存储在 xml 中,然后将其保存到 google drive 吗?
3.appengine schemaless NoSQL datastore和cloudSQL有什么区别,更适合用户的数据存储。
4. 应用引擎应用/后端是指设备中的安卓客户端应用还是上传到云端的后端模块(带有实体类、端点类等)? Web 前端(IDE 自动生成)有必要吗?
最佳答案
1.Which service should I use - google cloud storage or google drive ?
Google Cloud Storage 非常适合保存大量数据(例如照片)并取回或提供这些数据。 Google App Engine 的 Datastore 适用于更小、更结构化的数据(每个实体不超过 1MB,因此您会看到例如许多照片放不下),并且能够在未来取回它们,全部或部分,通过查询。
if I use google cloud storage, how do I do it? Is this how we make an app-engine backend using the Entity class with endpoint class, thereby saving it to cloud's schemaless NoSQL datastore? If I do so, is there any limit to storage space that an app can use?
Google Cloud Endpoints 非常适合此目的,但是“大块”数据部分(例如照片和视频)应该隐藏在 Cloud Storage 中,而在数据存储中您将只保存这样创建的 Cloud Storage 对象(为了将来检索的目的),以及其他更小、更结构化的数据(例如用户的联系信息)。
数据存储区中的每个实体都必须在 1 兆字节以内。 Cloud Storage 中对象的大小没有限制,应用程序可以拥有的数据存储实体的数量也没有限制,Cloud Storage 存储桶和对象的数量也没有限制。当然,您需要为存储和访问付费——参见 https://cloud.google.com/storage/pricing对于云存储,https://cloud.google.com/appengine/pricing#cost_resource用于 App Engine 资源(包括数据存储区)。
2.If I use google drive,How do I do it? Should I first store the data in xml,then save it to google drive?
Google Drive 是“云中的文件系统”——当您需要文件系统语义时,您会使用它,而不是仅仅存储和检索大对象(这是 Cloud Storage 最擅长的)或使用数据库的功能(关系,如 Cloud SDL,或非关系,如 GAE Datastore)。就您在此处表达的此类需求而言,Drive 似乎不太适合您的需求。
3.Whats the difference between appengine schemaless NoSQL datastore and cloudSQL,which is better for user's data storing.
Cloud SQL 是 MySQL 的一种实现,如果您确实需要关系数据库功能(例如 JOIN),或者为了简化已编写为使用关系数据库的现有应用的迁移,建议使用 Cloud SQL。如果你不需要关系数据库的特性,用于大 blob 的 Cloud Storage 和用于结构化数据的 GAE Datastore 可以更快,并且可以无限制地扩展(而 Cloud SQL 确实有限制,目前默认每个实例 250 GB ,可通过发送电子邮件至 cloud-sql@google.com 扩展至绝对最大值 500 GB)。
4.Which is called the app engine app/backend- the android client app in device or the the backend module (with entity class,endpoint class etc) that is uploaded to cloud? What about the web front end (that is auto-generated by IDE), is it necessary?
“后端”这个词有些含糊不清,而且负担过重。 GAE 过去常常使用它来指代旨在处理更大(类似批处理)工作负载的特定实例,但现在已弃用它,取而代之的是可以为您提供更多控制权的 GAE 模块。
无论如何,Android 客户端绝对不会成为任何东西的“后端”;它绝对是前端,与用户交互(而应用引擎应用程序,与您选择使用的任何形式的存储交互,将是该 Android 应用程序的后端)。
如果您愿意将您的用户限制为仅使用 Android 应用程序,而不向他们提供任何通过浏览器访问其数据的方式,那么您就没有必要为您的服务提供网络“面孔”。然而,它可以非常简单地做到,并且赋予您的用户更多的灵 active 和选择权并不是一件坏事,不是吗?我怀疑这在一定程度上是一代人的事情——从更大的屏幕和更大、更易读的字体访问您的服务的能力对于更成熟的用户来说可能是宝贵的,而千禧一代可能不太关心它。
关于android - Google Cloud Datastore 与 google drive 与其他存储服务的数据备份,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28930150/
我正在尝试使用ruby和Savon来使用网络服务。测试服务为http://www.webservicex.net/WS/WSDetails.aspx?WSID=9&CATID=2require'rubygems'require'savon'client=Savon::Client.new"http://www.webservicex.net/stockquote.asmx?WSDL"client.get_quotedo|soap|soap.body={:symbol=>"AAPL"}end返回SOAP异常。检查soap信封,在我看来soap请求没有正确的命名空间。任何人都可以建议我
我想安装一个带有一些身份验证的私有(private)Rubygem服务器。我希望能够使用公共(public)Ubuntu服务器托管内部gem。我读到了http://docs.rubygems.org/read/chapter/18.但是那个没有身份验证-如我所见。然后我读到了https://github.com/cwninja/geminabox.但是当我使用基本身份验证(他们在他们的Wiki中有)时,它会提示从我的服务器获取源。所以。如何制作带有身份验证的私有(private)Rubygem服务器?这是不可能的吗?谢谢。编辑:Geminabox问题。我尝试“捆绑”以安装新的gem..
我主要使用Ruby来执行此操作,但到目前为止我的攻击计划如下:使用gemsrdf、rdf-rdfa和rdf-microdata或mida来解析给定任何URI的数据。我认为最好映射到像schema.org这样的统一模式,例如使用这个yaml文件,它试图描述数据词汇表和opengraph到schema.org之间的转换:#SchemaXtoschema.orgconversion#data-vocabularyDV:name:namestreet-address:streetAddressregion:addressRegionlocality:addressLocalityphoto:i
最近,当我启动我的Rails服务器时,我收到了一长串警告。虽然它不影响我的应用程序,但我想知道如何解决这些警告。我的估计是imagemagick以某种方式被调用了两次?当我在警告前后检查我的git日志时。我想知道如何解决这个问题。-bcrypt-ruby(3.1.2)-better_errors(1.0.1)+bcrypt(3.1.7)+bcrypt-ruby(3.1.5)-bcrypt(>=3.1.3)+better_errors(1.1.0)bcrypt和imagemagick有关系吗?/Users/rbchris/.rbenv/versions/2.0.0-p247/lib/ru
在Rails4.0.2中,我使用s3_direct_upload和aws-sdkgems直接为s3存储桶上传文件。在开发环境中它工作正常,但在生产环境中它会抛出如下错误,ActionView::Template::Error(noimplicitconversionofnilintoString)在View中,create_cv_url,:id=>"s3_uploader",:key=>"cv_uploads/{unique_id}/${filename}",:key_starts_with=>"cv_uploads/",:callback_param=>"cv[direct_uplo
有时我需要处理键/值数据。我不喜欢使用数组,因为它们在大小上没有限制(很容易不小心添加超过2个项目,而且您最终需要稍后验证大小)。此外,0和1的索引变成了魔数(MagicNumber),并且在传达含义方面做得很差(“当我说0时,我的意思是head...”)。散列也不合适,因为可能会不小心添加额外的条目。我写了下面的类来解决这个问题:classPairattr_accessor:head,:taildefinitialize(h,t)@head,@tail=h,tendend它工作得很好并且解决了问题,但我很想知道:Ruby标准库是否已经带有这样一个类? 最佳
我想在Ruby中创建一个用于开发目的的极其简单的Web服务器(不,不想使用现成的解决方案)。代码如下:#!/usr/bin/rubyrequire'socket'server=TCPServer.new('127.0.0.1',8080)whileconnection=server.acceptheaders=[]length=0whileline=connection.getsheaders想法是从命令行运行这个脚本,提供另一个脚本,它将在其标准输入上获取请求,并在其标准输出上返回完整的响应。到目前为止一切顺利,但事实证明这真的很脆弱,因为它在第二个请求上中断并出现错误:/usr/b
您如何在Rails中的实时服务器上进行有效调试,无论是在测试版/生产服务器上?我试过直接在服务器上修改文件,然后重启应用,但是修改好像没有生效,或者需要很长时间(缓存?)我也试过在本地做“脚本/服务器生产”,但是那很慢另一种选择是编码和部署,但效率很低。有人对他们如何有效地做到这一点有任何见解吗? 最佳答案 我会回答你的问题,即使我不同意这种热修补服务器代码的方式:)首先,你真的确定你已经重启了服务器吗?您可以通过跟踪日志文件来检查它。您更改的代码显示的View可能会被缓存。缓存页面位于tmp/cache文件夹下。您可以尝试手动删除
我正在尝试使用Curbgem执行以下POST以解析云curl-XPOST\-H"X-Parse-Application-Id:PARSE_APP_ID"\-H"X-Parse-REST-API-Key:PARSE_API_KEY"\-H"Content-Type:image/jpeg"\--data-binary'@myPicture.jpg'\https://api.parse.com/1/files/pic.jpg用这个:curl=Curl::Easy.new("https://api.parse.com/1/files/lion.jpg")curl.multipart_form_
无论您是想搭建桌面端、WEB端或者移动端APP应用,HOOPSPlatform组件都可以为您提供弹性的3D集成架构,同时,由工业领域3D技术专家组成的HOOPS技术团队也能为您提供技术支持服务。如果您的客户期望有一种在多个平台(桌面/WEB/APP,而且某些客户端是“瘦”客户端)快速、方便地将数据接入到3D应用系统的解决方案,并且当访问数据时,在各个平台上的性能和用户体验保持一致,HOOPSPlatform将帮助您完成。利用HOOPSPlatform,您可以开发在任何环境下的3D基础应用架构。HOOPSPlatform可以帮您打造3D创新型产品,HOOPSSDK包含的技术有:快速且准确的CAD