Google Datastore vs CloudSQL - google-cloud-platform

I am working on standing up a mobile app with Google Datastore as backend database. I am debating whether google datastore is right choice for below use cases vs other datastorage options google offers. We are a small team and we don't want to incur lot of operations costs in the initial run. Application will have the following use cases:
User registration and profile which will take user personal identification details like credit cards, bank account , emails,address etc
Various subscription plans like yearly subscription price, monthly subscription price and pay per single service . User will be charged with bank account or credit card set on user profile
Mobile app will be launched within next 2 months and i am expecting at-least 1000 users in first few months
Appreciate your feedback at this stage where we are laying down the foundation of the app
Thank you

Datastore is good to manage user profiles and the use cases that you're referring as well it has free quota amounts and low costs regarding its usage and it'll be a better option compared with Cloud SQL which price and storage capacity is limited to the machine type that you're using. Additionally, as this isn't a technical inquiry, but a solution concern, I suggest posting this on the Datastore Google Groups where ideas regarding the Datastore and other products would be properly exchanged.

Related

Why am I billed for hourly AWS workspace when it's stopped?

I configured two hourly performance AWS workspaces about 2 months ago. The fee for each is 9.75/mo + .47/hour.
I used each maybe only 3 hours each so I would expect a bill of about $22.32 ((9.75 x 2) + (.47 x 6))but my bill was over $70 (which equals about 100 hours). I reached out to support and this is what they concluded:
As per checking with the Service Team, they have advised that WorkSpaces are billed on a monthly basis, and you pay only for the WorkSpaces you launch that allow end-users to access the documents, applications and resources they need with the device of their choice, including laptops, iPad, Kindle Fire, or Android tablets. So even if the service is on a stop mode, as long as users keep on accessing to the documents, desktops or even domains you have the WorkSpace associated to, will incur in charges.
I am the only user and I didn't interact with the stopped workspaces. I don't have any other AWS services interacting with these workspaces. I don't even understand how users could access "documents, desktops or even domains you have the WorkSpace associated to" if the workspace is stopped.
I have trouble drilling down to the necessary level of detail using the AWS billing dashboard - so I just feel like I have a blindspot here. Why am I getting billed so much? How can I get more details about these Workspace charges?
AWS Support actually called me. They were a big help in demystifying the charges. The short answer is that I'm a dummy. But I wanted to provide an explanation, info and links for others who want to get more details about their own usage and bill.
AWS has a few other helpful ways to get more info. The first was the bill itself (From your billing home page click on 'Bills' in the top left). The first thing I learned was that (1) my bill was $50 not $70. I might have combined my Jan and Feb bill or thought their 'estimate' was the bill. Either way - my baseline was wrong. (2) I also had an RDS instance running which accounted for $16. (3) Finally I could see an exact breakdown of workspace charges. There was the base monthly charge of 9.75. Then there was the .47 hourly charge for 22 hours which accounted for 10.34. The charges we're adding up - but the hours seemed too high.
This was great but I asked if there was a way to see when I used those 22 hours because that was still more than I had recorded myself. He directed me to the cost explorer. On the cost explorer specifically there was a histogram with a button on the top right to "View in Cost Explorer".
There I was able to view how much I was billed per day. Using the group by options on the top we grouped by 'Service' to see this
This showed that nearly all of those hours were on one day. I think that's when I set things up and might not have had AutoStop toggled. So just make sure you have your workspace configured for AutoStop if that's best for you.

How do alexa skills earn money if they are free, but amazon services have a cost?

