3

我有几千个单独的 html 文件本地存储在一个目录中,每个文件最多只有几个 KB。

我想将它们存储在 Cassandra 的单个节点中,我将如何使用 Hector 以编程方式执行此操作?我使用哪些 API 来设置 columnFamily 来处理静态文件,我应该如何设置架构?谢谢!

4

2 回答 2

4

我想将它们存储在 Cassandra 的单个节点中,我将如何使用 Hector 以编程方式执行此操作?

您需要在 cassandra 中创建一个键空间。您可以使用带有命令 create keyspace 的 cassandra-cli 或使用 hector 方法addKeyspace()在集群节点中创建它。

我使用哪些 API 来设置 columnFamily 来处理静态文件,我应该如何设置架构?

您可以使用 BasicColumnDefinition 在 cassandra 中创建列族。在此处查看有关如何在键空间中添加列族的示例代码。您可能会有一个名为 html_doc 的列族,列名是您的 html 文件名和 AsciiType 或 UTF8Type(或默认的 BytesType)类型的值。需要以标准 java 方式读取 html 文档,您可以 在此处查看如何为列插入值。

于 2012-02-10T02:23:34.263 回答
1

如果您的文件每个只有几个 K,那么可以轻松地放在一列中。
请参阅入门指南:Hector 入门

  • 设置您的键空间/列族一次。
  • 将文件读入字符串或字节数组。
  • 使用 ColumnFamilyUpdater 将文件写入列(可能是“FileBody”作为列名?),使用文件名作为键。
  • 对每个文件重复。
于 2012-02-09T22:34:07.523 回答