Huawei Cloud OBS는 IoT 데이터 전달 및 저장을 지원합니다.

이 기사는 Huawei Cloud 커뮤니티 " IoT 데이터 관리의 새로운 영역 잠금 해제: Huawei Cloud OBS는 데이터 전달 및 저장을 지원합니다. [코드 및 하드웨어가 필요 없는 Huawei Cloud IoT와 함께 플레이] ", 작성자: Y-StarryDreamer.

1. 배경 소개

사물인터넷(IoT) 기술의 급속한 발전은 지능사회의 도래를 이끌고 있습니다. IoT 기기의 증가와 데이터 규모의 급속한 성장으로 디지털 시대에 이러한 대용량 데이터를 어떻게 효과적으로 저장하고 관리하는가가 중요한 과제로 대두되고 있습니다. 선도적인 클라우드 컴퓨팅 서비스 제공업체인 Huawei Cloud는 이러한 과제에 적극적으로 대응하고 사용자에게 개체 스토리지 서비스(OBS)를 포함한 풍부한 IoT 솔루션을 제공합니다.

확장성이 뛰어나고 안전하며 안정적인 클라우드 스토리지 서비스인 OBS는 사용자에게 유연하고 효율적인 데이터 스토리지 솔루션을 제공합니다. 대용량 데이터의 저장 요구에 쉽게 대처할 수 있는 분산형 스토리지 아키텍처를 채택하고, 사용자 데이터가 안전하고 신뢰할 수 있도록 다양한 데이터 보호 및 보안 제어 기능을 제공합니다.

IoT 애플리케이션에서는 데이터의 장기 저장 및 관리가 중요합니다. 기존의 데이터 저장 방법을 사용하려면 사용자가 직접 서버를 구축하고 유지 관리해야 하므로 관리 비용이 많이 들고 복잡합니다. OBS로 데이터를 전달하는 것이 더욱 편리하고 경제적인 솔루션이 되었습니다. OBS에 데이터를 저장함으로써 사용자는 데이터 손실이나 저장 공간 부족에 대한 걱정 없이 높은 신뢰성과 저렴한 비용을 최대한 활용할 수 있습니다. 동시에 OBS는 풍부한 데이터 관리 및 분석 기능을 제공하여 사용자가 데이터를 더 잘 이해하고 활용하여 비즈니스 의사 결정을 지원할 수 있도록 돕습니다.

이번 글에서는 화웨이 클라우드 기기에서 보고된 데이터를 장기 저장을 위해 OBS에 전달하는 방법을 살펴보겠습니다. 먼저 OBS 버킷 생성 방법을 소개하고, 버킷 생성 과정과 관련 구성 옵션에 대해 자세히 논의하겠습니다. 다음으로는 데이터 전달 규칙 생성, 전달 대상 설정 등의 단계를 포함하여 장치 액세스 서비스를 구성하는 방법에 대해 중점적으로 살펴보겠습니다. 마지막으로 데이터 전달의 효율성을 검증하는 방법과 OBS 관리 도구를 사용하여 저장된 데이터를 보고 관리하는 방법을 실제 작업을 통해 시연합니다.

이 기사를 읽으면 독자는 Huawei Cloud IoT 솔루션에서 OBS의 적용 시나리오와 장점을 포괄적으로 이해하고 장기 저장을 위해 장치 데이터를 OBS에 전달하는 작동 방법을 숙지함으로써 다음과 같은 기술 지원을 제공할 수 있습니다. IoT 애플리케이션 개발 및 배포 가이드입니다.

2. 객체 스토리지 서비스(OBS) 소개

이미지.png

객체 스토리지 서비스(OBS)는 Huawei Cloud가 제공하는 매우 안정적이고 안전하며 신뢰할 수 있는 클라우드 스토리지 서비스입니다. OBS는 분산 아키텍처를 채택하여 고가용성, 고신뢰성, 고확장성을 특징으로 합니다. 사용자는 간단한 API 인터페이스나 관리 콘솔을 통해 OBS에 저장된 데이터를 쉽게 업로드, 다운로드 및 관리할 수 있습니다.

