当前位置: 首页 > 知识库问答 >
问题:

如何将数据从服务器放入Kinesis流

丁雅逸
2023-03-14

我对Kinesis是新手。阅读我发现的文档,我可以创建Kinesis流来从生产者那里获得数据。然后使用KCL将从流中读取这些数据以进行进一步的处理。我了解了如何通过引入IRecordProcessor来编写KCL应用程序。

public class Put {

    AmazonKinesisClient kinesisClient;

    Put()
    {
        String accessKey = "My Access Key here" ;
        String secretKey = "My Secret Key here" ;
        AWSCredentials credentials = new BasicAWSCredentials(accessKey, secretKey);
       kinesisClient = new AmazonKinesisClient(credentials);
       kinesisClient.setEndpoint("kinesis.us-east-1.amazonaws.com", "kinesis", "us-east-1");
        System.out.println("starting the Put Application");
    }

    public void putData(String fileContent,String session) throws Exception
    {
         final String myStreamName = "ClickStream";

            PutRecordRequest putRecordRequest = new PutRecordRequest();
            putRecordRequest.setStreamName(myStreamName);
            String putData = fileContent;
            putRecordRequest.setData(ByteBuffer.wrap(putData.getBytes()));
            putRecordRequest.setPartitionKey("session"+session);
            PutRecordResult putRecordResult = kinesisClient.putRecord(putRecordRequest);
            System.out.println("Successfully putrecord, partition key : " + putRecordRequest.getPartitionKey()
                    + ", ShardID : " + putRecordResult.getShardId());
            System.out.println(fileContent);
            System.out.println("Sequence Number: "+putRecordResult.getSequenceNumber());

            System.out.println("Data has been PUT successfully");


    }
}

共有1个答案

左凯定
2023-03-14

如果您正在跟踪一些文件,请尝试FluentD。http://www.fluentd.org/

亚马逊Kinesis有一个相当不错的插件。https://github.com/awslabs/aws-fluent-plugin-kinesis

 类似资料:
  • 我对Api非常陌生,我们的用例是将实时数据从网络摄像头流到kinesis视频流。步骤:在aws上创建ubuntu服务器并安装CPP SDK。在aws中创建了kinesis视频流,下载并在本地安装了Gstreamer。 我试图将rtsp示例数据放到Ec2ubuntu服务器上的gstream中,我运行的查询$gst-launch-1.0rtspsrc location=“rtsp://yourcame

  • 问题内容: 我想使用Android将数据发送到我的php页面。我该怎么做? 问题答案: 您可以使用AndroidHttpClient进行GET或POST请求: 创建一个AndroidHttpClient来执行您的请求。 创建一个HttpGet或HttpPost请求。 使用setEntity和setHeader]方法填充请求。 对您的请求使用客户端上的execute方法之一。

  • 问题内容: 我目前有一个在云实例上运行的实时Redis服务器,我想将此Redis服务器迁移到新的云实例并将该实例用作我的新Redis服务器。如果是MySQL,我将从旧服务器中导出数据库并将其导入新服务器中。我应该如何使用redis? PS:我不想设置复制。我想将Redis服务器完全迁移到新实例。 问题答案: 通过运行或从命令行将数据库快照保存到dump.rdb中。这将在与Redis服务器相同的文件

  • 我一直在做这个项目,其中一个部分包括从Raspberry向我的服务器发送一些数据。但它不能正常工作,我不知道为什么。我试图通过删除“urllib2”并使用“request”来修复错误。但徒劳的是,一切都没有改变。如果有人能帮助我,我会非常感激的。谢谢! PHP代码: python代码:

  • 如何将数据写入Kinesis中的特定分片? 博托医生说 分区键是Unicode字符串,每个键的最大长度限制为256个字符。MD5哈希函数用于将分区键映射到128位整数值,并使用碎片的哈希键范围将相关数据记录映射到碎片。您可以通过使用ExplicitHashKey参数显式指定哈希值来覆盖哈希分区键以确定碎片。 然而,我实际上如何做到这一点?