|
|
10-25-2014, 10:24 AM
|
#16
|
The Voice of Reason!
Join Date: Mar 2001
Location: Canandaigua, New york
Posts: 112,871
|
Class, visit Raybo's site and look around - might be worthwhile to you.
* * *
Mongo crunch numbers!
__________________
Who does the Racing Form Detective like in this one?
|
|
|
10-25-2014, 10:48 AM
|
#17
|
Registered user
Join Date: Oct 2008
Location: FALIRIKON DELTA
Posts: 4,439
|
Quote:
Originally Posted by DJofSD
DeltaLover, you mentioned Mongo. I just learned about it but not used it. When I look at the capabilities of the database, I don't immediately see where I could use it. What are you doing with it, what do you stuff into it that you can not use a traditional RDBMS to do?
|
Mongo belongs in a family of database technologies called NoSQL, that differs from the classical relational databases in the sense that it does not use the tabular representation and foreign key relation found on them. In mongo every 'record' is self-suffiecient and can be visualized as a tree of key – value pairs that do not need to comply in a predefined schema but can instead contain any kind of fields avoiding the homogeneous representation is a requirement in RDBM systems.
An example might help to understand the differences a little better..
Let's say that you have a European Shipper and need to stored his past performances in the database.
Note that an European pp differs from a North American since it is missing some data (like fractional times, beyer speed figures, and track variant for example) , while it might have some other Euro Specific data (like Racing Post Rating for example).
If you employ a RDBM then you will have something like a table called Starter where you store information like horse name, jockey, trainer etc and another table called past performances where you store things like track code, date, first fraction position and time etc... As can you see now, for the Euro past performances, you either are going to use some dummy value for the missing values and even need to create some new 'columns' for the missing data or you might even create another table called Euro Past Peformance and link to it by a foreign key... Using mongo, you do not have any of these problems , since there is no schema that you need to comply and you just save the past performance exactly as it provided to you..
An additional benefit of mongo, has to do with the fact that you do not need to create modeling classes, which will have to be populated from the databased using some middle layer coding serving as class factory. Based in the organization of the data in key – value pairs, there exist generic libraries (depening on the language of choice) that provide you an automatically created object exposing all the available properties.. This feature makes it possible to treat the data base data structures as first class objects of the language you are using.
If interested you can find tons of related free documentation on the Web and you can of course download and start experimenting with mongo in a matter of seconds by downloading from: http://www.mongodb.org/
__________________
whereof one cannot speak thereof one must be silent
Ludwig Wittgenstein
|
|
|
10-25-2014, 10:52 AM
|
#18
|
Screw PC
Join Date: Jun 2003
Posts: 15,728
|
Sorry, I guess I did not ask the question properly. Yes I am aware of the SQL v. NoSQL.
What I wanted to know is how you are using Mongo -- what type of data are you keeping in it and how does it fit into your handicapping process?
__________________
Truth sounds like hate to those who hate truth.
|
|
|
10-25-2014, 10:59 AM
|
#19
|
Registered user
Join Date: Oct 2008
Location: FALIRIKON DELTA
Posts: 4,439
|
Quote:
Originally Posted by DJofSD
Sorry, I guess I did not ask the question properly. Yes I am aware of the SQL v. NoSQL.
What I wanted to know is how you are using Mongo -- what type of data are you keeping in it and how does it fit into your handicapping process?
|
One of the main things I am using mongo for, it to store entire DRF cards as they come from BRIS, something the makes it very simple to iterate through them and do back testing for handicapping factors, ratings etc. As I explained in the previous post, the nature of the past performances is such that they no fit well in a classical relational model and it would had been a lot of work to design both the model and the import - retrieval processes.
__________________
whereof one cannot speak thereof one must be silent
Ludwig Wittgenstein
|
|
|
10-25-2014, 11:02 AM
|
#20
|
Screw PC
Join Date: Jun 2003
Posts: 15,728
|
OK, thanks. So you treat the entire data set as a BLOB and then stuff it into Mongo for quick/easy retrieval -- close?
__________________
Truth sounds like hate to those who hate truth.
|
|
|
10-25-2014, 11:12 AM
|
#21
|
Registered user
Join Date: Oct 2008
Location: FALIRIKON DELTA
Posts: 4,439
|
Quote:
Originally Posted by DJofSD
OK, thanks. So you treat the entire data set as a BLOB and then stuff it into Mongo for quick/easy retrieval -- close?
|
I have a process that reads the drf, assigning the field names for each row and field and creating a dictionary containing other nested dictionaries which are then stored in mongo creating a json like representation of the whole card
__________________
whereof one cannot speak thereof one must be silent
Ludwig Wittgenstein
|
|
|
10-25-2014, 11:40 AM
|
#22
|
Screw PC
Join Date: Jun 2003
Posts: 15,728
|
Interesting.
My immediate take away is using the dictionary of dictionaries along with the Mongo database allows you a way to represent many-to-many relationships or at least makes it easier to handle such relationships than if strictly using a traditional RDBMS.
__________________
Truth sounds like hate to those who hate truth.
|
|
|
10-25-2014, 12:55 PM
|
#23
|
Registered User
Join Date: Mar 2005
Location: Queens, NY
Posts: 20,613
|
Quote:
Originally Posted by Tom
Class, visit Raybo's site and look around - might be worthwhile to you.
* * *
Mongo crunch numbers!
|
Thanks. I intend to.
I'm on vacation for a week starting this morning. I'm planning to install Access and pick up one of the "dummy" books today. I want to be in a position to do something decent for next year, even if it's just loading the database.
__________________
"Unlearning is the highest form of learning"
|
|
|
10-25-2014, 05:21 PM
|
#24
|
Registered User
Join Date: Nov 2012
Posts: 1,542
|
Quote:
Originally Posted by classhandicapper
Thanks. I intend to.
I'm on vacation for a week starting this morning. I'm planning to install Access and pick up one of the "dummy" books today. I want to be in a position to do something decent for next year, even if it's just loading the database.
|
Enjoy your vacation. If you get stuck on anything Access related (excellent choice btw) don't hesitate to ask. I don't know it inside and out, like reports and what not, but I have a rather good amount of experience to draw from.
|
|
|
10-25-2014, 06:52 PM
|
#25
|
Registered User
Join Date: Feb 2003
Posts: 2,105
|
Quote:
Originally Posted by MJC922
Enjoy your vacation. If you get stuck on anything Access related (excellent choice btw) don't hesitate to ask. I don't know it inside and out, like reports and what not, but I have a rather good amount of experience to draw from.
|
ditto
|
|
|
10-25-2014, 08:05 PM
|
#26
|
EXCEL with SUPERFECTAS
Join Date: Mar 2004
Posts: 10,206
|
Quote:
Originally Posted by classhandicapper
Thanks. I intend to.
I'm on vacation for a week starting this morning. I'm planning to install Access and pick up one of the "dummy" books today. I want to be in a position to do something decent for next year, even if it's just loading the database.
|
Good luck with Access, I tried several times to create a racing database in it, without accomplishing anything, couldn't even get the tables set up.
|
|
|
10-27-2014, 09:20 AM
|
#27
|
Registered User
Join Date: Mar 2005
Location: Queens, NY
Posts: 20,613
|
Quote:
Originally Posted by raybo
Good luck with Access, I tried several times to create a racing database in it, without accomplishing anything, couldn't even get the tables set up.
|
Yikes.
__________________
"Unlearning is the highest form of learning"
|
|
|
10-27-2014, 09:46 AM
|
#28
|
Screw PC
Join Date: Jun 2003
Posts: 15,728
|
Quote:
Originally Posted by raybo
Good luck with Access, I tried several times to create a racing database in it, without accomplishing anything, couldn't even get the tables set up.
|
Try using Open Office Base. It has a nice UI with wizards that will allow you to create and use tables and databases without too much effort.
It's a good sand box and should allow you to master some aspects of RDBMS topics. It might help you get over the hump to retry using Access.
__________________
Truth sounds like hate to those who hate truth.
|
|
|
10-27-2014, 10:12 AM
|
#29
|
Registered user
Join Date: Oct 2008
Location: FALIRIKON DELTA
Posts: 4,439
|
I really do not think there is anything special or complicated about using Access, Mysql, SqlServer or any other similar technology, to store horse racing related data, in contrary I find the whole process as very straight forward and simple... Again, there is no reason tom use the antiquated Access since there exist more powerful, standardised and free of charge alternative like mysql, mongodb and sqlite, just to name a few..
__________________
whereof one cannot speak thereof one must be silent
Ludwig Wittgenstein
|
|
|
10-27-2014, 11:04 AM
|
#30
|
The Voice of Reason!
Join Date: Mar 2001
Location: Canandaigua, New york
Posts: 112,871
|
DJ....can OO open Acess DB files?
__________________
Who does the Racing Form Detective like in this one?
|
|
|
|
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
|
|