OBS의 주요 기능은 다음과 같습니다.

  1. 높은 신뢰성과 가용성 : OBS는 다중 복사본 스토리지와 지능형 재해 복구 메커니즘을 사용하여 데이터 보안과 신뢰성을 보장합니다. 하드웨어 오류, 네트워크 오류 또는 기타 비정상적인 상황이든 OBS는 데이터의 지속성과 가용성을 보장하여 언제든지 사용자 데이터에 액세스할 수 있도록 보장합니다.

  2. 강력한 데이터 관리 기능 : OBS는 데이터 분류, 수명주기 관리, 데이터 마이그레이션 등 풍부한 데이터 관리 기능을 제공합니다. 사용자는 업무상 필요에 따라 OBS에 저장된 데이터를 유연하게 관리하고 구성할 수 있어 데이터의 가치와 활용 효율성이 향상됩니다.

  3. 유연한 버킷 관리 : 사용자는 자신의 필요에 따라 여러 버킷을 생성 및 관리하고 버킷에 대한 권한을 제어할 수 있습니다. 각 버킷에는 독립적인 네임스페이스와 액세스 제어 정책이 있습니다. 사용자는 데이터 보안과 개인 정보 보호를 보장하기 위해 실제 조건에 따라 버킷을 구성하고 관리할 수 있습니다.

OBS는 화웨이 클라우드 생태계에서 중요한 역할을 하며, 사용자에게 데이터 백업, 보관, 멀티미디어 저장 등 다양한 시나리오에서 널리 사용되는 효율적이고 안정적인 데이터 저장 솔루션을 제공합니다. 개인 사용자, 기업 사용자, 개발자 모두 OBS를 사용하여 데이터를 쉽게 저장하고 관리함으로써 비즈니스 개발과 혁신적인 애플리케이션을 더 잘 지원할 수 있습니다.

3. OBS 버킷 생성

이미지.png

기기에서 보고한 데이터를 OBS로 전달하기 전에 먼저 OBS 버킷을 생성해야 합니다. OBS 버킷은 데이터를 저장하는 기본 단위입니다. 사용자는 필요에 따라 여러 개의 버킷을 생성하고 각 버킷을 구성 및 관리할 수 있습니다.
이미지.png

OBS 버킷을 만드는 단계:

  1. 공식 Huawei Cloud 웹사이트에 로그인하고 개체 스토리지 서비스에 액세스하세요.

    브라우저를 열고 공식 Huawei Cloud 웹사이트로 이동하여 계정에 로그인하세요. 콘솔에서 "Object Storage Service" 링크를 찾아 클릭하여 OBS 서비스 페이지로 들어갑니다.

  2. 객체 스토리지 서비스 관리 콘솔에 입장하세요

    OBS 서비스 페이지에 "콘솔 입력" 버튼이 표시됩니다. 해당 버튼을 클릭하면 오브젝트 스토리지 서비스의 관리 콘솔 페이지로 이동합니다.

  3. 새 OBS 버킷 만들기

    관리 콘솔 페이지의 오른쪽 상단에 "버킷 생성" 버튼이 있습니다. 이 버튼을 클릭하면 시스템이 OBS 버킷 생성을 위한 인터페이스로 안내합니다.

  4. 버킷 구성 정보를 입력하세요.

    버킷 생성 인터페이스에서 버킷 이름, 지역, 스토리지 유형 등을 포함하여 새 버킷에 대한 일부 구성 정보를 입력해야 합니다. 요구사항과 애플리케이션 시나리오에 따라 적절한 구성 옵션을 선택하세요.

  5. 확인 및 생성

    버킷 구성 정보를 입력한 후 생성한 버킷의 구성을 미리 볼 수 있습니다. 모든 것이 올바른지 확인한 후 "지금 만들기" 버튼을 클릭하면 시스템이 새 OBS 버킷 만들기를 시작합니다.

  6. 생성이 완료될 때까지 기다리세요

    버킷을 생성하는 프로세스는 선택한 구성과 현재 시스템 로드에 따라 다소 시간이 걸릴 수 있습니다. 시스템에서 버킷 생성이 완료되었다는 메시지를 표시할 때까지 인내심을 갖고 기다려 주십시오.

