1:32 array -contains 2:47 AND, OR, NOT - feat. TAG 5:04 composite strings - feat. Commets 7:33 Query an Array of IDs 8:48 duplication -feat. Follow
@cameronmccoy2204
2 ай бұрын
😊
@joshblf
4 жыл бұрын
had to watch this at 0.75x speed to make it sound like it wasn't playing at 1.5x speed
@geoffreyschuchardt5350
2 жыл бұрын
This is how I stomach any of these videos
@sigma_z
Жыл бұрын
Where as all other videos on KZitem you can play at 2x speed, here you have to slow down. Bravo to this educator who’s really good at delivering value.
@Ciencia_con_s
Жыл бұрын
lol 😂 being a mexican but still listening at 1x... Can you do the same with spanish, hdlv? 😂
@nadeemkh100
2 ай бұрын
All his videos like this 😢
@reactmagic2348
2 жыл бұрын
The problem is in real world application development, requirements change constantly and it’s impossible to accurately plan ahead. In these cases, if you had chosen to use NoSQL you’re going to be pretty screwed because your firestore model won’t work as soon as the requirements change. On the other hand, if you used SQL you can just easily add a new relation. I think it’s a little misleading to frame firestore as a good idea for application development when most data models can’t be entirely planned for up front
@MYMPSWORLD
5 жыл бұрын
That last social networking problem is a seriously complex one when deleting, editing posts come into the picture. A simple database won't be enough. I recommend going to Big data if you have thousands of active users/active requests at any moment of time. Even if you have less load then that, I recommend using other services in conjunction like message broadcasting, caching, defer db writes, batch writes etc. This may sound like a lot of work for a single feature but trust me, when you scale, it will save you a hell lot of troubles.
@ReginaldVisuals
Жыл бұрын
AWS Amplify?
@devcaio
5 жыл бұрын
Awesome video! That topic is really important, I wish we had more content like this.
@ShinnKQ
Жыл бұрын
The query an Array of IDs is just what I need. Thank you.
@pawekoaczynski4505
3 жыл бұрын
It took me about half an hour to understand those last few minutes, but thanks to that I got a better understanding of Firebase
@goldfish8196
2 жыл бұрын
LOL. Loved the footage in the beginning, where the guy is stress out .MAGICAL
@MM-ts9jy
Жыл бұрын
Excelent explanation, I now understand everything. Deep down the true answer is: don't use non-relational databases.
@TimeoutMegagameplays
5 жыл бұрын
You have read my mind, I was just scratching my head trying to do some data modeling.
@ResoCoder
5 жыл бұрын
At 6:55 I wanted to call the spelling police but you've corrected yourself. Great tutorial Jeff!
@Fireship
5 жыл бұрын
Haha, it wasn't too severe to rerecord, but I knew somebody would notice
@xolanimaphumulo6820
4 ай бұрын
On the composite strings , you will quickly run into the field value limit of 1MiB
@AbdallaElmedny
4 жыл бұрын
The composite strings were super useful! Thank you so much!!!!
@deanjackson3238
2 жыл бұрын
Thanks for the cool video ! At 8:30 there is a noise in background, I though it was my baby crying in the babyphone lol
@FilledStacks
5 жыл бұрын
Awesome video. Love the clarity and getting straight to the point. I need to up my game to get my videos shorter and to the point faster :) Thanks for the video.
@grahambodie7429
3 жыл бұрын
You prolly dont care but does anyone know a method to get back into an instagram account..? I somehow forgot the password. I appreciate any help you can offer me.
@victordiego7791
3 жыл бұрын
@Graham Bodie Instablaster ;)
@grahambodie7429
3 жыл бұрын
@Victor Diego i really appreciate your reply. I got to the site thru google and Im waiting for the hacking stuff atm. Seems to take a while so I will reply here later with my results.
@grahambodie7429
3 жыл бұрын
@Victor Diego it worked and I actually got access to my account again. I am so happy:D Thanks so much you really help me out!
@victordiego7791
3 жыл бұрын
@Graham Bodie glad I could help :D
@MashaoleMogale
2 жыл бұрын
the best database for internet of things data
@someonlinevideos
4 жыл бұрын
@fireship hey Jeff, best video I’ve seen yet on modeling data with Firestore. No nonsense with real world and code examples. Excellent! One quick sanity check: was this created before collectionGroup queries were announced? It seems like at least #5 would be solvable using one. Just checking. Thanks!
@mawulijo
5 жыл бұрын
Inspiration inspiration inspiration. Glad to know you Jeff Fireship
@narcodico
5 жыл бұрын
Jeff Fireship =))) wow! That's a pirate name if I ever heard one!
@saarikivit
5 жыл бұрын
For the 4th question: admin.firestore().getAll(...docRefs) Works at least on the firebase-admin library.
@Fireship
5 жыл бұрын
That is a good point, thank you!
@mobileappvids9616
2 жыл бұрын
Excellent techniques.
@jhoanmartinezsilva2609
3 жыл бұрын
I am sorry, i gnored your vids from youtube recomendations, its amazing your content
@WatchLionProductions
5 жыл бұрын
Awesome video! Fluid and clear explanation 👌
@fire_boat
4 жыл бұрын
"in" operator is really helpful
@AndrewErwin73
5 жыл бұрын
Relational database + ORM = happiness
@vasiovasio
4 жыл бұрын
MySQL for Life!
@martonkardos8094
2 жыл бұрын
Not really scalable though :( I heard it was pretty slow once your queries become complicated enough
@joonaskali2337
2 жыл бұрын
@@martonkardos8094 prolly, but I doubt the usual hobbyist/small bussines will hit that ceiling
@martonkardos8094
2 жыл бұрын
@@joonaskali2337 yeah sure thing, I mean I never hit it personally, just heard it from a friend who was working for a large company
@hx9
3 жыл бұрын
I'm confused. Isn't this just 5 ways to create the features of a relational database in a non-relational database? Is speed the only reason to use a NoSQL database then? I feel like as a Jr. Developer I could have solved all these things very easily, possibly in less lines of code, using SQL. Looking for guidance.
@groebestie5594
2 жыл бұрын
I guess it only looks this way because you are looking from the perspective of a RDBMS user. Relational data is easy with SQL if you allow joins. These DBs are made for storing relations between data. Document DBs are way simpler. For me document based DBs really shine in the one db query per application screen use case which makes it super easy to fetch all the data you need in one go without thinking too much about Object Relational Mapping and Joins. This makes it easy for application development because you define your db documents to fit your application and not define the db structure separate from your application. This gives you a lot of flexibility and might save dev time because you don’t have to think about strict schemas. Personally I like to think of it similar to typed vs. untyped languages. One is more flexible and you might accidentally shoot yourself in the foot with stupid errors the type system would have found, the other gives you more safety but you might build too many abstractions just too satisfy your type system and now everything is more complicated.
@radezzientertainment501
Жыл бұрын
lovely tips
@user-qq7yc1qp8z
4 жыл бұрын
What is a better way to organize data in firestore in my case? A list of individual small entrepreneurs (like haircutter, manicurist, beautician, etc). Each has personal info (geolocation, skills), a list of services with pricing, and a dynamic schedule, that updates when somebody books the time. I guess it's a simple structure, but I don't have experience in firestore and in any backend things, and just don't want to shoot myself in the foot
@HassanMalikTW
5 жыл бұрын
Lots of love from pakistan
@victornweze7230
5 жыл бұрын
Nice one
@AbhishekKumar-mq1tt
5 жыл бұрын
Thank u for this awesome video
@kmcat
5 жыл бұрын
around 5:24. Cloud you use the reference type instead, that way you would get all the presents
@Fireship
5 жыл бұрын
That would work if they were nested in subcollections, but all the docs are in the same root collection in this case, so they can be read with a single query.
@bakalomio2033
5 жыл бұрын
+1 for "It's Always Sunny in Philadelphia" =)
@Snailsxd
5 жыл бұрын
discord: *exists* Fireship: *Guess I'll use slack*
@nickstylezmedia
5 жыл бұрын
Yeah I'd be really nice if there was a Discord community dedicated to Fireship.io
@Fireship
5 жыл бұрын
I am considering it. Slack is already established, so migrating might be hard.
@mossasameer3338
3 жыл бұрын
could you do a video in how to use firestore converter in good way? love ur videos :)
@miguelfuertes4004
5 жыл бұрын
Beginner here, is the course about firebase or more about nosql databases?
@Fireship
5 жыл бұрын
It's about firestore specifically. There are some paralells to mongodb tho.
@miguelfuertes4004
5 жыл бұрын
@@Fireship thanks
@devcaio
5 жыл бұрын
What is the best way to cache a complex query in Firestore? Lets say I have a query that read hundreds of document to compute a value and I want to cache it for a certain time to reduce costs and improve performance, whats the best way to do it?
@Fireship
5 жыл бұрын
If you have a computed value, like a user's lifetime game points or something, you can use cloud functions to aggregate the value to a single doc.
@MYMPSWORLD
5 жыл бұрын
You can use in-memory cache services like redis, elasticcahce etc. If you are using any API Gateway, they usually have the feature for caching API responses for certain amount of time. Eg. All API requests to a particular url with same params can be cached for 5 mins.
@alexwchenpro
5 жыл бұрын
Thank you for the amazing work!!! more video like this please :D
@andreip.8321
2 жыл бұрын
I like your YT tutorials and I was considering subscribing to pro, the Lifetime option. I have a question though, and I didn't find any way to contact you through the site.. that kinda makes me think twice about this move, but anyway... hopefully it will be easier to reach you as a pro member. My question is, as a Lifetime member, will that include any (possible) new courses that you might add? That's a pretty important point you might add to the Lifetime benefits. Thanks
@highrankin
2 жыл бұрын
On the first technique, 'array-contains', would this still be a good option if you have say, 100,000 posts or some giant amount of potential posts?
@emericgnonhoue7029
5 жыл бұрын
Nice
@marcinswierzowski368
5 жыл бұрын
I am curious what vscode theme are you using? I have looked through a bunch of your videos but it hasn't been mentioned anywhere.
@selfhosted918
5 жыл бұрын
It looks just like mine, "One Dark Pro" - Ironically the color scheme used in Atom.
@zacharythatcher7328
3 жыл бұрын
“We can run these concurrently” is easy to say as a JavaScript dev, as most of your packages are written with async built in. In python, is it safe to thread multiple get requests to the same docs? (Since google packages are blocking in async, but not threads blocking)
@GhulamMuhiaudin
4 жыл бұрын
Hey there, I am new in app development. Do your courses also provide QA Support?
@sandeepsingh-lf4bk
2 жыл бұрын
I wish i could understand all that
@sooryasankar1193
4 жыл бұрын
The feed data model is awesome. But what if the fields are going to update frequently? like updating like count, view count, number of comments for that particular post? how to handle this situation?
@chind0na
Жыл бұрын
@fireahip. Now how to model data for Appwrite. We don’t have joins. We’re told 1) to make two or more calls and transpose value in the client side or 2)use an aggregation cloud function that merges all relevant data in one big table. Option 2 sounds redundant.
@KumarSaptam
2 жыл бұрын
Can you please create a firebase v9 migration guide.
@pawan-td6ff
4 жыл бұрын
Whenever I feel too braggy about my coding skills, I watch your videos to punch my ego on the dick
@dolevdo
3 жыл бұрын
more!
@MrUNhelp
Жыл бұрын
At 8:31 : Isn't it a better idea to do one get with a where condition, to have only one get (and maybe one read request) instead of multiple (here 3 ) ?
@johnnycopes
8 ай бұрын
It's possible to do a WHERE query with the IN operator, but this has a hard limit of 30 items in the comparison array (documentation: firebase.google.com/docs/firestore/query-data/queries#in_not-in_and_array-contains-any). But using the example in the video, I think the idea is that reading 3 documents is preferable to reading all documents and then still having to find the relevant documents in the client-side code.
@wave641
5 жыл бұрын
Hey Jeff, what do you animate videos with? These are the highest quality programming videos I've seen on youtube.
@ErayTonyali
5 жыл бұрын
Hey Aaron, there's a video named "Behind the Scenes: How I make the Videos" from Jeff. I think he explains everything over there. Check it out from his channel. If you are asking for the tools, check out "7 Amazing Developer Tools that you're not using yet" from Jeff as well. Good luck!
@mika_chu
3 жыл бұрын
Is "Firestore Data Modeling" course suitable for iOS development?
@TimeoutMegagameplays
5 жыл бұрын
Hey I'm just wondering about duplication, how can we make sure that both documents aways match? I mean if my client is doing things right there should be no problem, though if someone makes a custom web client for my app that ends up using the exposed firebase API I could start to have problems, also, how can I check inside Firebase if data coming from the user is suitable to store? (ex: is not null).
@mmtf
3 жыл бұрын
gotta use functions to manage everything or you would write complicated rules and use transactions.
@DarkChasmGamers
3 жыл бұрын
Use anything besides transactions is a really bad idea.
@darudeSandstorm.
4 жыл бұрын
Once you have duplicated data, how do you make sure that it is updated correctly, everywhere in the db?
@MaulikParmar210
4 жыл бұрын
Since no one has answered it yet, here you go: That's a bad db design, sql or not. You instead embed document id to refrence same data over all references just like foreign keys. Only thing about no sql is, the data structure of document is not predefined and can have various data. But you can always use best practices from other data modelling and apply it here to make life easier.
@marcosraul4132
3 жыл бұрын
@@MaulikParmar210 not really, check the google documentation, it's best practice to duplicate a portion of the data so u would only need one query to access the information, modern databases are optimized for reads since they occur 1000s of times more often than writes. However, everything comes with tradeoffs, you would need to update every place when you are making a change, nothing is perfect.
@MaulikParmar210
3 жыл бұрын
@@marcosraul4132 excuse me but google isnt the only data store vendor in market. And whole point is there are trade-offs between different design patterns and one can only understand it if they have implemented it in first place. Well there are also ACID compliant data stores available where you really do not need to duplicate data for high availability. Thus if you need to, you are likely compromising on some factor. Either om technology level or standard practice level. And it has nothing to do with Google's bigtable, any other traditional or widecolumn datastore they use. DHL produces about 1TB of consignment data daily and still returns any query within 300ms in distributed cluster across multiple regions, ever wondered why? Plus they don't duplicate that much data, considering the volume! Ofc there are multiple examples like these but people should get the point that there are problem specific solutions rather than solutions that solves general problems(because they are specific!) when it comes to big data.
@marcosraul4132
3 жыл бұрын
@@MaulikParmar210 i agree with u that there are always tradeoffs, however, since this is a google product, designed, maintained, and used extensively by google, their documentation should be your main source of truth. If u want to explore with other architectures for firestore, u would end up repeating the learning process that they already went through, to ultimately reach the same conclusion or settle with an underperforming db.
@MaulikParmar210
3 жыл бұрын
@@marcosraul4132 when you scale you stop using firestore, that's simple and more productive at large level. Firestore allows untrained devs and most importantly managed access to datastore. Most devs who use it don't have skilled infrastructure devs or lack in one or other architectural implementations. Simply put they have to migrate at certain thresold if they want to grow. If anyone relies on 3rd party proprietary infrastructure, it's their loss in terms of being vendor locked for lifetime. Since this is google product you are bound to what it does and that is why exactly you should know the alternatives as well if you are serious about future of the software you are building. Source of truth remains same, firestore can't do it doesn't mean others can't and if you need it you have very good reason to explore and build software with industry standards.
@CodingCatDev
5 жыл бұрын
I HAVE to believe that Firestore will one day be able to do Full Text search like Algolia kzitem.info/news/bejne/lGuI0q2ajphnq6Q, I know Google Cloud Firestore devs say that it is not the right tool and structured correctly. But I think they could duplicate all that data into an engine like Big Query or something live and make it happen. Here is hoping at least 😺
@stanleybacklund5614
3 жыл бұрын
Target is selling a "neon light" version of your logo
@Skia_
5 жыл бұрын
Nice tutorial mate! I'd like to know whether it's possible to turn your application into N-tier Architecture when relying on Firebase for the backend Is that even a thing?
@Fireship
5 жыл бұрын
I guess it depends on what you mean by N-tier? I view Firebase as a platform that helps follow the multi-tier app pattern by separating your DB, backend, and client libraries.
@pragyandas
3 жыл бұрын
#4 is the dataloader pattern, isn't it?
@bunnihilator
3 жыл бұрын
How can i query from messages where we have 2 users and i need to get each users as a sender the other as a receiver and then the other user as a sender and the other as a receiver? I would need a where or. Also i could make 2 queries but i need limit combinaned by the both whithout skiping any messages
@fernandoluis53
4 жыл бұрын
Why aren't you udemy? I was looking for this course for over a year...
@albertrenshaw4252
3 жыл бұрын
The follower solutions seems very unscalable. Wouldn't it cost hundreds of dollars for a user w/ 1m followers to send 10 or so tweets and 40 or so retweets?
@debkanchan
5 жыл бұрын
I'm early. *Anyone wants firePasta*
@Dan1ell
2 жыл бұрын
So in 2021, do comments go into a subcollection of their post? Or are comments kept as a seperate top level collection next to posts?
@zakariachahboun
4 жыл бұрын
The bad things about NoSQL is the limitation of queries! Look at "NewSQL"
@jaggyjut
3 жыл бұрын
very good tutorial but too fast.
@digimbyte
2 жыл бұрын
issue with this setup is that a user cannot be followed by more than ~40k users due to indexing limitations
@bargieMaster
4 жыл бұрын
Hi, the discount code is not working for me...is there a newer one?
@djbravo9710
3 жыл бұрын
Hello, sir. I learn so many things about firebase from you. Currently I'm working on a chat app and I want to show the last activation time of my users so that I can compare wheather they are active or not. I couldn't find a way to achieve this using firestore. Can you please help me??
@ricko13
3 жыл бұрын
Ok but just making me love relational databases a little more ♥ MySQL ♥
@vineet_kishore
4 жыл бұрын
Query an array of documents.... Can you give the syntax for flutter.... please. Promise.all(reads) ...what is the equivalent in flutter?
@robinlange_
3 жыл бұрын
Google is your friend... that leads you to StackOverflow. Try this - stackoverflow.com/questions/57889195/analog-of-promise-all-in-dart
@jaedson-barbosa
2 жыл бұрын
Meanwhile I'm designing a system where users will have limited data storage by the 1MB of each Firestore record so I won't have to worry about the cost of the system when it scales up.
@chiggerchug5977
3 жыл бұрын
Referencing this like 2 years later... 8:40
@chiggerchug5977
3 жыл бұрын
I have a document called group, which has a list of user Ids/a collection of user documents (containing user profile pic urls, names, etc) is there any way in realtime to join them? (i.e. inject the user details into the group)
@yeilmusic
4 жыл бұрын
love
@oknaa8526
Жыл бұрын
1 - like 2 - watch ;)
@nishcp9680
4 жыл бұрын
Please tell slowly, where are u running?
@muzohub3951
Жыл бұрын
Hi Im trying to convey a requirement to a Developer that is using Firestore as the database for my web project. I need to model the hierarchy of musical instruments. A typical example would be Orchestral beneath which we would have... Brass, String, Woodwind, Percussion beneath String for example we would have... Violin, Viola, Cello, Double Bass Please note, all of the records above would be in the same table. I am more used to SQL databases so the way I would model this would be to have a Parent_ID field in the Instrument table and this field would have the ID of a record in the same table - therefore creating the relationship from Instrument to Instrument Parent The Developer is saying that this isnt the way that he has done it and is suggesting my method is wrong. He is telling me that against each record he would model what all the children are of that record. Any comments would be appreciated.
@user-zn5tn9br3b
3 жыл бұрын
i have a question, i dont want to use .where("country" , "==" , "United States") i want to use .where("country" , "contains" , "States") can i do that ??? do someone know how to do that ???
@phasaoh4540
3 жыл бұрын
You can now use the IN clause in firestore
@mmtf
3 жыл бұрын
@@phasaoh4540 I think this person wanted something like a string-contains but that doesn't exist in firebase. 'in' checks if a field is equal to one of the values in the provided array.
@mukhtar7200
5 жыл бұрын
Oh yes
@tonyjaradev
3 жыл бұрын
Yo say in several of your videos that you cannot look for more than one thing on array contains, now there are methods such as array-contains-any, in, and not-in. You should update your videos. Specially the paid ones ;)
@oguzgurkanbilir1368
3 жыл бұрын
0.75x
@santacroce2489
3 жыл бұрын
after 493 months and 39201923 seconds still can't figure out firestore queries and data modeling ...
@yuridigital
5 жыл бұрын
name oof music used?
@cunningham.s_law
5 жыл бұрын
> rejex
@krtirtho
3 жыл бұрын
Do you know the KZitem video you're currently watching is uploaded by a channel named "SUBSCRIBE"
@WMRamadan
4 жыл бұрын
Why do you not work at google.
@yourstepbf
3 жыл бұрын
8:31 is a baby crying ?
@LukeryaPereprygova
3 жыл бұрын
what was that
@briansunbury
4 жыл бұрын
duck tails
@andrews8725
5 жыл бұрын
Pepe Silvia
@Fireship
5 жыл бұрын
The man does not exist!
@georgedicu7397
2 жыл бұрын
i do not rec algolia, its expensive.
@gofudgeyourselves9024
5 жыл бұрын
Fight Milk
@Fireship
5 жыл бұрын
For bodyguards, by bodyguards
@monsume123
2 жыл бұрын
lol why does your voice go up when you end a sentence ? 😆 It's so disturbing, great video though.
@LarsKniep
5 жыл бұрын
first!
@Fireship
5 жыл бұрын
🥇
@elainee7116
3 жыл бұрын
You speak so fast, I don't have to speed up your video
@AdelonZeta
5 жыл бұрын
You have good content but did you fast forward your audio? It’s too fast to be effective for learning.
Пікірлер: 152