AWSDMS是否可以将S3Glacier作为目标?
创始人
2024-09-24 21:01:24
0

AWS DMS本身不支持将数据流式传输到S3 Glacier,但是可以使用Lambda函数将数据从DMS传输到S3 Glacier。以下是解决方法的代码示例:

  1. 创建Lambda函数

创建一个Lambda函数,将以下源代码复制到Lambda中。

import boto3
import os
import json
from io import BytesIO
import gzip

s3_res = boto3.resource('s3')

def lambda_handler(event, context):
    # Capture the DynamoDB stream event
    input_data = event['Records']

    # S3 bucket configuration - replace with your bucket & folder name
    bucket_name = 'my-glacier-bucket'
    folder_name = 'my_data_folder'

    # Create a new S3 object
    client = boto3.client('s3')
    key = folder_name + '/ssm-' + str(time.time()) + '.json.gz'

    byte_data = json.dumps(input_data).encode('UTF-8')

    # Compress data using GZIP compression
    gzip_data = BytesIO()
    with gzip.GzipFile(fileobj=gzip_data, mode='wb') as gz:
        gz.write(byte_data)
    data = gzip_data.getvalue()

    # Upload compressed data to S3 Glacier
    client.upload_archive(vaultName=bucket_name, body=data)

    # Log output to CloudWatch
    print('Data uploaded to S3 Glacier.')

    # Return success message
    return 'Success'
  1. 将Lambda函数连接到DMS任务

在DMS任务中设置Lambda函数作为目标端点,并将输入映射到Lambda函数的输入参数。在AWS管理控制台中启动DMS任务之前,请确保按照以下格式创建表映射:

{
    "TableName": "my_table_name",
    "TableMappings": [
        {
            "Type": "Include",
            "SourceSchema": "my_source_schema",
            "SourceTable": "my_source_table",
            "TargetTable": "my_target_table",
            "TargetSchema": "my_target_schema",
            "MappingProperties": {}
        }
    ],
    "TargetEndpointArn": "arn:aws:dms:us-east-1:123456789012:endpoint:QJLTZ7VV5YB6OQF435DG5PR73M",
    "ReplicationInstanceArn": "arn:aws:dms:us-east-1:123456789012:rep:3H5PB45D9JPYSOI25LVGNAE5GI",
    "MigrationType": "full-load",
    "TableMappingsEnabled": true,
    "StreamEnabled":

相关内容

热门资讯

iwatch怎么连接安卓系统,... 你有没有想过,那款时尚又实用的iWatch,竟然只能和iPhone好上好?别急,今天就来给你揭秘,怎...
安卓系统怎么连不上carlif... 安卓系统无法连接CarLife的原因及解决方法随着智能手机的普及,CarLife这一车载互联功能为驾...
oppo手机安卓系统换成苹果系... OPPO手机安卓系统换成苹果系统:现实吗?如何操作?随着智能手机市场的不断发展,用户对于手机系统的需...
iphone系统与安卓系统更新... 最近是不是你也遇到了这样的烦恼?手机更新系统总是失败,急得你团团转。别急,今天就来给你揭秘为什么iP...
安卓平板改windows 系统... 你有没有想过,你的安卓平板电脑是不是也能变身成Windows系统的超级英雄呢?想象在同一个设备上,你...
安卓系统上滑按键,便捷生活与高... 你有没有发现,现在手机屏幕越来越大,操作起来却越来越方便了呢?这都得归功于安卓系统上的那些神奇的上滑...
安卓系统连接耳机模式,蓝牙、有... 亲爱的手机控们,你们有没有遇到过这种情况:手机突然变成了“耳机模式”,明明耳机没插,声音却只从耳机孔...
希沃系统怎么装安卓系统,解锁更... 亲爱的读者们,你是否也像我一样,对希沃一体机上的安卓系统充满了好奇呢?想象在教室里,你的希沃一体机不...
安装了Anaconda之后找不... 在安装Anaconda后,如果找不到Jupyter Notebook,可以尝试以下解决方法:检查环境...
安卓换鸿蒙系统会卡吗,体验流畅... 最近手机圈可是热闹非凡呢!不少安卓用户都在议论纷纷,说鸿蒙系统要来啦!那么,安卓手机换上鸿蒙系统后,...