Back in May 2006, I have started my blog using the Blogger platform and one month later moved it to my own website using Wordpress. Couple month later, I joined Pythian and, since then, the vast majority of my blogging activities has been on the Pythian Group Blog.
The Pythian blog has grown significantly since then and many more excellent authors started blogging there. While the Pythian blog was mostly focused on Oracle database just a couple years ago, it’s has got very broad coverage now and is including MySQL, SQL Server and Oracle databases as well as Oracle Application Server, Oracle eBusiness Suite and other enterprise software. While I think this is a great opportunity to entend your area of interests, it might be just too much for some as few people already complained and unsubscribed to avoid being overwhelmed with information. That was painful to hear!
First of all, I should say that there is a way to subscribe only to a selected category or a single author — just add /feed/ at the end of pretty much any page. For example, all my blog posts can be seen using URL http://www.pythian.com/blogs/author/alex and RSS feed URL would be http://www.pythian.com/blogs/author/alex/feed/. Likewise, the Oracle category RSS feed is http://www.pythian.com/blogs/category/oracle/feed/. (more…)
Brian Aker gives the “zinger” lightning talk about the newly announced “Drizzle”. This short (under 8 minutes) video captures Aker’s highlights of why he started the Drizzle project and how Drizzle is different from MySQL — both in what has been removed from MySQL and what features Drizzle can accomodate.
Play the video directly in your browser at http://technocation.org/node/576/play or download the 116 Mb file at http://technocation.org/node/576/download.
Yesterday I had a good conversation with Monty Widenius (a MySQL founder) about MySQL 5.1. Specifically, about the fact that MySQL 5.1 is not a GA (generally available) release.
My impression, which was wrong, was that it was difficult getting critical mass to download 5.1 and use it simply because it was not a GA release yet. I thought the paradox of needing to have a certain amount of usage before release was the barrier.
That’s not the case at all.
(more…)
I was contacted by the folks at MONyog and asked if I would review MONyog. Since using MONyog is something I have been wanting to do for a while, I jumped at the chance. Of course, “jumped” is relative; Rohit asked me at the MySQL User Conference back in April, and here it is two months later, in June. My apologies to folks for being slow.
This review is an overall review of MONyog as well as specifically reviewing the newest features released in the recent beta (Version 2.5 Beta 2). Feature requests are easily delineated with (feature request). This review is quite long, feel free to bookmark it and read it at your leisure. If you have comments please add them, even if it takes a while for you to read this entire article.
While the webyog website gives some information about what MONyog can do, it is a bit vague about what MONyog is, although there is a link to a PDF whitepaper on What is MONyog? which does answer much of these questions.
The screenshots available from the website are accurate, so I will not reproduce them here. I will note that I have not shared this feedback with the webyog team yet, so I may be upset that a feature is lacking, and the feature may be implemented but I missed it. I will post a follow-up in that case, even though they will likely comment here too.
My reference points — I have used other monitoring and graphing tools such as Nagios, Cacti, and Intermapper as well as MySQL’s Enterprise Monitor.
As an overall review — MONyog is the best out-of-the-box GUI monitoring tool for MySQL that I have seen. It “just works.” As promised, getting up and running quickly is easy, and having a centralized location for monitoring is very useful. The graphs are beautiful and the statistics that are graphed are useful time-savers.
(more…)
From 7:30 - 8:30 pm tonight, Wed. June 25th, in the Berkeley room of the Sheraton Boston, I will be hosting a Birds of a Feather conversation entitled “Pros and Cons of Managed Services”. This will go beyond MySQL and even beyond remote database management, and just deal with the overall pros and cons.
Come, share your good and bad experiences, and discuss why managed services may or may not be appropriate for your situation. I will try to take notes at the BoF.
(Note: I have no idea if they check badges for Birds of a Feather sessions or not)
If you are attending Usenix 2008 at the Sheraton Hotel in downtown Boston, you can meet me and ask your burning MySQL questions at my “The Guru is In” session. On Friday, June 27th, 2008 from 2 - 3:30 pm in Constitution B, I will be helping folks out by optimizing queries and schemas, teaching general principles of working with MySQL databases, and answering (to the best of my ability) any other question they may throw at me.
The event details are at:
http://www.usenix.org/events/usenix08/tech/#fri
Hope to see you there!
Twitter has had many outages recently. On May 17th, 2008 http://blog.twitter.com/2007/05/devils-in-details.html was posted and says:
What went wrong? We checked in code to provide more accurate pagination, to better distribute and optimize our messaging system?basically we just kept tweaking when we should have called it a day. Details are great but getting too caught up in them is a mistake. I’ve been CEO of Twitter for two months now and this an awesome lesson learned. We’re seeing the bigger picture and Twitter is back. Please contact us if something isn’t working right (with Twitter that is).
(in other news, that post was made on May 17th and does not show up on http://blog.twitter.com, which it should, between the May 16th and May 19th posts. I found a reference in other posts and had to search the site to find that post).
A real “awesome lesson learned” is “do not tweak production without testing first.” In every job I have had I have first learned and then taught the concept of “test everything possible.” Which Twitter has not learned yet, because http://blog.twitter.com/2008/05/not-true.html, posted on Tuesday May 20th, states:
We caused a database to fail during a routine update early this afternoon.
As someone who has years of experience working with MySQL, and before that was a systems adminsitrator; as someone who was referred to as “the MySQL Queen” yesterday (by someone who wanted me to test their product, so yes, they were flattering me); I can assure you:
no matter how “routine” a change is, if you do it on production without testing it first, you are playing with fire, and 95% of the fires caused by not testing first are completely preventable.
I will repeat this, because repetition is important to learning concepts.
no matter how “routine” a change is, if you do it on production without testing it first, you are playing with fire, and 95% of the fires caused by not testing first are completely preventable.
With a proper testing environment, 19 out of 20 “whoops, didn’t expect THAT from a routine change!” issues are caught. And I can tell you that often “routine changes” cause unexpected results.
Now, I was online during an outage, and http://twitter.com/home was showing their “site isn’t working” page for at least 3 hours between 2 and 5 am EDT yesterday (Tuesday, May 20th, 2008).
So…..there is no read-only copy around that Twitter could use? Maybe I cannot tweet, but I should at least be able to read what was done before!
Of course, since last week Twitter has done the opposite — often I can see the most recent 20 or so posts, but not anything prior. Now, I understand that it is hard to get all the histories for the people I follow. But it only needs to be done once, and could then be cached — “Posts from who Sheeri follows on 5/20″. It would not be difficult, and I would be OK with the functionality changing such that “once you follow a new person, their tweets prior to when you followed them do not show up in the history.”
Alternatively, you could go the snarky way and say: http://www.techcrunch.com/2008/05/20/twitter-something-is-technically-wrong/ states:
What would be great is if Twitter just moved their blog to another platform so that it doesn?t fail when users need it most.
I am not a huge user of rails. But I will say that given the content of the public announcements, the platform is not the problem. It is the code release process that is the problem. Maybe there’s “agile development” happening, paired programming and code reviews. But there is not adequate testing.
Twitter — if you truly need scaling help, please ask for help — I know Pythian would be happy to help. However, if it really is as it seems — that basic good practice is not being followed — I would like to remind you that backups are really important too, just on the off chance that backups are not happening.
I understand that MySQL as a company wants to recruit paying customers. However, as a community user I have a hard time finding what I want on the MySQL website. Today’s frustration is brought to you by trying to find the documentation.
Go ahead, hit http://www.mysql.com. From there, where do you go to find the documentation?
It’s not Services, not even Services -> Support.
According to Products, the community server is not even a product. How is a potential new user, who wants to learn about MySQL, supposed to know a community version exists? Here are the products listed on the Products page:
MySQL Enterprise
MySQL Enterprise Monitor
MySQL Cluster
MySQL Embedded Database
MySQL Database Drivers
MySQL Database Tools
Where’s “MySQL Database” on that list? A website user basically has to know what they’re looking for, since that page does not help find “the mysql database”. You can guess it’s the “MySQL Enterprise” — but you’d be wrong. Imagine if you’re a person unfamiliar with MySQL who has been told “go to the MySQL website and get the free version of the database, it’s great!”
OK, OK, I know, you’re saying “click on Downloads”. Which takes me to the “choose which version you want to download.” OK, nice for newbies, but really annoying for the experienced. Why aren’t the links to download at the top, with the explanations just underneath? A newbie would be presented with the links, think “I don’t know which to choose!” but then see that the descriptions are just underneath. An experienced user can just click and go.
This of course is made even more silly when you realize that the community download link simply scrolls down. Yes, that’s right, the community downloads immediately follow that chart of explanations. Which means that in the current state, when the link is at the bottom of the chart, the link points you to the next line. If the link is at the top of the page, at least there’s a reason for it — to scroll down past the explanations.
Now recall that the exercise was to find documentation. There is no way to download the documentation here.
I am a non-paying user, not a developer. Going to the “Developer Zone” is not intuitive for me. However, that is exactly where I need to be:
* DevZone
* Downloads
* Documentation
* Articles
* Forums
* Bugs
* Forge
* Blogs
Given that list of topics, why on earth is this section called the “Developer Zone”? (it’s a rhetorical question!) Sure, if I’m a software developer I might think it’s useful to me. On any other website “developer zone” is relegated to advanced users, or folks using some different part of the product than what most people use (think Apple’s Developer Connection).
Take a look at that list. On any other website, it would be under “Support” or “Help” or “Learn”.
No wonder folks have no idea that the forums exist, much less the Forge or Planet MySQL. If I was a new user to MySQL and I wanted to find the documentation, I’d be very unhappy.
Heck, I’m very unhappy anyway — what kind of company has a huge community of people supporting each other and contributing back to the company, and does not give people an easy way to find the community?
In a despicable business practice, I received a message from a PR Firm representing Ingres. Now, I even wrote about the controversy that seems to have swept the open source community; but even my writings were not completely factually correct — I wrote that even if online backups were closed it was not necessarily the worst thing in the world. The actual parts of the online backup that are not open source and free are compression and encryption — that is all.
So really, we are talking about a very small part of backup. The last I saw most people used their own compressing (ie, | gzip -c) and encryption for backups. And honestly, I would rather use tried and true compression and encryption than something new that MySQL comes up with, so I do not even see most people wanting compression nor encryption.
But that’s besides the point. If Ingres thinks they can win customers over by swooping in when a controversy is happening, they are way more evil than I would ever have guessed. It’s not good business practice to do this kind of thing — it is cold, calculated, uncalled for, and just plain wrong.
As for my comments — firstly, MySQL did not make any particular “announcement”, and secondly, MySQL is already losing “feedback and contributions on its products from a large group of users in the community” because it does not have an easy way to get community patches committed to the source tree.
There is so much else that bothered me about the e-mail I received, so I will just copy it here for full context for readers:
Subject: Ingres' Thoughts on Today's MySQL Announcement and What it Means for the Open Source Community From: Lindsey Pappas Date: Apr 15, 2008 5:33 PM Hi Sheeri, Did you see MySQL ’s announcement on new features in MySQL Enterprise version of its product? This is interesting news for the open source community, as it appears that MySQL is moving away from true open source towards a proprietary model by not providing the same features in its community version. Ingres is a a leading provider of open source database management software and support services and views the news as the loss of a true competitor in the open source space. By doing this, MySQL will lose feedback and contributions on its products from a large group of users in the community. Costs will go up and quality will go down. Ingres is a believer in the true open source of its products. I can put you in touch with an executive at Ingres to hear thoughts on the news and what MySQL’s announcement means for the future of the open source community, including comment on: · The benefits of open source solutions that are identical between community and enterprise, functionality should not differ between products, cost or version. · The importance of an online backup component for mission critical applications. · In a community where everyone benefits from the valuable contributions and feedback on new developments and innovations from other players, MySQL?s move away from open source is a loss for the open source community. Please let me know if you?d like to connect in the next day or so to discuss MySQL?s announcement and where the open source community is headed. Thanks, Lindsey Lindsey Pappas Atomic Public Relations 8 California Street San Francisco, CA 94111 (415) 402-0230 lindsey@atomicpr.com
Identity 2.0: A world that’s simple, safe and secure.
Who is the Dick on My Site? by Dick Hardt (Sxip Identity Corporation)
Quotes:
“Really, data is about people. It’s really identity data.”
“Identity helps you predict behavior.”
“Identity is who you are.”
“Identity is also what you like.”
“Identity enables you to uniquely identify somebody.”
“There are things that other people say about you, too.”
“Modern identity is about photo IDs so you can prove your identity.”
“Identity is a complicated issue….Everyone has a different idea of what it is.”
Identity transactions are:
Identity transactions can be: (more…)
While doing a standard audit for a new client, I recommended a few changes to get better performance. Because I had several changes, I used the documentation at
http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html
and found that innodb_flush_log_at_trx_commit is a dynamic variable. I was surprised, because most operations dealing with file sizes and operations are not dynamic. But the client proceeded with:
set global innodb_flush_log_at_trx_commit = 2;
and got:
ERROR 1193 (HY000): Unknown system variable 'innodb_flush_log_at_trx_commit'
So I searched for others who may have had the same error, and ended up getting an unintentional googlewhack. Well, it’s not a real Googlewhack, because it has more than 2 words and I used quotes to surround it — but I was pretty surprised that there were not a lot more people like me who trusted the manual. Granted, it’s “intuitive” that the variable is one that would need a restart….but because I was looking up others, I just looked up all of them, and thus fell into the trap.
The search I did was “Unknown system variable innodb_flush_log_at_trx_commit”
And the bug I filed is http://bugs.mysql.com/bug.php?id=35575.
Recently I acquired Sesame Street Volume 1, and on the third DVD in the set I came across one of my favorite Sesame Street songs: “Who are the people in your neighborhood?”
Here’s a sample of one such skit, if you are not familiar with it, or if you want a bit of nostalgia http://youtube.com/watch?v=B9lpUjQvToY (note, play will likely start automatically, so tune your volume appropriately before clicking).
The refrain is “Who are the people in your neighborhood? The people that you meet each day!” I live in a city of 34,000 people just 6 miles northwest of Boston, MA. I know exactly one neighbor, across the street, whom we met because I sent my husband over to get her live band to stop playing loud music at her party at 2 am. I do not know many of the local business owners. I do not know who lives in my neighborhood, yet people live around me. Saying I live in a “neighborhood” might be true, but I have no ties or links to it.
Calling a group of people with common interests “community” is just as meaningless as saying I live in a “neighborhood”. There has to be a bond there. I am proud to be a part of the MySQL Community, which actually has forged bonds. Much like Sesame Street, with dentists and bus drivers, our community has many different types of people in it.
In fact, I know that there are many who “only” read and perhaps comment. Remember that every single child (and adult!) that watches Sesame Street is a valuable part of the community — after all, a bus driver is useless without people to drive around. Similarly, folks who develop tools would be doing useless work if there was not such a need for these tools.
The MySQL Community is very real to me. If I were to “move away” from this community, I would experience a loss. There are so many folks whom I will be glad to see and spend time with at the upcoming MySQL Users Conference, and if they are not there, I will definitely miss them.
I blog about MySQL because I enjoy helping others. More importantly, I’ve enjoyed helping out the MySQL community a lot. I have been a part of other “communities” that did not have very much momentum and I was the only or one of the only contributors. I have also been a part of communities in which I’m mostly a lurker, or a learner, and while I gain a lot from it, I much rather prefer a more balanced give-and-take (that’s just my personality).
Speaking of personality, I’m human, as is everyone whose blog feeds to Planet MySQL (organizations excluded). This means that when folks e-mail me or find me in person and say “I love your podcast!” and “Your blogging really helped me.” and “Thank you for all you do,” I feel really good about myself.
If you are new to the MySQL community, feel free to come up and talk to me (or anyone, really) — during the conference, or otherwise. Even if you feel you have nothing to say, just say hello.
And I must end with a disclaimer: I won last year’s “Community Advocate” award from MySQL, so I guess all in all, I’m still a community advocate. Long live the dolphin!
Software Development Blog of Syscon has latest news of Software Development Services & Web Development Services in India. http://www.sysconsoftech.com/blog/
Development
solution
updates
technology
Articles
news
blog
Software
Services
Outsourcing
At this year’s MySQL Conference & Expo, taking place in Santa Clara, California in mid-April, I’m giving two sessions:
You can see more info about me here, including descriptions of the workshops.
I look forward to seeing many of you there. Make sure you say hello!