4. 장치 액세스 서비스 구성

이 기사에서는 Python 코드를 사용하여 장치에서 보고한 데이터를 장기 저장을 위해 Huawei Cloud Object Storage Service(OBS)에 전달하는 방법을 자세히 소개합니다. 독자가 배포 프로세스와 코드 구현 세부 사항을 완전히 이해할 수 있도록 샘플 코드와 자세한 설명을 결합합니다.

* Huawei Cloud Object Storage Service(OBS) 구성

먼저, 장치에서 보고된 데이터를 저장하기 위해 Huawei Cloud Platform에 OBS(Object Storage Service) 버킷을 생성해야 합니다. Huawei Cloud 콘솔에서 객체 스토리지 서비스 관리 페이지에 들어가서 다음 단계에 따라 OBS 버킷을 생성합니다.

  1. 개체 스토리지 서비스 관리 콘솔에 들어가려면 "콘솔 들어가기"를 클릭하세요.
  2. 페이지 오른쪽 상단에 있는 "버킷 만들기" 버튼을 클릭하세요.
  3. 필요에 따라 버킷 사양과 구성 항목을 선택한 후, "Create Now" 버튼을 클릭하면 새로운 OBS 버킷이 생성됩니다.

*Python 배포 코드 작성

다음으로, 장치 데이터를 OBS 버킷으로 전달하는 기능을 구현하는 Python 코드를 작성하겠습니다. 다음은 자세한 코드 설명 및 배포 프로세스입니다.

수입 로깅
obs import ObsClient에서

# Huawei Cloud OBS 매개변수 구성
access_key_id = 'your_access_key_id'
secret_access_key = '당신의_비밀_액세스_키'
server = 'your_obs_server' # OBS 서비스 주소(예: obs.cn-north-4.myhuaweicloud.com)

# 장치 접근 정보를 구성합니다
device_id = 'your_device_id'
device_secret = 'your_device_secret'

# 데이터 전달 규칙 구성
topic = 'your_topic' # 기기에서 보고하는 데이터의 주제
obs_bucket = 'your_obs_bucket' # OBS 버킷 이름

#구성 로그
login.basicConfig(레벨=logging.INFO)

#OBS 클라이언트 생성
obs_client = ObsClient(access_key_id, secret_access_key, 서버)

#기기 액세스 서비스 생성 및 기기 보고 데이터 시뮬레이션
def report_data_to_obs(데이터):
    노력하다:
        #OBS에 데이터 보고
        응답 = obs_client.putContent(obs_bucket, 주제, 데이터)
        response.status < 300인 경우:
            logging.info("OBS에 데이터가 성공적으로 보고되었습니다.")
        또 다른:
            logging.error("OBS에 데이터를 보고하지 못했습니다. 상태 코드: %d" % response.status)
    e와 같은 예외를 제외하고:
        logging.error("OBS에 데이터를 보고하는 중 오류가 발생했습니다: %s" % str(e))

# 장치 보고 데이터 시뮬레이션
defsimulate_device_data():
    data = {'온도': 25, '습도': 60, '압력': 1013} # 장치에서 보고된 데이터를 시뮬레이션합니다.
    report_data_to_obs(데이터)

__name__ == "__main__"인 경우:
    시뮬레이션_장치_데이터()

