 
시작하기 전에
- 실습에서는 정해진 기간 동안 Google Cloud 프로젝트와 리소스를 만듭니다.
- 실습에는 시간 제한이 있으며 일시중지 기능이 없습니다. 실습을 종료하면 처음부터 다시 시작해야 합니다.
- 화면 왼쪽 상단에서 실습 시작을 클릭하여 시작합니다.
Set up the Cloud Storage bucket
/ 40
Clone the Dataflow Job
/ 30
Set up a streaming architecture on GCP
/ 30
이 실습에서는 SingleStoreDB를 배포하고 Pub/Sub, Dataflow, Cloud Storage와 같은 Google Cloud의 클라우드 네이티브 제품과 결합해 보는 실무 경험을 제공합니다. 이러한 제품 기능을 시연하기 위해 NYC의 공개 택시 데이터 세트로 작업합니다.
실습에서는 먼저 로컬 브라우저를 통해 SingleStoreDB를 배포하고 적절한 스키마를 만듭니다. 그런 다음 Dataflow의 도움을 받아 Pub/Sub를 사용해 데이터를 Cloud Storage에 실시간으로 푸시합니다. 객체 스토리지에 생성 및 저장된 데이터는 SingleStoreDB의 기본 파이프라인을 사용하여 소비됩니다. SingleStoreDB가 데이터를 수집하면 쿼리를 실행하고 SingleStore와 상호작용합니다.
이 실습에서는 다음 작업을 수행하는 방법을 알아봅니다.
기본 요건
SingleStore에서 보낸 인증 이메일에 응답할 수 있는 개인 이메일 계정에 액세스할 수 있어야 합니다. 이 실습에서는 인증 코드에 응답해야 하며, 개인 이메일로만 응답할 수 있습니다.
Google Cloud와 SingleStore에 익숙하면 도움이 되지만 필수는 아닙니다.
다음 안내를 확인하세요. 실습에는 시간 제한이 있으며 일시중지할 수 없습니다. 실습 시작을 클릭하면 타이머가 시작됩니다. 이 타이머는 Google Cloud 리소스를 사용할 수 있는 시간이 얼마나 남았는지를 표시합니다.
실무형 실습을 통해 시뮬레이션이나 데모 환경이 아닌 실제 클라우드 환경에서 실습 활동을 진행할 수 있습니다. 실습 시간 동안 Google Cloud에 로그인하고 액세스하는 데 사용할 수 있는 새로운 임시 사용자 인증 정보가 제공됩니다.
이 실습을 완료하려면 다음을 준비해야 합니다.
실습 시작 버튼을 클릭합니다. 실습 비용을 결제해야 하는 경우 결제 수단을 선택할 수 있는 대화상자가 열립니다. 왼쪽에는 다음과 같은 항목이 포함된 실습 세부정보 창이 있습니다.
Google Cloud 콘솔 열기를 클릭합니다(Chrome 브라우저를 실행 중인 경우 마우스 오른쪽 버튼으로 클릭하고 시크릿 창에서 링크 열기를 선택합니다).
실습에서 리소스가 가동되면 다른 탭이 열리고 로그인 페이지가 표시됩니다.
팁: 두 개의 탭을 각각 별도의 창으로 나란히 정렬하세요.
필요한 경우 아래의 사용자 이름을 복사하여 로그인 대화상자에 붙여넣습니다.
실습 세부정보 창에서도 사용자 이름을 확인할 수 있습니다.
다음을 클릭합니다.
아래의 비밀번호를 복사하여 시작하기 대화상자에 붙여넣습니다.
실습 세부정보 창에서도 비밀번호를 확인할 수 있습니다.
다음을 클릭합니다.
이후에 표시되는 페이지를 클릭하여 넘깁니다.
잠시 후 Google Cloud 콘솔이 이 탭에서 열립니다.
이 시점에서 시크릿 창의 Google Cloud 콘솔에 로그인되어 있어야 합니다.
왼쪽 상단에서 + Create New(새로 만들기)를 클릭하고 Deployment(배포)를 선택합니다.
Create Workspace(작업공간 만들기) 페이지에서 다음 설정을 구성합니다.
구성은 다음과 같이 표시됩니다.
다음을 클릭합니다.
Workspace Details(작업공간 세부정보) 페이지에서 기본 설정을 그대로 두고 Create Workspace(작업공간 만들기)를 클릭합니다.
작업공간이 가동될 때까지 몇 분 정도 기다립니다. 이때 샘플 데이터베이스가 생성되지만 이 실습에서는 사용하지 않습니다.
SingleStore 작업공간에 연결하기 전에 Google Cloud 콘솔로 다시 이동합니다.
콘솔의 오른쪽 상단에 있는 Cloud Shell 활성화() 아이콘을 클릭하여 새 Cloud Shell 창을 엽니다. 메시지가 표시되면 계속 및 승인을 클릭합니다.
Cloud Shell에서 다음 명령어를 실행하여 GitHub 저장소를 클론하고 워크숍 코드를 다운로드합니다.
Connect to Workspace(작업공간에 연결) 페이지에서 먼저 생성된 비밀번호를 복사합니다. 비밀번호 옆에 복사 아이콘이 있습니다. 실습의 후반부에서 필요하므로 로컬 파일에 저장하는 것이 좋습니다.
MySQL 명령어 오른쪽에 있는 Copy(복사) 아이콘을 클릭합니다. 이렇게 하면 명령어가 클립보드에 복사됩니다.
MySQL 명령어는 다음과 유사합니다. mysql -u admin -h svc-b675ae2f-b129-4baf-86ca-0a03c2c31d19-dml.gcp-virginia-1.svc.singlestore.com -P 3306 --default-auth=mysql_native_password --password
Google Cloud 콘솔과 Cloud Shell 인스턴스로 돌아갑니다.
MySQL 명령어를 터미널에 붙여넣습니다.
메시지가 표시되면 이전에 복사한 비밀번호를 입력합니다. 이제 mysql> 프롬프트에 위치하게 됩니다.
이 섹션에서는 테이블 스키마를 빌드합니다.
다음 DDL을 사용하여 nyc_taxi라는 새 데이터베이스를 만듭니다.
다음과 비슷한 결과가 표시됩니다.
출력:
이제 스키마를 만들었고 데이터베이스 테이블이 나열되었습니다.
이 쿼리의 출력은 'Empty set' 또는 '0'입니다. 스키마만 만들었고 테이블은 비어 있기 때문입니다.
여기서 잠시 멈춥시다. 지금까지 SingleStore 데이터베이스를 만들고 연결했습니다. 스키마는 설정되었지만 아직 데이터가 없습니다.
여유 시간이 있다면 SingleStore를 둘러보세요.
이 실습에서는 NYC 택시 데이터를 사용합니다. 이 데이터는 BigQuery의 공개 데이터 세트 또는 NYC Open Data 웹사이트에서 찾을 수 있습니다.
이 데이터는 이미 Cloud Storage 버킷에 저장되어 있으므로 Google Cloud에 다운로드하거나 가져올 필요가 없습니다. 원하는 경우 데이터를 살펴볼 수 있습니다.
NYC Open Data 웹사이트는 택시, 교육, 경찰 데이터 등 뉴욕시와 관련된 무료 데이터 세트를 제공합니다.
이 실습에서는 NYC 내의 대략적인 영역과 주변 지역에 관한 정보를 제공하는 NYC Department of City Planning(NYC 도시계획부)의 Neighborhood Tabulation Areas(NTA)를 사용합니다. 이 데이터를 NYC 택시 데이터와 함께 사용하여 승객이 어디에서 승차하고 하차했는지 확인할 수 있습니다.
웹사이트에서 주변 지역별로 데이터를 시각화할 수 있습니다.
Google Cloud에서 리소스를 설정하는 두 가지 주요 방법은 GUI와 CLI입니다. 이 실습에서는 CLI를 사용하여 버킷을 만들고 NYC 택시 웹사이트에서 최신 주변 지역 데이터를 가져옵니다.
메시지가 표시되면 승인을 클릭합니다.
프로젝트에 이미 다른 버킷이 생성되어 있음을 확인합니다. 이 버킷은 Dataflow의 스테이징/임시 스토리지 위치이므로 신경 쓰지 않아도 됩니다.
내 진행 상황 확인하기를 클릭하여 목표를 확인합니다.
Pub/Sub 및 Dataflow 리소스는 프로젝트에 자동 입력되어 있습니다. 이를 보려면 Cloud 콘솔 상단의 검색창을 사용하여 각각 Pub/Sub와 Dataflow를 찾습니다.
작업을 클릭하고 클론을 클릭하여 이 작업을 정확히 실행합니다. 이름을 바꾸고 작업 정보를 확인합니다(클론했으므로 자동 입력되어 있음). 이렇게 하면 실행 중인 작업이 무엇인지 알 수 있습니다. 아래로 스크롤하여 작업 실행을 클릭합니다.
Dataflow 작업으로 돌아가 작업 상태가 '실행 중'인지 확인합니다.
이제 라이브 데이터 스트리밍을 시뮬레이션했습니다. 예를 들어 GCS에 더 많은 데이터를 업로드하고 Pub/Sub에서 가져오면 Dataflow가 데이터를 실시간으로 이동합니다.
내 진행 상황 확인하기를 클릭하여 목표를 확인합니다.
Google Cloud의 일반적인 스트리밍 아키텍처는 Pub/Sub > Dataflow > GCS로 구성됩니다. 이번 작업에서는 이를 설정한 다음 SingleStore를 GCS에 연결합니다.
Dataflow로 다시 이동합니다.
템플릿에서 작업 만들기를 클릭하고 pstogcs(PubSub to GCS)라는 이름을 지정합니다.
리전 엔드포인트로 
Pub/Sub Subscription or Topic to Text Files on Cloud Storage라는 Dataflow 템플릿을 선택합니다. 여러 옵션이 표시되므로 필터링이 필요할 수 있습니다.
타겟에서 탐색을 클릭하고 이전에 만든 버킷(
출력 파일 이름 프리픽스는 output으로 그대로 둡니다. 이는 출력 파일을 명확하게 표시하기 위함입니다.
선택적 소스 파라미터를 펼칩니다. Pub/Sub 입력 구독에서 메시지를 수신하는 Taxi-sub를 선택합니다. 입력 주제를 포함할 필요는 없습니다.
다른 모든 항목은 기본값을 그대로 두고 페이지 하단으로 이동하여 작업 실행을 클릭합니다.
이 Dataflow 작업은 앞서 Pub/Sub에서 본 메시지를 읽고 Cloud Storage 버킷으로 스트리밍합니다.
Cloud Storage > 버킷으로 이동하여 버킷(
출력 파일을 클릭하고 다운로드를 선택합니다. 이름, 좌표, 시간이 포함된 택시 데이터가 표시됩니다.
내 진행 상황 확인하기를 클릭하여 목표를 확인합니다.
Cloud Shell과 같은 통합 개발 환경(IDE)에서 Gemini Code Assist를 사용하여 코드에 대한 안내를 받거나 코드 문제를 해결할 수 있습니다. Gemini Code Assist를 사용하려면 먼저 사용 설정해야 합니다.
왼쪽 창에서 설정 아이콘을 클릭한 다음 설정 뷰에서 Gemini Code Assist를 검색합니다.
Geminicodeassist: 사용 체크박스가 선택되어 있는지 확인하고 설정을 닫습니다.
화면 하단의 상태 표시줄에서 Cloud Code - 프로젝트 없음을 클릭합니다.
안내에 따라 플러그인을 승인합니다. 프로젝트가 자동으로 선택되지 않으면 Google Cloud 프로젝트 선택을 클릭하고 
상태 표시줄의 Cloud Code 상태 메시지에 Google Cloud 프로젝트(
이제 이 비공개 Cloud Storage 버킷을 SingleStore에 연결하기 위한 키를 만들어야 합니다.
Cloud Storage에서 설정(탐색 메뉴에 있음)으로 이동합니다.
상호 운용성 탭을 클릭합니다. 하단에서 키 만들기를 클릭합니다.
다음으로 파이프라인을 사용하여 SingleStore에 데이터를 수집하고 저장 프로시저를 시작합니다.
초기 SingleStore 파이프라인을 만들려면 다음 안내를 따릅니다.
이 작업을 통해 Gemini Code Assist가 사용 설정되며, 편집기 오른쪽 상단에  아이콘이 표시됩니다.
Gemini Code Assist: 스마트 작업  아이콘을 클릭하고 이 항목에 대한 설명을 선택합니다.
Gemini Code Assist가 Explain this라는 프롬프트가 미리 채워진 채팅 창을 엽니다. Code Assist 채팅의 인라인 텍스트 상자에서 미리 채워진 프롬프트를 다음으로 바꾸고 보내기를 클릭합니다.
Gemini Code Assist 채팅에 create_nyctaxi_pipelines.dml 파일의 코드에 관한 설명이 표시됩니다.
.tsv를 .csv로 변경합니다./t를 ,로 변경합니다.파일은 다음과 유사해야 합니다.
Cloud Shell 터미널로 돌아갑니다. 앞서 사용한 MySQL 명령어를 사용하여 SingleStore에 연결합니다. 이전에 사용한 것과 동일한 명령어를 사용하여 SingleStore에 연결할 수 있습니다.
MySQL 프롬프트에서 다음 명령어를 실행하여 파이프라인을 만듭니다.
다음과 유사한 결과가 출력됩니다.
출력:
출력:
보고서 1 주변 지역별 총 운행 횟수
보고서 2: 사용자가 탑승을 요청한 시점부터 차량에 승차한 시점까지의 평균 시간
보고서 3: 평균 운행 거리
보고서 4: 승차에서 하차까지의 평균 시간
보고서 5: 평균 운행 비용
보고서 6: 기사가 탑승 요청을 수락한 시점부터 승객이 승차한 시점까지의 평균 시간
보고서 7: 운행당 평균 탑승자 수
수고하셨습니다. 이 실습에서는 SingleStoreDB를 배포하고 Pub/Sub, Dataflow, Cloud Storage와 같은 Google Cloud의 클라우드 네이티브 제품과 결합했습니다. 또한 SingleStoreDB의 기본 파이프라인을 사용하여 Cloud Storage에서 데이터를 수집하고 운영 분석 쿼리를 실행했습니다.
SingleStore에 관해 자세히 알아보려면 SingleStore.com을 방문하세요.
Google Cloud 기술을 최대한 활용하는 데 도움이 됩니다. Google 강의에는 빠른 습득과 지속적인 학습을 지원하는 기술적인 지식과 권장사항이 포함되어 있습니다. 기초에서 고급까지 수준별 학습을 제공하며 바쁜 일정에 알맞은 주문형, 실시간, 가상 옵션이 포함되어 있습니다. 인증은 Google Cloud 기술에 대한 역량과 전문성을 검증하고 입증하는 데 도움이 됩니다.
설명서 최종 업데이트: 2025년 9월 4일
실습 최종 테스트: 2025년 9월 4일
Copyright 2025 Google LLC. All rights reserved. Google 및 Google 로고는 Google LLC의 상표입니다. 기타 모든 회사명 및 제품명은 해당 업체의 상표일 수 있습니다.
 
 
 
 
현재 이 콘텐츠를 이용할 수 없습니다
이용할 수 있게 되면 이메일로 알려드리겠습니다.
 
감사합니다
이용할 수 있게 되면 이메일로 알려드리겠습니다.
 
 
한 번에 실습 1개만 가능
모든 기존 실습을 종료하고 이 실습을 시작할지 확인하세요.
