Thursday, January 9, 2014

Big Data 2014: Powering Up the Curve

source: http://blog.pentaho.com/2013/12/05/quentin-2014-big-data-predictions/

Big Data 2014: Powering Up the Curve

Last year, I predicted that 2013 would be the year big data analytics started to go into mainstream deployment and the research we recently commissioned with Enterprise Management Consultantsindicates that’s happened. What really surprised me though is the extent to which the demand for data blending has powered up the curve and I believe this trend will accelerate big data growth in 2014.
Prediction one: The big data ‘power curve’ in 2014 will be shaped by business users’ demand for data blending
Customers like Andrew Robbins of Paytronix and Andrea Dommers-Nilgen of TravelTainment, who recently spoke about their Pentaho projects at events in NY and London, both come from the business side and are achieving specific goals for their companies by blending big and relational data. Business users like these are getting inspired by the potential to tap into blended data to gain new insights from a 360 degree customer view, including the ability to analyze customer behavior patterns and predict the likelihood that customers will take advantage of targeted offers.
Prediction two: big data needs to play well with others!
Historically, big data projects have largely sat in the IT departments because of the technical skills needed and the growing and bewildering array of technologies that can be combined to build reference architectures. Customers must choose from the various commercial and open source technologies including Hadoop distributions, NoSQL databases, high-speed databases, analytics platforms and many other tools and plug-ins. But they also need to consider existing infrastructure including relational data and data warehouses and how they’ll fit into the picture.
The plus side of all this choice and diversity is that after decades of tyranny and ‘lock-in’ imposed by enterprise software vendors, in 2014, even greater buying power will shift to customers. But there are also challenges. It can be cumbersome to manage this heterogeneous data environment involved with big data analytics. It also means that IT will be looking for Big Data tools to help deploy and manage these complex emerging reference architectures, and to simplify them.  It will be incumbent on the Big Data technology vendors to play well with each other and work towards compatibility. After all, it’s the ability to access and manage information from multiple sources that will add value to big data analytics.
Prediction three: you will see even more rapid innovation from the big data open source community
New open source projects like Hadoop 2.0 and YARN, as the next generation Hadoop resource manager, will make the Hadoop infrastructure more interactive. New open source projects like STORM, a streaming communications protocol, will enable more real-time, on-demand blending of information in the big data ecosystem.
Since we announced the industry’s first native Hadoop connectors in 2010, we’ve been on a mission to make the transition to big data architectures easier and less risky in the context of this expanding ecosystem. In 2013 we made some massive breakthroughs towards this, starting with our most fundamental resource, the adaptive big data layer. This enables IT departments to feel smarter, safer and more confident about their reference architectures and open up big data solutions to people in the business, whether they be data scientists, data analysts, marketing operations analysts or line of business managers.
Prediction four: you can’t prepare for tomorrow with yesterday’s tools
We’re continuing to refine our platform to support the future of analytics. In 2014, we’ll release new functionality, upgrades and plug-ins to make it even easier and faster to move, blend and analyze relational and big data sources. We’re planning to improve the capabilities of the adaptive data layer and make it more secure and easy for customers to manage data flow. On the analytics side, we’re working to simplify data discovery on the fly for all business users and make it easier to find patterns and catch anomalies. In Pentaho Labs, we’ll continue to work with early adopters to cook up new technologies to bring things like predictive, machine data and real-time analytics into mainstream production.
As people in the business continue to see what’s possible with blended big data, I believe we’re going to witness some really exciting breakthroughs and results. I hope you’re as excited as I am about 2014!
Quentin Gallivan, CEO, Pentaho
Big-Data-2014-Predictions-Blog-Graphic

Predicting Big Data's 2014

source: http://www.zdnet.com/predicting-big-datas-2014-7000024189/

Predicting Big Data's 2014

