Why I use Convex over Supabase as my BaaS

  Рет қаралды 18,789

Web Dev Cody

Web Dev Cody

Күн бұрын

links to both services if you're interested.
convex.dev/
supabase.com/
00:00:00 - Intro
00:01:29 - Setup
00:02:57 - Paradigm
00:06:46 - Schema
00:10:17 - ORM
00:15:07 - Functions
00:18:30 - Authentication
00:21:19 - Security
00:25:15 - Transactions
00:29:30 - Real Time
00:33:42 - Storage
00:35:28 - DX
00:37:20 - Local Support
00:41:42 - Migrations
00:47:13 - Vector Search
00:48:06 - Learning Curve
00:50:53 - Conclusion
My Courses
📘 T3 Stack Tutorial: 1017897100294.gumroad.com/l/j...
My Products
📖 ProjectPlannerAI: projectplannerai.com
🤖 IconGeneratorAI: icongeneratorai.com
📝 ThumbnailCritique: thumbnailcritique.com
Useful Links
💬 Discord: / discord
🔔 Newsletter: newsletter.webdevcody.com/
📁 GitHub: github.com/webdevcody
📺 Twitch: / webdevcody
🤖 Website: webdevcody.com
🐦 Twitter: / webdevcody

Пікірлер: 131
@ninjagaskin
@ninjagaskin 4 ай бұрын
Phenomenal post. Thank you Cody! Always providing relevant and insightful content
@Marcus-Lim
@Marcus-Lim 4 ай бұрын
Hey, thanks for this video, has helped me understand convex more. I’ve ran into some of the issues you’ve pointed out with supabase, going to try out convex now 🙏
@techwithsaran
@techwithsaran 4 ай бұрын
Thanks for going in such details man! Much appreciated!
@andreh.9300
@andreh.9300 4 ай бұрын
Thanks for the video! I've been using Supabase for work over the past 6 months. You can generate types based on your schema using the Supabase CLI and pass it as a type arg when using the SDK to provide type safety. I've enjoyed using it, but I'm interested in trying Convex for a personal project.
@ahsanali580
@ahsanali580 4 ай бұрын
Greatly explained each aspects from both!
@t_park
@t_park 4 ай бұрын
loving these comparison videos :)
@robwatson826
@robwatson826 4 ай бұрын
This video dropped at just the right time - I'm a Supabase user but have been watching your videos using Convex with Clerk and I'm torn between the two. I only want to choose 1 of them going forward so this video could help!
@eshw23
@eshw23 4 ай бұрын
Both are so much better than Firebase lol 😀
@luiswebdev8292
@luiswebdev8292 4 ай бұрын
@@eshw23 convex is so much easier than firebase...
@joebashour
@joebashour 29 күн бұрын
Great introspection. Thanks for your unfiltered review :)
@rembautimes8808
@rembautimes8808 Ай бұрын
Great video , a very thorough comparison. Convex looks really good and they should continue to work with content creators because they are the first resource folk use to learn a new tech and you have some excellent examples. Btw I use Supabase because of their auth and Postgress support. Attended their launch weekend where their cofounder talked about their auth service .
@VideoTechDude
@VideoTechDude 4 ай бұрын
Thank you for this video! I may give convex a try and see how it goes. I've been trying to use supabase for a side project but have run into a lot of the pitfalls mentioned in this video.
@rioredwards
@rioredwards 3 ай бұрын
I attended a coding bootcamp and we used Supabase for the first couple months… It allowed us to get feel for backend development so when we continued on to learning Express and PostgreSQL, we were more familiar with the concepts (Tables, Joins, SQL, Auth, RLS, etc). I think it’s the perfect tool when you’re learning or just want to get an app up and running.
@rioredwards
@rioredwards 3 ай бұрын
No hate though! I’m a big fan of your vids Cody!
@pheisar
@pheisar 4 ай бұрын
You are a machine bruh, great vid!
@SonAyoD
@SonAyoD 3 ай бұрын
great video again!
@zb2747
@zb2747 4 ай бұрын
Interesting. First time hearing about Convex
@isaackoz
@isaackoz 4 ай бұрын
Something I've always wondered is how well these scale and if they're suitable for projects beyond a SaaS? If I'm not mistaken, most, if not all, BaaS are just wrappers around AWS? I get that the DX is the main selling point of them, but what is the tradeoff from using these all in one backend solutions versus building up your own infrastructure via AWS? I mean the function calls on convex are $2 per million versus $0.2 per million on AWS lamda (or $0.60 per million for edge). That's a 10x markup! Btw great video on the comparison. Love your vids as always. This was just something I've always been curious about.
@WebDevCody
@WebDevCody 4 ай бұрын
That is a good question. When we talk about software, we have to consider the context of the project, company, and team size. Many software projects are small in scale and do not have that much traffic. Paying $2 per million or $0.2 per million does not make much of a difference in the grand scale of things. How many users would you need to hit your app daily to generate one million requests? Probably a decent amount right? Paying 10x more for requests to get the ability for moving fast and shipping to market faster is worth it for most small scale projects. For larger projects (Netflix, Facebook, Google), they almost always will be running their own VMs & dedicated machines because that is sometimes the only way to save on operational costs (but this also requires expert engineers who are paid a LOT of money).
@isaackoz
@isaackoz 4 ай бұрын
@@WebDevCody That makes a ton of sense. Thank you for your detailed response!
@dr.lazysloth3415
@dr.lazysloth3415 4 ай бұрын
Thanks for this video
@abdullahislam
@abdullahislam 4 ай бұрын
Going to give convex another shot after watching this. I'm a supabase fan but you've articulated my fusturations over some of the things like rpc very well. Convex for me is a slight learning curve and I really wish there was more guides and tutorials and tutorials that are not 3 hours long going over it.
@WebDevCody
@WebDevCody 4 ай бұрын
I have a crash course 12 min video on my channel you should check out
@AdolfRizzler41
@AdolfRizzler41 2 ай бұрын
​@@WebDevCodycan you make 30-40 min crash course
@grimm_gen
@grimm_gen 4 ай бұрын
man I love tech so much!
@eshw23
@eshw23 4 ай бұрын
Cody please tell me what you use for the flowcharts, do you use a graphics tablet? Or normal mouse? You have strong eraserio skills lol
@WebDevCody
@WebDevCody 4 ай бұрын
I use my track pad on my macbook
@chiubaca
@chiubaca 4 ай бұрын
Thoughts on pricing between both services?
@furycorp
@furycorp 3 ай бұрын
With Convex they only host it right? Like there's no way to actually own your app/platform/data like is at least possible with Supabase (and with other BaaS)?
@juanvieira8249
@juanvieira8249 4 ай бұрын
I always wanted to like Supabase. I do like a few things, but I have always felt friction. Will give Convex a go, thanks!
@blujosi
@blujosi 4 ай бұрын
Does convex Have support for Svelte,Vue ? you should have included front end Framework support in the comparison. Convex is only focused on react on the frontend
@wezter96
@wezter96 4 ай бұрын
Really nice video! :D Have you compared price scaling for Convex + Clerk compared to Supabase? Another question, is there something you have found in Convex that Supabase is completely missing or vice versa? (other than Auth missing within Convex)
@funnynews341
@funnynews341 Ай бұрын
with supabase, we can connect to postgresql with third party data analyst and follow everything we want. And in convex? How to connect with other data analyst tools?
@champechilufya1458
@champechilufya1458 Ай бұрын
In terms of schema, you can do it all in code with supabase too, you have both options. You actually don't have to use the ui at all.
@hyper-stack
@hyper-stack 4 ай бұрын
i am having a seperate backend that used for generating ai response. How can i use convex to make an api request to my be endpoints. Thank you
@WebDevCody
@WebDevCody 4 ай бұрын
you can use a convex action and just do a normal fetch request, then when you get the response back, pass the response data to a mutation to store that info somewhere if you want.
@abdelghafour341
@abdelghafour341 4 ай бұрын
You should switch the icons in the thumbnail, the heaviest side should be the best, in this case, convex. Very important information
@rayanbalbuena8165
@rayanbalbuena8165 4 ай бұрын
First thing I noticed 😂
@akbarnafisa4969
@akbarnafisa4969 4 ай бұрын
no pricing on the list?
@wilbertdune
@wilbertdune 4 ай бұрын
Hello can you create a video how you handle stripe taxes across 200+ countries?
@cntrvsy
@cntrvsy 4 ай бұрын
nice video, im curious what you think appwrite?
@ongkay250
@ongkay250 Ай бұрын
Appwrite is easy and powerfull❤
@Cyber-Bison
@Cyber-Bison 4 ай бұрын
This was super useful. Thanks so much Cody. Definitely switching to Convex as a default BaaS
@muhammadbilal6865
@muhammadbilal6865 2 ай бұрын
we use drizzle orm with postgresql database which gives best developer experience.
@karlcolins8913
@karlcolins8913 26 күн бұрын
Hi junior dev here, do you mind showing how to host convex in the cloud or a server now that its open source
@SeibertSwirl
@SeibertSwirl 4 ай бұрын
I love you babe! You’re doing great!!!
@WebDevCody
@WebDevCody 4 ай бұрын
Thank you my love!
@untalentedwebdev
@untalentedwebdev 4 ай бұрын
I love him more
@SeibertSwirl
@SeibertSwirl 4 ай бұрын
@@untalentedwebdev lol not possible
@eshw23
@eshw23 4 ай бұрын
awww
@abdirahmann
@abdirahmann 4 ай бұрын
i just enjoy this little "easter egg" on this channel, all new viewers must be confused as to why this "strange" woman keeps posting "i love you babe" on every single post and she don't miss 🤣🤣, some think you are a wierd bot fr🤣🤣💀
@yassinesafraoui
@yassinesafraoui 4 ай бұрын
Could the recompilation of convex be a problem if I don't have a performant laptop?
@chiubaca
@chiubaca 4 ай бұрын
I have a shit laptop and it runs fine 😂
@kaiwollherr712
@kaiwollherr712 26 күн бұрын
1. Can I create a database that is linked to the respective users with Convex? 2. I have created a schema that references the user and then creates a table with sunbeds based on the `tokenIdentifier`. At least that's the plan. It is not working yet.
@luiswebdev8292
@luiswebdev8292 4 ай бұрын
definitely type safety and atomicity are two reasons why I would pick convex without hesitation I've been using convex for some time and I like it I got a bit sidetracked by actions and mutations distinctions. The docs tell you to use mutations as much as possible and schedule actions from the mutations. But I noticed that in practice what you want by default is to call an action directly from the frontend, for, say, calling a 3rd party and then writing the response in the DB and show a loading state while this happens
@WebDevCody
@WebDevCody 4 ай бұрын
use mutation unless you need to make an async request to a third party service, then I'd just invoke the action directly from the frontend and have that action call mutations
@luiswebdev8292
@luiswebdev8292 4 ай бұрын
@@WebDevCody Yes, that was my conclusion too. The alternative would be to call a mutation from the client and the mutation schedules an action call, which can be done if we don't need or want a loading spinner in the client that shows the state of the request. There's also the possibility to schedule mutations from a mutation (I think). This is might be useful for things which can be done in the background and might take a while, for example, recursively batch delete all the records related to a specific user the docs seem to suggest as default to call a mutation that schedules an action, but then I can't show a loading spinner in the client because the client doesn't know when the action completes. Or at least, I didn't see a way that is not awkward and overly complicated (like adding a "pending" property to the record that is going to be updated)
@WebDevCody
@WebDevCody 4 ай бұрын
@@luiswebdev8292 the way I'd recommend doing that is actually adding a status field to your record. Since convex will automatically update your UI, if you just initialize your record as "pending" and then later change it to "processed", your UI can easily show a spinner / show the results when it's done. It sounds like you are running a long running async process (like an open ai request), and I think having a status property is the best approach.
@luiswebdev8292
@luiswebdev8292 4 ай бұрын
@@WebDevCody it's a sequence of open ai calls. I think you're actually correct, if I do as you say, then it's possible to show a spinner even if the user refreshes the page as the status at any given time comes directly from the DB
@markjones6894
@markjones6894 4 ай бұрын
Would it be possible to compare convex with appwrite ? And how they compare in terms of the cloud functions
@WebDevCody
@WebDevCody 4 ай бұрын
if I get time, I haven't tried appwrite yet.
@ongkay250
@ongkay250 Ай бұрын
Appwrite is the best and easy❤❤
@yassinesafraoui
@yassinesafraoui 4 ай бұрын
I think convex could very much be that sweet spot between when you manage everything yourself, databases authentication... And low code where you don't have to write code really, I'm not sure it just feels like that to me
@WebDevCody
@WebDevCody 4 ай бұрын
I mean you do still need to write code, but it makes things easier for sure
@dr.lazysloth3415
@dr.lazysloth3415 4 ай бұрын
In wonder if you ever tried firebase. I am curious what your thoughts are.
@WebDevCody
@WebDevCody 4 ай бұрын
I haven’t tried it yet
@LabhamJain
@LabhamJain 4 ай бұрын
@@WebDevCody 👀 quite rare to find people using latest tools on daily basis but not the established tool
@RogerDearly
@RogerDearly 4 ай бұрын
What about firebase?
@Christopher-lb6rf
@Christopher-lb6rf 4 ай бұрын
You notice much in terms of performance between them? I've used Supabase, and there was a lot of situations where performance was a problem.
@WebDevCody
@WebDevCody 4 ай бұрын
Not yet, but I haven’t built anything substantial in either. A bunch of the founders at convex worked at Dropbox engineering a lot of the hard stuff, so I’m pretty sure they have a handle on everything.
@abdirahmann
@abdirahmann 4 ай бұрын
cody, i very much disagree with you on the security (authorization) part, here's why... 1. When figuring out whether a user is allowed to *read* a row or *write* to a table, him getting the permission depends on what state/data they have in the DB, for example, say you want a user to not be able to create a shop if he's not verified, you can write an RLS policy to deny him *write* access to that table if he doesn't meet the requirements, compare that to having authz rules on the application layer, you'll have to make a network req to get the appropriate data in-order to evaluate the conditions on the server, this add more latency!!! 2. i believe separating authz rules from business logic gives you better security because you don't have to worry about having to write a bunch of *WHERE* clauses in order to protect the data, it add too much fluff on the actual SQL that deals with business logic, this problem become bigger once you have a sizable team where all devs have to simultaneously think of authz and business logic EVERYTIME!!!, that's crazy talk!!! Have a good one
@WebDevCody
@WebDevCody 4 ай бұрын
that's fine to disagree; I just don't think encoding security rules at the database level is a good approach for a maintainable system. Additionally, RSL is limiting. Let's say I have 3 different user roles and each role has a different type of access to the columns in the row. This would involve adding database views which is more complexity added onto the database which is actually business rules.
@leojohn6702
@leojohn6702 2 ай бұрын
Hi. I am an aspiring web developer. I am building projects in nodejs with express, mongodb and vite- react. I’m not a fan of nextjs. However I’ve seen you have plenty videos with tech, not only using nextjs. Do you have a video presenting tech stacks of js in 2024? I mean I want to be focused on ts, node, react.
@WebDevCody
@WebDevCody 2 ай бұрын
I only use next now honestly; it's less complexity imo
@sagarsubedi
@sagarsubedi Ай бұрын
you said you are an aspiring web developer and you already don't like Next. Have you used it a lot and used alternatives? Why do you not like it?
@leojohn6702
@leojohn6702 Ай бұрын
@@sagarsubedi in the first place, I hate the pricing plan. It’s a ripoff. Secondly, I find it hard to understand.
@sagarsubedi
@sagarsubedi Ай бұрын
@@leojohn6702 I agree that pricing is bit of a ripoff, but that is VERCEL, not Nextjs. I was talking about the framework, not the company or the platform. To your second point, I guess that's fair to not be a fan of sth you find hard to understand. Fair enough!
@andrewaj8417
@andrewaj8417 4 ай бұрын
Did you try using a server actions to call a Supabase. Basically you define all functions in actions.ts file or what ever and use them to call supabase from server components, kid of similar seperation of concerns ))
3 ай бұрын
Im the only one here thinking memerank has a great potential?
@amr3162
@amr3162 2 ай бұрын
regarding vendor lock-in, I think convex was just open-sourced today (like 4 hours ago), I think convex is pretty cool, however, I'd still prefer Postgres over convex's custom db, but that's only because I've used Postgres for almost all my professional career, and I think the Postgres is literally the best db available.
@WebDevCody
@WebDevCody 2 ай бұрын
Postgres is great, but doesn’t really have the real time capabilities I’ve seen in convex without a lot of extra code. Also, convex is more than just a database, it’s an entire backend as a service. Hard to compare the two
@Danielo515
@Danielo515 4 ай бұрын
In the first 5 minutes I was already sold on convex
@eaglebirdiepar
@eaglebirdiepar 4 ай бұрын
Convex is incredible. Makes it stupid easy to create apps.
@eshw23
@eshw23 4 ай бұрын
Yea but manually doing it using web socets like Socket Io or something else is a much better learning experience and more rewarding, on top of more scalable
@eaglebirdiepar
@eaglebirdiepar 4 ай бұрын
If your goal is to learn websockets than sure.But if you want to build a web app quickly this is the way.@@eshw23
@ewwitsantonio
@ewwitsantonio 3 ай бұрын
23:20 Haha yes that is how i feel right now. Got sucked into Supabase because of how easy auth is, and the simple premade client for next/react, but then hit some big walls as I tried to create some user roles. I am deep in postgres rabbitholes right now, which is exactly what i was initially trying to avoid. Oops.
@lisander-lopez
@lisander-lopez 4 ай бұрын
I agree, learning curve is crazy, but I prefer "database lockin" over "vendor lockin" as well as, Auth in supabase is sweet! Supabase is more battle tested. I am starting a project, I decided to go with supabase... Maybe next time I will do convex. But your content seems like it will shift towards convex :(
@WebDevCody
@WebDevCody 4 ай бұрын
Nah my niche is still just general web dev, react, and next
@PraiseYeezus
@PraiseYeezus 4 ай бұрын
I think Supabase being "just Postgres" is potentially a pro or a con depending on how you look at it. The trade off of it being something you might have to learn is that if you ever want to migrate from Supabase it'll be much easier, since you can deploy/host Postgres pretty much anywhere. Not sure you'd get the same benefits with Convex Also, I feel like Postgres is pretty much a "figured out" system. I know that whatever I'd need to do I can more easily find a solution through pg extensions or even ChatGPT. Probably not the case with Convex (as much)
@WebDevCody
@WebDevCody 4 ай бұрын
Yeah idk how truthful “just Postgres” actually is. I’m assuming there is a lot of extra configuration and work needed to build your own api which wraps postgres and hooking into the real-time capability. Self hosting supabase seems like a more feasible option, but a complete removal of supabase and going straight to Postgres probably involves a lot of work, especially if you didn’t structure your code properly to abstract away your use of supabase.
4 ай бұрын
Do you have a MS in CS?
@WebDevCody
@WebDevCody 4 ай бұрын
no just a bachelors
@pieter-venter
@pieter-venter 4 ай бұрын
Convex seems awesome. I hate supabase. When I started a new job at a startup where the juniors that I took over from had supabase queries straight in reaction components, the first thing I did was to take all of that out and wrap Prisma around a standard db string to supabase until the we eventually migrated the db itself to RDS, but had I known about Convex back then I would probably switch to that. For permissions (authZ) I use casl. It has a plugin for Prisma. I'll see if I can write a Convex plugin but even without that it's fairly straightforward to use it out the box
@WebDevCody
@WebDevCody 4 ай бұрын
I think supabase is fine if all you want is a postgres db host (although I'd probably trust AWS RDS more to guarantee my database will always stay online); but yeah I agree if your react code is doing queries to the supabase API, you're going down an unmaintainable path.
@isaacpak8923
@isaacpak8923 4 ай бұрын
You missed probably one of the most important points of interest. Pricing. Which is more cost effective and at scale...
@kyngcytro
@kyngcytro 4 ай бұрын
Supabase + Prisma or Drizzle solves most of the issues
@WebDevCody
@WebDevCody 4 ай бұрын
If you use drizzle then you’re not even using supabase client or rls; you’d just be using Postgres and at that point I could just spin up a database on railway
@olatunjiolakunle6908
@olatunjiolakunle6908 4 ай бұрын
@@WebDevCody well I say in this case you don’t get too locked in to Supabase and your business logic remains in your application
@juanbustamante4992
@juanbustamante4992 4 ай бұрын
Something I think you didn't mention is that you can't really write complex queries with the Supabase "ORM". You can't do a left join or a simple join between two tables that don't share a foreign key. I started a project with Supa and was pretty disappointed that I had to jump to table views or functions the moment I needed more than a basic select
@HDChif
@HDChif 2 ай бұрын
of course you need foreign keys to perform joins. it's a relational db jc
@razleviO
@razleviO Ай бұрын
You can use it with prisma
@GentlemanTomcat
@GentlemanTomcat 4 ай бұрын
Convex looks super easy to use and sounds great but looking at thier investors the top of the list is Andreessen Horowitz and that dude is aspiring to Lex Luther levels of bad guy. Looks like he is also a key invesor in Clerk too. I'll stick with Supabase 😁
@WebDevCody
@WebDevCody 4 ай бұрын
😂 I have no info on any of that. What makes it so bad?
@ongkay250
@ongkay250 Ай бұрын
I use appwrite❤😂
@sumitpurohit8849
@sumitpurohit8849 4 ай бұрын
One thing you missed is that you can't self host convex at this point. While supabase does provied self hosting through the docker image but it's not that good as compared to their service.
@WebDevCody
@WebDevCody 4 ай бұрын
I talk about that in the video.
@parkerrex
@parkerrex 3 ай бұрын
because convex cuts me a check
@WebDevCody
@WebDevCody 3 ай бұрын
haters gonna hate - I've haven't felt this productive until I started using convex
@parkerrex
@parkerrex 2 ай бұрын
@@WebDevCody fair -- i take it back, love your content
@WebDevCody
@WebDevCody 2 ай бұрын
@@parkerrex did you participate in the hackathon? Your name seems familiar
@Zero-nh4ke
@Zero-nh4ke 4 ай бұрын
Cuz It’s simple Convex is the sponsor of the this video 😂
@WebDevCody
@WebDevCody 4 ай бұрын
this wasn't a sponsored video
@REAZNx
@REAZNx 4 ай бұрын
This honestly just seems way too convoluted, I'd rather stick with a traditional API backend and call endpoints in my frontend
@WebDevCody
@WebDevCody 4 ай бұрын
if you code in react, try convex for yourself. so far this has been the best DX I've found in my 10 years of coding.
@ivan.jeremic
@ivan.jeremic 3 ай бұрын
Strapi never being included as an option in comparisons like these makes me think they will sooner or later go bankrupt😅
@WebDevCody
@WebDevCody 3 ай бұрын
Strapi is a cms, I wouldn’t compare it
@ivan.jeremic
@ivan.jeremic 3 ай бұрын
@@WebDevCody I know, but it is also a layer over a database that allows you to work with data.
@logantcooper6
@logantcooper6 4 ай бұрын
Front end devs will do anything to avoid learning a real backend language
@WebDevCody
@WebDevCody 4 ай бұрын
How’d that comment make you feel? Did it make you feel powerful?
@jatiquep5543
@jatiquep5543 4 ай бұрын
Sometimes speed matters.....
@eshw23
@eshw23 4 ай бұрын
What are you talking about lol, Nodejs literallly is a backend language lmao, hes using the API routes
@kurwacherry
@kurwacherry 22 сағат бұрын
Supabase all day
Why I'd never host my apps on a VPS
13:43
Web Dev Cody
Рет қаралды 31 М.
How I structure my next.js applications
23:19
Web Dev Cody
Рет қаралды 21 М.
THEY made a RAINBOW M&M 🤩😳 LeoNata family #shorts
00:49
LeoNata Family
Рет қаралды 32 МЛН
Incredible magic 🤯✨
00:53
America's Got Talent
Рет қаралды 64 МЛН
🤔Какой Орган самый длинный ? #shorts
00:42
Complex Schema Design with Drizzle ORM | Common Patterns
45:55
Intel's CPUs Are Failing, ft. Wendell of Level1 Techs
23:59
Gamers Nexus
Рет қаралды 24 М.
I've been using Supabase and I kind of like it
11:25
Web Dev Cody
Рет қаралды 27 М.
The Modern Dev CMS - Pocketbase
25:25
Syntax
Рет қаралды 10 М.
So You Think You Know Git - FOSDEM 2024
47:00
GitButler
Рет қаралды 1 МЛН
How React Query Won
34:52
Theo - t3․gg
Рет қаралды 67 М.
Migrating from Postgres to SQLite with Kent C. Dodds
57:02
Aaron Francis
Рет қаралды 8 М.
The One We've All Been Sleeping On (probably)
8:18
Ben Davis (Davis Media)
Рет қаралды 24 М.
Don't use these services for your SaaS
6:45
Simon Høiberg - Explains
Рет қаралды 19 М.