초보자 튜토리얼 (Beginner Tutorial)

DBX를 처음 시작하는 분들을 위한 단계별 가이드입니다.

목차

  1. 소개
  2. 1단계: 프로젝트 생성 및 설정
  3. 2단계: 데이터베이스 열기
  4. 3단계: 기본 CRUD 작업
  5. 4단계: 트랜잭션 활용
  6. 5단계: SQL 쿼리 실행
  7. 다음 단계

소개

이 튜토리얼에서는 첫 번째 DBX 데이터베이스를 생성하고, 기본적인 작업을 수행하며, 간단한 SQL 쿼리를 실행하는 방법을 배웁니다.

학습 내용:

  • DBX 설치 및 프로젝트 설정
  • 데이터베이스 생성
  • 데이터 삽입 및 조회
  • 트랜잭션 사용법
  • SQL 쿼리 실행

1단계: 프로젝트 생성 및 설정

새 Rust 프로젝트를 생성합니다:

cargo new my_dbx_app
cd my_dbx_app

Cargo.toml에 의존성을 추가합니다:

[dependencies]
dbx-core = "0.0.6-beta"
arrow = "50.0"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"

2단계: 데이터베이스 열기

인메모리 또는 파일 기반 데이터베이스를 열 수 있습니다.

use dbx_core::Database;

fn main() -> dbx_core::DbxResult<()> {
    // 인메모리 데이터베이스 생성 (테스트용)
    let db = Database::open_in_memory()?;
    
    // 또는 파일 기반 영구 저장소
    // let db = Database::open("./my_database")?;
    
    println!("데이터베이스가 성공적으로 생성되었습니다.");
    Ok(())
}

3단계: 기본 CRUD 작업

데이터를 삽입하고 조회하는 가장 기본적인 방법입니다.

// 데이터 삽입
db.insert("users", b"user:1", b"Alice")?;

// 데이터 조회
if let Some(data) = db.get("users", b"user:1")? {
    let name = String::from_utf8(data).unwrap();
    println!("찾은 사용자: {}", name);
}

4단계: 트랜잭션 활용

여러 작업을 원자적으로(전부 성공하거나 전부 실패하게) 처리합니다.

let tx = db.begin_transaction()?;

tx.insert("users", b"user:2", b"Bob")?;
tx.insert("users", b"user:3", b"Charlie")?;

// 중요: 반드시 commit()을 호출해야 변경사항이 저장됩니다.
tx.commit()?;

5단계: SQL 쿼리 실행

Apache Arrow 기반의 강력한 SQL 엔진을 사용하여 데이터를 조회합니다.

let results = db.execute_sql(
    "SELECT name, age FROM users WHERE age > 20"
)?;

for batch in results {
    println!("{:?}", batch);
}

다음 단계

축하합니다! DBX의 기본을 배우셨습니다. 다음 가이드를 통해 더 깊이 있게 학습해 보세요.


Copyright © 2026 ByteLogicCore. MIT OR Apache-2.0 License.

This site uses Just the Docs, a documentation theme for Jekyll.