Summary: A summary of Big Data new year predictions from Tableau, Tibco, Alteryx, Basho and Gainsight
There has been no shortage of new year's Big Data and Business Intelligence predictions in my inbox in the past month.  As the predictions have trickled in, I was unsure of the value of running any one slate of predictions as an article in itself.  But once they collected, I realized there's real value in reviewing a compilation of these predictions, seeing where they overlap, and appending a few predictions of my own.
The predictions come from a set of companies in the analytics world ranging from an Enterprise software company (TIBCO, makers of Spotfire); a publicly-traded Business Intelligence company (Tableau); an analytics applications platform start-up (Alteryx); a major NoSQL vendor (Basho); and a customer analytics company (Gainsight).  Together, these companies paint an interesting picture of what the analytics state-of-the-art and market will look like in 2014.
The overarching themes in most of the predictions are: Big Data technologies going mainstream; highly specialized areas of analytics becoming more accessible; an increased influence from cloud and mobile; the continued explosion of data volumes, driven by device- and machine-borne data; and disruption to the incumbent megavendors' hold on the database market.
Mainstream or bust
In the Big Data goes mainstream department, Alteryx predicts 2014 will be when "Hadoop Moves From Curiosity to Critical."  Gainsight imagines a world in 2014 where "People Stop Saying Big Data and Start Meaning It," adding "next year it's table stakes."  TIBCO's CTO, Matt Quinn, says "Big Data and all of its tools and technologies will need to move away from being science experiments, and more into the day-to-day, second-by-second operational decision making."
Another spin on analytics technology becoming more mainstream is that it becomes more applied as well.  Alteryx predicts that in 2014 "Big Data Brings Its 'A Game' in Marketing" and that "Predictive Analytics Will No Longer Be A Specialist Subject." Tableau agrees, surmising that "Predictive Analytics, once the realm of advanced and specialized systems, will move into the mainstream as businesses seek forward-looking rather than backward looking insight from data."
Gainsight says "Businesses Get Proactive by Leveraging Customer Data" and TIBCO's Quinn says "Big Data will focus more on value," explaining that "The challenge is no longer in storing the data...but how to extract value from it."
We're all data scientists nowA couple of companies on our panel are predicting that the high priesthood of data scientists will start to become less crucial as analytics tools become more accessible by business users.  Tableau goes so far as to predict "The end of data scientists," adding "Familiarity with data analysis becomes part of the skill set of ordinary business users, not experts."
Alteryx echos this sentiment with its own "Modern Analysts Matter More Than Data Scientists" prediction, saying "Empowering analysts in business departments with Big Data and analytics will become more important than filling the perceived need for millions of data scientists."  That sounds like a good answer to a problem that I've asserted previously, that "Data scientists don't scale."
Cloud and mobileTableau predicts that "Cloud business intelligence goes mainstream" in 2014, which is a bit ironic since the company only launched its paid cloud solution this year.  It also predicts "Big data finally goes to the sky."  Gainsight says "SaaS Will Become Table Stakes," and although that sentiment refers to the industry as a whole, we can pretty much bet that it applies to the world of Big Data in a prominent fashion.  Basho goes so far as to say "CIOs become cloud operators," expounding that this "will result in many organizations deploying a range of public and private cloud solutions."
TIBCO's view of Big Data and the cloud is encapsulated in its "Big Data will be used for security/cloud" prediction. Quinn expands on that thought, saying "Big Data will be stored and analyzed in the cloud and I expect the bulk of the 2014 data to be generated from cloud services across the stack from PaaS on up."
Moving from cloud to mobile, Tableau says "mobile business intelligence becomes the primary experience, not an occasional experience."  Interestingly, none of the other vendors addressed the question of mobile.  Although Alteryx calls out mobile devices as an important source of data in volume.
Data explosion
The volume and velocity of data shows no sign of letting up, according to most of our predictors.  As I said, Alteryx calls out mobile devices and location data in general as a big source.  Basho has two relevant predictions here, conjecturing that the "'Internet of Things' hits prime time, accelerating the data explosion" and "Your customers' experience will be measured in milliseconds, not seconds."
Measuring customer and market sentiment at such fine granularity has implications for both velocity and volume of data.  Tableau certainly doesn't disagree with Basho's assertion, predicting that "Organizations begin to analyze social data in earnest."
Disruption complexNot surprisingly, Alteryx, a start-up company, reasons that "A new data and analytics stack emerges with new solutions for databases, analytics and visualization, all disrupting the traditional mega-vendors."  Building on the new stack idea, Tableau sees a world in 2014 where "NoSQL technologies become more popular as companies seek ways to assimilate this kind of data."
This sword has two edges though: Basho thinks that the incursion of the new stack into IT will cause IT to demand some help, predicting "Strained Enterprise IT will demand operational simplicity from vendors."  Gainsight might agree, saying 2014 will be a "Big Year for EnterpriseTech IPOs" (emphasis mine).
IMHO, ho, ho
I think the consensus in the predictions we've just gone over serves as a reasonable validation of their efficacy.  I also think our collection of tech companies may have missed a few important potential developments for next year: Hadoop will become more integrated, embedded and less discrete; conventional databases will accommodate NoSQL/semi-structured data workloads, and the industry will consolidate.
With the release of Hadoop 2.0 and its YARN management layer, Hadoop is no longer tied to the MapReduce algorithm and batch processing; as such, it becomes more of a platform and an engine for distributed processing of data, and less of "product."  Additionally, the ability to process key/value data, JSON object/documents, sparse columns and other NoSQL data has already shown up in relational products like DB2 and Vertica, and that trend will continue.
With those opportunities for integration and consolidation of products, I believe it follows that companies will consolidate too.  I expect the Big Data world is teed up for the same kind of M&A activity that the BI world underwent, circa 2007.  
So don't count the enterprise companies out, because they are the likely buyers.  But don't despair, as this is in no way a zero-sum game.  Without all of the innovation of the last few years in the analytics world, the megavendors would likely be giving us another round of relatively minor, evolutionary upgrades in their database platforms.  As things now stand, in 2014, that would be a road that would lead to the industry wilderness.
Topic: Big Data

About 

Andrew J. Brust has worked in the software industry for 25 years as a developer, consultant, entrepreneur and CTO, specializing in application development, databases and business intelligence technology.

Big Data In 2014: 6 Bold Predictions

source: http://www.informationweek.com/big-data/big-data-analytics/big-data-in-2014-6-bold-predictions/d/d-id/1113091



Big Data In 2014: 6 Bold Predictions



'Tis the season when temperatures tumble, shoppers stumble, and prognosticators fumble, often. Will these big data prophecies come true?


How will big data evolve in 2014? The future is anyone's guess, of course, but we thought we'd compile a tasty holiday assortment of prognostications from executives working in the big data trenches. So without further delay, here they are -- six big data predictions for next year:
1. "More Hadoop projects will fail than succeed."That scary assessment is from Gary Nakamura, CEO of Concurrent, a big data application platform company. In a December 12 blog post, Nakamura made a few 2014 forecasts, including this not-so-rosy assessment of Hadoop:


2. Enterprises will focus less on big data and more on stepping up their data management game. 
"There's no doubt that companies' pursuits of big data initiatives have the best intentions to improve operational decision making across the enterprise. That being said, companies shouldn't get stuck on the term 'big data.' The true initiative and what they ultimately need to be concerned with is how they're implementing better data management practices that account for the variety and complexity of the data being acquired for analysis," Scott Schlesinger, a senior vice president for consulting and outsourcing giant Capgemini, told InformationWeek via email.

3. The pace of big data innovation in the open-source community will accelerate in 2014. 
"New open-source projects like Hadoop 2.0 and YARN, as the next-generation Hadoop resource manager, will make the Hadoop infrastructure more interactive. New open-source projects like STORM, a streaming communications protocol, will enable more real-time, on-demand blending of information in the big data ecosystem," wrote Quentin Gallivan, CEO of business analytics software firm Pentaho, in a December 5 blog post.

4. The need for automated tools will become increasingly critical.
"It seems that the more data we have, the more we want," John Joseph, VP of product marketing for analytics software firm Lavastorm Analytics told InformationWeek via email. "But as data volumes increase, the need for pattern matching, simulation, and predictive analytics technologies become more crucial. Engines that can automatically sift through the growing mass of data, identify issues or opportunities, and even take automated action to capitalize on those findings will be a necessity."

5. Beware, Oracle! 2014 will be the year of SQL on Hadoop. 
"I think you'll see people start building interactive applications on the Hadoop infrastructure. And what I mean by that -- and I think this is probably the most controversial thing -- is that people will start replacing their first-generation relational databases with SQL on Hadoop," said Monte Zweben, CEO of SQL-on-Hadoop database startup Splice Machine, in a phone interview with InformationWeek.

