inflearn logo
강의

Khóa học

Chia sẻ kiến thức

SQL hiệu năng cao (High-Performance SQL) dành cho nhà phát triển JPA (ORM)

mysql에서 text vs json

122

ballgaveship1247

1 câu hỏi đã được viết

0

어떤 상황에서 text를 쓰고 어떤 상황에서 json을 쓰는게 좋을까요?

 

현재는 json을 이용해서 쿼리를 사용할 사용성이 없지만 저장, 조회에 큰 비용이 발생하지 않는다면 추후를 위해서 json 타입으로 선언하는게 좋을까요?

sql dbms/rdbms performance-tuning sql-query

Câu trả lời 1

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다.
웃자님께서 MySQL에서 텍스트와 JSON 타입 중 어떤 것을 사용할지 고민 중이신 것 같네요. 두 가지 데이터 타입의 장단점을 고려해보겠습니다.

  1. Text 타입:

    • 단순히 문자열 데이터를 저장하고자 할 때 적합합니다.
    • 텍스트 데이터에 대해 구조화되지 않은 정보를 저장할 때 주로 사용됩니다.
    • 쿼리 실행 시 단순 문자열 비교만 가능하므로, 보다 복잡한 구조의 데이터 검색에는 부적절할 수 있습니다.
  2. JSON 타입:

    • JSON은 구조화된 데이터 형식을 유지하면서 데이터를 저장하고 싶을 때 사용합니다.
    • 특정 키를 통한 검색이나 JSON 함수를 활용한 복잡한 쿼리가 가능합니다.
    • JSON 객체 내에서 데이터 구조를 쉽게 가공할 수 있습니다.
    • 다만, JSON은 일반 텍스트보다 저장 공간을 더 많이 차지할 수 있으며, 성능도 영향 받을 수 있습니다.

사용성 및 성능 면에서는 사용자의 요구사항에 따라 선택해야 합니다. 만약 단순한 문자열 데이터 저장이 주된 목적이라면 TEXT 타입이 더 적합할 수 있고, 구조화된 데이터를 저장하고 이후 복잡한 검색이나 조작이 필요할 경우에는 JSON 타입을 고려해볼 수 있습니다.

추후 JSON 데이터를 활용할 가능성이 있다면 초기 단계에서 JSON 타입으로 선언하는 것도 좋은 선택이 될 수 있습니다. 실제 데이터를 다루는 상황과 성능 요구사항을 충분히 고려하여 결정하시는 것이 좋습니다.

추가적인 도움이 필요하신 경우, 다음의 자료가 도움이 될 수 있습니다:
- Spring Data JDBC 공식 문서
- Spring 데이터 관련 Stack Overflow

도움이 되셨기를 바랍니다!

21번 마지막 설명에 대해 질문이 있습니다.

0

9

2

노랭이67번

0

15

1

[DB설계] 탈퇴 유저의 구독 정보 유지 및 이메일 마스킹 관련 질문입니다.

0

5

0

자연키 vs 대리키 실무질문

0

7

1

38번 문제 보기 3,4번

1

24

3

14번 문제

1

30

2

결재했는데도 강좌가 안보입니다.

0

32

1

페이징 처리에서 offset/limit에 대한 질문

1

28

1

모바일 앱 쿠폰

0

31

1

SQL 기본 문법

0

33

2

1:N 관계에서 중간테이블 (연관엔티티)

0

37

2

dvdrental 서버에 접속할 수 없어요

0

30

1

속성 핵집문제 2번

1

36

2

chapter 2 단원정리문제 49번

1

31

2

공통코드 관련한 질문 드립니다.

0

45

1

JSON 타입 질문

0

62

1

강의 질문 - JSON 관련

0

48

1

강의 중 추가 질문 사항

0

52

1

강의 중 궁금사항 질문

0

54

0

강의 중 추가 질문

0

48

1

Transactions(5) - Skip Locked 무한 인코딩 현상

0

64

1

77. Transactions(5) - Skip Locked-영상 재생 문제

0

69

0

exist subquery limit1

0

75

1

소스코드 DB 세팅 가이드가 필요합니다.

0

239

2