附近门店的实现

门店系统作为O2O体系重要的一环,LBS功能自然是当中必不可少的利器。在搭建附近门店的系统,通常情况需要满足这样的需求:

(1)       附近默认距离(比如两公里)内的某商户的门店

(2)       找不到的话,扩大距离继续查询

(3)       查询到门店,返回距离数据

这么看,是球面空间两点的距离分析问题。可是随着门店数据的增加,简单距离计算的次数就会被放大,我们就会自然地考虑到,门店的位置是固定的,能否进行一些预处理,把门店先切片,然后把用户的位置先放到某个片中,再进行距离计算。

第一种思路,经纬度排除。纬度的每个度大约相当于111km,但经度的每个度的距离从0km到111km不等。它的距离随纬度的不同而变化,等于111km乘纬度的余弦。因此,使用纬度天然分隔,是一种解决方案。假设,现在一个用户的经纬度是(22.534756,113.922333),需要查询十公里内的数据,可以采用纬度小数点后一位进行排除,期后再进行经度排除。显然,这种分片方式显得累赘,而且效率和扩展性都不算特别良好。但是它提供了一种思维方式,既然经纬度可以分块,那把这些小块进行编号,再把商家固定在这些编号块上成为预处理数据,用户进入后再采用同样的编码方式把用户固定到小块上,再在同一个小块里面精确计算距离,不是可以解决问题了么?
于是,第二种思路来了,平面切片方式。Geohash就是当中一种采用二分切分的方法,简单介绍一下其实现原理。

(1)首先将纬度范围(-90, 90)平分成两个区间(-90, 0)、(0, 90), 如果目标纬度位于前一个区间,则编码为0,否则编码为1。

(2)使用前一个编码为1的区域,继续分割,直到达到精度要求。

(3)经度和纬度的编码合并,奇数位是纬度,偶数位是经度。得到一个二进制序列

(4)每五位分割序列(base32编码),使用数字0-9以及字母b-z(排除a、i、l、o)编码。

(5)由于临近两个方格的编码差异极大,因此需要检索的两个点是否在某个范围内,需要进行对周边八个格子的检索。

geohash精度列表

下面的介绍,所使用hash1,即为一位字母编码值,同理,hash6为六位字母编码值。


hash取值


面积(km^2)


大概的纵横(纬度*经度)乘积(km*km)


1(地球总面积)


510,065,600


16384*32768


hash1


15,939,500


4096*4096


hash2


498,110


512*1024


hash3


15,565


128*128


hash4


486


32*16


hash5


15


4*4


hash6


0.5


1*0.5


hash7


15625(m^2)


125*125(m*m)


hash8


488.28125(m^2)


31.25*15.625(m*m)

说到这里,假如需要查询附近两公里的门店,应该采用那种hash取值去算呢?
[object Object]
上图为hash6的九宫格排布,图中每个小格都为1KM*0.5KM的面积,用户点在E格中任意位置,于是能看到,九宫格内能保证至少查询出附近0.5KM的门店,要满足2KM的需求,就需要81个格子。同样方式发现hash5只需要九个格子即可满足,但是最大覆盖范围达到了10KM,不满足距离要求门店数量可能会比较多。
分片筛选之后,得到基本满足需要的门店集合,再进行球面距离计算,即可得到门店距离了。
时间: 2024-10-14 09:44:03

附近门店的实现的相关文章

微信公众号可快速创建“门店小程序” 不用开发

“门店小程序”是啥?“门店小程序”是小程序的一项新能力.无需开发,商户就可在微信公众号后台快速创建“门店小程序”.这个小程序类似一张“店铺名片”,可以展示线下门店名称.简介.营业时间.联系方式.地理位置和图片等门店信息,并支持在公众号自定义菜单.图文消息和模板消息等场景中使用. 它长这样: (左侧为“门店小程序”示意图,将来商户可根据需要为门店小程序快速配置卡券.支付功能) “门店小程序”和你们平时用到的小程序不同点在于: 页面标准化——便于用户识别:指向性明确——是一个“门店”:创建简单——公

python自动化,自动登录并且添加一个门店

''' 本文主要通过以前公司的对外平台,测试自动登录并且自动添加一个门店 ''' # _*_ coding: utf-8 _*_ from selenium import webdriverimport timedriver = webdriver.Chrome()driver.maximize_window()driver.get("http://121.41.42.104:18888")driver.find_element_by_name("UserName"

使用微软的(how-old.net)构建智能门店管理系统

现在是大数据时代,每个企业都要对自己的客户有全面的认识,这样才能最准确的分析客户,做出相应的决策.在实体的门店中,对于客户的管理还是比较低级,很多客户对于企业来说是哑终端,即对于企业来说,完全不知道客户的信息,不知道客户的年龄,性别,收入,爱好等. 智能门店客户信息统计具有以下几个功能: 自动统计客流,统计每天客流量数据 抓拍客户的人像图片,是微软的系统统计客户年龄,性别 根据微软返回的图片的json数据,识别是新老客户 基础设施: 现在各个商场门店都安装了监控系统,但是这样系统仅仅是监控,能做