6. Big data flies to the cloud. 
"Big data has gained a lot of traction in 2013 but complex technologies are keeping many businesses from getting their solutions into production and generating a positive ROI. In 2014, businesses will look beyond the hype and turn to cloud solutions that generate fast time to value and do not require highly specialized dedicated skill sets, like Hadoop, to manage. 2014 will be the year that big data moves from buzzword to business imperative," said Sandy Steier, cofounder and CEO of cloud-based analytics firm 1010data, via email.
2. Enterprises will focus less on big data and more on stepping up their data management game. 
"There's no doubt that companies' pursuits of big data initiatives have the best intentions to improve operational decision making across the enterprise. That being said, companies shouldn't get stuck on the term 'big data.' The true initiative and what they ultimately need to be concerned with is how they're implementing better data management practices that account for the variety and complexity of the data being acquired for analysis," Scott Schlesinger, a senior vice president for consulting and outsourcing giant Capgemini, told InformationWeek via email.
3. The pace of big data innovation in the open-source community will accelerate in 2014. 
"New open-source projects like Hadoop 2.0 and YARN, as the next-generation Hadoop resource manager, will make the Hadoop infrastructure more interactive. New open-source projects like STORM, a streaming communications protocol, will enable more real-time, on-demand blending of information in the big data ecosystem," wrote Quentin Gallivan, CEO of business analytics software firm Pentaho, in a December 5 blog post.

4. The need for automated tools will become increasingly critical.
"It seems that the more data we have, the more we want," John Joseph, VP of product marketing for analytics software firm Lavastorm Analytics told InformationWeek via email. "But as data volumes increase, the need for pattern matching, simulation, and predictive analytics technologies become more crucial. Engines that can automatically sift through the growing mass of data, identify issues or opportunities, and even take automated action to capitalize on those findings will be a necessity."

5. Beware, Oracle! 2014 will be the year of SQL on Hadoop. 
"I think you'll see people start building interactive applications on the Hadoop infrastructure. And what I mean by that -- and I think this is probably the most controversial thing -- is that people will start replacing their first-generation relational databases with SQL on Hadoop," said Monte Zweben, CEO of SQL-on-Hadoop database startup Splice Machine, in a phone interview with InformationWeek.

6. Big data flies to the cloud. 
"Big data has gained a lot of traction in 2013 but complex technologies are keeping many businesses from getting their solutions into production and generating a positive ROI. In 2014, businesses will look beyond the hype and turn to cloud solutions that generate fast time to value and do not require highly specialized dedicated skill sets, like Hadoop, to manage. 2014 will be the year that big data moves from buzzword to business imperative," said Sandy Steier, cofounder and CEO of cloud-based analytics firm 1010data, via email.
3. The pace of big data innovation in the open-source community will accelerate in 2014. 
"New open-source projects like Hadoop 2.0 and YARN, as the next-generation Hadoop resource manager, will make the Hadoop infrastructure more interactive. New open-source projects like STORM, a streaming communications protocol, will enable more real-time, on-demand blending of information in the big data ecosystem," wrote Quentin Gallivan, CEO of business analytics software firm Pentaho, in a December 5 blog post.
4. The need for automated tools will become increasingly critical.
"It seems that the more data we have, the more we want," John Joseph, VP of product marketing for analytics software firm Lavastorm Analytics told InformationWeek via email. "But as data volumes increase, the need for pattern matching, simulation, and predictive analytics technologies become more crucial. Engines that can automatically sift through the growing mass of data, identify issues or opportunities, and even take automated action to capitalize on those findings will be a necessity."

5. Beware, Oracle! 2014 will be the year of SQL on Hadoop. 
"I think you'll see people start building interactive applications on the Hadoop infrastructure. And what I mean by that -- and I think this is probably the most controversial thing -- is that people will start replacing their first-generation relational databases with SQL on Hadoop," said Monte Zweben, CEO of SQL-on-Hadoop database startup Splice Machine, in a phone interview with InformationWeek.

6. Big data flies to the cloud. 
"Big data has gained a lot of traction in 2013 but complex technologies are keeping many businesses from getting their solutions into production and generating a positive ROI. In 2014, businesses will look beyond the hype and turn to cloud solutions that generate fast time to value and do not require highly specialized dedicated skill sets, like Hadoop, to manage. 2014 will be the year that big data moves from buzzword to business imperative," said Sandy Steier, cofounder and CEO of cloud-based analytics firm 1010data, via email.
4. The need for automated tools will become increasingly critical.
"It seems that the more data we have, the more we want," John Joseph, VP of product marketing for analytics software firm Lavastorm Analytics told InformationWeek via email. "But as data volumes increase, the need for pattern matching, simulation, and predictive analytics technologies become more crucial. Engines that can automatically sift through the growing mass of data, identify issues or opportunities, and even take automated action to capitalize on those findings will be a necessity."
5. Beware, Oracle! 2014 will be the year of SQL on Hadoop. 
"I think you'll see people start building interactive applications on the Hadoop infrastructure. And what I mean by that -- and I think this is probably the most controversial thing -- is that people will start replacing their first-generation relational databases with SQL on Hadoop," said Monte Zweben, CEO of SQL-on-Hadoop database startup Splice Machine, in a phone interview with InformationWeek.

