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

用于大型数据文件和流媒体的数据库

郜光明
2023-03-14

我有一个“数据库选择”和体系结构问题。

用例:

  1. 客户端将上载大型。json文件(或其他格式,如.tsv,不相关),其中每一行都是关于其客户的数据(例如姓名、地址等)

我的要求:

>

数据库应该有某种复制,因为我们不想丢失数据。

不需要索引,因为我们只是流数据。

对于这个问题,您对数据库有什么建议?我们尝试将其上传到Amazon S3并让他们处理缩放等问题,但存在读取/流式传输缓慢的问题。

谢了伊凡

共有1个答案

陶胤
2023-03-14

最初将文件上传到S3是可以的,但随后将它们拾起并将每一行推到Kinesis(或者MSK,甚至EC2s上的Kafka,如果您愿意的话);从那里,您可以连接您选择的流处理框架(Flink、Spark Streaming、Samza、Kafka Streams、Kinesis KCL)进行转换和丰富,最后您将希望将结果通过管道传输到允许流附加的存储堆栈中。一些显而易见的候选人:

  • HBase
  • 德鲁伊特
  • Cassandra的密钥空间
  • Hudi(或者可能是LakeFS?)在S3之上

从查询灵活性、延迟、集成选项/标准等方面来说,您选择哪一个取决于您的下游需求。

 类似资料:
  • 问题内容: 我正在进行的一个项目在不久的将来可能会跨越几百万行,所以我正在研究我使用的数据库,因为这肯定会证明是一个问题。据我所读,一旦涉及到表的2,000,000行问题,SQL的所有形式都会出现问题。对于这些大型项目,有没有推荐好的数据库? 我正在谈论的是一个网站,归档旧条目并不理想,但是如果证明这是我无法克服的问题,则可以这样做。 谢谢。 问题答案: 我已经在MS SQL Server中使用了

  • 长话短说:java.io包中有多少种基于数据流的流?它们是字节流和字符流还是二进制流和字符流? 完整问题: https://youtu.be/v1_ATyL4CNQ?t=20m5s昨天看了本教程后跳到20:05,我的印象是基于数据流有两种类型的流:BinaryStreams和CharacterStreams。今天,在了解了更多关于这个主题的知识之后,我的新发现似乎与旧发现相矛盾。 互联网上的大多数

  • 问题内容: 我想访问YouTube视频并使用自己的媒体播放器播放。我可以使用youtube数据API获取视频属性(标题,网址等)。我可以访问视频流并使用我自己的媒体播放器(例如Android Media Player)播放它。我正在JAVA中尝试所有这些。 提前致谢.. :) 问题答案: 你不能 请查看此处以进一步了解API可以处理的内容: YoutubeAPI 如果可以在其中获得InputStr

  • 早些时候,我问了Flink一个简单的hello world示例。这给了我一些很好的例子! 然而,我想问一个更“流”的例子,我们每秒生成一个输入值。这在理想情况下是随机的,但即使每次都是相同的值也可以。 目标是获得一个无需/最少外部接触就能“移动”的流。 因此,我的问题是: 我发现如何显示这与外部生成数据和写入Kafka,或听一个公共源,但是我试图解决它与最小的依赖性(像在Nifi与Generate

  • 1流媒体和Kafka broker版本0.8.2.1,我在AWS上为spark和Kafka提供了单独的服务器。 使用直接进近,我希望从流媒体中获得30个字符串,但实际接收范围只有15-25个。交叉检查Kafka消费者在300秒内显示30个字符串。还有小溪。foreachRDD{rdd= 获取最终数据背后有什么问题。我正在使用火花会话创建sc和ssc。 谢谢你。

  • 文件中特定帧的PTS是否可能与流式传输时同一文件中同一帧的PTS不同? 当我使用av_read_frame读取帧时,我将视频流存储在avstream中。在使用avcodec_decode_video2解码帧后,使用av_frame_get_best_effort_timestamp将该帧的时间戳存储在int64_t中。现在,如果程序从一个文件中获取其输入,我会得到一个不同的时间戳,与我将输入(从同