Azure Cosmos DB Tutorial | Globally distributed NoSQL database

Sdílet
Vložit
  • čas přidán 24. 07. 2024
  • Azure Cosmos DB is globally distributed and highly responsive database in the cloud. With just few clicks you can get multi-regional distribution and redundancy with high availability of 99.999%.
    In this episode I will cover basics of Cosmos DB with live demo of Portal Features and dotnet programming, but I also will explain most important features of Cosmos DB.
    Source: github.com/MarczakIO/azure4ev...
    Want to connect?
    - Blog marczak.io/
    - Twitter / marczakio
    - Facebook / marczakio
    - LinkedIn / adam-marczak
    - Site azure4everyone.com
    more to come..
    Next steps for you after watching the video
    1. Check data factory docs
    docs.microsoft.com/en-us/azur...
    2. Build CRUD operations with VueJS, dotnet and Cosmos DB
    marczak.io/posts/netcore-vuej...
    3. Cosmos DB intro video series from Microsoft
    docs.microsoft.com/en-us/lear...
    See you next time!
  • Věda a technologie

Komentáře • 220

  • @AdamMarczakYT
    @AdamMarczakYT  Před 3 lety +11

    At 7:32 there is a typo about partition types. Instead of "two kind od partitions", it should be "two kinds of partitions" :) Thanks Davide T. for letting me know :)

    • @RohanHazara
      @RohanHazara Před 3 lety +1

      Still mentioning wrong meaning. You wrote "Two king od partitions". I dont think it does a matter because we understand your good explanation. Good work and keep it on!

    • @rakeshpanigrahi577
      @rakeshpanigrahi577 Před 2 lety

      @ELVIS PRESLEY during container creation, you can choose "Manual" instead of "Autoscale"

    • @roshanyedme8483
      @roshanyedme8483 Před rokem

      @@RohanHazara c9xcx999xx99c999c9x99c99f999x9cfcx99x9c999xfgxc99x99cg9c909c9c9

  • @DebanjanBardhan
    @DebanjanBardhan Před 2 lety +2

    I was so confused about the terminology of containers and documents, and you made it crystal clear for me in just a slide. Thank you so much, Adam :)

  • @NaClH2OGrl
    @NaClH2OGrl Před 4 lety +27

    Thank you, Adam! It's not everyday that I watch a learning video that provides easy to understand language, content, and flow. You obviously know your stuff and, bonus for everyone, you're a natural teacher who's willing to produce and share your knowledge.

  • @abhisheksoni6012
    @abhisheksoni6012 Před 2 lety

    Adam you made my life so easy, I started watching your videos since last 15 days, I got impressed with the way you teach, please keep continuing.

  • @ngophuthanh
    @ngophuthanh Před 3 lety +4

    Thanks a lot, Adam. Your videos are very helpful and interesting. You summarize how thing work, and then provide great demos. Well balanced and well done.

  • @run-forrest-run
    @run-forrest-run Před 3 lety +1

    Thank you @Adam Marczak. It is really nice to see you are progressing with your way of explaining things. Since this video is of last year. I can tell the difference with your latest videos. Really good work! ✌️

    • @AdamMarczakYT
      @AdamMarczakYT  Před 3 lety +1

      I know right! It's been a looong way. Spent hundreds of hours perfecting presentations, agenda, structure and even signed for additional English lessons with British native so I can speak more fluently with better pronunciation :) Moving on all tutorials will only get better. Every few years when there will be major changes to the service I definitely plan to do a refresher video with all the improvements :) Thanks!

  • @arthurimona5901
    @arthurimona5901 Před 4 lety +5

    Dzięki Adam for these insights. I totally need this for one of my projects. Great video!

  • @selwynalexander9750
    @selwynalexander9750 Před 4 lety +1

    Thanks Adam. Your an Azure Certified Teacher . Its very easy to understand your videos and acquiring deep knowledge. Well done bro!

  • @penglv1007
    @penglv1007 Před 4 lety +2

    Very informative and easy to understand. Hope to watch more about the usage with demos.

    • @AdamMarczakYT
      @AdamMarczakYT  Před 4 lety

      More are coming but pipeline of videos is long but definitely a hot topic to cover. Added to the list, thanks for the feedback!

  • @murali411987
    @murali411987 Před 3 lety +1

    Thank you Adam for sharing these learning videos. You are making azure journey easy for everyone.

  • @satishseshadri
    @satishseshadri Před rokem

    You've been my learning source for a while now. Thanks a lot for your videos!!

  • @antonistarczynowski7356

    Extremely useful and well done material. Congrats Adam!

  • @patrickbrodeur7466
    @patrickbrodeur7466 Před rokem

    Very good video! I'm always impressed how how much information you can teach clearly in a 31 minutes video! You know well Azure, and you are a very talented teacher! Go from almost 0 knowledge on Cosmos DB to excited beginner in 31 minutes! ;-)

  • @renjithh88
    @renjithh88 Před 4 lety +1

    Superb content...very crisp and to the point...helps a lot while preparing my dp-200 certification👍👍

  • @elitsavr
    @elitsavr Před 3 lety +3

    Your Azure videos are great! Thank you so much!

  • @belong_to_the_world
    @belong_to_the_world Před 2 měsíci

    It is always nice liearning azure with you Adam! Thank you so much!

  • @shantanudeshmukh4390
    @shantanudeshmukh4390 Před 3 lety +1

    Very nicely done. Easy to understand these complex concepts. Just subscribed to this channel. Looking forward for more knowledgeable videos. Thank you!

  • @ValentineMasina
    @ValentineMasina Před 3 lety

    Lovely to see this well articulated video. Thanks

  • @gotonaren
    @gotonaren Před 3 lety +1

    Very well presented. Thank you for an easy to understand information video. Just what I was looking for.

  • @brianaustin685
    @brianaustin685 Před 2 lety

    Great walk through Adam, appreciate the content 👍

  • @vincexjx
    @vincexjx Před 3 lety +1

    Great video to pick up Cosmos DB. Thank you Adam!

  • @AnilKumarP4U
    @AnilKumarP4U Před 3 lety +1

    Your video's are very helpful to understand content without any confusion. Thank you so much!

  • @manishsharma9490
    @manishsharma9490 Před 3 lety +1

    Very nice explanation! Learning azure is very easy using your videos and demonstrations! Thanks bro!!

  • @pawanmodi9020
    @pawanmodi9020 Před 3 lety +2

    Great video. Very crisp and great explanation.

  • @belaidmabrouk29
    @belaidmabrouk29 Před 2 lety +1

    Adam you are really amazing ,
    keep going thanks !

  • @somitmitra823
    @somitmitra823 Před rokem

    Adam, this is was great share. Thanks Man !

  • @Paweaszcz
    @Paweaszcz Před rokem

    Hello Adam - thanks for very nice piece of Azure knowledge !

  • @paulowiz
    @paulowiz Před 3 měsíci

    Clear and objective! Nice video!

  • @myriampch14789
    @myriampch14789 Před 3 lety +2

    Very clear and useful, thank you !

  • @balanm8570
    @balanm8570 Před 4 lety

    Awesome Video on Cosmos DB !!!. To the point to understand cosmos DB !!!

  • @nadya6368
    @nadya6368 Před 4 lety

    Dziękuję bardzo za super filmiki!

  • @irtazahaider1351
    @irtazahaider1351 Před 4 lety

    Thank you, Adam. Very helpful

  • @SameeraSenarathna
    @SameeraSenarathna Před 3 lety +1

    Another Good Video. Thank you for sharing the knowledge.

  • @xelaksal6690
    @xelaksal6690 Před rokem

    Great introduction!!!

  • @itzinfector
    @itzinfector Před 3 lety +1

    your vids are the best azure tutorials thanks for your support

  • @BDBrightDBA
    @BDBrightDBA Před 3 lety +1

    Really a great video all of your Azure

  • @styleman2434
    @styleman2434 Před 3 lety +1

    Very nice video for basic understanding 👍

  • @gyanendramaurya2082
    @gyanendramaurya2082 Před 2 lety

    This was amazing, I got a new job and there they used cosmos db, just wanted to know what it is and how its works, I now have a very clear picture of how they are using the cosmos db, next step is learning azure functions, will go and check if you have any material on that, otherwise some other resource :( , anyways Thank you very much for the clean tutorial.

  • @leofuadjadue
    @leofuadjadue Před rokem

    Thank you, Adam!!! 😀

  • @duladuda9891
    @duladuda9891 Před 3 lety +1

    Thanks so much still relevant in 2020!

  • @prasadmadhasi
    @prasadmadhasi Před 4 lety +3

    Perfect Session!!!!

  • @rsbalaji1755
    @rsbalaji1755 Před 2 lety

    Adam, you are awesome man

  • @rvkrasyl
    @rvkrasyl Před rokem

    Thank you for the video!

  • @bhagvandas6058
    @bhagvandas6058 Před 3 lety +1

    great video with nice descriptions..

  • @HamsterHand777
    @HamsterHand777 Před 3 lety

    Another great video, thanks!

  • @TheZimberto
    @TheZimberto Před rokem

    Great overview

  • @vinodhkumar9540
    @vinodhkumar9540 Před 4 lety

    Fantastic Adam!

  • @taveek
    @taveek Před 4 lety

    Great work, thank you very much.

  • @kazimdminhajulhaider3709

    Amazing Tutorial, thanks

  • @MahmoudRabieadevedo
    @MahmoudRabieadevedo Před 3 lety

    Thanks a lot for the video, it helped me a lot

  • @CursedMilkshake
    @CursedMilkshake Před 3 lety +1

    Great video, thank you!

  • @Mezmiro
    @Mezmiro Před 4 lety +5

    Great video! Hopefully MS fixes the cost issue with Cosmos, as currently it's a very expensive option.

    • @AdamMarczakYT
      @AdamMarczakYT  Před 4 lety +2

      I hope so too. I like cosmos db but and I use it in my projects but I would use it more if it would cost less.

    • @stuartstead3768
      @stuartstead3768 Před 4 lety

      Yes, it's certainly not cheap is it?

  • @jarrettcurrie6071
    @jarrettcurrie6071 Před 4 lety

    Great tutorial!

  • @FirstNameLastName-kt3zn

    This was very helpful thanks

  • @abhishekchandra7606
    @abhishekchandra7606 Před 3 lety +1

    Great tutorial for overview

  • @manojvishwakarma1411
    @manojvishwakarma1411 Před 2 lety

    Very easy and good learning place

  • @bhimtech6237
    @bhimtech6237 Před 4 lety

    Great video!!!

  • @arjss
    @arjss Před 4 lety

    Thanks for this insight.

  • @govindhanperl6211
    @govindhanperl6211 Před 3 lety

    thanks for the demo

  • @armaanverma7026
    @armaanverma7026 Před rokem

    All videos are excellent @Adam, where can I look for more contents, how to subscribe to your portal.

  • @amitkumarvit1
    @amitkumarvit1 Před 3 lety

    Very good content!

  • @thunhu7494
    @thunhu7494 Před 3 lety

    Superb.

  • @RameshP-ds4xt
    @RameshP-ds4xt Před 4 lety

    Amazing contents .. thanks

  • @will44559
    @will44559 Před 2 lety

    Great course, Adam! Do you have any plan to do any Kubernetes course? Thanks.

  • @faycalbziou9147
    @faycalbziou9147 Před 3 lety +1

    great content

  • @eirikandersen9848
    @eirikandersen9848 Před 4 lety +1

    Really insightful video! The change feed section caught my eye and I am curious to more about it. My question is: May the change feed facilitate input into source systems, i.e. a online website?
    Let's say you have a customer that has bought a product and that information is sent to a Cosmos DB that uses SQL API for document storage. Furthermore, that information is sent to a Cosmos DB that uses the Gremlin API to uncover relationships between data, i.e. the customer has bought product A and based on the data we have in Gremlin API DB, the customer might like product B. Then this information is sent back to the website and next time the customer visit the website, the recommendation for product B is there.
    Wow, this turned out to be quite the message!

    • @AdamMarczakYT
      @AdamMarczakYT  Před 4 lety

      Thanks! Change feed is great, also check out samples with event grid and signalr if you want to build real time applications. Remember that cosmos can't use multiple APIs at the same time so you would need two of them. But sounds like an interesting project and good use-case. Good luck.

  • @FXK23
    @FXK23 Před 4 lety +2

    Shoudn't you avoid joins for cross-query over logical partitions? Isn't it a better idea to introduce some extra property in both container-docs and merge the two conatainers in order to query one logical partition?
    Great tutorials!

    • @AdamMarczakYT
      @AdamMarczakYT  Před 4 lety

      Partitioning and query optimization is a big topic. And in general you should avoid cross-partition queries as they consume more RUs but it's hard to design database so sometimes you might still need to do it. There is a lot of factors to consider and too many for a simple comment section to fit in. Thanks for watching :)

  • @dlplenin
    @dlplenin Před 4 lety

    Great tks! .... what if i need to handle two or more containers from c # ?, do i need to create a connection for each container?
    For now I found information about how register a connection to single container in the Startup.cs
    Tks again.

    • @AdamMarczakYT
      @AdamMarczakYT  Před 4 lety +1

      Yes, correct. You can reuse connection. Check out the samples from MS docs.microsoft.com/bs-latn-ba/azure/cosmos-db/sql-api-dotnet-v3sdk-samples

    • @dlplenin
      @dlplenin Před 4 lety +1

      @@AdamMarczakYT. I really apreciate it!
      At firts sight, I think these lines could help in this scenario:
      Container container = database.GetContainer(containerId);
      ContainerProperties containerProperties = await container.ReadContainerAsync();
      Will test it... thanks!

  • @aniketsamant455
    @aniketsamant455 Před 4 lety +1

    @Azure 4 everyone: I have to choose between Cosmos DB sql API and gramelin API ? Do you know when to use which one? Could please provide me any link if u have stating diifrence between gramelin and sql Api

    • @AdamMarczakYT
      @AdamMarczakYT  Před 4 lety +3

      Hey Aniket. Gremlin is for graph databases, so it's not a question of API but question of business problem you are trying to solve. If you need graph database then this is for you. If you want to check what are the challenges that graph database solve check this doc docs.microsoft.com/en-us/azure/cosmos-db/graph-introduction#scenarios-that-can-use-gremlin-api

  • @leefig6089
    @leefig6089 Před 3 lety +1

    Fabulous

  • @chandra1975
    @chandra1975 Před 3 lety +1

    Thank you Adam, Great Job. your videos are nice . DP 200 videos if you could share that would be helpful.

  • @mayankdhamaniya6127
    @mayankdhamaniya6127 Před rokem

    can you please explain how we will fetch ru used in a resorces group for a particular database container

  • @akshya88
    @akshya88 Před rokem

    Hello, I have a query. We need to bring oracle oltp data to cosmos db. What will be the best way as we need the data as soon as available. We wanted to use fivetran but it seems like it has not created connection to cosmos db.

  • @tanushreenagar3116
    @tanushreenagar3116 Před 3 lety

    Nice thnk u ☺

  • @sbkote
    @sbkote Před 4 lety

    Hi Adam, I have a use case and need your advice on that...
    So i need a Azure DB for storing some Large size files(ranging 1MB to 4 GB) and some meta data for those file and an API / link using which we can download the files from the DB. There is going to be a lot of reads/writes as well.

    • @AdamMarczakYT
      @AdamMarczakYT  Před 4 lety +1

      You should not store files in the database. You should store them on blob storage and only store paths to file in the database. Your API should generate expiring SAS urls to those files and send them to users for direct download.

    • @sbkote
      @sbkote Před 4 lety +1

      @@AdamMarczakYT Thanks Adam this is very helpful. :)

  • @arthurimona5901
    @arthurimona5901 Před 4 lety +1

    One question. Is it possible to have an azure cosmos db accessible to both a .net api and one that's node.js api?

    • @AdamMarczakYT
      @AdamMarczakYT  Před 4 lety +1

      Hi Arthur, what you ask is two different SDKs, but they use the same API underneath. So the answer is, yes you can use both .NET and nodejs.

  • @SinghFlex
    @SinghFlex Před 3 lety

    Great tutorial brother, Just a question ; how to call cosmosdb using sample logic app with managed identity authentication?

    • @AdamMarczakYT
      @AdamMarczakYT  Před 3 lety +1

      You can. I don't think default connector supports this but you should be able to craft HTTP request instead :)
      This tutorial does it on VM but it should be good enough to transfer this to HTTP call from Logic App
      docs.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/tutorial-windows-vm-access-cosmos-db?WT.mc_id=AZ-MVP-5003556 please note that logic apps automatically get tokens sso no need for extra HTTP call.
      I have very similar approach with Managed Identity and Blob Storage call shown in this video czcams.com/video/xVFmpszXmC0/video.html

  • @sanjeevakumarg5847
    @sanjeevakumarg5847 Před 2 lety

    Hi Adam, Can you help how to delete the cosmos collection using Azure data factory.

  • @sujanbhattacharya6029
    @sujanbhattacharya6029 Před 2 lety

    Can you please provide guidance about how to copy large json files (>16 MB) to cosmos db

  • @krishna172225
    @krishna172225 Před 3 lety +1

    Hi Adam..hope you're doing well. I have question. If someone deleted the data in cosmos db containers . Is it possible to verify how deleted the data.

    • @AdamMarczakYT
      @AdamMarczakYT  Před 3 lety +1

      You can check a lot of stuff in the activity log in Azure as long as it's a platform change, not sure if deletion of containers is here but possibly. Thanks for watching! :)

  • @ejmsp
    @ejmsp Před 4 lety +3

    Hey Adam,
    Nice video once again. Thanks for sharing the knowledge
    do you know some good courses to learn more about Azure? Am specially interested in Data factory and databricks, some recommendation? :)

    • @AdamMarczakYT
      @AdamMarczakYT  Před 4 lety +1

      Hey. Glad to see you are coming back for more :) I personally like Azure Friday videos on official Microsoft Azure channel czcams.com/users/windowsazuresearch?query=data+factory

    • @ejmsp
      @ejmsp Před 4 lety

      @@AdamMarczakYT thanks, i will check it ;)

  • @BijouBakson
    @BijouBakson Před 2 lety

    Thank you.

  • @washingtonqgaldos6572
    @washingtonqgaldos6572 Před 3 lety +1

    thanks so much

  • @ateekain5739
    @ateekain5739 Před 2 lety

    Hello, I want to create NOSQL database, one DB in singapore and one in US. Want to access both database as one without copying over. Just reference with possibility of CRUD operation. Data from singapore database shouldnt be moved out of singapore database. How should i do it ?

  • @ugbylqb
    @ugbylqb Před 4 lety

    Hi,
    I have a situation where one microservice (written in spring boot) needs to connection two different cosmos db (via SQL API).
    Microservice will only perform read operation collections present in both cosmos DB
    Is it possible ?
    Can you please send me some example code.
    Thanks in advance.

    • @AdamMarczakYT
      @AdamMarczakYT  Před 4 lety

      Hey, I'm not a java expert so I can't help you with that. Never used spring boot.

  • @vipularyaa
    @vipularyaa Před rokem

    could you tell me how do we change from azure cosmos DB to Postgres sql db

  • @alkanandaappala3877
    @alkanandaappala3877 Před rokem

    How to upgrade tls/ssl version in existing azure cosmos db?

  • @DeepakShaw
    @DeepakShaw Před rokem

    Can we store same way in Azure Table Storage?

  • @eliashdez
    @eliashdez Před 4 lety

    What about deleting 1,000s of documents? is there any support now for that? TTL is not always an option.

    • @AdamMarczakYT
      @AdamMarczakYT  Před 4 lety

      I think this is still pain. There is also Bulk Delete using Cosmos DB SDK but I never checked what does it do in the backend (if it just deletes in loops/paralell or uses some bulk delete api).

  • @prachirandive.7195
    @prachirandive.7195 Před 5 měsíci

    Thank you

  • @jagerzhang4059
    @jagerzhang4059 Před 3 lety

    Hello Adam ,Can the link service can connect an remoted mongoDB,which is not in Azure portal,thx

    • @AdamMarczakYT
      @AdamMarczakYT  Před 3 lety

      If you mean from data factory, then yes.
      docs.microsoft.com/en-us/azure/data-factory/connector-mongodb?WT.mc_id=AZ-MVP-5003556

  • @yashhustle
    @yashhustle Před 2 lety

    How do we do Order by with Group by in Cosmos DB?

  • @maddipatlamadhura4140
    @maddipatlamadhura4140 Před 2 lety

    Hi, when I try to open my azure cosmos db emulator it shows Unable to add firewall rule settings. Please restart the Azure Cosmos Emulator with/NOFirewall Option.
    How to solve this issue?

  • @akhilamurthyraju5645
    @akhilamurthyraju5645 Před 3 lety

    I just installed visual studio code. To correct CosmosClient (ctrl + .), drop down is not showing - “using MicrosoftAzure.Cosmos”. May I know which extension I need to install to get this??

    • @AdamMarczakYT
      @AdamMarczakYT  Před 3 lety

      I think intellisense for .NET should be out of the box. Just make sure to install the packages using provided command and then run "dotnet restore" to get the packages.

  • @skfarid9069
    @skfarid9069 Před 3 lety +1

    @Adam Marczak - Azure for Everyone Thank you Adam for your quick update but how to reference the environment parameter here, so that read replication can be done only in Production environment and not in any other environment, basically how to put condition . Please suggest, awaiting for your valuable reply on the same.

    • @AdamMarczakYT
      @AdamMarczakYT  Před 3 lety

      Unfortunately I don't provide consultancy for work efforts. This isn't an Azure question either, this is a question on how to code with PowerShell. Feel free to check some online tutorials on the subject.

  • @ankitdagreat
    @ankitdagreat Před 4 lety +1

    can we have a video with Mongo Db APi and show the way of partition.

    • @AdamMarczakYT
      @AdamMarczakYT  Před 4 lety

      I might do partitioning video for cosmos db at some point. :)

  • @johncerpa3782
    @johncerpa3782 Před 4 lety

    Good video

  • @CosmeJunior
    @CosmeJunior Před 3 lety

    @Adam, I can't install the Microsoft.Azure.Cosmos package, I got the error "There are no versions available for the package 'Microsoft.Azure.Cosmos' can you help me out here ?

  • @edwinpantony100
    @edwinpantony100 Před 3 lety +1

    Great Video:) Thanks for this. and appreciate you could throw some points here.
    c:\labs\Program.cs(11,30): error CS0246: The type or namespace name 'Task' could not be found (are you missing a using directive or an assembly reference?)
    c:\labs\Program.cs(11,30): error CS0246: The type or namespace name 'Task' could not be found (are you missing a using directive or an assembly reference?)

    • @AdamMarczakYT
      @AdamMarczakYT  Před 3 lety

      This has been shown in the video around 18:20 mark.

  • @skfarid9069
    @skfarid9069 Před 3 lety +1

    Thank you Adam for this awesome tutorial...Great one indeed !!!
    How to enable Replication on Cosmos DB in Production only via Automation Script in East US 2 (Read regions) whereas write region is in Central US .Already have one common environment (dev/prod) ARM template for cosmos DB via which Cosmos DB been created.
    Awaiting for your valuable reply.
    Thanks in advance!!

    • @AdamMarczakYT
      @AdamMarczakYT  Před 3 lety

      Use update function in powershell. Location parameter is array so you can pass multiple.
      docs.microsoft.com/en-us/powershell/module/az.cosmosdb/update-azcosmosdbaccountregion?WT.mc_id=AZ-MVP-5003556&view=azps-4.7.0

    • @skfarid9069
      @skfarid9069 Před 3 lety

      @@AdamMarczakYT Thank you Adam for your quick update but how to reference the environment parameter here, so that read replication can be done only in Production environment and not in any other environment, basically how to put condition . Please suggest, awaiting for your valuable reply on the same.