Tag Archives: ORM

The joy of team work!

Last week I had to work a lot! I mean, A LOT! But work-wise that was one of the happiest weeks, and I wanted to share with everybody why it felt so happy.

Those of you who worked with me before know, that my favorite activity is working with  applications, because optimizing for applications is way more difficult and way more fun than optimizing reports. Yes, you can impress everybody, including yourself, reducing the report run time from one hour to one minute. But how much cooler is it to reduce the page load time from 30 sec to 0.1 sec?!  Especially when you have a power not only to write the best queries ever, but also to design the data model “the right way”.

When you do the application database work, the most critical part is to work in close contact with the  application developers. And depending on what kind of team you are lucky or unlucky to have, it may be the best or the worst part of your professional experience.

My IT team here in Braviant is one of the best I ever worked with, which was proved one more time last week. The most difficult part has always been connecting the db work and the app work, like: I’ve selected all this data for you, can you read it from the output I am providing? Or: we can give you all input parameters that way, can you process them? Our app developers have already made a huge step “in my direction” agreeing not to use ORM, but to read the output of the database function. Next step – we hit the  wall exactly where I expected. I’ve spent a half of Saturday writing my code, so that the app developers could start using in Monday morning… and now they are saying they can’t process correctly the embedded record sets! I’ve heard that many times before, and each time in a couple of hours I would hear: Hettie, there is no way! Let’s do it “the old way”, we know how… That time, however my team kept trying to find a solution, and watching these efforts made me to start thinking how I can change the output on my side. After several iterations going back and forward, we came up with a pretty neat way to return the records, which could be used right away, and even a better approach, which, however would require more work from me, and could not be done on the spot.

And you know – I totally understand, when people hate rewriting one piece of code multiple times, which makes me appreciate even more the willingness to rewrite later, when I will come up with the more automated solution from my side…

I have already written a lot in this post, and I am not sure whether it all make sense, but let me try to summarize.  I loved that everybody were willing to compromise, to make adjustments, that there were no “just because” statements, that the whole team was focused on the goal to build the application right from the very beginning, so that we won’t need to worry about performance six months down the road.

Hope it will continue that way.  Except of me working on Saturdays part 🙂



Leave a comment

Filed under People, Systems, Team and teamwork

The March Chicago PUG meetup is coming, and I am advertising myself again!

I have at least two optimization posts in my Drafts, but today I wanted to remind everybody, that Thursday (not Wednesday!) is the day for the next Chicago PUG.

So, for those of you, who vaguely remember my talks “Why the databases are slow?”,  for those of you who at some point of your work lives had fun working with me on web applications, for those, with whom we had all these extended arguments about “what databases can do better”… that’s your chance to experience it again :).

And for those of you, who never heard this talk… well, it’s your chance to find out for the first time, why databases are slow!

Here is the event:


and if you plan to attend, please RSVP, otherwise I can’t guarantee there will be enough pizza!!!

Leave a comment

Filed under events

I am going to be a panelist at the ChicagoSC event

This post is mostly for my Chicago colleagues, but who knows? May be somebody from nearby could also come.

Please check out this event: Panel: ORM’s and Data Management. I will be one of for panelists, and the topic of ORM and ORIM is near and dear to my heart, as all of you know! So I am very excited about this event and honored to be a part of this panel. Please try to  attend :)!

Leave a comment

Filed under events, Systems, talks

Finally many -many months later – our presentation at PG Open 2014

Leave a comment

Filed under Systems

My and Grant’s PG Open presentation

View it here

Leave a comment

Filed under talks

Sometimes people just do not know what are they writing about…

Some time ago my manager shared with me a couple of links about “current state of data and databases”. One of them turned to be a perfect illustration to how we get where we got. This article The definitive guide to the modern database actually describes the current status of the databases, and what it out there.

One paragraph caught my attention:

This is the case when database engine and application are scaled-in together on the operating system level, so both of them use the same data without transmitting it through proxies. Also, a benefit of such approach is the increasing ease of use — monotonic code to deal with wrappers is no longer needed, and for some users this can become a more decisive factor than performance.

The funny thing is, that this is EXACTLY what led to our performance problems in my company!

Granted, the author never experienced how bad an OO code “can” become


Filed under Data management, Systems

Please contribute to my proposal

In case I missed somebody who is interested, I am copying here an email I’ve sent earlier today:

Dear All,

In course of the past 7-8 months I spoke to many researches and practitioners who’s work is related to the restructuring application code for performance improvement rather than optimization of specific queries. Most of you agreed that these activities are hard to place, because they are in some sense in between the database and the application.

I am going to try to organize a workshop with whatever international database conference will accept this proposal. (EDBT 2015 is one of the candidates). Attached is the first draft of this proposal with the exception of particular conference – specifics (like deadlines and other)

Please let me know :

– are you, your research group, your organization are/will be interested in participation?
– interested in submitting a paper or demo?
– any additions/suggestions/ improvements to the proposal draft?
– do you know any other individuals/groups/organizations who may be interested?
– do you want to be on the mailing list for this perspective workshop?
– any ideas/candidates for invited talk(s)

Thank you! Henrietta

First International Workshop on Holistic Database Application Tuning (HDAT)


Filed under Data management, talks