我正在开发一个房地产网站,即使用RETS服务将数据传输到我的本地服务器。
但是我在这里有一点点问题,我可以从RETS中获取数据,这个数据在RETS数据库中有大约3个记录,但是我找不到方法,我怎么能一次取50k的所有记录?
我在RETS上没有找到任何'LIMIT'关键字。那我如何在没有'LIMIT'50k记录的情况下一次获取?
请帮帮我。
答案 0 :(得分:11)
RETS并不是一个标准。它更像伪标准。它松散地定义了描述房地产列表的XML模式。
在版本1.x中,“标准”由DTD文档组成。在2.x中,“标准”使用XSD文档来描述列表。
http://www.rets.org/documentation
然而,在实践中,实施者之间几乎没有一致性。连接到数百个“RETS兼容”服务提供商后,我确信其中没有一个与其他服务提供商一样。
此外,2.x“标准”在3年内没有变化。这是对标准的无保留,邋try的尝试。它(RETS)通常被非技术人员用作商业流行词。实际上,它只是在用XML建模房地产列表时的任意尝试。
尝试向具体的实施者询问他们的文档。通常,他们没有。因此,向首席开发人员发送电子邮件通常很有帮助。有时他们会提供一个WSDL来概述支持的调用。通常,WSDL与实际服务不一致,所以要小心。
至于您的具体问题,请尝试缓存结果。通常,对RETS调用使用限制是直接依赖的标志。随着您的服务请求的增加,您的服务对其服务的负担将会中断(并且不被理解)。此外,如果他们的服务中断(甚至暂时),您的服务也将被中断。最重要的是,它会使您对页面的实时请求真正,非常慢(特别是如果他们的系统当时很慢)。由于对过时数据的担忧,列表通常不会经常更改,因此缓存最多和小时是可以接受的。
祝你好运!
答案 1 :(得分:0)
libRets支持使用获取限制生成查询:
但最后我知道:我记得公司的Intereality要么被忽略,要么完全没有提供与RETS的完全兼容性。知道你处理它们的最快方法是,还要考虑将表字段的所有“系统”名称都设为数字。
如果你很幸运,你正在使用Rapattoni支持的服务器,他们确实提供了规范。兼容的服务器。
最后一点,我不能为我的生活记住它的名字,但我曾经使用免费的基于Java的RETS工具来构建有效的查询(包括偏移/限制子句),这使得它更容易构建客户端批处理系统的自动取件器。
答案 2 :(得分:-1)
如果计数超过限制,则在RETS中我们可以使用批处理表单下载,或者我们可以在下载时使用正则表达式删除该限制
解决问题的最佳方法以小的下载单位划分数据计数,同时我们必须考虑下载限制字段在MLS / IDX中划分一个我建议修改日期和列表日期