|
tef posted:I've been using it in production for a year, so I know it works. I still don't think it is ready. application/vnd.glyph; version=1.0
|
# ? Jul 20, 2012 17:31 |
|
|
# ? May 31, 2024 07:15 |
|
BonzoESC posted:this is why you implement and version all the database changes with the app, because unlike java soap developers, web devs are actually trusted with the database structure and don't need a dba to babysit them lol no. i write most of my sql anyways, but i do it in procs because its correct. direct object mapping always results in bad databases or tons of code to combine object relationships that you should have done in the proc.
|
# ? Jul 20, 2012 17:37 |
|
also lmao @ nosql users. congrats on discovering lotus notes.
|
# ? Jul 20, 2012 17:37 |
|
tef posted:I've been using it in production for a year, so I know it works. I still don't think it is ready.
|
# ? Jul 20, 2012 17:56 |
|
Zombywuf posted:application/vnd.glyph; version=1.0 it isn't even version .5 yet. currently I need to add a few data types (form input types) , specify a few options and the format should be frozen.
|
# ? Jul 20, 2012 18:01 |
|
Why are they not version 1.1 features?
|
# ? Jul 20, 2012 18:05 |
|
because I don't plan on having a version 1.1
|
# ? Jul 20, 2012 18:15 |
|
ok that's a lie, but 1.0 -> 1.1 should have no underlying format changes. 1.0 is when I promise i'm not going to break it
|
# ? Jul 20, 2012 19:56 |
|
read my lips: no new APIs
|
# ? Jul 20, 2012 20:06 |
|
Shaggar posted:i write most of my sql anyways, but i do it in procs because its correct. so do you write a proc for any operation that touches the db, even cases where it's data from a single table? seems like you'd be replacing the overhead of setting up an or map with the overhead of creating a proc. quote:tons of code to combine object relationships that you should have done in the proc.
|
# ? Jul 20, 2012 21:33 |
|
Shaggar posted:lol no. i write most of my sql anyways, but i do it in procs because its correct. direct object mapping always results in bad databases or tons of code to combine object relationships that you should have done in the proc. the "tons of code" is a one-line declaration in the model code:
if you want to grab a customer with all their orders you can do Customer.find(555, include: :orders)
|
# ? Jul 20, 2012 21:40 |
|
owenkun posted:so do you write a proc for any operation that touches the db, even cases where it's data from a single table? seems like you'd be replacing the overhead of setting up an or map with the overhead of creating a proc. yeah sometimes i end up with single line procs but the security benefits and ease of potential future changes outweigh the extra few minutes it costs. BonzoESC posted:the "tons of code" is a one-line declaration in the model none of that belongs in code. at worst it belongs in the map config, but it really should be in ur procs. otherwise its yet another thing you need to test.
|
# ? Jul 20, 2012 21:51 |
|
i think shaggar's implying that the sql schema and queries generated by the ORM to satisfy those requests isn't optimal. but for what definition of optimal and how big a performance penalty are we talking here? it's just so easy
|
# ? Jul 20, 2012 21:51 |
|
if its hibernate, the performance penalty is pretty big. hibernate makes some lovely sql and does alot of dumb crap. also you've gotta worry about it not loving up things like locks. something thats v easy to handle in a proc w/ the added benefit of removing the concern from your application code.
|
# ? Jul 20, 2012 21:53 |
|
i don't like hibernate a lot but its performance and locking characteristics are basically fine but like everything else, if you just slap it on an app and don't understand what you are doing you will make a worse piece of poo poo than you would have just using straight sql
|
# ? Jul 20, 2012 22:07 |
|
Shaggar posted:none of that belongs in code. at worst it belongs in the map config, but it really should be in ur procs. otherwise its yet another thing you need to test. stored procs are just code that's deployed into the db instead of the app server
|
# ? Jul 20, 2012 22:21 |
|
Condiv posted:I've been looking into databases recently, and I was curious about ORMs. Please correct me if I'm wrong, but they're basically just a bad way of treating a RDBMS like an OODBMS right? i've just started working with core data and it is ftw
|
# ? Jul 20, 2012 22:23 |
|
what do you guys use to manage your database source code? i don't mean source control because obv you're using that but rather how do you store it and deploy it? i used to use an in-house homegrown data dictionary solution back in my oracle days which sucked then for sql server i used a homegrown batch solution which made you code deltas for each release by hand which also sucked now i use team system database projects (aka datadude) because i'm all on the MS stack and current system is database first not code first and filled with sprocs it's pretty good and generates deploy scripts automatically but a bit on the slow side if your database is complex (more about datadude if you have no idea what i'm talking about : http://msdn.microsoft.com/en-us/library/aa833292(v=vs.100).aspx) are there other similar solutions out there? bc i haven't seen any and i want to try getting off the ms stack
|
# ? Jul 21, 2012 01:33 |
|
I've posted about it before, but I use liquibase for versioning our database. I love it because it's pretty much fool proof as long as we go through our staging environment to catch any bugs that might not be caught on developers machines. I really like that the changesets live in the same source tree as our normal server code, so that way the two are never out of sync. We use Postgres and it runs the changesets as transactions, so if any of them fail it automatically rolls back and keeps everything safe.
|
# ? Jul 21, 2012 01:53 |
|
MEAT TREAT posted:I really like that the changesets live in the same source tree as our normal server code, so that way the two are never out of sync. We use Postgres and it runs the changesets as transactions, so if any of them fail it automatically rolls back and keeps everything safe. that sounds cleaner than what we do in theory datadude should be able to do a backup and rollback but i never really had much luck with it and our dbas wouldn't trust it anyway so manual backups ahoy
|
# ? Jul 21, 2012 01:57 |
|
Arnold Yabenson posted:what do you guys use to manage your database source code? android has some stupid halfassed builtin versioning system where you have to do everything by hand but who cares it's a phone and my database is simple
|
# ? Jul 21, 2012 03:06 |
|
who cares its a phone is pretty much the android m.o.
|
# ? Jul 21, 2012 04:42 |
|
orms, stored procs, etc alone will never give you the advertised decoupling from your database. figure out what your data access needs are and put those behind interfaces, a data access "layer" if you will. you can implement those interfaces with whatever technology you want, even using different technologies for different calls if you need to arguing about which technology dictates the rest of your code is a huge red herring. it's poor architecture that causes your data access technology to impinge on your code, not the tech itself personally i like cqrs as a way of dividing up my data access layer interfaces. but that's a separate issue don't fall into the trap of calling your orm or database directly from business logic or ui code, put that interface in there and you'll thank yourself later
|
# ? Jul 21, 2012 09:03 |
|
ninjeff posted:orms, stored procs, etc alone will never give you the advertised decoupling from your database. figure out what your data access needs are and put those behind interfaces, a data access "layer" if you will. you can implement those interfaces with whatever technology you want, even using different technologies for different calls if you need to Or you can be the super meat boy guy and make direct MySQL calls all over your code to the online leaderboard with a privileged account and claim its not a problem even though it's continuously abused
|
# ? Jul 21, 2012 11:56 |
|
Arnold Yabenson posted:what do you guys use to manage your database source code? SQL code:
|
# ? Jul 21, 2012 12:41 |
|
Gonna putz around with ruby on rails and couchdb. See how the other side lives.
|
# ? Jul 21, 2012 18:37 |
|
rails is great unless you want to do anything outside of rails g website and couchdb is great unless you want to actually write data. or have some horizontal scaling. or do anything really.
|
# ? Jul 21, 2012 18:42 |
|
*inhales sharply* coreo data ftw *is pelted by disembodied penises*
|
# ? Jul 21, 2012 19:13 |
|
tinselt0wn posted:rails is great unless you want to do anything outside of rails g website i don't know what you mean rails g website and i decided on mongodb since it looks like it has binary data types and poo poo. this is p much just to expand my horizons
|
# ? Jul 21, 2012 19:36 |
|
Casao posted:i don't know what you mean rails g website into the trash
|
# ? Jul 21, 2012 19:37 |
|
Casao posted:i don't know what you mean rails g website rails is good but mongo is trash everything mongo does postgres does better (except the part where mongo's idiotic manual sharding procedure brings your poo poo down)
|
# ? Jul 21, 2012 19:44 |
|
the widespread acceptance of mongodb into production is frankly embarassing
|
# ? Jul 21, 2012 19:49 |
|
tinselt0wn posted:the widespread acceptance of mongodb into production is frankly embarassing web developers get worked into a lather about pretty much all new technologies and frequently run beta software in production. look at php
|
# ? Jul 21, 2012 19:57 |
|
BonzoESC posted:rails is good but mongo is trash i want to understand mongo before i dismiss it, i've heard good things from people who aren't terrible hipster developers that say it has some good performance for specific use cases
|
# ? Jul 21, 2012 20:23 |
|
fwiw i know one of the original architects of mongo and he uses hadoop in his new company for what is allegedly a textbook use case for mongo
|
# ? Jul 21, 2012 20:33 |
|
riak + postgres, use these two
|
# ? Jul 21, 2012 21:14 |
|
trex eaterofcadrs posted:riak + postgres, use these two just use postgres, your app probably isn't big enough to use riak
|
# ? Jul 21, 2012 21:40 |
|
its not the size of the database... wait, yes it is.
|
# ? Jul 21, 2012 21:43 |
|
tinselt0wn posted:its not the size of the database... with riak you really have to think carefully about how you want to query it and how to denormalize your poo poo because you can't retroactively add indices without loading and resaving literally every object you want to index and with bitcask (the default backend) you simply can't do indexes so use postgres until you get stupid popular like voxer and then you'll know what's popular about your app and can make an informed decision about how to design your data model
|
# ? Jul 21, 2012 21:46 |
|
|
# ? May 31, 2024 07:15 |
|
i dunno ive dealt with sql databases up to about half a billion rows and it was ok and at least people understand it rather than the nosql du jour so whatever works for your particular application i guess
|
# ? Jul 21, 2012 21:58 |