I’m super appreciative that these videos present a fair view of Firebase in that they are very clear about the shortcomings or negatives. It actually makes me feel more confident about using it for my future development as I know exactly what I’m getting into.
Firestore is AWESOME. I recently used it in an application for triaging help requests from the Kerala floods. My design required generating scores from every request document, and this design did lead to some costs, since I was reading several thousand documents every query. I wish I'd watched this video, since Cloud datastore might have been a better match. But Firestore scaled well nevertheless, and I was able to handle more than a thousand users in an emergency situation. I paid nothing, since the costs were super low, and I was on the GCP trial.
One of the items that impresses me about Google Cloud is the excellence of their speakers. I enjoy watching Google Cloud videos. The skills required to merge technical information with engaging speakers is very hard.
This was indeed a great, useful and easy to listen video. Todd, you are a natural in front of the camera. Just a tiny little thing though. It's now August and we are really missing you. We want more of you.
I've just made a cost estimation 2 days ago, and I supposed everything you told, but that was really interesting as long as you confirmed everything I was doubting about. Thank you very much, that's a great video.
Your example of the chat app I think is missing the option of using Google Cloud Messaging. Yes. The fan out could be expensive but you could also just rewrite it to use a GCM topic (for free) and use that for delivering real time messages. Writes would go to the DB only and would be 1/1000th of th total volume. Reads would only happen for a *new* client. Not the existing ones. The existing ones just use the GCM topic. Writes would have to go both to the database and the GCM topic.
Now finally that makes sense to have the data denormalized from the pricing point of view, so we don't need to look up to bunch of docs while performing read operations, instead we should do that while performing write operations (which is much better because write happens not as often as read). Is it right?
@@Frank_van_Puffelen Hi, Frank. If I set up realtime listener(.onSnapshot) and the cache exist, when I open my app and data didn't changed doI charged reads? Metadata.fromCache says that I do charged.
I'm going through the process of estimating the potential volume of Firestore operations for a prototype we are developing, but on the Google Cloud Console / App Engine / Quotas page there is no View Usage History button as illustrated in this video. Do you know why that is? I can do my estimates with napkin math but I'd prefer to see actual usage from testing sessions to confirm things are working as expected.
How does StreamBuilder of Flutter affect the pricing in general? It's excellent to show the real-time data, looks more dynamic but on the other hand have to worry about the cost.
How do quotas work ? I have free 50,000, but apparently hit 50,000 reads in one day, even though I only have a few hundred records in the database, and I only ran my app once to read them.
I have one game "Langur Burja" in play store which is a single-player game now, I am thinking of adding multiplayer feature in it. So which database is good for me cloud firestore or realtime database??
Hi All, can we send OTP to the mobile number by using Firebase Cloud Messaging (FCM)? If Yes, then what is the limit to send OTP per month by selecting free plan.
Awesone explanation, but i have a doubt if in a transaction i create a collection a document another collection and another document related all of them (for example university -> class -> teachers approximately ), it was billed as 4 write operation or only a single write operation. Thanks in advance
Anyone knows more info about the storage of binary object as values to store icons and small avatars that he mentioned in the video? I can't seem to find much documentation about it online. The bytes data type is also no longer in the list to choose in Firestore. Is it because Firebase wants us to use Cloud storage instead?
Hi Could you please help me with the firestore storage billing for images? I am new to it and I want to know how it is charged. If I upload a 10 MB image and 10 users are downloading it, Will I be charged for 10MB upload and 10*10 MBs of download (which is GB Transferred)? Or will I be charged, just for upload and download operations?
What will be the average cost of a cloud function set to run every 15 minutes while reading, updating and deleting cloud fire-store documents at the same time?
What would be the cost for export the data of nearly 80GB? Export to JSON file, not metadata format. If I use an external tool or app to do this, what would be the cost will be incurred for this operation after my free tier? I am using the Blaze plan, so caution with knowing the cost well before. I wouldn't get clear information anywhere.
Hi! The cost for downloading data from Firestore depends on how many documents you read, not the size. You can use the Blaze plan calculator to get an estimate for your monthly costs on the Blaze plan: firebase.google.com/pricing
The console used to be so simple and straightforward. Moreover, setting limits and alarms were some of the most important features, but now they're gone. What am I supposed to do if malicious users attack my site and I notice it too late? There's no option to stop or disable the system. The only way is to completely delete the project, which would cut off access entirely. It's complete nonsense.
How to use 'Pay as you go' plan by using debit card? when i use my debit card, it shows error like 'Your card does not support automatic recurring payments[OR-CC3ST-02]'.i am using visa global debit card from india.
Todd: "So I don't want you to automatically panic at the worst case scenario, but I do want you to be aware of the cases in which Cloud Firestore could make you panic." Me: Rofl!
@@ToddKerpelmanCorpI have a question about my next app, let's say I have 3 categories of restaurants, for example: restaurant_categoryX, restaurant_categoryY, restaurant_categoryZ. I already know the restaurant_categoryZ has a few data and it's not frequently visited. In this case do yo recommend me to create a collection for each category in order to not get billed for restaurant_categoryX, restaurant_categoryY when I know the restaurant_categoryZ is not frequently visited?
When measuring Firestore usage you're now able to use the Stack Driver APIs as well as view the usage tab in the Firebase Console now firebase.googleblog.com/2019/01/cloud-firestore-in-general-availability.html
Very nice, could you help me a little? im trying to use Firestore with Polymer, I obtain an array to send it to polymer in a dom-repeat like this: var query=db.collection("operaciones"); db.collection("operaciones") .onSnapshot((querySnapshot) => { querySnapshot.forEach(function(doc) { }); that.operacionesPorCliente=Array.from(querySnapshot.docs.map(doc=>doc.data())); }); console.log (that.operacionesPorCliente); // this works but the ID doesnt exist here.... } that works but that array doesnt contain the id from firestore, the problem is that I need that ID to update the data :( but it isn't in the array
Happy to hear you enjoyed the video, Mohamed! We really appreciate the awesome feedback. Be sure to subscribe to keep up with the latest from Firebase: goo.gle/3PURwHn 😎
Don’t use it guys, my bill went from 25$ to 300$ in just three days. They do not have detail reports on the usage. They just show us the bill and some useless reports that does not make sense. Please reconsider this option and choose something else.
Why if you have a collection in the first position of the root, and that collection has 15 documents (3 fields), the readings are increased automatically, not even 15, but 30. It means that if I want to consult any collection using Chrome or Safari (it does not matter), just visualizing that collection automatically loads each document and multiplies it by 2? If I have a 'Users' collection, with a thousand documents, it means that it will increase to 2000 readings ??, ... I don't know ... At least I saw if you create a collection in the first position, with a document and with empty fields, even if the browser loads automatically the first collection (because it does), every time you consult the database, it will only count some readings. If you had a collection with 20,000 documents, in only one click or load you would spend 40000 reads?? If someone has to monitor the data in their database, he only exceeds the limits. I don't consider it fair, that the readings are counted from the console
Hey its past September 1st. Come on Todd. We want more!! How can you keep us waiting so long? Don't care if it's got anything new about Firestore. We just want the humour!!
I’m super appreciative that these videos present a fair view of Firebase in that they are very clear about the shortcomings or negatives. It actually makes me feel more confident about using it for my future development as I know exactly what I’m getting into.
I agree, Todd does an excellent job! I am binge watching the whole series.
Firestore is AWESOME. I recently used it in an application for triaging help requests from the Kerala floods.
My design required generating scores from every request document, and this design did lead to some costs, since I was reading several thousand documents every query. I wish I'd watched this video, since Cloud datastore might have been a better match.
But Firestore scaled well nevertheless, and I was able to handle more than a thousand users in an emergency situation. I paid nothing, since the costs were super low, and I was on the GCP trial.
I love the animation and humor! Good work
This guy is amazing, the video is not only informative, it is just fun to watch. Boring topics made not boring to watch anymore.
One of the items that impresses me about Google Cloud is the excellence of their speakers. I enjoy watching Google Cloud videos. The skills required to merge technical information with engaging speakers is very hard.
The daily limit spending in the app engine section has been removed.
This was indeed a great, useful and easy to listen video. Todd, you are a natural in front of the camera. Just a tiny little thing though. It's now August and we are really missing you. We want more of you.
I'll second that! When's the next video coming?
this is like "We are expensive but we are not expensive"
This guy's jokes always crack me up
This is the stuff that developers talk about when they're designing something for a client, but don't tell them. Thanks!
Love this guy, the way he presents the info and video editing is so good
lol, these videos are both educational and actually quite humourous. The legalise at the start was awesome :D
"Could you be quiet? i am working on a video for RUclips..." This really made me laff.... I totally love the presentation
This is first time I watch this channel (just getting started with Firebase) and your explanation really hooked me up to learn more! thanks!
I've just made a cost estimation 2 days ago, and I supposed everything you told, but that was really interesting as long as you confirmed everything I was doubting about. Thank you very much, that's a great video.
This guy makes me smile now and then!! And I think that's the best of his teaching and our overall learning :)
4 years down the line and i still refer to this videos.
Todd you are the best! Your videos are gold 🌟
Your example of the chat app I think is missing the option of using Google Cloud Messaging. Yes. The fan out could be expensive but you could also just rewrite it to use a GCM topic (for free) and use that for delivering real time messages. Writes would go to the DB only and would be 1/1000th of th total volume. Reads would only happen for a *new* client. Not the existing ones. The existing ones just use the GCM topic. Writes would have to go both to the database and the GCM topic.
By the way, your video presentation looks cool and informative with additional pieces of fun
Man love the way this guy explains everthing 👍
Now finally that makes sense to have the data denormalized from the pricing point of view, so we don't need to look up to bunch of docs while performing read operations, instead we should do that while performing write operations (which is much better because write happens not as often as read). Is it right?
That is precise. Most services outnumber reads to writes by several orders of magnitude.
thanks for the heads up. never realised it would be so expensive.
Awesome explanation and funny video which is always a great combination. 🙌 Thanks!
Fantastic video, I need more of this man in my life
Does "read counts" take place while reading documents offline e.g. from cache without internet on?
Reads from the local cache are not charged.
@@Frank_van_Puffelen Hi, Frank. If I set up realtime listener(.onSnapshot) and the cache exist, when I open my app and data didn't changed doI charged reads? Metadata.fromCache says that I do charged.
Hey, was the daily limit option remove from the App Engine settings?
This IS a really good video explaining it. Not sure I will remember it all, but very good...
Summary: If you don't want it to be expensive, try your possible best to minimize the number of reads and writes.
The bandwidth is 30GB/month, enforced as a daily limit (so every 24 hour period means you're allotted 1GB of bandwidth). This limit resets every day.
how i can increase limit
Could there be scenarios where we use the realtime database and the firestore together in the same project?
I'm going through the process of estimating the potential volume of Firestore operations for a prototype we are developing, but on the Google Cloud Console / App Engine / Quotas page there is no View Usage History button as illustrated in this video. Do you know why that is?
I can do my estimates with napkin math but I'd prefer to see actual usage from testing sessions to confirm things are working as expected.
Did you ever figure out a good way to do this??
Will you implement a backup button for firestore and also upload a json / excel file with data to create a backup system?
It tooks that we must do it manually, the most common use is with NodeJs, using Firebase Admin SDK.
They have import and export in the normal firebase database so would be awesome if they could add that to firestore too. It's a really needed feature.
I do not know when it was launched, but it's finally here -> firebase.google.com/docs/firestore/manage-data/export-import
How does StreamBuilder of Flutter affect the pricing in general? It's excellent to show the real-time data, looks more dynamic but on the other hand have to worry about the cost.
is any way to add the whole list to Firestore with one request instead of calling the api as many times as the list size ??
This guy is awesome at explaining stuffs.
best tutorial i've ever seen specially like so much 7:32
Hi, I need your advice to get to your level of presenting skill
You are so good in what you are doing
Blessings
How do quotas work ? I have free 50,000, but apparently hit 50,000 reads in one day, even though I only have a few hundred records in the database, and I only ran my app once to read them.
@Firebase 13:14 There is no `Usage History` tab anymore. Where can we find it now?
The most caring product team ever 💙😍❤️
NICE VIDEO! Love the added SFX!
This is really genius, instead of charging for storage, bandwidth etc, charge for reads and writes. "Create the problem sell the solution!"
Are there any aims to offer fixed price plans (e.g. $25/mo) similar to supabase?
Someone on reddit was saying that Google got rid of the ability to cap costs for Firestore/Firebase. Is this true?
I have one game "Langur Burja" in play store which is a single-player game now, I am thinking of adding multiplayer feature in it. So which database is good for me cloud firestore or realtime database??
Hi All, can we send OTP to the mobile number by using Firebase Cloud Messaging (FCM)?
If Yes, then what is the limit to send OTP per month by selecting free plan.
Fun fact: Money can actually buy happiness.
Awesone explanation, but i have a doubt if in a transaction i create a collection a document another collection and another document related all of them (for example university -> class -> teachers approximately ), it was billed as 4 write operation or only a single write operation. Thanks in advance
Please tell me that the Egress joke is from The Wee Free Men by Terry Pratchett
Can you recommend this for an ecommerce app? Right now im thinking its very expensive.
Hey.. Since it has been 4 months, did you find any answer? or going with mysql and php is fine?
I like your funny animations sir. keep it up. love it and your work😊😘
How do you set a limit to refuse requests now, I can only see setting a budget.
Great video as usual. One thing, though, somewhere around 14 mins into the video, you trigger Google Assistant. :)
How we know that our free plan is finish.?
How much data we can store in the free plan..?
That's an insightful video! I really needed that.
hi, if I set a document in firestore with the same data as before with merge set to true, is it considered a write?
These videos help to explain a lot. Thanks!
Anyone knows more info about the storage of binary object as values to store icons and small avatars that he mentioned in the video? I can't seem to find much documentation about it online. The bytes data type is also no longer in the list to choose in Firestore. Is it because Firebase wants us to use Cloud storage instead?
Hi
Could you please help me with the firestore storage billing for images? I am new to it and I want to know how it is charged. If I upload a 10 MB image and 10 users are downloading it, Will I be charged for 10MB upload and 10*10 MBs of download (which is GB Transferred)? Or will I be charged, just for upload and download operations?
I'm just trying to imagine the directions that the director gave him when trying to film 3:24.
What will be the average cost of a cloud function set to run every 15 minutes while reading, updating and deleting cloud fire-store documents at the same time?
Nice, one!
Is there any connection limit? I mean, how many users can connect to cloud firestore?
@@ToddKerpelmanCorp Fantastic. Thanks! 😊
These videos are so good! I also appreciate the Simpsons reference: "it's a perfectly cromulent word!"
Great videos Todd!
Google should be proud to have you.
What would be the cost for export the data of nearly 80GB? Export to JSON file, not metadata format. If I use an external tool or app to do this, what would be the cost will be incurred for this operation after my free tier? I am using the Blaze plan, so caution with knowing the cost well before.
I wouldn't get clear information anywhere.
Hi! The cost for downloading data from Firestore depends on how many documents you read, not the size. You can use the Blaze plan calculator to get an estimate for your monthly costs on the Blaze plan: firebase.google.com/pricing
The console used to be so simple and straightforward. Moreover, setting limits and alarms were some of the most important features, but now they're gone. What am I supposed to do if malicious users attack my site and I notice it too late? There's no option to stop or disable the system. The only way is to completely delete the project, which would cut off access entirely. It's complete nonsense.
Should implement/add search integration without algolia
How to use 'Pay as you go' plan by using debit card? when i use my debit card, it shows error like 'Your card does not support automatic recurring payments[OR-CC3ST-02]'.i am using visa global debit card from india.
What did it cost? Everything.
@7:42 "And if the main lesson you're getting out of this is that [you don't get it], then hey, now you're getting it." Lol welcome to coding.
How about in the free spark plan? What happened when reached the reading or writing limits
It stops working, probably
how many words did you say in 16'22''? impressive
I love this guy so much lol
I love this guy
Todd: "So I don't want you to automatically panic at the worst case scenario, but I do want you to be aware of the cases in which Cloud Firestore could make you panic."
Me: Rofl!
now i'm craving jellybeans...
This is unfair to count result count as read count. I get 20 result or 100, its just one read for me. Isnt it? :(
@@ToddKerpelmanCorpI have a question about my next app, let's say I have 3 categories of restaurants, for example: restaurant_categoryX, restaurant_categoryY, restaurant_categoryZ. I already know the restaurant_categoryZ has a few data and it's not frequently visited. In this case do yo recommend me to create a collection for each category in order to not get billed for restaurant_categoryX, restaurant_categoryY when I know the restaurant_categoryZ is not frequently visited?
Oh, thanks @@ToddKerpelmanCorp, I really appreciate it. I thought Firebase would bill me for all the documents that involved that query.
Ah.... I simply want to know what is the difference between Realtime Database and the Firestore in terms of usage.
Can I use cloudfirestore and Realtime database in single app ?
Lets Learn yup
Yes
This is great! Will pass on to my STUDENT!
Excellent! more of this from firebase team
When measuring Firestore usage you're now able to use the Stack Driver APIs as well as view the usage tab in the Firebase Console now
firebase.googleblog.com/2019/01/cloud-firestore-in-general-availability.html
Can you split storage across Firestore and firebase in a single app and somehow link the data clientside to save money? #askfirebase
1:20 If you dropped a mixtape it would be Fire
Mutual funds are subject to market risk. Please read all scheme related documents carefully.. XD
tried the free package of firestore with functions and the functions were sloowww!!
Very nice, could you help me a little? im trying to use Firestore with Polymer, I obtain an array to send it to polymer in a dom-repeat like this:
var query=db.collection("operaciones");
db.collection("operaciones")
.onSnapshot((querySnapshot) => {
querySnapshot.forEach(function(doc) {
});
that.operacionesPorCliente=Array.from(querySnapshot.docs.map(doc=>doc.data()));
});
console.log (that.operacionesPorCliente); // this works but the ID doesnt exist here....
}
that works but that array doesnt contain the id from firestore, the problem is that I need that ID to update the data :( but it isn't in the array
Awesome videos ++++++++++++++++++++ Thank you 😃
Happy to hear you enjoyed the video, Mohamed! We really appreciate the awesome feedback. Be sure to subscribe to keep up with the latest from Firebase: goo.gle/3PURwHn
😎
Could someone explain to me 4:36. How do 1000 users become 500.000 DAU? I don't get it.
It was 1000 users per 3 minutes
Don’t use it guys, my bill went from 25$ to 300$ in just three days. They do not have detail reports on the usage. They just show us the bill and some useless reports that does not make sense. Please reconsider this option and choose something else.
What kinda app was it
Why if you have a collection in the first position of the root, and that collection has 15 documents (3 fields), the readings are increased automatically, not even 15, but 30. It means that if I want to consult any collection using Chrome or Safari (it does not matter), just visualizing that collection automatically loads each document and multiplies it by 2? If I have a 'Users' collection, with a thousand documents, it means that it will increase to 2000 readings ??, ... I don't know ...
At least I saw if you create a collection in the first position, with a document and with empty fields, even if the browser loads automatically the first collection (because it does), every time you consult the database, it will only count some readings. If you had a collection with 20,000 documents, in only one click or load you would spend 40000 reads??
If someone has to monitor the data in their database, he only exceeds the limits. I don't consider it fair, that the readings are counted from the console
2 min Silence from those who skipped this video RIP
Hey its past September 1st. Come on Todd. We want more!! How can you keep us waiting so long? Don't care if it's got anything new about Firestore. We just want the humour!!
After watching this video, I thought about youtube comments(God knows how many R/W per secs) on firebase.
You just confirmed my greatest fear: firestore bill unpredictable. Not going to take a chance. Thanks!
Very informative vídeo!!! \o/
is this still valid?
damn , great content