6. Big data flies to the cloud. 
"Big data has gained a lot of traction in 2013 but complex technologies are keeping many businesses from getting their solutions into production and generating a positive ROI. In 2014, businesses will look beyond the hype and turn to cloud solutions that generate fast time to value and do not require highly specialized dedicated skill sets, like Hadoop, to manage. 2014 will be the year that big data moves from buzzword to business imperative," said Sandy Steier, cofounder and CEO of cloud-based analytics firm 1010data, via email.
5. Beware, Oracle! 2014 will be the year of SQL on Hadoop. 
"I think you'll see people start building interactive applications on the Hadoop infrastructure. And what I mean by that -- and I think this is probably the most controversial thing -- is that people will start replacing their first-generation relational databases with SQL on Hadoop," said Monte Zweben, CEO of SQL-on-Hadoop database startup Splice Machine, in a phone interview with InformationWeek.
6. Big data flies to the cloud. 
"Big data has gained a lot of traction in 2013 but complex technologies are keeping many businesses from getting their solutions into production and generating a positive ROI. In 2014, businesses will look beyond the hype and turn to cloud solutions that generate fast time to value and do not require highly specialized dedicated skill sets, like Hadoop, to manage. 2014 will be the year that big data moves from buzzword to business imperative," said Sandy Steier, cofounder and CEO of cloud-based analytics firm 1010data, via email.
6. Big data flies to the cloud. 
"Big data has gained a lot of traction in 2013 but complex technologies are keeping many businesses from getting their solutions into production and generating a positive ROI. In 2014, businesses will look beyond the hype and turn to cloud solutions that generate fast time to value and do not require highly specialized dedicated skill sets, like Hadoop, to manage. 2014 will be the year that big data moves from buzzword to business imperative," said Sandy Steier, cofounder and CEO of cloud-based analytics firm 1010data, via email.
How will big data evolve in 2014? The future is anyone's guess, of course, but we thought we'd compile a tasty holiday assortment of prognostications from executives working in the big data trenches. So without further delay, here they are -- six big data predictions for next year:
1. "More Hadoop projects will fail than succeed."
"More Hadoop projects will be swept under the rug as businesses devote major resources to their big data projects before doing their due diligence, which results in a costly, disillusioning project failure. We may not hear about most of the failures, of course, but the successes will clearly demonstrate the importance of using the right tools. The right big data toolkit will enable organizations to easily carry forward the success of these projects, as well as further insert their value into their business processes for market advantage."
[Who are next year's rising stars in business intelligence? Read 2014 BI Outlook: Who's Hot, Who's Not.]
Jeff Bertolucci is a technology journalist in Los Angeles who writes mostly for Kiplinger's Personal Finance, the Saturday Evening Post, and InformationWeek.
IT groups need data analytics software that's visual and accessible. Vendors are getting the message. Also in the State Of Analytics issue of InformationWeek: SAP CEO envisions a younger, greener, cloudier company. (Free registration required.)

Thursday, December 19, 2013

Storm과 Esper로 실시간 분석 샘플 사용기

source: http://mimul.com/pebble/default/2012/03/14/1331718971671.html

Storm과 Esper로 실시간 분석 샘플 사용기

Storm & Esper

현재의 Big Data 분석 관점에서 실시간성이 가장 중요한 포인트 중에 하나다. 과거에는 Big Data 분석에서 알고리즘 분석에 치중한 나머지 데이터 제공은 Batch Processing에 머물러 있었는데, 최근 들어 Twitter Storm, Apache S4 등이 나오면서 실시간성 분석이 필요한 트렌드나 실시간 급상승 인기 검색어, Abuse 트래픽/고객 인식 등의 비즈니스에서 Big Data 분석과 실시간성이 결합된 추세가 되었다.

그래서 간략하게 Twitter Storm과 Esper를 활용한 개인 Twitter의 tps와 maxRetweets을 맛보기로 테스트 해본다.
Stream의 tuple은 Twitter Status의 createdAt, retweetCount이고 bolt는 EsperBolt를 활용해서 쿼리를 통해 tps, maxRetweets을 리턴한다.

이걸 좀더 확장한다면 리트윗이 많이된 트윗을 분석해서 실시간 이슈를 추출해낼 수 있게 된다.

1. Storm Cluster
 - Nimbus는 Master 노드이며 Hadoop의 jobTracker와 비슷한 일을 하고 있다. 코드를 클러스터에 분산, 머신에 Task 할당/관리, 오류 모니터링 등의 역할을 함.
 - Supervisor는 워커 프로세스이며 일을 할당받아서 하고 끝나면 리턴하는 역할을 함. Topology의 Subset임.
 - Zookeeper는 Nimbus와 Supervisor사이에서 클러스터를 통해 협력해서 상태 관리, 장애 관리를 함.

2. Storm 개요
  - Streams : 무한 tuple들의 시퀀스를 말함.
  - Spouts : Streams의 소스. 예를 들면 트윗의 스트리밍 읽는 부분이 여기에 해당됨.
  - Bolts : Input Streams을 가공해서 새로운 출력 Streams으로 내보내는 역할. 스트림의 변환.
  - Topologies : Spouts와 Bolts의 관계망 그래프.
   . 스파우트, 볼트는 클러스터전체에 걸처 쓰레드로 수행됨.

3. Storm 특징
  - 다양한 프로그래밍 언어 지원 : Java, Clojure, Ruby, Python 등.
  - Hadoop은 batch processing 개념이 강한데, Storm은 realtime processing.
  - Fault-tolerant : Nimbus가 Supervisor를 감시, 재시작 등의 관리를 함. Topology가 감시됨.
  - 확장성 : 병렬 연산이며, Scale-Out이 됨.
  - ZeroMQ 활용으로 처리 성능이 좋음.
  - 로컬 모드, 분산 모드 지원.

4. Esper 개요
  - Java 기반의 ESP/CEP 컨테이너.
  - 경량이고 embeded가 가능함.
  - 오픈 소스인데 GPL.
  - 엔진은 Time, Threads, Streams간의 독립 단위로 처리됨.
  - EPL지원으로 SQL처럼 데이터를 프로세싱할 수 있음.
  - 실시간 분석 가능.


아래는 Storm Local모드 설치 방법을 설명한다.

5. Zookeeper 설치
  - Storm에서 zookeeper 3.3..3버전으로 구축 되어 있어서 3.3.3 버전 설치함.
> wget http://ftp.daum.net/apache//zookeeper/zookeeper-3.3.3/zookeeper-3.3.3.tar.gz
> tar xvfz zookeeper-3.3.3.tar.gz
> cd zookeeper-3.3.3/conf
> cp zoo_sample.cfg zoo.cfg
> vi zoo.cfg
dataDir=/database/zookeeper/data

server.1=zookeeper1:2888:3888
server.2=zookeeper2:2888:3888
server.3=zookeeper3:2888:3888

> vi /database/zookeeper/data/myid
각 서버별 server.X의 X값을 추가해 준다.

> cd ../bin
> ./zkServer.sh start

6. Storm Local Mode 설치
> wget https://github.com/downloads/nathanmarz/storm/storm-0.6.2.zip
> unzip storm-0.6.2.zip
> cd storm-0.6.2

# 설정 추가
> vi conf/storm.yml
nimbus.host: "127.0.0.1"
storm.zookeeper.servers:
 - "zookeeper1"
 - "zookeeper2"
 - "zookeeper3"
# Storm 구동 계정 권한
chown -R storm:storm /mnt

#서버 실행
> bin/storm ui
> bin/storm supervisor
> bin/storm nimbus

7. 샘플 테스트
  - storm-esper jar 파일 생성(아래는 수정내용 포함-TwitterEsperSample.java).
TopologyBuilder builder = new TopologyBuilder();
TwitterSpout spout = new TwitterSpout(username, pwd);
EsperBolt bolt = new EsperBolt.Builder()
.addInputAlias("twitter", "default", "Tweets")
.setAnonymousOutput("default", "tps", "maxRetweets")
.addStatement("select count(*) as tps, max(retweetCount) as 
 maxRetweets from Tweets.win:time_batch(2 sec)")
.build();

builder.setSpout("twitter", spout);
builder.setBolt("EsperBolt", bolt).shuffleGrouping("twitter");

StormTopology topology = builder.createTopology();
Config conf = new Config();
conf.setDebug(true);
conf.setNumWorkers(2);

LocalCluster cluster = new LocalCluster();
cluster.submitTopology("test", conf, topology);
Utils.sleep(10000);
cluster.killTopology("test");
cluster.shutdown();

  - 라이브러리 카피
storm-0.6.2/lib에 카피함.
storm-esper-0.6.2-SNAPSHOT.jar
twitter4j-core-2.2.5.jar
twitter4j-stream-2.2.5.jar 
esper-4.3.0.jar
antlr-2.7.7.jar
antlr-runtime-3.2.jar

 - 실행 커맨드.
> bin/storm jar /database/samples/storm/storm-esper-0.6.2-SNAPSHOT.jar 
 org.tomdz.storm.esper.example.TwitterEsperSample
2012-03-14 twitter source: twitter:3, stream: default, id: {}, [1331696355000, 9]
2012-03-14 twitter source: twitter:3, stream: default, id: {}, [1331696355000, 0]
2012-03-14 twitter source: twitter:3, stream: default, id: {}, [1331696355000, 62]
2012-03-14 twitter source: twitter:3, stream: default, id: {}, [1331696355000, 4]
2012-03-14 twitter source: twitter:3, stream: default, id: {}, [1331696355000, 1]
2012-03-14 twitter source: twitter:3, stream: default, id: {}, [1331696355000, 0]
2012-03-14 twitter source: twitter:3, stream: default, id: {}, [1331696355000, 0]
2012-03-14 twitter source: twitter:3, stream: default, id: {}, [1331696355000, 0]
2012-03-14 twitter source: twitter:3, stream: default, id: {}, [1331696354000, 0]
2012-03-14 EsperBolt source: EsperBolt:2, stream: default, id: {}, [70, 62]
.......

8. Storm 내부 구조
/{storm-local-dir}
  |
  |-/nimbus
  |   |
  |   |-/inbox                    
  |   |  |
  |   |  |-/stormjar-{uuid}.jar    
  |   |
  |   |-/stormdist
  |      |
  |      |-/{topology-id}
  |         |
  |         |-/stormjar.jar        
  |         |
  |         |-/stormcode.ser      
  |         |
  |         |-/stormconf.ser 
  |
  |-/supervisor
  |   |
  |   |-/stormdist
  |   |   |
  |   |   |-/{topology-id}
  |   |      |
  |   |      |-/resources     
  |   |      |
  |   |      |-/stormjar.jar     
  |   |      |
  |   |      |-/stormcode.ser     
  |   |      |
  |   |      |-/stormconf.ser      
  |   |
  |   |-/localstate                
  |   |
  |   |-/tmp                      
  |      |-/{uuid}
  |         |
  |         |-/stormjar.jar        
  |-/workers
      |
      |-/{worker-id}
          |
          |-/pids                
          |   |-/{pid}             
          |-/heartbeats            
             |
             |-/{worker-id}

[참조 사이트]
Tags : , , , 

SQL on Hadoop 100배, 200배 성능의 진실

source: http://jaso.co.kr/480


SQL on Hadoop 100배, 200배 성능의 진실


최근 SQL-On-Hadoop이라고 하여 Hadoop에 저장된 데이터를 MapReudce라는 프로그램을 이용하지 않고 개발자(또는 사용자, 데이터 분석가)에게 친근한 인터페이스인 SQL을 이용하여 데이터를 처리하는 솔루션이 많은 관심을 받고 있다.
SQL-On-Hadoop의 현재의 Hadoop기반 데이터 처리 플랫폼에서 중요한 이유는 S태그QL이라는 표준 기반이기 때문에 기존의 데이터 분석 솔루션(BI 도구) 등과 쉽게 연동될 수 있는 가능성을 보여주기 때문이다.
페이스북에서 개발하여 지금은 아파치 프로젝트인 Hive는 개발된지 5년 정도되었으며 가장 많이 사용하면 SQL-On-Hadoop 계열의 솔루션이라 할 수 있다. 최근 Hive와 유사한 개념으로 새로운 솔루션이 많이 등장하는데 하나같이 Hive 대비 몇배라는 슬로건을 걸고 있는데 몇배 수준이 아니라 몇십배, 심지어는 몇백배 이상 성능이 빠르다는 문구로 유혹하고 있다.
이번 글에서는 SQL-On-Hadoop의 성능 factor와 각 솔루션에서 제시하는 성능 수치가 구라(?)임을 밝혀보고자 한다.

- SQL-On-Hadoop 솔루션의 특징
  . 대부분의 데이터 파일은 Hadoop 파일 시스템에 저장
  . 데이터 파일은 인덱스가 없는 flat한 파일 형태가 대부분
  . 데이터 파일은 읽기 성능 향상을 위해 일부 구조화된 형태로 저장(RC, ORC Parquet 등)
  . SQL 문을 이용하여 데이터 처리
  . SQL 문 실행은 분산된 환경에서 실행
  . 처리 결과가 많은 경우 결과를 다시 Hadoop 또는 다른 파일 시스템으로 저장하는 기능 제공

- SQL-On-Hadoop 솔루션 종류
  . Hive: SQL을 MapReduce로 전환하여 실행,  MapReduce의 장/단점을 그래도 가지고 있음(안정성, 셔플 오버헤드 등)
  . Stinger: 별도 제품이 아닌 Hive 개선 프로젝트 이름으로 Hive를 MapReduce 기반이 아닌 Tez 기반의 컴퓨팅 플랫폼 기반으로 전환하는 등 다양한 개선 목표를 가지고 진행 중인 프로젝트
  . Apache Tajo: hdfs에 저장된 파일을 별도의 컴퓨팅 플랫폼을 이용하여 질의 실행
  . Cloudera Impala: hdfs에 저장된 파일을 별도의 컴퓨팅 플랫폼을 이용하여 질의 실행. 셔플 단계의 데이터는 모두 메모리에 존재. 셔플 부하는 없지만 메모리 크기 이상의 셔플 데이터는 처리하지 못함
  . Pivotal HAWQ: EMC의 소프트웨어 계열사인 Pivotal에서 만든 SQL-On-Hadoop 솔루션으로 오픈소스는 아님.
  . Apache Drill:  Tajo와 유사한 프로젝트.
  . 기타 등등: 많이 있음

- SQL-On-Hadoop 솔루션의 성능 factor
  . Hadoop 파일 스캔 속도
    데이터가 Hadoop에 저장되어 있고 특별한 경우를 제외하고는 대부분 full scan으로 데이터 파일을 읽기 때문에 처리 속도에 가장 중요한 영향을 미친다.
  . 중간 데이터 처리
    group by, order by 등의 연산을 처리할 때에는 여러 단계의 실행 계획을 거쳐야 하는데 이때 앞 단계의 결과 데이터가 다음 단계의 입력 데이터로 전달되어야 한다. 이 데이터 전달을 어떻게 효과적으로 처리하느냐도 성능에 많은 영향을 준다.
  . 실행계획
    SQL을 얼마나 효과적인 실행계획으로 처리하느냐도 성능에 많은 영향을 준다. 예를 들어 order by의 경우 hive에서는 특별한 처리를 하지 않으면 무조건 하나의 reduce에서 처리하게 되어 분산의 효과가 거의 없다.
  . 파일 포맷
    과거에는 textfile이나 seqfile 정도만 사용하였는데 최근에는 컬럼 기반의 파일 포맷인 RCFile이나 이를 확장한 ORCFile과 parquet등 다양한 파일들이 나타나고 있으며 각 파일에 따라 특성이 조금 달라서 테이터의 특성, 질의의 특성에 따라 적절한 파일을 선택해야 한다.
  . 결과 저장
    처리 결과가 많은 경우 저장되는 데이터 파일의 포맷, 파일 저장 처리 성능 등도 많은 영향을 준다. ORC 파일의 경우 읽기 성능은 좋지만 쓰기 성능이 나쁜 대표적인 파일 포맷이다.
  . 압축
    적절한 압축을 잘 사용할 경우 읽기, 쓰기 모두 성능 향상을 가져 올 수 있다.
  . 질의 실행 초기화 시간
    실행계획 수립, 분산된 환경으로 질의 작업 요청 등에 걸리는 시간으로 짧은 질의인 경우 이 시간이 많은 영향을 주지만 100초 이상되는 질의에서는 많은 영향을 주지는 않는다.

- SQL-On-Hadoop의 절대 성능 수치
   . SQL-On-Hadoop은 당분간은 절대 이 수치를 넘을 수는 없다.
     성능 <= HDFS 전체의 디스크 갯수 * 디스크 bandwidth
     예를 들어 10대 서버, 서버 하나에 디스크 8개, SATA 7200 rpm인 경우
     10대 * 8개 * 100MB/sec = 8GB/sec
  . 실제로 1.5TB의 데이터를 Hive, Tajo, Impala를 이용하여 다음 질의를 수행하면 성능 차이는 크지 않다.
    select count(*) from T_TEST
    이 질의의 경우 셔플에 대한 부하는 거의 없으며 성능에 관련된 factor는 "파일 스캔 속도", "질의 실행 초기화 시간", "파일 포맷" 정도이다.  파일 포맷이 동일하다고 가정하고 데이터가 충분히 크기때문에 파일 스캔 속도가 가장 큰 영향을 주는 factor이다. 따라서 이 질의 경우 성능 차이가 각 솔루션별로 크지 않다. 성능 수치는 Hive를 1로 하면  Tajo, Impala는 1.5 ~ 3배 정도이다. 100배, 200배와는 너무나 차이가 많이 나는 수치이다.

- 성능 비교에 자주 사용하는 질의
   . 질의 실행 시간이 짧은 질의
     Hive(Stinger가 아닌)의 경우 MapReduce 작업을 실행시켜야 하는 초기 비용이 많이 들기 때문에 질의 실행 시간이 10초 이상인 경우 수십배, 수백배 정도 성능 차이가 날수 있다. 성능 결과에  Hive는 20초 였는데 A 솔루션은 0.1초 라고 나오는 경우 200배 성능 향상이 있다고 주장하지만 이 수치를 200초로 확대했을 때 1초만 A 솔루션이 1초만 걸릴지는 의문이다. 200초로 확대했다는 의미는 입력 데이터가 더 커졌다는 의미이다.

   . 특정 솔루션에 최적화된 실행 계획
     Hive와 성능 비교를 할때 비교 대상 솔루션의 성능을 가장 돋보이게 하는 질의는 order by가 있는 질이이다. 여기에 order by 대상 데이터가 많고 테스트 클러스터가 크면 클수록 성능 차이는 크다.
     Hive의 경우 order by는 아무리 서버가 많아도 하나의 서버에서만 실행된다. 100대의 장비에 1대당 동시에 10개의 task를 실행시킬 수 있는 환경이고 경쟁 솔루션은 분산 order by를 지원할 경우 1000배의 성능 향상을 가져올 수 있다. 물론 Hive가 이런 기능을 제공하지 않기 떄문에 1000배라고 말하는 것이 맞기는 하지만 이 수치만으로 대부분의 질의에 평균 1000배의 성능 향상이 있다고 믿게끔 문서를 만들면 안된다.

    또 다른 실행계획 중 하나는 join인데 큰 테이블과 작은 테이블 여러개 join 처리를 하는 경우 어떻게 처리하느냐에 따라 성능 차이가 많이 나기 떄문에 이 부분도 솔루션의 특징에 따라 천차만별이다.

- 결론
현재 SQL-On-Hadoop 진영에서 제시하는 대부분의 성능 수치는 일반적인 질의나 전체 질의에 대해서 평균 몇배 빠르다가 아닌 자신들이 유리한 조건에서 테스트한 결과만을 언급하는 경우가 많다. 필자의 테스트 결과를 보면 대략 평균 3 ~ 5배 정도이고 질의의 종류에 따라 수십배 정도 빠를 수도 있고, 더 느릴 수도 있다.
따라서 자신의 데이터 속성과 질의 속성에 맞는 플랫폼을 선택하는 안목이 필요할 때이다. 미국산 벤더, 블로그, 언론에서 제시한 수치라고 맹신하는 것은 금물이다. 요즘 추세가 오픈소스에도 구라를 무지하게 치는 추세로 가고 있는 것 같다.

더 많은 내용을 담고 싶었지만 타이핑의 압박으로 인해 여기까지만 합니다.
크리에이티브 커먼즈 라이센스
Creative Commons License
Posted by 김형준
Trackback URL : http://www.jaso.co.kr/trackback/480

거대한 변화, NewSQL vs NoSQL


source: http://www.zdnet.co.kr/column/column_view.asp?artice_id=20131217170208&type=xml

임백준 IT칼럼니스트 baekjun.lim@gmail.com 2013.12.18 / AM 08:17 개발자
칼럼니스트 : 임백준
이메일
baekjun.lim@gmail.com
약력
한빛미디어에서 『누워서 읽는 퍼즐북』(2010), 『프로그래밍은 상상이다』(2008), 『뉴욕의 프로그래머』(2007), 『소프트웨어산책』(2005), 『나는 프로그래머다』(2004), 『누워서 읽는 알고리즘』(2003), 『행복한 프로그래밍』(2003)을 출간했고, 로드북에서 『프로그래머 그 다음 이야기』(2011)를 출간했다. 삼성SDS, 루슨트 테크놀로지스, 도이치은행, 바클리스은행 등에서 근무했고 현재는 뉴욕에 있는 모건스탠리에서 자바, C#, 스칼라 언어를 이용해서 금융관련 소프트웨어를 개발하고 있다. 뉴저지에서 아내, 두 딸과 함께 살고 있다. baekjunlim.wordpress.com 블로그도 운영중이다.
MIT 교수인 마이클 스톤브레이커(Michael Stonebraker)는 관계형 데이터베이스 시스템에 대한 최고 권위자중 한 명이다. 그가 1973년에 개발한 인그레스(Ingres)라는 데이터베이스 시스템은 당시까지 추상적인 개념으로만 존재하던 관계형 데이터베이스를 최초로 구현한 사례였다.

인그레스가 사용한 비트리(B-trees), 제약조건(constraints), 트리거(trigger)와 같은 기법은 오라클, DB2, 사이베이스로 이어지는 주요한 데이터베이스 시스템 설계에 많은 영향을 끼쳤다. 스톤 브레이커 교수가 인그레스 데이터베이스를 개발하면서 동료들과 함께 작성한 코드는 훗날 사이베이스와 마이크로소프트 SQL 서버에서 사용되기도 했다.

오랫동안 캘리포니아 버클리 대학에서 교수생활을 하던 그는 2001년에 MIT로 자리를 옮겨서 지금까지 연구와 벤처회사 등을 통한 왕성한 활동을 벌이고 있다.

스톤브레이커 교수는 지난 12월 5일에 업로드가 된 팟캐스트 방송 “소프트웨어 엔지니어링 라디오”에 출연해서 상당히 흥미로운 인터뷰를 했다.

최근에 업계에서는 NoSQL이 많은 주목을 받고 있는데, 그는 이러한 흐름에 대해서 설득력 있는 비판을 가하면서 전통적인 관계형 데이터베이스를 새롭게 구축하는 전략을 의미하는 NewSQL이라는 개념을 주창했다. 귀가 따가울 정도로 들려오는 NoSQL이라는 ‘버즈워드(buzzword)’ 때문에 어지러움을 느꼈던 사람이라면 스톤브레이커 교수의 차분한 분석을 경청해볼 만하다.

스톤브레이커 교수는 NoSQL이라는 흐름이 형성되기 전인 2006년에 논문을 발표해서 전통적인 방식의 관계형 데이터베이스 아키텍처가 설 자리를 잃고 있다고 주장한 바 있다. 이번 인터뷰에서는 그는 한 걸음 더 나아가서 전통적인 아키텍처가 설 자리는 이제 어디에도 없다고 주장했다. 이유는 이렇다.

데이터베이스 시장은 크게 3개 영역으로 나눠진다. 첫 번째는 데이터 분석과 리포트를 위한 데이터 웨어하우스 영역이다. 두 번째는 일반적인 트랜잭션 처리를 다루는 OLTP(Online Transaction Processing) 영역이다. 마지막 세 번째는 기존의 관계형 데이터베이스와 패러다임을 달리하는 NoSQL, 그래프 데이터베이스, 배열 데이터베이스, 하둡 등으로 이루어지는 백가쟁명의 영역이다.

세 번째 영역에서 전통적인 관계형 데이터베이스 아키텍처가 설 자리가 없다는 사실은 자명하다. 패러다임 자체가 다르기 때문이다. 스톤브레이커 교수에 의하면 첫 번째 데이터웨어하우스 시장은 속도가 50배에서 100배 정도 더 빠른 열 중심 데이터베이스로 이동하고 있고, 두 번째 OLTP 시장은 메모리 가격 하락과 맞물려 차츰 인메모리(in memory) 데이터베이스로 변해가고 있다. 전통적인 아키텍처는 이렇게 데이터베이스 시장을 구성하는 세 개 영역 모두에서 설 자리를 잃었기 때문에 존재의 의미를 상실했다.

여기에서 ‘전통적인’ 아키텍처란 바로 스톤브레이커 교수 자신이 인그레스를 통해서 출발신호를 알린 관계형 데이터베이스들의 공통적인 아키텍처를 의미한다. 오늘날 가장 널리 사용되고 있는 오라클, 사이베이스, DB2, SQL 서버, MySQL 등이 전통적인 아키텍처를 사용하고 있음은 물론이다.

이러한 전통적인 아키텍처는 기본적으로 데이터를 행(row) 중심으로 저장한다. 이러한 데이터는 일정한 크기의 데이터 블록으로 묶여 하드디스크에 저장되는데, 데이터 블록의 물리적인 모습은 회사마다 다르다. 데이터베이스 시스템이 하드디스크에서 데이터를 읽으면 메인메모리에 있는 캐시인 버퍼풀(buffer pool)에 저장하고, 멀티쓰레드와 관련된 오류를 피하기 위해서 행 수준의 잠금장치(record level lock)를 이용한다.

또한인덱스를 구현하기 위해 비트리(B-tree)를 사용하고 질의문으로 SQL을 이용하고, 최적의 성능을 위해 내부적으로 질의 최적화기(query optimizer)를 이용한다.

스톤브레이커 교수가 전통적인 아키텍처를 구현한 데이터베이스가 동작하는 과정을 정밀하게 분석한 결과에 따르면 데이터베이스가 가장 핵심적인 동작인 데이터 레코드를 찾아서 “읽고 쓰는데” 소모하는 시간은 놀랍게도 10% 정도에 불과하다. 90%의 시간이 메모리에서 버퍼풀을 관리하거나 멀티쓰레딩과 관련된 동작을 제어하는데 사용되기 때문이다.

스톤브레이커 교수가 주장하는 NewSQL의 핵심은 새로운 아키텍처를 도입해서 이렇게 CPU 사이클을 심각한 수준으로 낭비하는 오버헤드를 제거하는데 있다.

새로운 아키텍처를 구성하는 요소는 크게 세 가지 정도로 생각해볼 수 있다. 첫 번째는 데이터를 하드디스크가 아니라 메모리에 저장함으로써 디스크에 접근하는 I/O 연산을 최소화하고, 그와 동시에 버퍼풀이라는 중간 단계를 완전히 제거하는 것이다.

인메모리 데이터베이스의 접근방식을 따르는 것으로 볼 수 있다. 두 번째는 멀티쓰레딩과 관련된 오버헤드를 제거하기 위해 전과 다른 방식을 사용하는 것이다. 복잡하게 들리긴 하지만 멀티버전 동시성 통제(multi version concurrency control)라는 방법과 타임스탬프 오더링(timestamp ordering)라는 방식이 있다.

앞의 것은 일반적인 컴퓨터 프로그래밍 진영에서 활발하게 논의되고 있는 소프트웨어 트랜잭션 모델(STM)과 비슷한 개념이고, 뒤의 것은 스톤브레이커 교수가 개발한 최신형 데이터베이스인 볼트디비(VoltDB)에서 이용하고 있는 방법이다.

이러한 방법을 통해서 버퍼풀 관리와 멀티쓰레딩 코드로 인해서 발생하는 오버헤드를 제거하면 데이터베이스의 성능이 과거에 비해서 비교할 수 없을 정도로 향상된다. NewSQL의 핵심은 이러한 아키텍처의 재구성을 통해서 성취하는 혁명적인 성능개선에 놓여 있다.

스톤브레이커 교수는 현재 MIT 대학에 있는 데이터베이스 과목들이 대부분 (이제는 쓸모가 없어진) 전통적인 아키텍처를 가르치는데 시간을 소모하고 있다고 지적하면서 대신 칼럼 스토어(column stores), 인메모리 데이터베이스, 배열 데이터베이스, 그래프 데이터베이스, NoSQL 시스템 등에 대해서 공부하는데 더 많은 시간을 할애해야 한다고 말한다.

이러한 새로운 접근방식들은 모두 NewSQL의 흐름을 구성하는 핵심적인 요소라고 볼 수 있다.

NoSQL에 대한 그의 비판은 ‘NoSQL’의 정확한 이름은 아마도 ‘NotYetSQL’이라고 봐야 할 것이라는 주장으로 압축된다. 스톤브레이커 교수가 보기에 NoSQL 시스템이 전통적인 관계형 데이터베이스의 한계를 통렬하게 지적하고 ‘SQL’을 부정하면서 출발했지만, 시간이 흐르면서 차츰 전통적인 관계형 데이터베이스의 틀 안으로 되돌아 올 수밖에 없다.

하둡만 해도 그렇다. 하둡은 가장 아래에 있는 파일시스템을 의미하는 HDFS, 중간에 존재하는 알고리즘인 맵리듀스(map reduce), 그리고 질의문을 구성하는 하이브(Hive)와 같은 테크놀로지, 이렇게 세 개 계층으로 구성된다.

하둡을 사용하는 대표적인 기업인 페이스북은 처음에 하이브를 이용해서 성공을 거두었지만, 얼마 지나지 않아서 HDFS와 맵리듀스가 기본적으로 배치처리를 중심으로 설계되었으며 그에 따르는 많은 오버헤드를 안고 있기 때문에 성능을 저하시킨다는 문제에 봉착했다.

스톤브레이커 교수는 페이스북이 발생시키는 트래픽의 95%가 SQL과 다를 것이 없는 하이브를 통해서 발생하는 트래픽이고 겨우 5% 정도만 맵리듀스를 통한 병렬처리의 덕을 볼 수 있는 트래픽이라고 지적한다. 이것은 곧 페이스북이 하둡이라는 묵직한 테크놀로지를 통해서 이득을 볼 수 있는 부분이 5%에 불과하다는 뜻이다.

나머지 95% 부분은 하둡을 사용하기 때문에 오히려 성능이 저하된다. 이런 의미에서 하둡은 병렬처리가 가능한 최신의 관계형 데이터베이스의 성능에 미치지 못한다.

페이스북은 이러한 단점을 극복하기 위해서 최근에 맵리듀스 계층을 제거한 프레스토(Presto) 엔진을 도입했는데, 스톤브레이커 교수는 이러한 엔진이 결국 기존 데이터베이스 엔진과 별로 다를 바 없다고 이야기한다. 이러한 엔진이 개념적으로 NoSQL이 아니라 NewSQL의 범주에 속한다고 판단하는 것처럼 보인다.

영어로는 흔히 “embarrassingly parallel”이라고 표현하는, 우리말로 하자면 황당할 정도로 당연히 병렬처리를 필요로 하는 소수의 영역을 제외하면 NoSQL이나 하둡이 불필요한 오버헤드에 불과하다. 그렇기 때문에 NoSQL의 구성요소들은 새롭게 구현되고 있는 데이터베이스 아키텍처로 수렴할 수밖에 없다. SQL의 품으로 되돌아오는 것이다.

NoSQL이든 NewSQL이든 70년대 이후로 40년이 넘게 사용되어온 전통적인 관계형 데이터베이스의 아키텍처가 완전히 새로운 방식으로 재구성되고 있다는 사실만큼은 누구도 부정할 수 없다. 새로운 아키텍처의 모습은 몽고DB와 같은 NoSQL일 수도 있고, Neo4j와 같은 그래프 데이터베이스일 수도 있고, SAP의 해나(Hana)와 같은 인메모리 데이터베이스일 수도 있다. KDB나 테라데이터(Teradata)와 같은 열 중심 데이터베이스일 수도 있다.

NoSQL이라는 버즈워드가 귀에서 윙윙거린다고 해서 무조건 수용을 하거나 배척할 것이 아니라, 이렇게 전면적인 변화가 일어나고 있는 지형에서 NoSQL이 점하는 위치가 어디인지를 생각하며 큰 그림을 보려고 노력하는 것이 필요하다. 그러한 노력을 통해서 자신이 현재 수행하고 있는 프로젝트와 미래의 프로젝트를 위해서 좋은 선택을 내릴 수 있으리라고 생각한다.

Monday, December 9, 2013