NoSQL을 소개할때, 대부분 가장 큰 장점으로 SQL DB에서는 볼수없는 수준의 속도를 강조합니다. 하지만 그만큼 NoSQL DB들은 어마어마한것들을 포기하고 그 속도를 얻은것이죠. 꼭 만능툴인것처럼 광고하지만 실상은 저마다의 장단점이 있는겁니다. 근데 처음부터 NoSQL로 시작하면, 데이터에 대해 구조적으로 머릿속에 정리하지 못하는 경우도 있기때문에, 되도록이면 익숙해질때까지는 SQL DB로 시작하는게 좋다고 봅니다. 아 물론 거꾸로 너무 오랜기간 SQL DB에 익숙해져 있는 개발자분들은, 한참을 설명해도 NoSQL에 대해 이해하지 못하시는 분들도 계시긴 하죠. 개발을 공부하시는 분들은 언제든 머리를 유연하게 쓰면서 다양한것들을 받아들이고 공부할수 있도록 마음먹는게 좋은듯 합니다.
동의합니다. 결국은 NoSQL을 쓴다고 하더라도 서비스라는 개념이 들어가면 설계가 기반이 되지 않으면 확장이 어렵습니다. 결국 유저, 개발자, 운영이란 큰 틀에서 DB를 선택하는것이 맞죠. 최근에 개발이 편하다(설계에 신경쓰지 않아도 된다)다는 생각만으로 NoSQL를 선택하는걸 보면 좀 안타깝기도 하구요.
you're a great teacher by the way. you're on point, you deliver quickly, YOU ARE NOT BORING and actually engaging to watch. your best quality is that you explain fast, a quality I wished all my school teachers and college professors had instead of repeating the same sentence until i am fully asleep and i don't know when they moved to the next sentence anymore.
5:27 필요할때 답을 찾으면 늦습니다. 소프트웨어 혹은 개발자 관점에서는 맞는 답일지 모릅니다. 인프라 관점에서는 문제가 생겼을때 해결하려면 1부터 10까지 전부 고쳐야 합니다. 불가능은 아니지만 그것은 상당히 많은 비용을 필요로 합니다. sql은 하드웨어 리소스 확장(수직, 수평)에 제한사항이 많지만 non-sql은 비교적 자유롭습니다. aws에서 dynamodb를 만든 근본적인 이유는 amazon때문입니다. 사람들이 물건을 사지 않더라도 장바구니에 넣었다 빼기는 열심히 합니다. 여기서 sql을 사용한다면 sql의 구조로는 트랜잭션 감당 못합니다. amazon의 장바구니에는 non sql이 사용됩니다. 어떤것이 좋다 나쁘다 말 할 수 없습니다. 용도에 맞는 사용과, 기회비용을 생각해야 합니다.
Azure Cosmos DB (nosql) 중에 SQL API 인스턴스로 만들면 SQL query-like 가능합니다. Cosmos DB 에 데이터 저장후에 SELECT * FROM c WHERE c.event_date="2020-08-20" 뭐이런식으로...ㅋㅋㅋ편해요 저희 회사 production 머신러닝 모델 API는 cosmosdb 사용합니당
자신이 하려는 서비스가 소규모 혹은 성공을 장담할 수 없다면 SQL(RDBMS)가 정답이라는것에 동의합니다. 다만 이분 설명에도 100% 동의 할수 없는점은 RDB중에도 NOSQL 기능을 제공하는 제품이 다수 있다는것인데 오픈소스 기반의 DB이외에 유상(MS-SQL, Oracle등)DB나 어플라이언스 제품으로 가면 엔터프라이즈 규모의 부하를 RDB에서 처리 가능합니다(퍼블릭 클라우드에서는 특정 엑세스 패턴에 특화된 서비스도 제공하구요). 물론 이를 뛰어넘은 설계 기반의 서비스를 제공하려 한다면 예외겠지만... 그리고 개발자가 쓰기 쉽다고 NoSQL을 선택하는 경우가 많은데 결국은 데이터의 활용과 서비스의 엑세스 패턴에 맞춰야 하는게 DB라 생각됩니다.
Thank you for great explanation about SQL and NoSQL. It was really really pretty prrrreeetty simple and understandable explanations :))bbbb, I want to learn about SQL more deeply, so if you have time could you explan how SQL used many area and what we can do using SQL deeply...please~~~~:))))))
2:09 Cassandra (key value) was applied in Instagram and later u mentioned Instagram changed PostgreSQL to graph database. Did you misspoke or did Instagram really abandon key value and rdb and change to gdb?
As a data scientist, I can confirm that choosing a database provider is dependant on the task. However for data science, most of the time SQL is my choice; but it also depends.
I've only tried SQL (SQLite, mySQL and PostgreSQL) and MongoDB - Relational databases just make more sense in my head. Would love to see a video from you comparing the different SQL options!
영상 잘 봤습니다. 덕분에 일부 궁금했던 부분도 해소가 되어서 기쁘네요~ 그런데 개인적으로 궁금한게 있어 댓글을 남겨봅니다. 저같은 경우 MongoDB 와 MySQL 을 혼용하여 클라우드 의료솔루션을 개발하고 있는데요, 업무 특성상 join 을 많이해서인지 NoSQL 이 RDBMS 를 대체할 수 있을 정도가 아닌 것 같습니다. 그래서 궁금한게 RDBMS 에서의 index, hint, join 과 같은 것이 앞으로 NoSQL 에서 제공될 수 있을 것으로 예상되는지 니콜라스님의 생각을 알고 싶네요~~ ^^
I'm not familiar to NoSQLs. My Database experiences are almost bound with ordinary web servers, So I have used MySQL and MariaDB a lot. And now I'm concerning to use NoSQL for Online game backend to manage lots of complex flexible data packages like game session data, logs, user data etc... etc. could RDBMS experiences be help to understand NoSQL?
IoT하면서 MongoDB 도입해서 사용중인데 DBA가 없다면 적극 추천드립니다. MySQL에 데이터를 저장하게 되면 db pool connection 개수가 감당이 안됨... 그래서 관리정보는 rdb로 가고 데이터는 mongo에 저장중인데 성능자체가 나쁘지않게 돌아갑니다.
@@0mi451 이제보니 제 경험을 토대로 댓글을 적었네요 ㅋㅋㅋ rdb에 insert할때는 bulk로 넣을 순 있지만 mongodb만큼 많이 넣을 수도 없고 느리더라구요. 그래서 bulk개수와 connection개수 사이에서 조절을 했어여했는데 mongo는 그냥 때려박으면 알아서 바로바로 들어가덥니다... 커넥션과 상관없이요(순전히 제 경험이기 때문에 틀릴수도 있습니다)
Thank you Nico. I've taken few courses from you, and I want to look deep into open source projects(especially typescript/javascript or blockchain. But I don't know where to start. Could you give me some hints?
@@nomadcoders For example, if I'm interested in UA-cam Music Desktop (github.com/ytmdesktop/ytmdesktop), where do I have to start? Reading files in 'src' folder?
📌니꼬쌤과 공부하는 SQL 마스터클래스!
bit.ly/4dKJ3TW
NoSQL을 소개할때, 대부분 가장 큰 장점으로 SQL DB에서는 볼수없는 수준의 속도를 강조합니다.
하지만 그만큼 NoSQL DB들은 어마어마한것들을 포기하고 그 속도를 얻은것이죠.
꼭 만능툴인것처럼 광고하지만 실상은 저마다의 장단점이 있는겁니다.
근데 처음부터 NoSQL로 시작하면, 데이터에 대해 구조적으로 머릿속에 정리하지 못하는 경우도 있기때문에, 되도록이면 익숙해질때까지는 SQL DB로 시작하는게 좋다고 봅니다.
아 물론 거꾸로 너무 오랜기간 SQL DB에 익숙해져 있는 개발자분들은, 한참을 설명해도 NoSQL에 대해 이해하지 못하시는 분들도 계시긴 하죠.
개발을 공부하시는 분들은 언제든 머리를 유연하게 쓰면서 다양한것들을 받아들이고 공부할수 있도록 마음먹는게 좋은듯 합니다.
둘 다 경험해 보는 것이 베스트인 것 같아요 더 나아간다면 newSQL도 ㅎㅎ
동의합니다. 결국은 NoSQL을 쓴다고 하더라도 서비스라는 개념이 들어가면 설계가 기반이 되지 않으면 확장이 어렵습니다. 결국 유저, 개발자, 운영이란 큰 틀에서 DB를 선택하는것이 맞죠. 최근에 개발이 편하다(설계에 신경쓰지 않아도 된다)다는 생각만으로 NoSQL를 선택하는걸 보면 좀 안타깝기도 하구요.
꼭 속도가 좋다고 하기에도 다큐먼트 저장형식인경우 조회성능이 인덱스 적용된 SQL DB보다 떨어지는것도 있죠
@@zzizimholic nosql설계가 훨씬 어려운데 계층구조랑 스케일링대비해야되서 반대로 말하고있네ㅋㅋㅋㅋㅋ
@@neomind9229 ㅋㅋ nosql도 멀티인덱싱까지 지원한다 아그야
you're a great teacher by the way. you're on point, you deliver quickly, YOU ARE NOT BORING and actually engaging to watch. your best quality is that you explain fast, a quality I wished all my school teachers and college professors had instead of repeating the same sentence until i am fully asleep and i don't know when they moved to the next sentence anymore.
and I forgot to mention that you sure know what you're saying.
드뎌 sql no sql 비교 영상을!! 8개월간 기다렸다구우!
사실 저는 DB에서 특별한 목적이 없다면 mySQL이 좋다고 생각해요. 개념적으로라도 알고 있으면 파이썬으로 Data Science할 때, 책에서 무슨 말하는지 이해가 가서 좋더라고요.
5:54 SQL 비교하는 영상 원합니다.
저도요!
저도욕
언제나오나요ㅜ
NoSQL 좋다고 해서 잠시 써보기만 했지 차이가 뭔지 머릿속에서 애매했는데 쉽게 설명해주셔서 고맙습니다!
5:27
필요할때 답을 찾으면 늦습니다.
소프트웨어 혹은 개발자 관점에서는 맞는 답일지 모릅니다.
인프라 관점에서는 문제가 생겼을때 해결하려면 1부터 10까지 전부 고쳐야 합니다. 불가능은 아니지만 그것은 상당히 많은 비용을 필요로 합니다.
sql은 하드웨어 리소스 확장(수직, 수평)에 제한사항이 많지만 non-sql은 비교적 자유롭습니다.
aws에서 dynamodb를 만든 근본적인 이유는 amazon때문입니다.
사람들이 물건을 사지 않더라도 장바구니에 넣었다 빼기는 열심히 합니다.
여기서 sql을 사용한다면 sql의 구조로는 트랜잭션 감당 못합니다. amazon의 장바구니에는 non sql이 사용됩니다.
어떤것이 좋다 나쁘다 말 할 수 없습니다.
용도에 맞는 사용과, 기회비용을 생각해야 합니다.
시스템에 대한 정확한 설계가 중요하군요..
알기 쉽게 설명해주셔서 감사합니다ㅎㅎ 니코님 말씀대로 우선은 sql을 사용하다가 필요에 따라 nosql를 사용하면 되겠네요😁
db는 그냥 프로젝트상황에 맞게 사용하는게 가장 좋다고 생각해요
ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 머리아플때쯤 강아지로 달래주네 타이밍 쩐다!! 감사합니다
NoSQL 내용 궁금했는데 알찬 영상 감사합니다 :)
Azure Cosmos DB (nosql) 중에 SQL API 인스턴스로 만들면 SQL query-like 가능합니다. Cosmos DB 에 데이터 저장후에 SELECT * FROM c WHERE c.event_date="2020-08-20" 뭐이런식으로...ㅋㅋㅋ편해요 저희 회사 production 머신러닝 모델 API는 cosmosdb 사용합니당
간단하게 틀 이해하는데 도움이 되었습니다. NoSQL 부분 설명하시는데 저는 몽고DB 부터 아무렇게 저장 할 수 있다는 내용 ??? 밖에 머리 안남게 되어 끝에 말씀하신 것처럼 저도 SQL을 선호할 것 같습니다.
SQL, no SQL에 대해 정말 궁금했는데, 영상 감사합니다! 나중에 SQL끼리 비교하는 영상도 부탁드리겠습니다!
감사합니다! 혹시 Grpc랑 protobuffers도 가능햘까요
막연히 들어본 개념을 잘 설명해주셔서 감사합니다 🙏
Great teacher! I like your explanations! Thank you!
역시는 역시! 이해가 쏙 됬어요~♡
mysql로 공부한 저는 mysql이 제일 좋은 것 같아요. 명령어도 직관적으로 쓰기도 쉽구요
살짝 웃기면서도 쉽고 지루하지 않게 설명해 주셔서 감사해요 저는 사람간의 매칭율과 그에 따른 추천 서비스 기획하고 개발중여요 이때도 그냥 sql 로 출발하는게 낫겠죠 ?
좀 다르다는 것만 알았지 실제 어떤 서비스에 활용되는지는 구체적으로 잘 몰랐는데, 덕분에 이해에 도움이 됐습니다 고마워요 니코쌤! (근데 니코쌤네 비글이는 언제나 얌전하네요 ㅋㅋ)
SQL 비교 영상도 부탁해요!
Nosql도 그래프디비 이런거있다는거는 처음알았네여!! Sql 비교영상도 내주시면 매우 닷김치 감사하겠습니다~!!!🥬
자신이 하려는 서비스가 소규모 혹은 성공을 장담할 수 없다면 SQL(RDBMS)가 정답이라는것에 동의합니다. 다만 이분 설명에도 100% 동의 할수 없는점은 RDB중에도 NOSQL 기능을 제공하는 제품이 다수 있다는것인데 오픈소스 기반의 DB이외에 유상(MS-SQL, Oracle등)DB나 어플라이언스 제품으로 가면 엔터프라이즈 규모의 부하를 RDB에서 처리 가능합니다(퍼블릭 클라우드에서는 특정 엑세스 패턴에 특화된 서비스도 제공하구요). 물론 이를 뛰어넘은 설계 기반의 서비스를 제공하려 한다면 예외겠지만... 그리고 개발자가 쓰기 쉽다고 NoSQL을 선택하는 경우가 많은데 결국은 데이터의 활용과 서비스의 엑세스 패턴에 맞춰야 하는게 DB라 생각됩니다.
Thanks for watching!
저는 MySQL쓰다가 PostgreSQL로 바꾸었는데 다양한 자료형과 플러그인들을 지원해서 더 좋았습니다. 리스트형이나 벡터, 쿼리시 벡터 거리에 따른 정렬 등. 또한 다중선택가능 체크박스를 str, mask변환없이 그대로 저장.
perfect, clear and awesome! Thank you Nicho쌤.
감사합니다. 영상 잘 보고갑니다.
Thank you for great explanation about SQL and NoSQL. It was really really pretty prrrreeetty simple and understandable explanations :))bbbb,
I want to learn about SQL more deeply, so if you have time could you explan how SQL used many area and what we can do using SQL deeply...please~~~~:))))))
비전공자 개발 공부 입문자입니다. sql 공부하고 싶은데, 제가 앞으로 쓰게 될 sql이 뭘지 파악이 안 되서~ 비교 영상 부탁드려요~ (한국어 책은 잘 모르시겠죠?ㅋㅋㅋ 그럼 영어 책으로라도 추천도 부탁드려요. 기본서랑 두고 두고 볼 참고서?)
SQL 비교영상도 기대할게요!
Sql비교 영상도 만들어주세요^^ 머가 다른지 모르겠어요
Node js는 주로 sql과 연동하나요 아니면 nosql과 연동하나요??
이거 여름에 나오자마자 본 영상인데, no sql에 대해 찾다가 다시봤는데 니콜라스형만큼 쉽게 설명해주는 사람 없음. ㅇㅇ ㅇㄱㄹㅇ ㅂㅂㅂㄱ
조금 다른 이슈인데 graphQL에 대해서 알고 싶어요. graphQL이 뭔지, 어떻게, 왜, 언지 사용하는건지 알고 싶습니다.
2:09 Cassandra (key value) was applied in Instagram and later u mentioned Instagram changed PostgreSQL to graph database. Did you misspoke or did Instagram really abandon key value and rdb and change to gdb?
arm맥에 대해 어떻게 생각하시나요 인텔맥을 사야하나 고민이됩니다
유용한 정보 감사합니다!
구글 빅쿼리도 KEY VALUE DB인가요?
As a data scientist, I can confirm that choosing a database provider is dependant on the task. However for data science, most of the time SQL is my choice; but it also depends.
I've only tried SQL (SQLite, mySQL and PostgreSQL) and MongoDB - Relational databases just make more sense in my head. Would love to see a video from you comparing the different SQL options!
데이터 중복성, 이상현상을 극복하기위한 정규화. 정규화로 인한 과도한 조인의 비효율성을 극복하기 위한 인덱스 전략 등 SQL의 상세한 내용을 더 다뤄주시면 좋겠습니다. ㅎㅎ
ㅎㅇ
영상 잘 봤습니다. 덕분에 일부 궁금했던 부분도 해소가 되어서 기쁘네요~
그런데 개인적으로 궁금한게 있어 댓글을 남겨봅니다.
저같은 경우 MongoDB 와 MySQL 을 혼용하여 클라우드 의료솔루션을 개발하고 있는데요,
업무 특성상 join 을 많이해서인지 NoSQL 이 RDBMS 를 대체할 수 있을 정도가 아닌 것 같습니다.
그래서 궁금한게 RDBMS 에서의 index, hint, join 과 같은 것이
앞으로 NoSQL 에서 제공될 수 있을 것으로 예상되는지 니콜라스님의 생각을 알고 싶네요~~ ^^
mongoDB 3.2 부터 join 가능 인덱싱 가능
오옹.. 그렇다면 JSON DB도 key - value 관계이니 NoSQL이라 할 수 있을까용?!
아 아무래도 JSON은 조금 다른 성격의 친구이려나요
J4BEZ JSON은 DB가 아닙니다. 표현 방법이죠
@@읍-p6y
헉 감사합니당🙌🙌🙌 궁금했던 점이 해결되었어용
a nice explanation 👍✔
best explanation
nosql 배우려면 어디사이트로 가야 할까요?
도큐먼트, 키 밸류, 그래프 …. 메모….
잘봤습니다 ㅎㅎ
잘 봤습니다.
한국에서 스프링을 많이 쓰는 시점에서 마이바티스랑 jpa비교도 해주실수 있을까요!
인스타그램처럼 상용화하여 사용하는 도중에 sql 자체를 변경하게 될 경우 그 안에 데이터는 어떻게 옮기냐요? Sql -> sql이 아니라 sql -> NoSql이라서 궁금해졌어요!
Thank you for great video 😊
웹사이트 빌더(?) 는 어떤언어로 만들어야할까요?
궁금하네요. SQLite를 좋아하는 이유는 멀까요.
1:32 유연하게 어쩔시고..?? ㅋㅋㅋㅋ
감사합니다
I'm not familiar to NoSQLs. My Database experiences are almost bound with ordinary web servers, So I have used MySQL and MariaDB a lot. And now I'm concerning to use NoSQL for Online game backend to manage lots of complex flexible data packages like game session data, logs, user data etc... etc. could RDBMS experiences be help to understand NoSQL?
Can I use Cloud SQL (SQL) with Firebase? Or if I use Firebase, am I bound to Firestore (NoSQL)?
따라베이스! 아 어감좋다 ㅋㅋㅋㅋㅋㅋ 따라베이스!
한국은 언제 쯤 오라클에서 벗어날 수 있을까요
말이 엄청 빠른데 설명이 다 이해가 되는게 신기하네...
엘라스틱서치로 키벨류방식의 로직처리를보앗다 이는 괜찮은방식인지 아직도 잘모르겟다
SQL설명 하실때 오라클도 끼워주세요ㅠㅠ(SQL공부를 오라클로 시작함..)
오라클 비싸지않나욤..
프론트 영역에서 DB 영역까지 확장하셨군요! 그러면 혹시 그 유명한 자바에 대해 다뤄주실 생각 있으신가요?
저는 Firebase(NoSQL)과 SQLite(SQL) 둘 다 써봤지만 SQLite가 더 좋았다.
그런가요? 알았다.
프로젝트 성격에 따라 다르니 취사선택을 ~
저도 sqlite사용하는 편! 가벼운 데이터베이스일경우에여
We need database lesson!
IoT하면서 MongoDB 도입해서 사용중인데 DBA가 없다면 적극 추천드립니다. MySQL에 데이터를 저장하게 되면 db pool connection 개수가 감당이 안됨... 그래서 관리정보는 rdb로 가고 데이터는 mongo에 저장중인데 성능자체가 나쁘지않게 돌아갑니다.
몰라서 여쭤보는건데요,
어짜피 연결하는 IoT대상체(연결 Source)이 많으면 Mongo DB도 DB Connection Pool이 RDB만큼 많아 지는것은 마찬가지 아닌가요?
궁금해서요.
@@0mi451 이제보니 제 경험을 토대로 댓글을 적었네요 ㅋㅋㅋ rdb에 insert할때는 bulk로 넣을 순 있지만 mongodb만큼 많이 넣을 수도 없고 느리더라구요. 그래서 bulk개수와 connection개수 사이에서 조절을 했어여했는데 mongo는 그냥 때려박으면 알아서 바로바로 들어가덥니다... 커넥션과 상관없이요(순전히 제 경험이기 때문에 틀릴수도 있습니다)
@@알렉스-l6r 넵, 답변 감사해요 :)
You should start a discord channel !!
nomadcoders.co/slack
관련비교 영상도 보고 싶다 ^^
48초는 못참지 ㅋㅋ
I'm still waiting for your WSL2 review. I'm a slave of Microsoft.
There is a video already about it, and a course :) nomadcoders.co/courses
sql developer밖에 못쓰는 뉴비지만 그래도 이놈보단 mysql이 나아보임..뭐이렇게 딱딱한 놈이 다 있어 ㅠ
Good
Thank you Nico. I've taken few courses from you, and I want to look deep into open source projects(especially typescript/javascript or blockchain. But I don't know where to start. Could you give me some hints?
What projects would you be interested in?
@@nomadcoders For example, if I'm interested in UA-cam Music Desktop (github.com/ytmdesktop/ytmdesktop), where do I have to start? Reading files in 'src' folder?
마침 웹사이트 DB 구성에 대한 고민을 하고 있었는데 좋은 영상 감사합니다!
ps. 니코 왼쪽 머리카락(니코 기준) 달랑거리는거 영상 내내 엄청 신경쓰여요ㅋㅋㅋㅋ
썸네일 웃어도 되죠? ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
ㅋㅋㅋㅋ
구글 파이어베이스의 파이어스토어도 nosql인데 이건 무슨 DB인가요?
Document?
배리나 이스~
어어?
I married Prisma now I don’t even worry about databases or queries too much