<Insert 하기>
db.dept.insert({deptno:10,dname:'영업',loc:'1층'})
o=db.emp_dept_link1.findOne({deptno:10})
다음 두 문장을 입력하면 _id가 자동생성된다.
그 아이디를 가지고 아래 insert문처럼 'link' 해주면 된다
db.emp.insert(
{deptno:10,
items:[
{eno:1,ename:"aaa",sal:1000,position:"부장"},
{eno:2,ename:"bbb",sal:800,position:"과장"},
{eno:6,ename:"fff",sal:400,position:"대리"}],
deptno_id:ObjectId("6046d118b06842ef69baac4d")
});
<출력하기>
결과는 db.emp.findOne({deptno_id:o._id}) 로 출력할 수 있다.
여기서 id는 이 데이터의 Primary key라고 보면 된다
<그 외의 방법>
다음은 id값을 직접 연결하지 않고도
위와 같은 출력을 하는 방법이다.
db.dept.insert({deptno:20,dname:'기획',loc:'2층'})
o=db.dept.findOne({deptno:20})
ObjectId("6046d7de5ddf8bc5efdaaa94")
db.emp.insert(
{deptno:20,
items:[
{eno:3,ename:"ccc",sal:800,position:"과장"},
{eno:5,ename:"eee",sal:500,position:"대리"}],
deptno_id:o._id
});
db.emp.findOne({deptno_id:o._id})
※주의할 점
findOne을 반드시 camelcase(대문자-소문자 구분)로 써야 함수가 적용된다
Link장단점
도큐먼트 크기에 제한 받지 않는다
매번 Link해야 하기 때문에 관리비용이 많이 든다
->별도로 처리되는 데이터 구조에 적합
'IT 프로그래밍 > 빅데이터' 카테고리의 다른 글
[Bigdata] MapReduce구현 완벽정리 (0) | 2021.03.10 |
---|---|
[Bigdata 저장] MongoDB : Sharding 샤딩 환경설정 (0) | 2021.03.09 |
[Bigdata 저장] MongoDB NoSQL 한번에정리/ Rich Document구조 : 임베디드,extent방식 (0) | 2021.03.09 |
[Bigdata] MongoDB 설치 및 사용 (CRUD로 정리끝!) (0) | 2021.03.05 |
[Bigdata] 쉽고 간단한 MongoDB 설치방법 (0) | 2021.03.05 |