【问题标题】:Bigtable Timezone difference in Python SDK vs CBTPython SDK 与 CBT 中的 Bigtable 时区差异
【发布时间】:2023-03-14 11:43:01
【问题描述】:

我正在本地 Bigtable 模拟器上测试 Bigtable Python SDK 和 CBT

我注意到 SDK 和 CBT 的时区之间存在差异。两者都从 Bigtable Emulator 中的同一张表中读取 在 python SDK 中,它似乎设置为 GMT+0,而 CBT 在 GMT+8(我的马来西亚时区)读取它 我试图弄清楚为什么会这样,以及如何确保 CBT 和 SDK 读取相同的时区。

谢谢

【问题讨论】:

  • 可以提供一些你用过的Python代码吗?
  • 是的。 github.com/limjix/GoogleCloudBigDataTest 文件名为 testcsvbigtablefilters.py 您可能会建议第 39 行是问题“timestamp = datetime.datetime.utcnow()”。但我的问题是为什么 cbt 在我当前的时区读取它而不是数据库中的实际内容,并且无论如何要改变它?只是出于好奇
  • 抱歉沉默,您是如何设置cbt 与模拟器一起工作的?

标签: google-cloud-bigtable bigtable


【解决方案1】:

这里发生的情况是,cbt 命令行工具会格式化您当地时区的时间戳以进行显示。您可以通过更改系统时钟并重新运行 cbt read 命令来验证这一点 - 您会发现时间戳已更改以反映新时区。

这不会影响数据在 Bigtable 中的存储方式 - 自 Unix 纪元以来,内部时间戳始终为微秒,因此无论时区如何,它们都是相同的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-12-25
    • 2015-07-13
    • 1970-01-01
    • 1970-01-01
    • 2018-04-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多