Share via


Apache Cassandra용 Azure Cosmos DB에서 Spring Data를 사용하는 방법

이 문서에서는 Spring Data를 사용하여 Apache Cassandra용 Azure Cosmos DB를 사용하여 정보를 저장하고 검색하는 샘플 애플리케이션을 만드는 방법을 보여 줍니다.

필수 조건

  • Git 클라이언트

  • cURL 또는 유사한 HTTP 유틸리티를 사용하여 기능을 테스트합니다.

Azure Cosmos DB 계정 만들기

다음 절차에서는 Azure Portal에서 Azure Cosmos DB 계정을 만들고 구성합니다.

Azure Portal을 사용하여 Azure Cosmos DB 계정 만들기

  1. Azure Portal로 https://portal.azure.com/ 이동하여 로그인합니다.

  2. 리소스 만들기를 선택한 다음, 시작을 선택한 다음, Azure Cosmos DB를 선택합니다.

  3. API 선택 옵션 화면에서 Cassandra를 선택합니다.

    Azure Portal, 리소스 만들기, API 옵션 선택, Cassandra 선택

  4. 다음 정보를 지정합니다.

    • 구독: 사용할 Azure 구독을 지정합니다.
    • 리소스 그룹: 새 리소스 그룹을 만들거나 기존 리소스 그룹을 선택할지 여부를 지정합니다.
    • 계정 이름: Azure Cosmos DB 계정의 고유한 이름을 선택합니다. 이 이름은 wingtiptoyscassandra.documents.azure.com 같은 정규화된 do기본 이름을 만드는 데 사용됩니다.
    • API: 이 자습서에 Cassandra를 지정합니다.
    • 위치: 데이터베이스에 가장 가까운 지역을 지정합니다.

    Azure Cosmos DB 계정 설정을 지정합니다.

  5. 위의 모든 정보를 입력했으면 검토 + 만들기를 클릭합니다.

  6. 검토 페이지에서 모든 항목이 올바르게 표시되면 만들기를 클릭합니다.

데이터베이스를 배포하는 데 몇 분 정도 걸립니다.

Azure Cosmos DB 계정에 키스페이스 추가

  1. Azure Portal로 https://portal.azure.com/ 이동하여 로그인합니다.

  2. 모든 리소스를 선택한 다음, 만든 Azure Cosmos DB 계정을 선택합니다.

  3. 데이터 탐색기를 선택하고 아래쪽 화살표를 선택한 다음 새 키스페이스를 선택합니다. 키스페이스 ID에 대한 고유 식별자를 입력한 다음 확인을 선택합니다.

    새 키 영역을 선택합니다.

    Azure Cosmos DB 키스페이스를 만듭니다.

Azure Cosmos DB 계정에 대한 연결 설정 검색

  1. Azure Portal로 https://portal.azure.com/ 이동하여 로그인합니다.

  2. 모든 리소스를 선택한 다음, 만든 Azure Cosmos DB 계정을 선택합니다.

  3. 커넥트온 문자열을 선택하고 연락처 지점, 포트, 사용자 이름기본 암호 필드의 값을 복사합니다. 나중에 해당 값을 사용하여 애플리케이션을 구성합니다.

    Azure Cosmos DB 연결 설정을 검색합니다.

샘플 애플리케이션 구성

다음 절차에서는 테스트 애플리케이션을 구성합니다.

  1. 명령 셸을 열고 다음 예와 같이 git 명령을 사용하여 샘플 프로젝트를 복제합니다.

    git clone https://github.com/Azure-Samples/spring-data-cassandra-on-azure.git
    
  2. 샘플 프로젝트의 리소스 디렉터리에서 application.properties 파일을 찾거나 파일이 아직 없는 경우 만듭니다.

  3. 텍스트 편집기에서 application.properties 파일을 열어 파일에 다음 줄을 추가하거나 구성하고 샘플 값을 앞서 다룬 적절한 값으로 바꿉니다.

    spring.data.cassandra.contact-points=wingtiptoyscassandra.cassandra.cosmos.azure.com
    spring.data.cassandra.port=10350
    spring.data.cassandra.username=wingtiptoyscassandra
    spring.data.cassandra.password=********
    

    여기서,

    매개 변수 설명
    spring.data.cassandra.contact-points 이 문서에서 앞서 다룬 접점을 지정합니다.
    spring.data.cassandra.port 이 문서에서 앞서 다룬 포트를 지정합니다.
    spring.data.cassandra.username 이 문서에서 앞서 다룬 사용자 이름을 지정합니다.
    spring.data.cassandra.password 이 문서에서 앞서 다룬 기본 암호를 지정합니다.
  4. application.properties 파일을 저장하고 닫습니다.

샘플 애플리케이션 패키지 및 테스트하기

pom.xml 파일이 포함된 디렉터리로 이동하여 애플리케이션을 빌드하고 테스트합니다.

  1. 다음 예와 같이 Maven을 사용하여 샘플 애플리케이션을 컴파일합니다.

    mvn clean package
    
  2. 다음 예와 같이 샘플 애플리케이션을 시작합니다.

    java -jar target/spring-data-cassandra-on-azure-0.1.0-SNAPSHOT.jar
    
  3. 다음 예와 같이 명령 프롬프트에서 curl을 사용하여 새 레코드를 만듭니다.

    curl -s -d "{\"name\":\"dog\",\"species\":\"canine\"}" -H "Content-Type: application/json" -X POST http://localhost:8080/pets
    
    curl -s -d "{\"name\":\"cat\",\"species\":\"feline\"}" -H "Content-Type: application/json" -X POST http://localhost:8080/pets
    

    애플리케이션은 다음 예제와 같은 값을 반환해야 합니다.

    Added Pet{id=60fa8cb0-0423-11e9-9a70-39311962166b, name='dog', species='canine'}.
    
    Added Pet{id=72c1c9e0-0423-11e9-9a70-39311962166b, name='cat', species='feline'}.
    
  4. 다음 예와 같이 명령 프롬프트에서 curl을 사용하여 모든 기존 레코드 검색합니다.

    curl -s http://localhost:8080/pets
    

    애플리케이션은 다음 예제와 같은 값을 반환해야 합니다.

    [{"id":"60fa8cb0-0423-11e9-9a70-39311962166b","name":"dog","species":"canine"},{"id":"72c1c9e0-0423-11e9-9a70-39311962166b","name":"cat","species":"feline"}]
    

요약

이 자습서에서는 Spring Data를 사용하여 Apache Cassandra용 Azure Cosmos DB를 사용하여 정보를 저장하고 검색하는 샘플 Java 애플리케이션을 만들었습니다.

리소스 정리

더 이상 필요하지 않은 경우 예기치 않은 요금을 방지하기 위해 Azure Portal을 사용하여 이 문서에서 만든 리소스를 삭제합니다.

다음 단계

Spring과 Azure에 대한 자세한 사항은 Azure의 Spring 설명서 센터를 참조합니다.

참고 항목

Java와 함께 Azure를 사용하는 방법에 관한 자세한 정보는 Java 개발자를 위한 AzureAzure DevOps 및 Java 사용하기를 참조하세요.