If you store your array in DataFrames format (or any Tables.jl compatible format) then you can use JDF.jl.
If you don’t need interop with R then Blosc.jl is quite good.
uncompressed = rand(1_000_000)
using Blosc
compressed = compress(uncompressed)
using Serialization
serialize("somewhere.jls", compressed)
# to read it back
compressed_read_back = deserialize("somewhere.jls")
decompressed = Blosc.decompress(Float64, compressed_read_back)
decompressed == uncompressed # true