设计Tiny URL# JobHunting - 待字闺中l*22015-02-05 08:021 楼如何设计Tiny URL呢?HashMap mapkey是tiny url, value 是full URL ? 那 collision怎么处理呢?
g*g2015-02-05 08:024 楼SHA256 hash should give you collision free hash in practice.【在 s********i 的大作中提到】: Tiny URL设计要求就是没有collision,否则你想想一个hashmap就解决了,还需要设计: 么?
l*22015-02-05 08:029 楼谢谢回复 :) ,可以详细讲讲吗?或者给个链接参考?【在 z******f 的大作中提到】: Tiny url不是直接入库然后拿insertID转成a-zA-z0-9么?
h*a2015-02-05 08:0210 楼这道题不是只考hashmap的,呵呵。其实里面考点可以很多。1)基本数据结构,hashmap2) 怎么persist data3)怎么handle非常大的scale4) 怎么生成hash符合各种use case,比如不能被人逆推去browse。5) 需不需要reverse lookup,即给定一个已经入库的长url,找到它对应的短url。...面试官从哪里dig deep都有可能,被问到要尽量随机应变就好。【在 z******f 的大作中提到】: Tiny url不是直接入库然后拿insertID转成a-zA-z0-9么?
g*g2015-02-05 08:0214 楼SHA256 hash should give you collision free hash in practice.【在 s********i 的大作中提到】: Tiny URL设计要求就是没有collision,否则你想想一个hashmap就解决了,还需要设计: 么?
l*22015-02-05 08:0219 楼谢谢回复 :) ,可以详细讲讲吗?或者给个链接参考?【在 z******f 的大作中提到】: Tiny url不是直接入库然后拿insertID转成a-zA-z0-9么?
h*a2015-02-05 08:0220 楼这道题不是只考hashmap的,呵呵。其实里面考点可以很多。1)基本数据结构,hashmap2) 怎么persist data3)怎么handle非常大的scale4) 怎么生成hash符合各种use case,比如不能被人逆推去browse。5) 需不需要reverse lookup,即给定一个已经入库的长url,找到它对应的短url。...面试官从哪里dig deep都有可能,被问到要尽量随机应变就好。【在 z******f 的大作中提到】: Tiny url不是直接入库然后拿insertID转成a-zA-z0-9么?
b*r2015-02-05 08:0221 楼ding big cow :)【在 h*****a 的大作中提到】: 这道题不是只考hashmap的,呵呵。其实里面考点可以很多。: 1)基本数据结构,hashmap: 2) 怎么persist data: 3)怎么handle非常大的scale: 4) 怎么生成hash符合各种use case,比如不能被人逆推去browse。: 5) 需不需要reverse lookup,即给定一个已经入库的长url,找到它对应的短url。: ...: 面试官从哪里dig deep都有可能,被问到要尽量随机应变就好。
s*a2015-02-05 08:0222 楼代价就是空间暴大。。。这种东西可问的太多了 就想知道个作文题目 还是看积累和发挥吧【在 g*****g 的大作中提到】: SHA256 hash should give you collision free hash in practice.
s*y2015-02-05 08:0223 楼库挂了怎么办?service挂了怎么办?数据中心挂了怎么办?你这一句话是拿不到offer的。【在 z******f 的大作中提到】: Tiny url不是直接入库然后拿insertID转成a-zA-z0-9么?
x*12015-02-05 08:0224 楼用ddb存映射就行了 (再用GSI 存反向映射)。 秒杀。 再问,你就是问DDB的问题。怎么 hash key,怎么fault tolerant,怎么LB。 怎么handle 大流量。 不就是分布式的data store么。 问的深了,你也不明白。 怎么实现一个tiny fucntion, 并且满足tiny(tiny) == tiny 。 自己可以去试试。