This is a very early stage MATLAB interface to the Apache Arrow C++ libraries.
The current code only supports reading/writing numeric types from/to Feather files.
See: Arrow CPP README
cd arrow/matlab mkdir build cd build cmake .. make
To specify a non-standard MATLAB install location, use the Matlab_ROOT_DIR CMake flag:
cmake .. -DMatlab_ROOT_DIR=/<PATH_TO_MATLAB_INSTALL>
To specify a non-standard Arrow install location, use the ARROW_HOME CMake flag:
cmake .. -DARROW_HOME=/<PATH_TO_ARROW_INSTALL>
This may be preferred if you are using MATLAB R2018b or later and have encountered linker errors when using CMake.
Prerequisite: Ensure that the Arrow C++ library is already installed and the ARROW_HOME
environment variable is set to the installation root.
To verify this, you can run:
>> getenv ARROW_HOME
This should print a path that contains include
and lib
directories with Arrow C++ headers and libraries.
Navigate to the build_support
subfolder and run the compile
function to build the necessary MEX files:
>> cd build_support >> compile
Run the test
function to execute the unit tests:
>> test
>> cd(fullfile('arrow', 'matlab')); >> addpath src; >> addpath build;
>> t = array2table(rand(10, 10)); >> filename = 'table.feather'; >> featherwrite(filename,t);
>> filename = 'table.feather'; >> t = featherread(filename);
>> cd(fullfile('arrow', 'matlab')); >> addpath src; >> addpath build; >> cd test; >> runtests .;