[typescript] 타입스크립트에서 MongoDB 데이터를 CSV 파일로 내보내는 방법

MongoDB는 대규모 데이터를 저장하고 관리하는 데 매우 인기 있는 NoSQL 데이터베이스입니다. 타입스크립트(TypeScript)는 MongoDB와 함께 사용하기에 훌륭한 언어이며, 때로는 데이터를 CSV 파일로 내보내야 할 수도 있습니다. 이 포스트에서는 타입스크립트를 사용하여 MongoDB 데이터를 CSV 파일로 내보내는 간단한 방법에 대해 알아보겠습니다.

필수 패키지 설치

첫째로, MongoDB와 상호 작용하고 CSV 파일을 생성하는 데 필요한 mongoosecsv-writer 패키지를 설치해야 합니다. 아래 명령을 사용하여 패키지를 설치합니다.

npm install mongoose csv-writer

MongoDB 연결

먼저, mongoose를 사용하여 MongoDB에 연결해야 합니다. 다음은 MongoDB에 연결하는 간단한 예제입니다.

import mongoose from 'mongoose';

mongoose.connect('mongodb://localhost:27017/mydatabase', {useNewUrlParser: true, useUnifiedTopology: true});

// 연결 성공 시 이벤트 처리
mongoose.connection.on('connected', () => {
    console.log('MongoDB에 연결되었습니다');
});

// 연결 실패 시 이벤트 처리
mongoose.connection.on('error', (err) => {
    console.error('MongoDB 연결 오류:', err);
});

데이터 조회 및 CSV 파일 생성

이제 MongoDB에서 데이터를 조회하고 CSV 파일로 내보내는 방법을 살펴보겠습니다.

import { createObjectCsvWriter } from 'csv-writer';
import mongoose from 'mongoose';

// MongoDB 모델 정의
const User = mongoose.model('User', {
    name: String,
    email: String,
    age: Number
});

// CSV Writer 생성
const csvWriter = createObjectCsvWriter({
    path: 'users.csv',
    header: [
        {id: 'name', title: '이름'},
        {id: 'email', title: '이메일'},
        {id: 'age', title: '나이'}
    ]
});

// MongoDB에서 데이터 조회
User.find({}, (err, users) => {
    if (err) {
        console.error('데이터 조회 오류:', err);
        return;
    }
    
    // CSV 파일로 데이터 내보내기
    csvWriter.writeRecords(users)
        .then(() => console.log('users.csv 파일이 생성되었습니다'));
});

위의 코드는 MongoDB 모델을 정의하고, 데이터를 조회한 후 해당 데이터를 CSV 파일로 내보내는 과정을 보여줍니다. csv-writer 패키지를 활용하여 CSV 파일을 생성하고, MongoDB에서 조회한 데이터를 CSV 파일로 기록합니다.

결론

타입스크립트와 MongoDB를 사용하여 데이터를 CSV 파일로 내보내는 방법을 살펴보았습니다. 이를 통해 데이터를 보다 효과적으로 공유하고 분석할 수 있는 장점을 얻을 수 있습니다. 위의 예제는 타입스크립트와 MongoDB를 함께 사용할 때 데이터를 CSV 파일로 내보내는 간단한 방법을 보여줍니다.

이 포스트가 도움이 되기를 바랍니다!