데이터과학 삼학년

[용어] 데이터 직렬화(serialization) 본문

Computer Science

[용어] 데이터 직렬화(serialization)

Dan-k 2023. 8. 1. 13:00
반응형

데이터 직렬화는 데이터를 바이트 스트림으로 변환하여 저장하거나 전송하는 과정을 말합니다. 이를 통해 데이터를 구조화된 형식으로 표현하고, 다른 플랫폼 간에 데이터를 교환하거나 저장할 수 있습니다. 다양한 데이터 직렬화 종류가 있으며, 주요한 몇 가지를 아래에 설명합니다:

  1. JSON (JavaScript Object Notation): JSON은 텍스트 기반의 경량 데이터 교환 형식으로, JavaScript에서 객체를 표현하는 데 사용됩니다. 하지만 다른 프로그래밍 언어에서도 널리 사용됩니다. JSON은 읽기 쉽고 구조화된 데이터를 표현하기 위해 중괄호와 쉼표를 사용합니다.
  2. XML (Extensible Markup Language): XML은 텍스트 기반의 데이터 교환 형식으로, 마크업 언어를 사용하여 데이터를 표현합니다. 계층적 구조로 데이터를 정의하며, 태그와 속성을 이용하여 데이터를 기술합니다.
  3. Protocol Buffers (protobuf): Protocol Buffers는 구글에서 개발한 이진 기반의 데이터 직렬화 형식입니다. 구조화된 데이터를 정의하는 프로토콜 파일을 작성하고, 이를 통해 데이터를 직렬화하고 역직렬화할 수 있습니다. protobuf는 속도와 크기 측면에서 JSON이나 XML보다 빠르고 작은 크기의 데이터를 만들 수 있습니다.
  4. MessagePack: MessagePack은 JSON과 유사한 이진 기반의 경량 데이터 직렬화 형식입니다. JSON과 호환되며, 속도와 크기 측면에서 더 우수한 성능을 제공합니다.
  5. BSON (Binary JSON): BSON은 JSON을 이진 형식으로 변환하는 데이터 직렬화 형식입니다. 주로 MongoDB와 같은 NoSQL 데이터베이스에서 사용되며, JSON보다 빠르고 용량 효율이 높습니다.
  6. Pickle: Pickle은 파이썬에서 사용되는 데이터 직렬화 형식입니다. 파이썬 객체를 직렬화하고 역직렬화하는 데 사용됩니다. Pickle은 파이썬에서 내부적으로 사용되며, 외부에서 사용할 때 주의가 필요합니다.

이외에도 데이터 직렬화를 위해 다른 형식들도 있으며, 데이터 규모, 성능, 호환성 등에 따라 적합한 직렬화 형식을 선택해야 합니다. 데이터 직렬화는 다른 플랫폼과 시스템 간에 데이터를 효율적으로 교환하는 중요한 기술이며, 애플리케이션 개발 및 데이터 처리에 필수적입니다.

728x90
반응형
LIST

'Computer Science' 카테고리의 다른 글

deprecated VS obsolete  (0) 2024.02.19
[용어] 오버헤드  (0) 2023.07.27
[용어] SPOF (Single Point Of Failure)  (0) 2023.07.26
git flow 전략  (1) 2023.06.07
RESTful API 파이썬 구축 예시 (feat. Flask)  (0) 2023.03.18
Comments