Сообщение от Kolyaj
|
Меня тоже. Но для небольших задач неохота поддерживать ещё сервер базы данных.
|
ну вот я так понял, тебе это скорее для каких-то личных задач
Сообщение от Kolyaj
|
Угу, у меня не релятивные мозги
|
ну это дело привычки. Но вообще я имел в виду, что есть key/value, а есть no relational database.
Я irc-канал #kohana периодически читаю, там довольно интересные люди есть (в первую очередь zombor). Там из key/value cassandra рекомендовалась. Если кто захочет почитать обсуждение, вот:
(12:11:09 AM) _ikke_: Not ORM in general, but the kohana module
(12:11:23 AM) TimothyA: really? I found it rather easy to (ab)use
(12:11:32 AM) _ikke_: That's the whole problem
(12:11:33 AM) TimothyA: and twist it into sick ways for my perverse goals
(12:11:52 AM) _ikke_: It makes other's peoples life misserable
...
(12:12:32 AM) Isaiah: _ikke_: Anything can be abused. I don't think ORM is near as bad as people make it out to be
(12:12:46 AM) Isaiah: Of course that doesn't mean I'm totally happy with it either ;)
(12:13:05 AM) _ikke_: Isaiah: Some things are easier to abuse then others
...
(12:25:13 AM) Isaiah: I use couchdb now, my life is a lot more relaxing :)
(12:25:40 AM) jtreminio: I'm looking into migrating to postgre
(12:25:55 AM) _ikke_: Isaiah: Is it really such an improvement?
(12:25:59 AM) iammerrick: Isaiah: Must be nice! Do you have any open source kohana layer for working with it?
(12:26:30 AM) Isaiah: _ikke_: It depends on what you are doing. You have to think about your data totally different (from relational databases), but I really like it
(12:26:51 AM) Isaiah: iammerrick: I have one that I've been meaning to push to github. Hopefully I will find time to do that this weekend
(12:26:57 AM) jtreminio: is it just a key => value DB?
(12:27:01 AM) iammerrick: Isaiah: please do.
(12:27:12 AM) iammerrick: jtreminio: CoucheDB is a restful database
(12:27:15 AM) iammerrick: nosql
(12:27:16 AM) _ikke_: Yeah, I figured you don't really care about data normalization (ie, preventing redundancy) right?
(12:27:18 AM) iammerrick: pretty cool stuff.
(12:27:25 AM) salathe: roll out the buzz word machine :)
(12:27:34 AM) Isaiah: jtreminio: It's a document-oriented database
(12:27:51 AM) Isaiah: So it's a lot more than just a simple key/value store like memcached
(12:27:59 AM) _ikke_: JSON based, right?
(12:28:09 AM) Isaiah: Yeah
(12:28:11 AM) iammerrick: jtreminio, Isaiah: The main difference vs Mongo is really the RESTful interface right?
(12:28:27 AM) Isaiah: iammerrick: No, they are a lot of differences
(12:28:46 AM) iammerrick: Isaiah: behind the seens like the scaling mechanisms etc right?
(12:29:27 AM) Isaiah: couchdb is focused on being distributed and crash resistant. Mongo is focused more on flexibility and speed.
(12:29:47 AM) iammerrick: Isaiah: awesome.
(12:29:56 AM) iammerrick: Isaiah: where/what do you work on
(12:29:57 AM) iammerrick: ?
(12:30:02 AM) _ikke_: Flexible in what way?
(12:30:04 AM) Isaiah: Mongo is an easier option if you are coming from a relational database
(12:30:17 AM) Isaiah: _ikke_: You can do dynamic queries with Mongo
(12:30:39 AM) Isaiah: iammerrick: I currently work for myself, and I work on lots of different projects
(12:30:57 AM) _ikke_: What do dynamic queries mean?
(12:31:26 AM) iammerrick: Isaiah: Nice. Thats pretty bad eh?
(12:31:29 AM) _ikke_: [url]http://www.mongodb.org/display/DOCS/Comparing+Mongo+DB+and+Couch+DB[/url]
(12:31:53 AM) Isaiah: iammerrick: Not really :)
(12:32:03 AM) iammerrick: like bad as in cool
(12:32:04 AM) iammerrick: like
(12:32:10 AM) iammerrick: man that is bad!
(12:32:13 AM) ***salathe curses mongo
(12:32:14 AM) Isaiah: _ikke_: With couchdb you need to plan what data you need ahead of time and write a map/reduce method for it
(12:32:19 AM) iammerrick: haha :-) get it?
(12:32:26 AM) _ikke_: Isaiah: Ah, right
(12:32:33 AM) Isaiah: With Mongo you can write the "query" in your application and it will build an index based on that
(12:33:13 AM) iammerrick: wtf is collection based ?
(12:33:14 AM) Isaiah: I like couchdb better because replication is so much fun :)
(12:33:17 AM) iammerrick: [url]http://www.mongodb.org/display/DOCS/MongoDB%2C+CouchDB%2C+MySQL+Compare+Grid[/url]
(12:34:43 AM) _ikke_: iammerrick: ^^^
(12:34:51 AM) _ikke_: I posted that link 2 mins ago
(12:35:38 AM) iammerrick: _ikke_: sorry
(12:35:43 AM) iammerrick: the chat must be moving to fast
(12:36:51 AM) _ikke_: Oh wait, those are different links
(12:37:11 AM) Isaiah: iammerrick: Each database is a collection of documents... I guess that's what they mean
(12:37:44 AM) iammerrick: Isaiah: ahh ok
(12:37:49 AM) iammerrick: I have a question about the use case of nosql.. I still I'm trying to figure that out. Say I am collection user data and visualizing it, the visualization graphs need the same set of data is that a valid nosql situation? I mean the nosql would be great for scaling that...
(12:38:06 AM) iammerrick: I really don't get when its appropriate to use relational vs document stores.
(12:38:35 AM) _ikke_: relational databases are important if referential integrity is important
(12:39:27 AM) _ikke_: nosql databases are often faster, and easier to replicate, at the cost of referential integrity enforcement
(12:40:27 AM) Isaiah: RIght, a relational database is going to focus more on consistency and availability, and were document databases focus on partition tolerance and availability (think of the CAP theorem)
(12:41:44 AM) _ikke_: CAP theorem?
(12:41:57 AM) iammerrick: so Isaiah if I'm starting fresh, you recommend CouchDB to start?
(12:41:59 AM) _ikke_: ah, right
(12:42:04 AM) iammerrick: _ikke_: its a theory in distributed systems
(12:42:14 AM) _ikke_: found the wiki on it
(12:42:16 AM) iammerrick: Consistency availabli
(12:42:18 AM) iammerrick: oh ok :)
(12:42:35 AM) iammerrick: thats good cause I can't remember the P
(12:42:45 AM) _ikke_: partition tolerance
(12:42:49 AM) Isaiah: iammerrick: It all depends ;)
(12:43:04 AM) _ikke_: Couch: Fail resist. Mongo: speed
(12:43:07 AM) iammerrick: Isaiah: in the case of gathering spreadsheets and mapping them to graphs.
(12:43:11 AM) zombor: WEB SCALE!!!!!
(12:43:18 AM) _ikke_: /dev/null db
(12:43:33 AM) _ikke_: unlimited storage
(12:43:36 AM) _ikke_: instant write
(12:43:38 AM) Isaiah: I really like couchdb, but Mongo is an easier choice if you are coming from a relational database world
(12:43:46 AM) iammerrick: Isaiah: Mongo it is for now.
(12:44:02 AM) _ikke_: I still need to look into nosql databases
(12:44:08 AM) zombor: nobody ever talks about cassandra :(
(12:44:17 AM) Isaiah: zombor: I tried it!
(12:44:27 AM) Isaiah: It was way too confusing for me
(12:44:28 AM) _ikke_: zombor: Okay, tell me about cassandra
(12:44:35 AM) zombor: lol
(12:44:40 AM) _ikke_: s/me/us
(12:44:49 AM) zombor: google can tell you about it :p