위 코드에서:

  • 패키지를 사용하여 Huawei Cloud의 개체 스토리지 서비스(OBS)와 상호작용합니다. 패키지가 설치되어 있는지 확인하세요. obs 
  • 코드의 및 매개변수 Huawei Cloud OBS 계정의 특정 정보로 바꾸십시오. access_key_idsecret_access_key  server 
  • report_data_to_obs 이 기능은 장치에서 보고한 데이터를 지정된 OBS 버킷에 업로드하는 데 사용됩니다.
  • simulate_device_data 이 기능은 장치에서 보고된 데이터를 시뮬레이션하는 데 사용됩니다. 실제 상황에 따라 데이터 내용을 변경할 수 있습니다.

* 코드 배포 및 실행

코드에서 매개변수를 구성하고 저장한 후 서버 또는 로컬 환경에 코드를 배포하고 Python 스크립트를 실행할 수 있습니다. 실행 후 로그에 인쇄된 성공 또는 실패 정보와 데이터가 OBS 버킷에 성공적으로 업로드되었는지 확인할 수 있습니다.

위 단계를 통해 장치에서 보고한 데이터를 Huawei Cloud Object Storage Service에 성공적으로 전달하고 데이터의 장기 저장을 달성했습니다. 이 솔루션은 대량의 IoT 데이터를 관리 및 분석하고 애플리케이션에 안정적인 데이터 지원을 제공하는 데 도움이 됩니다. 전체 코드의 구조와 각 부분의 기능을 명확하게 이해할 수 있습니다. 이 코드는 장치에서 보고한 데이터를 Huawei Cloud Object Storage Service에 전달하는 기능을 구현합니다. 합리적인 구성과 호출을 통해 IoT 애플리케이션에서 데이터를 안정적으로 저장하고 관리할 수 있습니다.

5. 검증작업

데이터 전달 규칙을 구성하고 활성화한 후에는 데이터 전달이 성공했는지 확인하고 장치에서 보고된 데이터가 지정된 OBS 버킷에 올바르게 저장될 수 있는지 확인해야 합니다.

데이터 전달을 확인하는 단계:

실제 장치 또는 시뮬레이터를 사용하여 데이터 보고

먼저, 실제 장치나 시뮬레이션 장치를 통해 데이터를 보고하여 데이터 전달 기능이 제대로 작동하는지 확인할 수 있습니다. 장치가 장치 액세스 서비스에 정상적으로 연결되고 데이터를 성공적으로 보고할 수 있는지 확인하세요. 장치의 고유 식별자(예: 장치 ID)를 사용하여 데이터가 올바르게 식별되고 처리되는지 확인할 수 있습니다.

보고된 데이터 쿼리

Huawei Cloud의 OBS 관리 콘솔에 로그인하고 콘솔에서 해당 OBS 버킷을 선택하면 버킷의 개체 목록이나 개체 세부 정보를 볼 수 있습니다. 디바이스에서 보고한 데이터에 해당하는 객체를 버킷에서 볼 수 있어야 합니다. 개체 목록에 저장하려는 데이터 개체가 포함되어 있는지, 개체의 내용이 장치에서 보고한 데이터와 일치하는지 확인하세요.

위의 단계를 통해 데이터 전달 기능이 정상적인지 확인하고 장치에서 보고된 데이터가 지정된 OBS 버킷에 성공적으로 저장되는지 확인할 수 있습니다. 기기에서 보고한 데이터를 OBS 버킷에서 찾아서 확인할 수 있다면 데이터 전달 기능이 성공적으로 구성되어 제대로 작동하고 있는 것입니다.

다음은 Python SDK를 사용하여 데이터 전달을 확인하는 샘플 코드입니다.

obs import ObsClient에서

#ObsClient 초기화
obs_client = Obs클라이언트(
    access_key_id='your_access_key_id',
    secret_access_key='your_secret_access_key',
    server='your_obs_endpoint' # obs.cn-north-1.myhuaweicloud.com과 같은 OBS 서비스의 끝점
)

