Skip to content

Instantly share code, notes, and snippets.

@kou
kou / apache-arrow-study.md
Last active May 1, 2017 09:40
次世代データ分析用データフォーマットApache Arrow勉強会

データ分析用次世代データフォーマットApache Arrow勉強会

みなさん、Apache Arrowはご存知ですか!?Apache Arrowは現在主流のOSSのデータ分析ソフトウェアの開発者たちが共同で開発しているデータ分析用の次世代データフォーマットです。データ分析をしている人ならApache SparkPandasApache DrillApache HadoopApache CassandraRの中に知っているプロダクトがあるはずです。これらはApache Arrowの開発に参加しているプロダクトの一部です。いかにOSSのデータ分析ソフトウェアがApache Arrowに期待しているかがわかります。

これらのプロダクトはいずれApache Arrowを使うようになります。これらのプロダクトが使うようになると他のプロダクトも追従し、近いうちにスタンダードなフォーマットになるでしょう。今のうちにApache Arrowを学んでおきましょう!

Apache Arrowが解決する問題

データ分析は多くの技術を活用して実現します。そのため、1つのプロダクトだけでなにもかも実現するのではなく、複数のプロダクトで連携して実現します。適材適所!そのときに課題になるのがデータ交換です。

@kou
kou / rbplotly-webkit2-gtk-save-image.rb
Created July 24, 2017 02:48
Save graph generated by rbplotly as PNG by webkit2-gtk
#!/usr/bin/env ruby
require "rbplotly"
require "webkit2-gtk"
x = [0, 1, 2, 3, 4]
trace0 = { x: x, y: [0, 2, 1, 4, 3], type: :scatter, mode: :lines }
trace1 = { x: x, y: [4, 1, 3, 0, 2], type: :scatter, mode: :'markers+lines' }
data = [trace0, trace1] # data must be an array
@kou
kou / fonts.conf
Last active October 18, 2017 09:44
カラー絵文字を使うための~/.config/fontconfig/fonts.conf
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<alias>
<family>sans-serif</family>
<prefer>
<family>Noto Color Emoji</family>
</prefer>
</alias>
<alias>
[vagrant@localhost ~]$ sudo vi /etc/yum.repos.d/MariaDB.repo
[vagrant@localhost ~]$ sudo yum install -y https://packages.groonga.org/centos/groonga-release-latest.noarch.rpm
読み込んだプラグイン:fastestmirror
groonga-release-latest.noarch.rpm | 17 kB 00:00:00
/var/tmp/yum-root-xc5Htp/groonga-release-latest.noarch.rpm を調べています: groonga-release-1.4.0-1.noarch
/var/tmp/yum-root-xc5Htp/groonga-release-latest.noarch.rpm をインストール済みとして設定しています
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ groonga-release.noarch 0:1.4.0-1 を インストール
--> 依存性の処理をしています: epel-release のパッケージ: groonga-release-1.4.0-1.noarch
@kou
kou / Message
Last active October 18, 2018 07:21
MinGW-w64 i686 g++ crashes
$ g++ -c crash.cc
In file included from C:/msys64/home/kou/MINGW-packages/mingw-w64-arrow/src/apache-arrow-0.11.0/cpp/src/arrow/io/memory.cc:29:0:
C:/msys64/home/kou/MINGW-packages/mingw-w64-arrow/src/apache-arrow-0.11.0/cpp/src/arrow/util/memory.h: In substitution of 'template<class Function, class ... Args, class Result> std::future<Result> arrow::internal::ThreadPool::Submit(Function&&, Args&& ...) [with Function = <missing>; Args = <missing>; Result = <missing>]':
C:/msys64/home/kou/MINGW-packages/mingw-w64-arrow/src/apache-arrow-0.11.0/cpp/src/arrow/util/memory.h:63:72: required from here
C:/msys64/home/kou/MINGW-packages/mingw-w64-arrow/src/apache-arrow-0.11.0/cpp/src/arrow/util/memory.h:63:72: internal compiler error: Segmentation fault
left + i * chunk_size, chunk_size));
^
C:/msys64/home/kou/MINGW-packages/mingw-w64-arrow/src/apache-arrow-0.11.0/cpp/src/arrow/util/memory.h:63:72: internal
@kou
kou / ruby-buffer-protocol.md
Last active May 27, 2019 01:47
Buffer protocol for Ruby

Ruby版バッファープロトコルの実現

PythonのPEP 3118 -- Revising the buffer protocol相当の仕組みをRubyでも実現したい。

須藤功平 - 2019-05

背景

大きなデータ(多次元配列や画像データ)を相互に交換するための統一的な仕組みが欲しい。統一的な仕組みがあると実装が単純になるからである。

@kou
kou / wheels.log
Created February 1, 2020 11:42
dev/release/verify-release-candidate.sh wheels 0.16.0 2
+ set -o pipefail
+++ dirname dev/release/verify-release-candidate.sh
++ cd dev/release
++ pwd
+ SOURCE_DIR=/home/kou/work/cpp/arrow.kou/dev/release
+++ dirname /home/kou/work/cpp/arrow.kou/dev/release
++ dirname /home/kou/work/cpp/arrow.kou/dev
+ ARROW_DIR=/home/kou/work/cpp/arrow.kou
+ '[' -z '' ']'
+ detect_cuda
@kou
kou / clang-format-8.diff
Created March 16, 2020 23:28
Apache Arrow with clang-format-8
--- /arrow/cpp/src/parquet/types.cc
+++ /arrow/cpp/src/parquet/types.cc (after clang format)
@@ -945,7 +945,9 @@
case parquet::Type::BYTE_ARRAY: {
ok = true;
} break;
- default: { } break; }
+ default: {
+ } break;
+ }
@kou
kou / js.log
Created July 17, 2020 08:24
Apache Arrow 1.0.0-RC1 verification
This file has been truncated, but you can view the full file.
+ '[' 2 -gt 0 ']'
+ test_js
+ pushd js
/tmp/arrow-1.0.0.18Kfr/apache-arrow-1.0.0/js /tmp/arrow-1.0.0.18Kfr/apache-arrow-1.0.0 /tmp/arrow-1.0.0.18Kfr
+ '[' 1 -gt 0 ']'
++ pwd
+ export NVM_DIR=/tmp/arrow-1.0.0.18Kfr/apache-arrow-1.0.0/js/.nvm
+ NVM_DIR=/tmp/arrow-1.0.0.18Kfr/apache-arrow-1.0.0/js/.nvm
+ mkdir -p /tmp/arrow-1.0.0.18Kfr/apache-arrow-1.0.0/js/.nvm
+ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh
@kou
kou / failure.log
Created October 14, 2020 21:00
dev/release/verify-release-candidate.sh wheels 2.0.0 2
_______________________________ test_cython_api ________________________________
tmpdir = local('/tmp/pytest-of-kou/pytest-22/test_cython_api0')
@pytest.mark.cython
def test_cython_api(tmpdir):
"""
Basic test for the Cython API.
"""
# Fail early if cython is not found