2010-03-16 7 views
4

Je travaille sur un site Web immobilier utilisant le service RETS pour obtenir les données sur mon serveur local.Problème de récupération de données RETS

mais j'ai un petit problème ici, je peux récupérer des données de RETS qui a environ 3lacks record dans la base de données RETS mais je n'ai pas trouvé le chemin, Comment puis-je récupérer tous les enregistrements dans un paquet de 50k à temps ?

Je n'ai trouvé aucun mot-clé 'LIMIT' sur RETS.so comment puis-je aller chercher sans les enregistrements 'LIMIT' 50k à la fois?

S'il vous plaît aidez-moi.

Répondre

11

RETS n'est pas vraiment un standard. Cela ressemble plus à un pseudo-standard. Il définit librement un schéma XML qui décrit les listes immobilières.

Dans la version 1.x, la "norme" était composée de documents DTD. Dans 2.x, la "norme" utilise des documents XSD pour décrire la liste.

http://www.rets.org/documentation

Cependant, dans la pratique, il n'y a presque pas de cohérence entre les implémenteurs. Ayant établi des liens avec des centaines de fournisseurs de services «conformes à RETS», je suis convaincu qu'aucun d'entre eux ne ressemble à un autre.

De plus, le "standard" 2.x n'a pas changé depuis 3 ans. C'est une tentative non maintenue, bâclée à une norme. Il (RETS) est souvent utilisé comme un mot à la mode par des personnes non techniques. En réalité, il s'agit simplement d'une tentative arbitraire de modélisation de la liste des biens immobiliers en XML.

Essayez de demander à l'implémenteur spécifique de vous documenter. Souvent, ils n'en ont pas. Ainsi, l'envoi par e-mail au développeur principal a souvent été utile. Parfois, ils fournissent un WSDL qui décrira les appels pris en charge. Souvent, le WSDL ne coïncide pas avec le service réel, alors faites attention.

En ce qui concerne votre question spécifique, essayez de mettre en cache les résultats. Habituellement, l'utilisation d'une limite sur un appel RETS est un signe d'une dépendance directe. Au fur et à mesure que les demandes pour votre service augmentent, la charge que votre service met sur le leur va se casser (et ne pas être appréciée). Aussi, si leur service tombe en panne (même temporairement), le vôtre sera également interrompu. Plus important encore, cela rendra les requêtes en direct sur vos pages vraiment, très lentes (surtout si leur système est lent à ce moment-là). Les listes ne changent généralement pas assez fréquemment pour les soucis concernant les données périmées, de sorte que la mise en cache jusqu'à et heure est assez acceptable.

Bonne chance!

+4

N'aurait pas pu le dire mieux moi-même. RETS est un gâchis. Essayez de construire une application qui parle à plus d'un système et vous êtes dans un mal de tête massif. – Jared

+0

J'essaye cela maintenant, je pensais que j'allais utiliser PHP mais maintenant il semble que je devrais utiliser RETS non plus. Si je veux en savoir plus à ce sujet, où dois-je commencer? Merci – Drewdin

+0

Il serait utile que vous décriviez votre problème un peu plus loin. Peut-être pourriez-vous créer une nouvelle question et revenir sur ce commentaire. – Homer6

0

libRets fournit un support pour générer une requête avec fetch limites:

http://www.crt.realtors.org/projects/rets/librets/documentation/api/classlibrets_1_1_search_request.html

Mais enfin je savais: je me souviens de la société Intereality soit ignorée ou pure et simple n'a pas fourni une compatibilité complète à RETS. Le moyen le plus rapide de connaître votre traitement avec eux est que vous pensiez aussi que tous les noms "System" pour les champs de table sont numériques.

Si vous êtes chanceux, vous utilisez un serveur soutenu par Rapattoni et ils fournissent des spécifications. serveurs compatibles. Dernier point, je ne peux pas me souvenir de son nom, mais j'avais l'habitude d'utiliser un outil gratuit RETS basé sur Java pour construire des requêtes valides (clauses offset/limit incluses) et cela a rendu un peu plus facile Construire des récupérateurs automatisés pour le système de traitement par lots d'un client.

+0

Vous pensez probablement à MRIS Conduit. – slkandy

-1

EN RETS si le comte plus que limite, nous pouvons télécharger en utilisant le formulaire de lot ou nous pouvons supprimer cette limite à l'aide regex lors du téléchargement

La meilleure façon de résoudre les données diviser problème Nombre dans une petite unité de téléchargement et alors que nous devons considérer la limite de téléchargement dans l'esprit Champ pour Diviser celui dans MLS/IDX Je suggère la date de modification et ListingDate

Questions connexes