#지정된 버킷의 객체 목록을 쿼리합니다.
def 목록_객체(버킷_이름):
    노력하다:
        resp = obs_client.listObjects(bucket_name)
        resp.status == 200인 경우:
            resp.body.contents를 반환합니다.
        또 다른:
            print(f'오류: {resp.status}')
            반환 없음
    e와 같은 예외를 제외하고:
        print(f'오류: {e}')
        반환 없음

# 지정된 객체의 세부정보를 쿼리합니다.
def get_object_detail(bucket_name, object_key):
    노력하다:
        resp = obs_client.getObjectMetadata(bucket_name, object_key)
        resp.status == 200인 경우:
            resp.body 반환
        또 다른:
            print(f'오류: {resp.status}')
            반환 없음
    e와 같은 예외를 제외하고:
        print(f'오류: {e}')
        반환 없음

__name__ == "__main__"인 경우:
    # OBS 버킷 이름과 기기에서 보고하는 객체 키(key)를 지정합니다.
    bucket_name = 'your_obs_bucket_name'
    object_key = 'your_object_key'

    #쿼리 객체 목록
    객체 = list_objects(bucket_name)
    객체인 경우:
        print(f'버킷 {bucket_name}의 개체: {objects}')

        # 쿼리 객체 세부정보
        object_detail = get_object_detail(bucket_name, object_key)
        object_detail인 경우:
            print(f'객체 세부정보: {object_detail}')
        또 다른:
            print(f'{object_key} 키에 대한 객체 세부정보를 가져오지 못했습니다')
    또 다른:
        print(f'{bucket_name} 버킷의 객체를 나열하지 못했습니다.')

