我们有一个用例,我们需要从 Java 应用程序访问几乎数百万个文件。目前我们将它们存储在 EBS 卷中。事实证明这是一个昂贵的选择(因为我们现在已经达到 15TB)所以我们正在寻找 S3 作为文件存储。我们可以承受延迟。
一种选择是使用 s3fs 挂载 S3 并访问文件。但我正在探索 AWS 存储网关的选项,如果它可以提供更好的缓存和更快的访问。我们在使用 s3fs 时遇到了很多问题,因此一直在寻找替代方案。
我们有一个用例,我们需要从 Java 应用程序访问几乎数百万个文件。目前我们将它们存储在 EBS 卷中。事实证明这是一个昂贵的选择(因为我们现在已经达到 15TB)所以我们正在寻找 S3 作为文件存储。我们可以承受延迟。
一种选择是使用 s3fs 挂载 S3 并访问文件。但我正在探索 AWS 存储网关的选项,如果它可以提供更好的缓存和更快的访问。我们在使用 s3fs 时遇到了很多问题,因此一直在寻找替代方案。
尽可能避免使用 s3fs,因为它只是模拟文件系统并且可能会遇到高利用率问题。
最好的解决方案是让您的应用程序通过 S3 API 调用直接从 Amazon 访问文件,而不是假装 S3 是一个文件系统。这对于大型应用程序非常有效,并且您不会有管理/维护开销,因为您的应用程序直接与 S3 通信。你应该认真考虑这个选项。
如果您确实需要通过文件系统访问文件,请考虑使用AWS Storage Gateway – 文件网关,它可以将 S3 存储呈现为 NFS 共享。