《不可消失的门店》:零售业线上线下互动的研究,3星。

全书是一些比较严肃的学术研究论文的科普,这些论文大部分关注的领域是零售行业的线上与线下的相互影响,有一些比较有意思的信息.基本的观点:门店对于服装类基本需要体验实物后才购买的商品来说是不可替代的:物理环境与社交网络会影响人对商品的喜好:空间长尾理论. 整体的条理性略差.我的评价是3星. 翻译我给2星.估计是译者自作聪明地把ebay翻译成了淘宝,书中的“小明”“老王”应该也是类似的思路的结果,app翻译成“应用”不太合适(应该不翻译直接用英文).个别地方看着上下文有矛盾,估计是误译. 以下是书中一

海典ERP与汉码盘点机对接门店实时盘点计划及程序使用方法,实时盘点,云盘点方案

1.     PDA手持设备按键说明 [Tab]键:使输入焦点在控件上切换. [ESC]键:弹出是否退出确认对话框,退出操作界面或程序. [OK]键:确认输入或选择,进入下一步操作. [C]键:删除键,或者回退上一步操作. [#]键:快速切换和隐藏/显示输入法对.通过[#]号键可以在各种输入法之间进行切换. 2.     门店盘点前准备工作 2.1.  登记帐存并生成盘点单号和盘点页码(在ERP管理软件中) 1.       在ERP医药管理软件上进行盘点登记:注:每次盘点之前首先要对将要盘点的

小程序门店自提功能开启,酷客多带你玩转O2O模式

目前小程序的发展已经如火如荼,不管是新型行业还是传统行业,都进军小程序领域,由此为广大消费者带来了方便与快捷,现在许多商家品牌将线上线下结合互动起来,推广门店自提的模式,酷客多小程序(http://www.kukeduo.cn)这周推出了门店自提功能,这对于商家和消费者来说都是一个大大的惊喜. 门店自提究竟给商家和消费者带来什么便利呢?酷客多小程序来给你分析分析.首先这一功能将点对点的配送简化成点对店的配送,避免了二次或多次配送,减少了配送成本.尤其是在交通复杂.堵塞的城市:节约了顾客等待时间,

用户画像之门店用户类型的体系

Cft用户画像 1. 根据市场调查反馈,作出用户画像,定型探究.主要使用人员2种,门店接待前台人员,非修理人员,修车小妹居多. 2. 用户细分 修车客户,修车员,修车接待 3. 细化.接待员收集客户信息,查看已有接待记录,提高信息准确性,修车员主要是产品服务信息选择,方便客户选择商品,服务,更好的为客户服务 4. 修车客户 .进店接待,报告问题需求,选择商品服务,完成目标需要,修车,保养,美容等,查看已有的修车信息 5. 总结,3种角色来构成客户接待主要角色,还有一个潜在使用角色,门店的厂商管理

jsp服装连锁门店管理系统

该服装连锁门店的开发语言是JSP,后台数据库是sqlserver,主要实现了在线的门店管理,对服装的销售和出入库信息进行了有效的管理.系统主要功能如下所示:连锁店门店系统的模块:1).前台收银收银(计算) ,前台当班,前台交班,库存数量查询, 赠品查询,密码修改 2).系统后台功能门店基础资料,门店员工资料,会员客户资料,用户资料管理,用户权限管理,密码管理 3).库存管理 出入库记录,库存预警设置,库存查询,供应商资料,商品资料,赠品管理,订退货记录4).报表管理 销售收入统计表,商品价格查询

如何开发线下门店管理系统软件

随着店铺的扩大,商品和员工的增多,门店管理仅仅是靠手工记账.手工整理等就显得效率跟不上了.为了促进门店的销售,提高门店的转化率,更好地发展门店,因此门店管理系统应运而生. 门店管理系统功能包括对门店所有的经营活动的管理,比如覆盖店务涉及的导购.顾客.库存.业绩.分析.激励.提醒等. 门店管理系统软件的功能不止有十大功能 1.订单管理 快速收款.会员下单.自动返利 2.门店管理 门店信息.营业状态维护,多门店统一管理,自由切换 3.会员管理 等级划分.备注偏好.精准识别会员价值.针对性开展营销.事

顺丰518家“嘿客”门店上线:不止是快递

进入微软.亚马逊,谷歌等美国IT企业工作人才项目,起薪40万,百度搜索(MUMCS) "首批正式开业 518 家,除快递物流业务.虚拟购物外,'嘿客'还具备 ATM.团购预售.试衣间.洗衣.家电维修等多项业务."昨日(5 月 18 日),顺丰速运官方宣布了上述消息,传言甚久的顺丰"嘿客"门店正式揭开面纱. 顺丰相关负责人表示,首批亮相的 518 家"嘿客"内部仍归属"试运营"系统,通过试运营,顺丰会不断开设新的"嘿客