You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

63 lines
2.9 KiB
Plaintext

00:00 So wait, what is an integration database?
00:02 If you were just working on your own personal website
00:05 or some small project,
00:06 you don't have an integration database.
00:08 But if you work in a big enterprise,
00:10 a big corporation where there's many internal systems,
00:13 you may be working with an integration database.
00:15 Honestly, that's not a great fit
00:17 for NoSQL databases in general.
00:19 It also makes designing documents
00:21 for them more difficult.
00:22 In large corporations where you have many applications
00:26 that share the same data,
00:27 one way that we have built applications to share data
00:31 is to just share the same database.
00:33 We might have a bunch of different applications
00:36 and they're all going to talk to the same database
00:38 so they all have the same concept of a user,
00:40 they all have the same concept of an order,
00:42 things like that.
00:43 And this means the concept of the user
00:45 is as complicated as it can get.
00:47 Maybe the application on the top left
00:48 could have a real simple user,
00:49 the one on the top right actually needs something else,
00:52 the bottom one is something else still
00:54 until you've got a model across all these applications,
00:56 and that makes it super tricky.
00:58 Also in NoSQL databases and document databases,
01:01 the relationships are enforced in the application,
01:03 so that means all of these have to agree on
01:05 what the constraints are, what the relationships are,
01:08 and that can actually cause data integrity issues.
01:10 There's a lot of reasons
01:11 that an integration database isn't a great idea
01:13 for relational databases.
01:14 In fact, it's not a great idea at all, but it has been used
01:17 and because there's different applications
01:19 with different query patterns,
01:20 it makes designing your documents more difficult.
01:23 So instead what do we do?
01:24 We build application databases.
01:26 Maybe we have a bunch of different applications
01:28 just like before, but they all have their own data store
01:30 and they all talk to their own databases.
01:33 Of course they need to exchange data before
01:35 so maybe we do some sort of microservice thing
01:37 where they talk to a service bus
01:38 or they just talk to each other, things like that.
01:40 That means each individual database
01:43 and interaction with its own application
01:45 is super, super focused and limited.
01:48 Here in these cases,
01:49 MongoDB document databases make a lot more sense,
01:52 and it's easier to design the documents
01:54 because the range of queries is extremely focused
01:58 so you can target those particular questions
02:00 against a small set of queries,
02:03 the guidelines we just talked about.
02:04 So this is the kind of model you want to have
02:06 if you're doing data exchange within your organization,
02:10 and you're working with a document database.