 Thank you for a great introduction and See described and they're an abstract for my presentation. So now let's get started and I am Satoshi Tegomori and came from Japan Tokyo, Japan and then I am and some I am an author of some of the software like Of the software and the committer of the project and Norikura project and then now and I am an I am a maintainer of message back ruby project and message back ruby project message back ruby jam is now including and jrb implementation in one gem and And my recent and my my most recent help source contribution needs docker logging driver for friendly and which which Transfer transfers Docker logs into friendly process directory and it will be released in with docker version 1.8 and My day job is and I'm working for treasure data ink and which is the data process software as a service company for data processing service and Which is placed on mountain view Headquarter for headquarter and and have and Tokyo branch. I'm working. It's a Tokyo branch and Fastened we are hiring so and if you are if you are interested in our company and please contact me or visit this URL Okay, and data processing wall and in data processing world and is dominated by him and Actually in actually jab by Jabba so and There's a many open source middleware and software and like Hadoop spark test brings Tom Kafka big high-pitched railing parent president, and then they have been very curious logo characters, but Almost all of these are written in Jabba and some of the languages and runs on JBM like in Scala or Acroger or very little a little in C++ but There is a reason The why is these softwares are written in Jabba is There these software requires and the very many CPU cores and large memory space and High-rate this guy else and so the high throughput data processing for for high throughput data processing and JBM has many good features and many good improvement for these are and in this this perspective and and We also must Provide there and compatibility for Hadoop, Yand or MapReduce or HDFS APIs and that is very that is required for for by almost all of data processing users and system programmers That is why and we must use in Java or JBM languages and for for data processing software So now I will talk about and to open source software using Java and Ruby and named as Nolikra and Embark These are written and Nolikra is written by Nolikra is originally written by me and Embark. Embark is originally written by Sadayuki Furuhashi and who who is also original also the message back and The chief architect of treasured data Now Nolikra. Nolikra is an open-source software server software written in JRuby, runs on JBM and Risenstein the JBLP2 and Nolikra is also distributed on RubyGems also and you can install by this command gem install Nolikra Of course, and if you are using JRuby and What Nolikra does is very simple and Nolikra and provides and future to process SQL like this but in this this scale having a very little and extension and to express the data window Data window size by dot wing lengths and the score batch 10 So and this SQL and Nolikra proceeds Processes and this SQL for each 10 data like this if you put first data and alive and Nolikra updates internal status by pass and pass and some of bytes if This data having status equal 200 okay, then another data arrived and This data having different pass from previous data, so this and This SQL and updates and this internal counter and by by other with other record and then this The sub data have and status for 404 so this SQL just ignore this data and then That that that that that So tense data alive when test and tense data alive and Nolikra Automatically flashes this internal status into output data by and three records ordered by Some of bytes descendant. So this is an almost all of Nolikra does the very simple but and very powerful because We can and we do not we if we want if we want to Process and the streaming data Data alive that are the stream Now we must write the storm application or any other Customized application, but we we we can write the process by SQL on Nolikra. So anyway and Nolikra is written in JRuby and using the Java library named as Espar. So and why Why I wrote Nolikra in JRuby? JRuby the most important point is productivity because I don't have and not so many time when I require the such system, so and I I used and JRuby not Java not not Java directory and Espar is the third party Java library and provides and complex event processing and the feature for SQL parser and executor the this isn't Open source software licensed and the GPU bit too. So and that is a because that is a reason why Nolikra is licensed and the GPU by two so anyway and Nolikra has an a plug-in feature and as Ruby gem so Nolikras and Nolikras plug-in is and really a package then released adds Ruby gem and then Plug-in system is for a UDF and a recent a plug-in and UDF and Nolikra can in with Nolikra and we can like we can add in user defined functions and so and user can like and any function whatever you want and add it into Nolikras so and then and We can install and that's Gem that's UDF. We can we can publish just gem into Ruby gem org or install and that's and gem file directory by gem command and UDF plugins will be loaded into the Espar Java library so and we that's a UDF plugins and must be your Java class and We can like and these read these UDF code in Java or Jerobe and Jerobe coding is in compile to Java and recent a plug-in recent a plug-in is the the handra for database data of queries and and and it will be written in Jerobe and Also, it is also can be installed by and gem command Okay, and embark embark is an and opposite of data barcorder and and Then and plug-in based and power barc data loader and of software license standard Apache license page on to and distributed as Jero or Gem and both of both distributed as both in the Jero or Ruby gems and plugins are distributed distributed on Ruby gem.org and and embark is an and simply embark is this and almost almost input and output are described written in plugins and almost as many as the features are Provide by plugins, but an embark provides the very core feature like power execution or Data validation error recovery, deterministic behavior or idempotentiary trying these these features are very and difficult to implement and ensure By plugins because that is the reason why embark provides these core feature and we can add any other plugins for input and output and Filters so and if you want to if we want to add and other data source or data destination to Our embarking system you can just you can light just plug one plug-in to add and adding adding support for Software or distributed Systems or services what you whatever you want and these almost of these features are provided by plugins and Input plug-in and output plug-in and the decoder encoder for For dzip or any bgp2 or any other Compression decoder and decoder is for compression or decryption or any others and Passer plug-in and the format plug-in is for Formats like and cbs json and pkf and and tsb or any other any other formats and based on plain text format plain text files and filter plugin and and if we want to if you and add in the filter plugins to Ignore any as the embodied data or any of this and you can you can light and add in the filter plugins and Executor plug-in is then very the highly highly and connected to embark but and If you want if you want the story and there's an only executor plug-in to Execute this barc loading on hadoop map reduce hadoop map reduce executor can Execute these these whole process on and hadoop distributed systems Okay, and embarking Java and embark was written in Java because in the memory for performance original author Sadayuki Fuhashi is a kind of performance freak and I cannot against him so Sada says that I will write embarking Java for performance and I can only say Okay, I understood and So but anyway and embark plugins are loaded and over API based on JRuby and almost and embark plugins at first almost all Embark plugins are written in Java in JRuby and now some of some kind of plugins and plugin features were added and and These are supported these are supports to these are support to write plugins in Java So and you can you can choose Which language you write in plugins in JRuby for early release and Java for performance and this is the input plugin in JRuby and and very this isn't it is very short and simple Ruby code and We can lie and if you want to add there adds new data source or data destination and You can you you should just try you should write just this code and very very short and simple code Anyway and plugin management for all of Noreka and to embark and Noreka has in The SPI Noreka have an SPI in sparse SPI instance and SPI is written in Java in base of all of Noreka stack but and Noreka's engine and plugin management are within in JRuby and the whole all of these within in JRuby and Noreka supports and UDF writing in both of both of Java and JRuby and the reason the plugins are for JRuby only JRuby and and embark embark is almost almost embark why is written in Java button plug-in management system layer is written in and Java and JRuby and all all plugins are loaded over that layer using JRuby and JRuby and some the plug-in plug-in systems which The many users many many users and many plug-in author want to write Plug-ins which the many plug-in author and users and want to write Are supported to write in JRuby Like an input plug-in output plug-in filter plug-in parser plug-in and format plug-in and then decoder and encoder is and highly performance dependent and not so many users want to write such Plug-ins because they're not so many compression algorithms algorithms or Encryption methods without JJ for bgp2 were and open SSL So and it is only supported but it is these plug-in the writing these plugins Are supported in only Java and executed Anyway, and the plug-in systems on JBM and Java API so and of course we have an options to light in other language like and Java or Scala or closure and of course including JLB so and but and we we want to we want to have an the well well well designed and the plug-in system so and the JAR that the solving dependency of JAR JAR files and Java packages is the real nightmare and and maybe central is not so good Distribution service especially for plug-in authors that the the Resistering maybe central is a bit hard rather than registering into the ruby gem.org So that is the reason why we are we are choosing and JLB on Java software and to to make well-designed plug-in system and Plug-in plug-in systems, so and then plug-in and plug-in Rode and for plug-in Rode we can use the cross Rode with and JLB but the cross Rode using cross Rode is also also Difficult and confusing for the for me and Normal Ruby programmer, so and we can we are we are using just a just a require to roll the new Ruby code and and Java code in wrapped wrapped by JRuby code That is very simple and understandable for almost all of plug-in authors including me Okay, and I have some time Okay, and JLB in Japan, so There's not so many users because Japan is the country for Japan is a country and which the maths is living and Syrup isn't Supermeasure is soft in Japan and I In Japan and I have an I have our JLB cometer co-worker Nahi in treasure data treasure data, so that is and my my the treasure data is very good environment to write JLB, but in fact and treasure data have two syrupy cometer, so And that is there that is the thing and And and where Every that is there the thing and I can see everywhere in Japan and And many many many program and open source software used used and Java button they Transferred to light and Ruby In several or 10 years ago, but then now They are lighting a scar or go long I Don't like and these languages not so but Now JLB is not so major in Japan, but then I and Sadeki Furohashi, Sadeki Rashi is living in a mountain view but and and some of and some of my developer in Japanese Ruby community Starting you starting to use JLB. So and I I am expecting that then JLB is getting major than ever Okay, and that's his conclusion. So and please make your software pluggable and And by and making us by making your software pluggable and Pluggable or makes an ecosystem and the community around that's open source software So and I think that then JLB is in the best solution for to do that. Thank you very much