Submit Search
Upload
Apache Arrow
•
0 likes
•
888 views
Kouhei Sutou
Follow
Apache Arrowの2018年11月現在の最新情報を紹介します。特に、Ruby関連の部分を紹介します。
Read less
Read more
Technology
Report
Share
Report
Share
1 of 46
Download now
Download to read offline
Recommended
Apache Arrow 1.0 - A cross-language development platform for in-memory data
Apache Arrow 1.0 - A cross-language development platform for in-memory data
Kouhei Sutou
Apache Arrow
Apache Arrow
Kouhei Sutou
Apache Arrow 2019
Apache Arrow 2019
Kouhei Sutou
Apache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォーム
Kouhei Sutou
Apache Arrow Flight – ビッグデータ用高速データ転送フレームワーク #dbts2021
Apache Arrow Flight – ビッグデータ用高速データ転送フレームワーク #dbts2021
Kouhei Sutou
Apache Arrow - A cross-language development platform for in-memory data
Apache Arrow - A cross-language development platform for in-memory data
Kouhei Sutou
Rubyと仕事と自由なソフトウェア
Rubyと仕事と自由なソフトウェア
Kouhei Sutou
Spark Streamingを活用したシステムの検証結果と設計時のノウハウ
Spark Streamingを活用したシステムの検証結果と設計時のノウハウ
Future Of Data Japan
Recommended
Apache Arrow 1.0 - A cross-language development platform for in-memory data
Apache Arrow 1.0 - A cross-language development platform for in-memory data
Kouhei Sutou
Apache Arrow
Apache Arrow
Kouhei Sutou
Apache Arrow 2019
Apache Arrow 2019
Kouhei Sutou
Apache Arrow - データ処理ツールの次世代プラットフォーム
Apache Arrow - データ処理ツールの次世代プラットフォーム
Kouhei Sutou
Apache Arrow Flight – ビッグデータ用高速データ転送フレームワーク #dbts2021
Apache Arrow Flight – ビッグデータ用高速データ転送フレームワーク #dbts2021
Kouhei Sutou
Apache Arrow - A cross-language development platform for in-memory data
Apache Arrow - A cross-language development platform for in-memory data
Kouhei Sutou
Rubyと仕事と自由なソフトウェア
Rubyと仕事と自由なソフトウェア
Kouhei Sutou
Spark Streamingを活用したシステムの検証結果と設計時のノウハウ
Spark Streamingを活用したシステムの検証結果と設計時のノウハウ
Future Of Data Japan
Run Spark on EMRってどんな仕組みになってるの?
Run Spark on EMRってどんな仕組みになってるの?
Satoshi Noto
AWS Black Belt Techシリーズ Amazon CloudSearch
AWS Black Belt Techシリーズ Amazon CloudSearch
Amazon Web Services Japan
Sparkパフォーマンス検証
Sparkパフォーマンス検証
BrainPad Inc.
研究用途でのAWSの利用事例と機械学習について
研究用途でのAWSの利用事例と機械学習について
Yasuhiro Matsuo
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
Noritaka Sekiyama
Deep Dive into Spark SQL with Advanced Performance Tuning
Deep Dive into Spark SQL with Advanced Performance Tuning
Takuya UESHIN
Amazon Elastic MapReduceやSparkを中心とした社内の分析環境事例とTips
Amazon Elastic MapReduceやSparkを中心とした社内の分析環境事例とTips
yuichi_komatsu
AWS Black Belt Tech Webinar 2016 〜 Amazon CloudSearch & Amazon Elasticsearch ...
AWS Black Belt Tech Webinar 2016 〜 Amazon CloudSearch & Amazon Elasticsearch ...
Amazon Web Services Japan
ソーシャルゲームのEMR活用事例
ソーシャルゲームのEMR活用事例
知教 本間
Running Apache Spark on AWS
Running Apache Spark on AWS
Noritaka Sekiyama
Amazon Athena で実現する データ分析の広がり
Amazon Athena で実現する データ分析の広がり
Amazon Web Services Japan
20111215_第1回EMR勉強会発表資料
20111215_第1回EMR勉強会発表資料
Kotaro Tsukui
Hive on Spark の設計指針を読んでみた
Hive on Spark の設計指針を読んでみた
Recruit Technologies
Tez on EMRを試してみた
Tez on EMRを試してみた
Satoshi Noto
20191211_Apache_Arrow_Meetup_Tokyo
20191211_Apache_Arrow_Meetup_Tokyo
Kohei KaiGai
Is spark streaming based on reactive streams?
Is spark streaming based on reactive streams?
chibochibo
Apache ArrowのRubyバインディングをGObject Introspectionで
Apache ArrowのRubyバインディングをGObject Introspectionで
Kouhei Sutou
Sparkストリーミング検証
Sparkストリーミング検証
BrainPad Inc.
NetflixにおけるPresto/Spark活用事例
NetflixにおけるPresto/Spark活用事例
Amazon Web Services Japan
Machine Learning on AWS
Machine Learning on AWS
Amazon Web Services Japan
20130626 kawasaki.rb NKT77
20130626 kawasaki.rb NKT77
nkt77
20130626 kawasaki.rb NKT77
20130626 kawasaki.rb NKT77
nkt77
More Related Content
What's hot
Run Spark on EMRってどんな仕組みになってるの?
Run Spark on EMRってどんな仕組みになってるの?
Satoshi Noto
AWS Black Belt Techシリーズ Amazon CloudSearch
AWS Black Belt Techシリーズ Amazon CloudSearch
Amazon Web Services Japan
Sparkパフォーマンス検証
Sparkパフォーマンス検証
BrainPad Inc.
研究用途でのAWSの利用事例と機械学習について
研究用途でのAWSの利用事例と機械学習について
Yasuhiro Matsuo
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
Noritaka Sekiyama
Deep Dive into Spark SQL with Advanced Performance Tuning
Deep Dive into Spark SQL with Advanced Performance Tuning
Takuya UESHIN
Amazon Elastic MapReduceやSparkを中心とした社内の分析環境事例とTips
Amazon Elastic MapReduceやSparkを中心とした社内の分析環境事例とTips
yuichi_komatsu
AWS Black Belt Tech Webinar 2016 〜 Amazon CloudSearch & Amazon Elasticsearch ...
AWS Black Belt Tech Webinar 2016 〜 Amazon CloudSearch & Amazon Elasticsearch ...
Amazon Web Services Japan
ソーシャルゲームのEMR活用事例
ソーシャルゲームのEMR活用事例
知教 本間
Running Apache Spark on AWS
Running Apache Spark on AWS
Noritaka Sekiyama
Amazon Athena で実現する データ分析の広がり
Amazon Athena で実現する データ分析の広がり
Amazon Web Services Japan
20111215_第1回EMR勉強会発表資料
20111215_第1回EMR勉強会発表資料
Kotaro Tsukui
Hive on Spark の設計指針を読んでみた
Hive on Spark の設計指針を読んでみた
Recruit Technologies
Tez on EMRを試してみた
Tez on EMRを試してみた
Satoshi Noto
20191211_Apache_Arrow_Meetup_Tokyo
20191211_Apache_Arrow_Meetup_Tokyo
Kohei KaiGai
Is spark streaming based on reactive streams?
Is spark streaming based on reactive streams?
chibochibo
Apache ArrowのRubyバインディングをGObject Introspectionで
Apache ArrowのRubyバインディングをGObject Introspectionで
Kouhei Sutou
Sparkストリーミング検証
Sparkストリーミング検証
BrainPad Inc.
NetflixにおけるPresto/Spark活用事例
NetflixにおけるPresto/Spark活用事例
Amazon Web Services Japan
Machine Learning on AWS
Machine Learning on AWS
Amazon Web Services Japan
What's hot
(20)
Run Spark on EMRってどんな仕組みになってるの?
Run Spark on EMRってどんな仕組みになってるの?
AWS Black Belt Techシリーズ Amazon CloudSearch
AWS Black Belt Techシリーズ Amazon CloudSearch
Sparkパフォーマンス検証
Sparkパフォーマンス検証
研究用途でのAWSの利用事例と機械学習について
研究用途でのAWSの利用事例と機械学習について
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
Hadoop/Spark で Amazon S3 を徹底的に使いこなすワザ (Hadoop / Spark Conference Japan 2019)
Deep Dive into Spark SQL with Advanced Performance Tuning
Deep Dive into Spark SQL with Advanced Performance Tuning
Amazon Elastic MapReduceやSparkを中心とした社内の分析環境事例とTips
Amazon Elastic MapReduceやSparkを中心とした社内の分析環境事例とTips
AWS Black Belt Tech Webinar 2016 〜 Amazon CloudSearch & Amazon Elasticsearch ...
AWS Black Belt Tech Webinar 2016 〜 Amazon CloudSearch & Amazon Elasticsearch ...
ソーシャルゲームのEMR活用事例
ソーシャルゲームのEMR活用事例
Running Apache Spark on AWS
Running Apache Spark on AWS
Amazon Athena で実現する データ分析の広がり
Amazon Athena で実現する データ分析の広がり
20111215_第1回EMR勉強会発表資料
20111215_第1回EMR勉強会発表資料
Hive on Spark の設計指針を読んでみた
Hive on Spark の設計指針を読んでみた
Tez on EMRを試してみた
Tez on EMRを試してみた
20191211_Apache_Arrow_Meetup_Tokyo
20191211_Apache_Arrow_Meetup_Tokyo
Is spark streaming based on reactive streams?
Is spark streaming based on reactive streams?
Apache ArrowのRubyバインディングをGObject Introspectionで
Apache ArrowのRubyバインディングをGObject Introspectionで
Sparkストリーミング検証
Sparkストリーミング検証
NetflixにおけるPresto/Spark活用事例
NetflixにおけるPresto/Spark活用事例
Machine Learning on AWS
Machine Learning on AWS
Similar to Apache Arrow
20130626 kawasaki.rb NKT77
20130626 kawasaki.rb NKT77
nkt77
20130626 kawasaki.rb NKT77
20130626 kawasaki.rb NKT77
nkt77
Red Data Tools
Red Data Tools
Kouhei Sutou
DynamoDB MyNA・JPUG合同DB勉強会 in 東京
DynamoDB MyNA・JPUG合同DB勉強会 in 東京
Yuko Mori
dots. ビッグデータオールスターズ: Azure 畠山
dots. ビッグデータオールスターズ: Azure 畠山
Daiyu Hatakeyama
RubyもApache Arrowでデータ処理言語の仲間入り
RubyもApache Arrowでデータ処理言語の仲間入り
Kouhei Sutou
Apache Spark on Azure
Apache Spark on Azure
Tusyoshi Matsuzaki
名古屋Ruby会議01 A3.製造業向け3Dデータ変換ソリューションにおけるRuby活用事例
名古屋Ruby会議01 A3.製造業向け3Dデータ変換ソリューションにおけるRuby活用事例
Shigeru UCHIYAMA
ゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せます
infinite_loop
2014 11-20 Machine Learning with Apache Spark 勉強会資料
2014 11-20 Machine Learning with Apache Spark 勉強会資料
Recruit Technologies
Metaprogramming Universe in C# - 実例に見るILからRoslynまでの活用例
Metaprogramming Universe in C# - 実例に見るILからRoslynまでの活用例
Yoshifumi Kawai
Apache geode at-s1p
Apache geode at-s1p
Masaki Yamakawa
Nginx
Nginx
Soichi Takamura
Kai = (Dynamo + memcache API) / Erlang
Kai = (Dynamo + memcache API) / Erlang
Takeru INOUE
AWS Glueを使った Serverless ETL の実装パターン
AWS Glueを使った Serverless ETL の実装パターン
seiichi arai
20120405 setsunaセミナー
20120405 setsunaセミナー
Takahiro Iwase
Scala on Hadoop
Scala on Hadoop
Shinji Tanaka
2019.03.19 Deep Dive into Spark SQL with Advanced Performance Tuning
2019.03.19 Deep Dive into Spark SQL with Advanced Performance Tuning
Takuya UESHIN
トレジャーデータのバッチクエリとアドホッククエリを理解する
トレジャーデータのバッチクエリとアドホッククエリを理解する
Takahiro Inoue
Reco choku tech night #09 -reinvent2018報告会-
Reco choku tech night #09 -reinvent2018報告会-
recotech
Similar to Apache Arrow
(20)
20130626 kawasaki.rb NKT77
20130626 kawasaki.rb NKT77
20130626 kawasaki.rb NKT77
20130626 kawasaki.rb NKT77
Red Data Tools
Red Data Tools
DynamoDB MyNA・JPUG合同DB勉強会 in 東京
DynamoDB MyNA・JPUG合同DB勉強会 in 東京
dots. ビッグデータオールスターズ: Azure 畠山
dots. ビッグデータオールスターズ: Azure 畠山
RubyもApache Arrowでデータ処理言語の仲間入り
RubyもApache Arrowでデータ処理言語の仲間入り
Apache Spark on Azure
Apache Spark on Azure
名古屋Ruby会議01 A3.製造業向け3Dデータ変換ソリューションにおけるRuby活用事例
名古屋Ruby会議01 A3.製造業向け3Dデータ変換ソリューションにおけるRuby活用事例
ゲームのインフラをAwsで実戦tips全て見せます
ゲームのインフラをAwsで実戦tips全て見せます
2014 11-20 Machine Learning with Apache Spark 勉強会資料
2014 11-20 Machine Learning with Apache Spark 勉強会資料
Metaprogramming Universe in C# - 実例に見るILからRoslynまでの活用例
Metaprogramming Universe in C# - 実例に見るILからRoslynまでの活用例
Apache geode at-s1p
Apache geode at-s1p
Nginx
Nginx
Kai = (Dynamo + memcache API) / Erlang
Kai = (Dynamo + memcache API) / Erlang
AWS Glueを使った Serverless ETL の実装パターン
AWS Glueを使った Serverless ETL の実装パターン
20120405 setsunaセミナー
20120405 setsunaセミナー
Scala on Hadoop
Scala on Hadoop
2019.03.19 Deep Dive into Spark SQL with Advanced Performance Tuning
2019.03.19 Deep Dive into Spark SQL with Advanced Performance Tuning
トレジャーデータのバッチクエリとアドホッククエリを理解する
トレジャーデータのバッチクエリとアドホッククエリを理解する
Reco choku tech night #09 -reinvent2018報告会-
Reco choku tech night #09 -reinvent2018報告会-
More from Kouhei Sutou
RubyKaigi 2022 - Fast data processing with Ruby and Apache Arrow
RubyKaigi 2022 - Fast data processing with Ruby and Apache Arrow
Kouhei Sutou
RubyKaigi Takeout 2021 - Red Arrow - Ruby and Apache Arrow
RubyKaigi Takeout 2021 - Red Arrow - Ruby and Apache Arrow
Kouhei Sutou
Apache Arrowフォーマットはなぜ速いのか
Apache Arrowフォーマットはなぜ速いのか
Kouhei Sutou
Redmine検索の未来像
Redmine検索の未来像
Kouhei Sutou
Better CSV processing with Ruby 2.6
Better CSV processing with Ruby 2.6
Kouhei Sutou
MySQL・PostgreSQLだけで作る高速あいまい全文検索システム
MySQL・PostgreSQLだけで作る高速あいまい全文検索システム
Kouhei Sutou
MySQL 8.0でMroonga
MySQL 8.0でMroonga
Kouhei Sutou
My way with Ruby
My way with Ruby
Kouhei Sutou
Mroongaの高速全文検索機能でWordPress内のコンテンツを有効活用!
Mroongaの高速全文検索機能でWordPress内のコンテンツを有効活用!
Kouhei Sutou
MariaDBとMroongaで作る全言語対応超高速全文検索システム
MariaDBとMroongaで作る全言語対応超高速全文検索システム
Kouhei Sutou
PGroonga 2 – Make PostgreSQL rich full text search system backend!
PGroonga 2 – Make PostgreSQL rich full text search system backend!
Kouhei Sutou
PGroonga 2 - PostgreSQLでの全文検索の決定版
PGroonga 2 - PostgreSQLでの全文検索の決定版
Kouhei Sutou
PostgreSQLとPGroongaで作るPHPマニュアル高速全文検索システム
PostgreSQLとPGroongaで作るPHPマニュアル高速全文検索システム
Kouhei Sutou
Improve extension API: C++ as better language for extension
Improve extension API: C++ as better language for extension
Kouhei Sutou
PGroonga & Zulip
PGroonga & Zulip
Kouhei Sutou
MySQL・PostgreSQLだけで作る高速でリッチな全文検索システム
MySQL・PostgreSQLだけで作る高速でリッチな全文検索システム
Kouhei Sutou
全文検索でRedmineをさらに活用!
全文検索でRedmineをさらに活用!
Kouhei Sutou
MySQL・PostgreSQL上で動かす全文検索エンジン「Groonga」セミナー
MySQL・PostgreSQL上で動かす全文検索エンジン「Groonga」セミナー
Kouhei Sutou
PHPでPostgreSQLとPGroongaを使って高速日本語全文検索!
PHPでPostgreSQLとPGroongaを使って高速日本語全文検索!
Kouhei Sutou
MySQLとPostgreSQLと日本語全文検索 - Azure DatabaseでMroonga・PGroongaを使いたいですよね!?
MySQLとPostgreSQLと日本語全文検索 - Azure DatabaseでMroonga・PGroongaを使いたいですよね!?
Kouhei Sutou
More from Kouhei Sutou
(20)
RubyKaigi 2022 - Fast data processing with Ruby and Apache Arrow
RubyKaigi 2022 - Fast data processing with Ruby and Apache Arrow
RubyKaigi Takeout 2021 - Red Arrow - Ruby and Apache Arrow
RubyKaigi Takeout 2021 - Red Arrow - Ruby and Apache Arrow
Apache Arrowフォーマットはなぜ速いのか
Apache Arrowフォーマットはなぜ速いのか
Redmine検索の未来像
Redmine検索の未来像
Better CSV processing with Ruby 2.6
Better CSV processing with Ruby 2.6
MySQL・PostgreSQLだけで作る高速あいまい全文検索システム
MySQL・PostgreSQLだけで作る高速あいまい全文検索システム
MySQL 8.0でMroonga
MySQL 8.0でMroonga
My way with Ruby
My way with Ruby
Mroongaの高速全文検索機能でWordPress内のコンテンツを有効活用!
Mroongaの高速全文検索機能でWordPress内のコンテンツを有効活用!
MariaDBとMroongaで作る全言語対応超高速全文検索システム
MariaDBとMroongaで作る全言語対応超高速全文検索システム
PGroonga 2 – Make PostgreSQL rich full text search system backend!
PGroonga 2 – Make PostgreSQL rich full text search system backend!
PGroonga 2 - PostgreSQLでの全文検索の決定版
PGroonga 2 - PostgreSQLでの全文検索の決定版
PostgreSQLとPGroongaで作るPHPマニュアル高速全文検索システム
PostgreSQLとPGroongaで作るPHPマニュアル高速全文検索システム
Improve extension API: C++ as better language for extension
Improve extension API: C++ as better language for extension
PGroonga & Zulip
PGroonga & Zulip
MySQL・PostgreSQLだけで作る高速でリッチな全文検索システム
MySQL・PostgreSQLだけで作る高速でリッチな全文検索システム
全文検索でRedmineをさらに活用!
全文検索でRedmineをさらに活用!
MySQL・PostgreSQL上で動かす全文検索エンジン「Groonga」セミナー
MySQL・PostgreSQL上で動かす全文検索エンジン「Groonga」セミナー
PHPでPostgreSQLとPGroongaを使って高速日本語全文検索!
PHPでPostgreSQLとPGroongaを使って高速日本語全文検索!
MySQLとPostgreSQLと日本語全文検索 - Azure DatabaseでMroonga・PGroongaを使いたいですよね!?
MySQLとPostgreSQLと日本語全文検索 - Azure DatabaseでMroonga・PGroongaを使いたいですよね!?
Recently uploaded
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
taisei2219
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Ryo Sasaki
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Toru Tamaki
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Yuma Ohgami
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
Toru Tamaki
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
iPride Co., Ltd.
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
Toru Tamaki
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
Hiroki Ichikura
Recently uploaded
(9)
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
Apache Arrow
1.
Apache Arrow Powered
by Rabbit 2.2.2 Apache Arrow 須藤功平 株式会社クリアコード RubyData Tokyo Meetup 2018-11-17
2.
Apache Arrow Powered
by Rabbit 2.2.2 Apache Arrow 各種言語で使える インメモリー データ処理 プラットフォーム
3.
Apache Arrow Powered
by Rabbit 2.2.2 提供するもの 高速なデータフォーマット✓ 高速なデータ処理ロジック 各プロダクトで個別に実装するより 一緒にいいものを実装して共有しよう! ✓ ✓ 効率的なデータ交換処理✓ ...✓
4.
Apache Arrow Powered
by Rabbit 2.2.2 利用例 高速なデータ処理ロジック Apache Arrow提供 高速なデータフォーマット 効率的なデータ交換処理 分散処理ツール コーディネーター ワーカー データ収集 ツール データ前処理 ツール クエリー 実行エンジン 可視化 ツール ワーカー ワーカー
5.
Apache Arrow Powered
by Rabbit 2.2.2 大事にすること1 効率的なデータ交換
6.
Apache Arrow Powered
by Rabbit 2.2.2 前提 イマドキの データ処理システムは 単一コンポーネントで 完結しない
7.
Apache Arrow Powered
by Rabbit 2.2.2 複数コンポーネント メリット: コンポーネント毎に適した言語を使える✓ ✓ デメリット: データ交換が増える(オーバーヘッド)✓ ✓
8.
Apache Arrow Powered
by Rabbit 2.2.2 データ交換コスト シリアライズコスト✓ 転送コスト✓ デシリアライズコスト✓
9.
Apache Arrow Powered
by Rabbit 2.2.2 コスト例:JSON シリアライズコスト [1] -#to_json-> "[1]" 転送コスト -output#write-> -input#read-> デシリアライズコスト "[1]" -JSON.parse-> [1]
10.
Apache Arrow Powered
by Rabbit 2.2.2 コスト比較例:JSON n = 1000000 numbers = n.times.to_a JSON.dump(numbers, json_file) JSON.load(json_file)
11.
Apache Arrow Powered
by Rabbit 2.2.2 コスト比較例:Apache Arrow n = 1000000 numbers = Arrow::Int32Array.new(numbers) arrow_table = Arrow::Table.new("number" => numbers) arrow_table.save(arrow_path) Arrow::Table.load(arrow_path)
12.
Apache Arrow Powered
by Rabbit 2.2.2 コスト比較例 実行時間 JSON比 JSON 0.099秒 1 Apache Arrow 0.002秒 1/50
13.
Apache Arrow Powered
by Rabbit 2.2.2 データ交換コストの影響 コンポーネント数と正の相関 コンポーネントが増えると無視できない✓ ✓ データ量と正の相関 データが多くなると無視できない✓ ✓
14.
Apache Arrow Powered
by Rabbit 2.2.2 まとめ イマドキのデータ処理システムで 大量データを処理するなら データ交換コストを無視できない ✓ Apache Arrowはデータ交換コストが低い 仕組みは後述✓ ✓
15.
Apache Arrow Powered
by Rabbit 2.2.2 大事にすること2 各種言語で使えること
16.
Apache Arrow Powered
by Rabbit 2.2.2 各種言語 Java, C++, Python, C, Ruby, Lua, JavaScript, Go, Rust, MATLAB, R, C#
17.
Apache Arrow Powered
by Rabbit 2.2.2 イマドキのデータ処理システム コンポーネント毎に適した言語を採用 採用言語でApache Arrowを使えないと システムでApache Arrowを使えない ✓ ✓ Apache Arrowに対応していれば コンポーネントでその言語を採用しやすい Railsが活きるコンポーネントでRubyを使うとか✓ ✓
18.
Apache Arrow Powered
by Rabbit 2.2.2 実現方法 ネイティブ実装 Java, C++, JavaScript, Go, Rust, C#✓ メリット:扱いやすい(インストールが楽とか)✓ ✓ C++実装のバインディング Python, C, Ruby, Lua, MATLAB, R✓ メリット:高速・実装の共有✓ ✓
19.
Apache Arrow Powered
by Rabbit 2.2.2 まとめ Apache Arrowは各種言語で使える Rubyと他の言語でのデータ交換が楽になる✓ ✓ Ruby実装はC++実装のバインディング 速い・豊富な機能(C++実装はすごく進んでいる)✓ ✓
20.
Apache Arrow Powered
by Rabbit 2.2.2 大事にすること3 速いこと
21.
Apache Arrow Powered
by Rabbit 2.2.2 速さが必要な理由 大量のデータを 処理するためポイント:大量データ前提の設計
22.
Apache Arrow Powered
by Rabbit 2.2.2 速いデータフォーマット パースせずに使えるデータフォーマット メモリー上で効率よく扱える並びでデータを配置✓ パースしなくてよいし、そのまま使っても速い✓ ✓ 既存のデータの並びと互換性あり 例:NumPyの数値配列と互換✓ 互換性があるとゼロコピーで使える✓ ✓
23.
Apache Arrow Powered
by Rabbit 2.2.2 速いデータ処理 SIMD・キャッシュメモリー・マルチコアで 高速化 データをアライン・局所化・リードオンリーに✓ ✓ 高速な式評価器 式:column1 + column2みたいなやつ ifとかも使える ✓ Gandiva:式をJITコンパイルして実行✓ ✓
24.
Apache Arrow Powered
by Rabbit 2.2.2 データ処理例:Ruby n = 100000 ruby_table = n.times.collect do { "number1" => rand, "number2" => rand, } end ruby_table.collect do |record| record["number1"] + record["number2"] end
25.
Apache Arrow Powered
by Rabbit 2.2.2 データ処理例:Numo::NArray n = 100000 numo_number1 = Numo::DFloat.new(n).rand numo_number2 = Numo::DFloat.new(n).rand numo_number1 + numo_number2
26.
Apache Arrow Powered
by Rabbit 2.2.2 データ処理例:Gandiva n = 100000 arrow_number1 = Arrow::DoubleArray.new(n.times.collect {rand}) arrow_number2 = Arrow::DoubleArray.new(n.times.collect {rand}) arrow_table = Arrow::Table.new("number1" => arrow_number1, "number2" => arrow_number2)
27.
Apache Arrow Powered
by Rabbit 2.2.2 データ処理例:Gandiva # 次のリリースまでにいい感じに書けるようにする予定 schema = arrow_table.schema expression = Gandiva::Expression.new("add", [schema[:number1], schema[:number2]], Arrow::Field.new("sum", :double)) projector = Gandiva::Projector.new(schema, [expression]) arrow_table.each_record_batch do |record_batch| projector.evaluate(record_batch) end
28.
Apache Arrow Powered
by Rabbit 2.2.2 データ処理例 実行時間 Ruby比 Ruby 0.010247秒 1 Numo::NArray 0.000158秒 1/67 Gandiva 0.000459秒 1/25 Numo::NArrayがすごくがんばっている
29.
Apache Arrow Powered
by Rabbit 2.2.2 速いデータ交換 同一マシン上での交換 メモリーファイルシステム上に置いてmmap✓ Plasma:データ共有サーバーを動かしてIPC Inter-Process Communication ✓ ✓ 別マシン上での交換 Arrow Flight:gRPCベースのRPCフレームワーク✓ ✓
30.
Apache Arrow Powered
by Rabbit 2.2.2 GPUで速い Plasma:GPU対応✓ RAPIDS:NVIDIAのGPUをデータサイエンスで 活用するためのプロジェクト libgdf:Apache Arrowフォーマットのデータを GPUで扱うデータフレームライブラリー Rubyバインディングはまだない ✓ ✓
31.
Apache Arrow Powered
by Rabbit 2.2.2 まとめ Apache Arrowは速い 速いデータフォーマット✓ 速いデータ処理(もっと速くなるはず)✓ 速いデータ交換✓ ✓ 今後、GPUももっと活用していく✓
32.
Apache Arrow Powered
by Rabbit 2.2.2 Apache Arrowのこれから例 データフォーマットの 相互変換強化
33.
Apache Arrow Powered
by Rabbit 2.2.2 相互変換:Apache Parquet # Apache Arrow→Apache Parquet arrow_table.save("data.parquet") # Apache Parquet→Apache Arrow Arrow::Table.load("data.parquet")
34.
Apache Arrow Powered
by Rabbit 2.2.2 相互変換:Feather # Apache Arrow→Feather arrow_table.save("data.feather") # Feather→Apache Arrow Arrow::Table.load("data.feather")
35.
Apache Arrow Powered
by Rabbit 2.2.2 相互変換:Apache ORC # Apache ORC→Apache Arrow Arrow::Table.load("data.orc")
36.
Apache Arrow Powered
by Rabbit 2.2.2 相互変換:CSV # Apache Arrow→CSV arrow_table.save("data.csv") # CSV→Apache Arrow Arrow::Table.load("data.csv")
37.
Apache Arrow Powered
by Rabbit 2.2.2 CSV読み込み例 # 標準ライブラリー(Ruby実装) CSV.foreach(path) {|row| row} # 拡張ライブラリー Ccsv.foreach(path) {|row| row} # C++実装 Arrow::Table.load(path, use_threads: true)
38.
Apache Arrow Powered
by Rabbit 2.2.2 CSV読み込み時間 実行時間 csv比 csv 0.818315秒 1 ccsv 0.064988秒 1/13 Apache Arrow 0.009030秒 1/90
39.
Apache Arrow Powered
by Rabbit 2.2.2 相互変換:Rubyオブジェクト Rubyバインディング限定 # Active Record→Apache Arrow User.all.to_arrow # Numo::NArray→Apache Arrow narray.to_arrow # NMatrix→Apache Arrow matrix.to_arrow
40.
Apache Arrow Powered
by Rabbit 2.2.2 相互変換の今後 JSON→Apache Arrow✓ Apache Avro→Apache Arrow✓
41.
Apache Arrow Powered
by Rabbit 2.2.2 Apache Arrowのこれから(もっと) RDBMS連携強化 PostgreSQL・MySQLでの実行結果を Apache Arrowフォーマットで返す ✓ ✓ テンソルサポート強化✓ ...✓
42.
Apache Arrow Powered
by Rabbit 2.2.2 Rubyバインディングの今後 Plasma対応✓ GandivaバインディングのAPIをいい感じに✓ バインディングフレームワークの高速化✓ 一緒に開発しようぜ!
43.
Apache Arrow Powered
by Rabbit 2.2.2 Apache ArrowとRubyまわりの今後 libgdfのRubyバインディング開発✓ gumath/xnd/ndtypesとの連携✓ 一緒に開発しようぜ!
44.
Apache Arrow Powered
by Rabbit 2.2.2 おしらせ1 コード懇親会(今日の懇親会)✓ 興味がでてきたプロダクトのコードを 一緒に触ってみよう! ✓ 開発に参加したくなるかも!✓ https://github.com/speee/code-party/tree/ master/rubydata-tokyo-meetup-2018
45.
Apache Arrow Powered
by Rabbit 2.2.2 おしらせ2 OSS Gate東京ミートアップ for Red Data Tools in Speee ✓ 2018-11-20 19:30-(来週の火曜日)✓ Red Data Toolsメンバーが開発する集まり✓ https://speee.connpass.com/event/105237/
46.
Apache Arrow Powered
by Rabbit 2.2.2 おしらせ3 Apache Arrow東京ミートアップ2018✓ 2018-12-08 13:30-✓ 目的:開発者を増やす 対象プロダクト:Apache Arrow、Red Data Tools、 Ruby/Numo、SciRubyなど ✓ ✓ https://speee.connpass.com/event/103514/
Download now