【问题标题】:Export Cassandra JSON Output to file from C#从 C# 将 Cassandra JSON 输出导出到文件
【发布时间】:2016-11-27 13:58:27
【问题描述】:

我是 Cassandra 的新手,我正在尝试使用 Cassandra/CSharp 驱动程序从 c# 执行 select 语句。我想使用 SELECT JSON 将 JSON 中的整个结果集导出到文件中。我唯一的问题是我应该如何在 C# 中写入文件。有没有办法可以将 RowSet 转换为 JSON?

【问题讨论】:

    标签: c# cassandra


    【解决方案1】:

    我通过从this answer 获得解决方案得到了答案。关键是:

    SELECT JSON 的结果将只包含一个名为 [json] 的列。

    你可以使用类似 C# 的东西:

    RowSet rows = session.Execute("select json * from  customer_orders where customerid='1'");
    foreach (var row in rows) {
      Console.WriteLine(row.GetValue<String>("[json]"));
    }
    

    【讨论】:

    • select json 存在一些问题。 1)您无法控制格式,例如日期/时间戳的格式在 Cassandra 中是硬编码的。 2) 与获取结果集&在本地使用内置JSON格式相比,网络消耗要高得多
    【解决方案2】:

    你可以使用“select json * from table_name ...”类似的东西:

     RowSet rows = session.Execute("select json * from  customer_orders where customerid='1'");
    foreach(Row row in rows)
                Console.WriteLine(row);
    

    返回的每一行都是 JSON 格式,您可以将它们保存到文件中以进行导出。

    See official documentation from DATASTAX

    【讨论】:

    • 这是为我返回Cassandra.Row
    猜你喜欢
    • 2015-09-01
    • 2016-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-10
    • 1970-01-01
    相关资源
    最近更新 更多