I'm really thinking, once you convert to YYYY-MM-DD anyway, you might be better off just sticking this in a string field, rather than using a date field at all. The extra precision in the date field is going to make things confusing later, I predict. Especially for a quick and dirty prototype, I'd just use a string.

Solr is not an rdbms, our learned behavior to always try and normalize everything and define the field 'right' often is not the right way to go with solr/lucene.

Jonathan

Rico Lelina wrote:
I'm going with option 1, converting MM/DD/YYYY to YYYY-MM-DD (which is fairly easy in XSLT) and then adding T00:00:00Z to it.

Thanks.



----- Original Message ----
From: Erick Erickson <erickerick...@gmail.com>
To: solr-user@lucene.apache.org
Sent: Wed, September 8, 2010 12:09:55 PM
Subject: Re: How to import data with a different date format

I think Markus is spot-on given the fact that you have 2 days. Using a
string field is quickest.

However, if you absolutely MUST have functioning dates, there are three
options I can think of:
1> can you make your XSLT transform the dates? Confession; I'm XSLT-ignorant
2> use DIH and DateTransformer, see:
http://wiki.apache.org/solr/DataImportHandler#DateFormatTransformer
      you can walk a directory importing all the XML files with
FileDataSource.
<http://wiki.apache.org/solr/DataImportHandler#DateFormatTransformer>3> you
could write a program to do this manually.

But given the time constraints, I suspect your time would be better spent
doing the other stuff and just using string as per Markus. I have no clue
how SOLR-savvy you are, so pardon if this is something you already know. But
lots of people trip up over the "string" field type, which is NOT tokenized.
You usually want "text" unless it's some sort of ID.... So it might be worth
it to do some searching earlier rather than later <G>....

Best
Erick

On Wed, Sep 8, 2010 at 12:34 PM, Markus Jelsma <markus.jel...@buyways.nl>wrote:

No. The Datefield [1] will not accept it any other way. You could, however,
fool your boss and dump your dates in an ordinary string field. But then you
cannot use some of the nice date features.



[1]:
http://lucene.apache.org/solr/api/org/apache/solr/schema/DateField.html

-----Original message-----
From: Rico Lelina <rlel...@yahoo.com>
Sent: Wed 08-09-2010 17:36
To: solr-user@lucene.apache.org;
Subject: How to import data with a different date format

Hi,

I am attempting to import some of our data into SOLR. I did it the quickest
way
I know because I literally only have 2 days to import the data and do some
queries for a proof-of-concept.

So I have this data in XML format and I wrote a short XSLT script to
convert it
to the format in solr/example/exampledocs (except I retained the element
names
so I had to modify schema.xml in the conf directory. So far so good -- the
import works and I can search the data. One of my immediate problems is
that
there is a date field with the format MM/DD/YYYY. Looking at schema.xml, it
seems SOLR accepts only full date fields -- everything seems to be
mandatory
including the Z for Zulu/UTC time according to the doc. Is there a way to
specify the date format?

Thanks very much.
Rico




Reply via email to