위 코드에서 다음을 바꿔야 합니다.

  • your_access_key_id: 귀하의 Huawei Cloud 액세스 키 ID입니다.
  • your_secret_access_key: 귀하의 Huawei Cloud 비밀 액세스 키.
  • your_obs_endpoint: OBS 서비스의 엔드포인트입니다(예: obs.cn-north-1.myhuaweicloud.com.
  • your_obs_bucket_name: OBS 버킷 이름입니다.
  • your_object_key: 장치에서 보고한 개체 키로, 개체 세부 정보를 쿼리하는 데 사용됩니다.

위 코드를 실행하면 지정된 버킷에 있는 객체 목록을 쿼리하고 지정된 객체의 세부 정보를 얻어 데이터 전달이 성공했는지 확인합니다.

6. 모범 사례 및 고려 사항

OBS에 데이터를 전달할 때 주의해야 할 몇 가지 모범 사례와 예방 조치가 있습니다.

모범 사례

데이터 암호화 및 보안 :

민감한 데이터의 경우 데이터 보안을 보장하기 위해 데이터 전송 중에 데이터를 암호화하는 것이 좋습니다. HTTPS와 같은 보안 암호화 프로토콜을 사용하여 전송 중에 데이터를 보호할 수 있습니다.

데이터 수명주기 관리 :

데이터의 라이프사이클과 비즈니스 요구에 따라 데이터의 저장 기간과 만료 정책을 합리적으로 설정하여 만료되거나 쓸모 없는 데이터가 저장되지 않도록 하세요. 더 이상 필요하지 않은 데이터를 정기적으로 검토하고 정리하여 저장 공간을 확보하고 저장 비용을 줄입니다.

모니터링 및 경보 :

데이터 전달 및 저장 과정을 모니터링 및 경보하고, 비정상적인 상황을 적시에 감지 및 처리하며, 데이터의 신뢰성과 안정성을 보장하는 것이 좋습니다. 모니터링 지표 및 경보 규칙을 설정하고, 데이터 전달 상태 및 성능을 모니터링하고, 적시에 조치를 취해 문제를 해결할 수 있습니다.

지침

버킷 권한 설정 :

버킷을 생성할 때 데이터 보안과 규정 준수를 보장하려면 실제 필요에 따라 버킷의 권한과 액세스 정책을 설정해야 합니다. 특정 사용자 또는 개체만 버킷에 액세스할 수 있도록 버킷에 대한 액세스를 제한하고 액세스 제어 정책을 채택하여 버킷의 데이터를 보호할 수 있습니다.

지역 선택 :

전달 대상을 설정할 때 OBS 서비스와 동일한 지역을 선택해야 지정된 OBS 버킷에 데이터가 원활하게 전달되고 저장될 수 있습니다. 동일한 영역을 선택하면 데이터 전송 지연을 줄이고 데이터 전송의 효율성과 신뢰성을 높일 수 있습니다.

7.끝

이 기사에서는 Huawei 클라우드 장치에서 보고한 데이터를 OBS(Object Storage Service)로 전달하는 방법을 자세히 설명하고 이 작업의 중요성과 이점을 강조합니다. OBS에 데이터를 저장하면 사용자는 다음과 같은 이점을 얻을 수 있습니다.

  1. 높은 신뢰성 및 보안성 : OBS는 분산 아키텍처와 다중 복사본 저장을 채택하여 데이터의 안전성과 신뢰성을 보장합니다. 또한 데이터 암호화와 같은 보안 기능을 제공하여 데이터의 기밀성과 무결성을 보장합니다.

  2. 저비용 데이터 스토리지 : OBS는 저렴한 스토리지 솔루션을 제공합니다. 사용자는 저장된 데이터의 실제 양에 따라 비용을 지불하면 되기 때문에 기존 스토리지 솔루션에서 미리 스토리지 장비를 구입하고 유지 관리 비용을 지불할 필요가 없습니다.

  3. 강력한 데이터 관리 기능 : OBS는 데이터 분류, 수명주기 관리, 데이터 마이그레이션 등 풍부한 데이터 관리 기능을 제공하여 사용자가 OBS에 저장된 데이터를 더 잘 관리하고 활용할 수 있도록 도와줍니다.

장치에서 보고한 데이터를 OBS로 전달함으로써 사용자는 데이터의 장기 저장 및 관리를 달성하고 애플리케이션에 안정적이고 신뢰할 수 있는 데이터 지원을 제공할 수 있습니다. 따라서 우리는 독자들이 애플리케이션의 효율성과 신뢰성을 향상시키기 위해 더 많은 데이터 저장 및 관리 방법을 시도하고 탐색할 것을 권장합니다. 클라우드 스토리지 서비스를 합리적으로 활용함으로써 사용자는 증가하는 데이터 볼륨과 복잡한 데이터 관리 요구에 더 잘 대처할 수 있으며 IoT 애플리케이션 개발을 위한 강력한 지원을 제공합니다.

 

화웨이 클라우드의 신기술에 대해 빨리 알아보고 팔로우하려면 클릭하세요~

 

동료 치킨 "오픈 소스" deepin-IDE 및 마침내 부트스트랩을 달성했습니다! 좋은 친구, Tencent는 Switch를 "생각하는 학습 기계"로 전환했습니다. Tencent Cloud의 4월 8일 실패 검토 및 상황 설명 RustDesk 원격 데스크톱 시작 재구성 웹 클라이언트 WeChat의 SQLite 기반 오픈 소스 터미널 데이터베이스 WCDB의 주요 업그레이드 TIOBE 4월 목록: PHP 사상 최저치로 떨어졌고 FFmpeg의 아버지인 Fabrice Bellard는 오디오 압축 도구인 TSAC를 출시했으며 Google은 대규모 코드 모델인 CodeGemma를 출시했습니다 . 오픈소스라서 너무 좋아요 - 오픈소스 사진 및 포스터 편집기 도구
{{o.이름}}
{{이름}}

추천

출처my.oschina.net/u/4526289/blog/11052494