Lessons Learned from Eight Years of Using NoSQL
Mike Bowers, Enterprise Data Architect at the Church of Jesus Christ of Latter-day Saints (LDS), spoke at the recent Enterprise Data World Conference (EDW) about lessons learned from eight years of using NoSQL databases. He talked about the design considerations on how to choose a NoSQL database.
NoSQL database adoption in a large organization takes significant effort and time for the transition from using relational database models to NoSQL databases. It also involves changing the culture of the organization at different levels of management.
Mike shared success stories of introducing an emerging database technology (Document NoSQL database) into the enterprise, which has a large IT shop. Today they use it to run 189 applications to process billions of transactions. LDS church has 15 million members and provides thousands of documents in 188 published languages. They have 192 websites and applications in production (run on Marklogic servers) with billions of page views annually.
NoSQL database adoption takes initiatives like having a NoSQL champion and getting the buy-in from developers and senior management team.
Lesson 1: Every organization needs a NoSQL champion: This person will be influential across the organization and needs to convince both developers as well as upper management team in the company.
Lesson 2: Must Get Management Buy-in: Upper management teams in Enterprises tend to prefer enterprise commercial databases whereas the senior managers in startup companies like open source databases. So, the NoSQL transition team will have to get management buy-in in bringing NoSQL databases into the organization.
Lesson 3: Must Get Developer Buy-in: The team will also need to show developers how NoSQL databases can support different data structures and enable agile development. Mike said the Document NoSQL databases have faster development whereas Key/Value databases have faster performance and wide column databases provide Internet scale.
Lesson 4: Train, Train, Train: It's very important to train the developers on the NoSQL databases. Otherwise, the NoSQL initiatives fail without good NoSQL training.
He suggested to show the executives success through actions by using NoSQL databases to build a real solution quickly and cheaply. Support their objectives like reduce database license & development costs and better scalability.
Mike also talked about how different databases stack up against factors like high bandwidth, low latency, analytical, operational, volume, and velocity. Pick the driving factors for your NoSQL database adoption, like data model flexibility, performance, or horizontal scalability.
The team should get a consensus on specific NoSQL databases so there is collective ownership of teams in the decision making process.