我有一份城市,州/省和国家列表,我需要轻松找到各自的时区.具体来说,我需要知道他们映射到哪个Windows TimeZone.到目前为止,这是一个艰难的过程,因为没有简单的方法可以将城市传递给某个东西并获得时区(时区是一个偏移量,时区是否支持夏令时).
目前的流程是使用http://www.batchgeocode.com获取城市的纬度/经度(真正称为雅虎服务),然后拨打http://www.EarthTools.org获取时区信函,映射到偏移量.问题是雅虎服务有时会返回不良的经度/纬度,而earthtools.org对DST信息知之甚少,因此映射到正确的TimeZone Id是一个繁琐的手动过程.
我不能成为第一个做到这一点的人 - 有没有人知道更好的方法,或者有哪些列表有我需要的信息?
谢谢.
这个问题可能已被多次询问,但找不到合适的答案.在Cassandra的Rails3上有任何ORM吗?
我搜索过谷歌,发现以下内容.
请帮我决定哪一个我应该去.
谢谢
类似于这个案例类问题,但有一个扭曲:
我有一个case类,它有一些深层嵌套的case类作为属性.举个简单的例子,
case class Foo(fooPropA:Option[String], fooPropB:Option[Int])
case class Bar(barPropA:String, barPropB:Int)
case class FooBar(name:Option[String], foo:Foo, optionFoo: Option[Foo], bar:Option[Bar])
Run Code Online (Sandbox Code Playgroud)
我想将两个FooBar案例类合并在一起,获取输入存在的值并将它们应用于现有实例,从而生成更新版本:
val fb1 = FooBar(Some("one"), Foo(Some("propA"), None), Some(Foo(Some("propA"), Some(3))), Some(Bar("propA", 4)))
val fb2 = FooBar(None, Foo(Some("updated"), Some(2)), Some(Foo(Some("baz"), None)), None)
val merged = fb1.merge(fb2)
//merged = FooBar(Some("one"), Foo(Some("updated"), Some(2)), Some(Foo(Some("baz"), Some(3))), Some(Bar("propA", 4)))
Run Code Online (Sandbox Code Playgroud)
我知道我可以使用镜头来构建深层嵌套的属性更新; 但是,我觉得这需要大量的锅炉板代码:我需要一个镜头用于每个属性,而另一个组合镜头在父类中.这似乎是一个很多维护,即使使用的更简洁的镜头创作方法不成形.
棘手的部分是optionFoo元素:在这种情况下,两个元素都存在Some(value).但是,我想合并内部选项属性,而不仅仅是用fb2的新值覆盖fb1.
我想知道是否有一种很好的方法可以将这两个值合并在一起,只需要最少的代码.我的直觉告诉我尝试使用unapply
case类上的方法返回一个元组,迭代并将元组组合成一个新的元组,然后将元组应用回case类.
有没有更有效的方法来做这件事?
我正在尝试在 S3 存储桶上使用 AWS Glue 爬网程序来填充 Glue 数据库。我运行 Create Crawler 向导,选择我的数据源(带有 avro 文件的 S3 存储桶),让它创建 IAM 角色并运行它,但我收到以下错误:
Database does not exist or principal is not authorized to create tables. (Database name: zzz-db, Table name: avroavro_all) (Service: AWSGlue; Status Code: 400; Error Code: AccessDeniedException; Request ID: 78fc18e4-c383-11e9-a86f-736a16f57a42). For more information, see Setting up IAM Permissions in the Developer Guide (http://docs.aws.amazon.com/glue/latest/dg/getting-started-access.html).
Run Code Online (Sandbox Code Playgroud)
我尝试在一个新的空白数据库中创建这个表(而不是现有的带有表的数据库),我尝试为名称添加前缀,尝试获取不同的模式,并尝试使用具有管理员访问权限的现有角色。我虽然后者可以工作,但我一直收到同样的错误,不知道为什么。
明确地说,我创建的服务角色有几个策略,我假设一个足以创建表的前提:
日志是香草:
?
19:52:52
[10cb3191-9785-49dc-8935-fb02dcbd69a3] BENCHMARK : Running Start Crawl for Crawler avro
19:53:22
[10cb3191-9785-49dc-8935-fb02dcbd69a3] BENCHMARK : Classification complete, writing …
Run Code Online (Sandbox Code Playgroud)