We are considering using voice commands to activate entry to a car park using Alexa.
I have seen that there are costs for using aws iot services and it is based on the number of devices and the number of transactions.
At first I thought that the user would pay this cost through a subscription to a skill that we are developing.
However, we are still not sure how much that subscription would cost.
I have tried to know what the system of some manufacturers of smart lamps that can be controlled with Alexa is like and I have seen that their skills are apparently free on Amazon.
So my question is:
How do they earn money to maintain the aws iot service?
Any comments or suggestions are welcome.
In-skill purchasing lets you sell premium content, such as game features and interactive stories in custom skills. You can offer in-skill products with the following payment models, One-time purchase, Consumable, Subscription. If you want to create in-skill products, more information can be found here: https://developer.amazon.com/en-US/docs/alexa/in-skill-purchase/isp-overview.html

Google Cloud hard quota limit

I've been trying for a while to figure out if Google Cloud has a mechanism for a "crowbar" limit on API usage, as a security measure.
The scenario I'm concerned about is, say I have an API keyfile on a server, and a hacker steals it and plugs it into their system that (for the purposes of some nebulous scam) is running an unbounded number of translate requests as quickly as possible. I then receive a $25,000 bill. I don't see any mechanisms to really prevent this.
I can limit the roles for that key, but if the hacker's interest is in the same API I use for my project, that doesn't help. I can set a billing limit, but that just sends me an email, and I am not a person who notices incoming email, so in practice it would take me days to realize this had happened.
I can set a quota, but all the quotas in the dashboard seem to be per-minute or per-day limits. I need a per-month quota, and I don't see any way to do it. Am I just missing something, or does Google simply provide no option for this?
I understand that "well just don't let your API key get compromised" is probably the common wisdom, but that's unacceptable to my use cases for a number of reasons, so I'm not interested in discussing it. Thanks!
Edit: I should note, Google's documentation says "you can set requests per day caps" - but there are no instructions on that page for how to do this, and I can see no mechanism for it. I don't want a per-day cap, I want a per-month cap, but I'd take a per-day cap if I could find one. These are the only quotas I see for Cloud Vision, for instance:
Quotas part 1
Quotas part 2
As per Link 1 there is no Hard quota limit for Vision API on a monthly basis . If you need to use this feature you can request for this feature using the link 2.
In the meantime or as workaround you can control your vision API budget by using the Cloud Billing Budget API by following the link 3.

Is there a way to get GCP service cost by access email ID?

I'm looking to get help on the GCP billing. I know we can get cost info based on the service and project, however, is it possible to get info based on the access email ID? because I'm planning to give access to my colleagues and I want to know how much each one their access cost and against which service.
Something like: Date, Email ID, Service, Cost
With respect to another project, how should we know which access cost us so much?
We are running ~30 sandbox projects internally, each allocated to a specific person that can test and run his/her stuff on GCP.
I strongly suggest you create isolated workspaces (projects) for your colleagues so they don't accidentally delete/update services of other people. You will get a separate billing report for each project as well.
I am also setting up a billing alert for all my colleagues so they get an early notification if they left something running on their testbench.
There are three ways I think you could do that kind of cost segregation, I will number them in order of complexity.
1.- Cloud Export Billing, For this one the best practice is to segregate your resources and users by "Labels", as administrator, you may ask the users to use them and assign them to any resource they create, e.g. If they create a new VM instance, then you will be able to filter by field the exported table and create the reports as you want.(Also your GCP billing dashboard will show these "labels" segregations)
2.- Use Billing API to curl directly the information you need to get from it,you can manage to use in the request the information you need like SKU, User, Date and description.
3.- Usage Reports. This solution is more GSuite scope,and I can't vouch that will work as the documentation say but you can take a look to it, there is an option to get "Usage reports", this usage reports can be made from GSuite to any resource below, GCP included if you already have an organization.

Google cloud platform individual billing

Hello I'm having a problem where i can not select individual as my payment profile and I'm forced to use business profile but I'm not able to create one since i don't​ have a tax ID how do i select a individual profile?
I ran into the same issue, are you by any chance in the EU? Sounds bizarre but looks like they only offer the service to those using it "for business purposes" in this region and that if you are using it without any potential economic benefit you should stop!
Source: https://cloud.google.com/free/docs/frequently-asked-questions