blob: 2e78d2672990a61bea7034041245b9f84c2a768a [file] [log] [blame]
Search.setIndex({"docnames": ["basic", "create", "datasets", "flight", "index"], "filenames": ["basic.rst", "create.rst", "datasets.rst", "flight.rst", "index.rst"], "titles": ["Working with the C++ Implementation", "Creating Arrow Objects", "Reading and Writing Datasets", "Arrow Flight", "Apache Arrow C++ Cookbook"], "terms": {"thi": [0, 1, 2, 3, 4], "section": [0, 2, 3], "cookbook": 0, "goe": [0, 3], "over": 0, "basic": [0, 2], "concept": 0, "need": [0, 1, 2, 3, 4], "regardless": 0, "how": [0, 2, 4], "you": [0, 1, 2, 3], "intend": 0, "librari": [0, 3], "often": [0, 2], "have": [0, 1, 2], "choos": 0, "between": 0, "throw": 0, "except": 0, "return": [0, 1, 3], "error": 0, "code": [0, 1, 2, 3], "object": [0, 2, 4], "middl": 0, "ground": 0, "make": [0, 1, 2, 3], "clear": 0, "when": [0, 3, 4], "function": [0, 3], "can": [0, 1, 2, 3], "fail": [0, 3], "i": [0, 1, 2, 3, 4], "easier": 0, "than": 0, "integ": 0, "It": 0, "import": 0, "alwai": 0, "check": [0, 1], "valu": [0, 1, 2, 3], "ensur": 0, "oper": 0, "succeed": 0, "howev": 0, "quickli": 0, "becom": [0, 1], "tediou": 0, "everi": 0, "manual": [0, 2], "std": [0, 1, 2, 3], "test_fn": 0, "nullbuild": 0, "builder": [0, 1, 3], "st": 0, "reserv": 0, "2": [0, 1, 3], "ok": [0, 1, 3], "appendnul": 0, "1": [0, 1, 3], "rout": [0, 1, 2, 3], "append": [0, 1], "null": 0, "endl": [0, 1, 2, 3], "output": [0, 1, 2, 3], "invalid": [0, 3], "length": [0, 1, 3], "must": [0, 3], "posit": 0, "The": [0, 1, 2, 3, 4], "macro": 0, "arrow_return_not_ok": [0, 1, 2, 3], "take": [0, 1], "care": 0, "some": [0, 2], "boilerpl": 0, "run": 0, "contain": [0, 1, 2, 3], "express": 0, "If": [0, 3], "failur": 0, "class": [0, 1, 3], "datatyp": [0, 1], "scalar": 0, "arrai": [0, 4], "special": [0, 3], "subclass": [0, 1], "each": 0, "In": 0, "order": [0, 2], "logic": 0, "provid": [0, 2, 3], "inlin": 0, "templat": 0, "allow": [0, 2], "call": [0, 2, 3], "effici": [0, 1], "visittypeinlin": [0, 1], "visitscalarinlin": 0, "visitarrayinlin": 0, "see": [0, 2, 3], "exampl": [0, 1, 3, 4], "given": [0, 4], "schema": [0, 2, 3, 4], "write": [0, 3, 4], "handl": [0, 3], "multipl": 0, "individu": [0, 2], "excess": 0, "verbos": 0, "fortun": 0, "trait": 0, "subset": 0, "below": 0, "demonstr": [0, 2, 4], "tabl": [0, 1, 2, 3], "sum": 0, "ani": [0, 1, 3], "float": 0, "point": 0, "onli": [0, 1], "singl": 0, "leverag": 0, "enable_if_numb": 0, "numer": 0, "tablesumm": 0, "doubl": [0, 1, 2, 3], "partial": [0, 2], "0": [0, 1, 2, 3], "public": [0, 1, 3], "shared_ptr": [0, 1, 2, 3], "recordbatch": [0, 1, 3], "batch": [0, 1, 3], "column": [0, 1, 2], "default": [0, 1, 3], "visit": [0, 1], "const": [0, 1, 2, 3], "notimpl": [0, 1, 3], "tostr": [0, 1, 2, 3], "typenam": 0, "arraytyp": 0, "t": [0, 3], "typeclass": 0, "option": [0, 2, 4], "c_type": 0, "has_valu": 0, "static_cast": 0, "field": [0, 1, 3], "int32": [0, 2, 3], "b": 0, "float64": [0, 1], "int32_t": [0, 1], "num_row": [0, 1, 2, 3], "3": [0, 1], "vector": [0, 1, 2, 3], "int32build": [0, 1], "a_build": 0, "a_val": 0, "appendvalu": [0, 1], "arrow_assign_or_rais": [0, 1, 2, 3], "auto": [0, 1, 2, 3], "a_arr": 0, "finish": [0, 1, 2], "push_back": [0, 1, 3], "doublebuild": [0, 1], "b_builder": 0, "b_val": 0, "4": [0, 1, 3], "5": [0, 1, 3], "6": [0, 1, 2], "b_arr": 0, "summat": 0, "total": 0, "21": 0, "recip": [1, 2, 3, 4], "relat": 1, "creation": 1, "tensor": 1, "all": [1, 2, 3], "other": [1, 2, 4], "entiti": 1, "type": [1, 3], "arraybuild": 1, "easi": 1, "exist": 1, "an": [1, 2, 3], "primit": 1, "arr": 1, "alloc": 1, "insert": 1, "should": 1, "constant": 1, "amort": 1, "time": 1, "also": [1, 2, 3, 4], "consum": 1, "raw": 1, "pointer": 1, "int64build": 1, "long_build": 1, "int64_t": [1, 3], "size": [1, 2, 3], "stringbuild": 1, "str_builder": 1, "string": [1, 2, 3], "strval": 1, "x": 1, "y": 1, "z": 1, "iter": 1, "dbl_builder": 1, "set": [1, 4], "dblval": 1, "begin": [1, 3], "end": [1, 3], "ownership": 1, "copi": 1, "underli": [1, 3], "To": [1, 2, 3], "implement": [1, 3, 4], "visitor": [1, 4], "good": 1, "idea": 1, "follow": [1, 2], "list": [1, 2, 3], "could": [1, 2], "easili": 1, "extend": 1, "us": [1, 2, 3, 4], "pattern": [1, 4], "record": 1, "randombatchgener": 1, "result": [1, 3, 4], "num_rows_": 1, "arrays_": 1, "statu": [1, 3, 4], "doubletyp": 1, "normal_distribut": 1, "d": 1, "mean": 1, "stddev": 1, "gen_": 1, "listtyp": 1, "offset": 1, "first": [1, 2, 3], "which": [1, 2, 3, 4], "determin": [1, 2], "number": [1, 2, 3], "sub": 1, "poisson_distribut": 1, "last_val": 1, "sinc": 1, "children": 1, "ha": 1, "new": [1, 3], "value_gen": 1, "value_typ": 1, "last": 1, "index": [1, 4], "inner_batch": 1, "listarrai": 1, "fromarrai": 1, "get": [1, 3], "protect": 1, "random_devic": 1, "rd_": 1, "mt19937": 1, "test": 1, "support": 1, "n": 1, "consid": 1, "validateful": 1, "correct": 1, "7749457054407385": 1, "0933840401667188": 1, "151061032305716": 1, "2743626615405068": 1, "7": [1, 2, 3], "807288980357406": 1, "7501724590028584": 1, "190815426035369": 1, "712751957042635": 1, "0996700439976563": 1, "932978908317865": 1, "524595732842056": 1, "27851996441237": 1, "939813825113755": 1, "246285518812158": 1, "758513888797805": 1, "715064898757889": 1, "41303825595227": 1, "037590810191184": 1, "897252934113762": 1, "ar": [2, 3], "collect": [2, 4], "one": [2, 3], "more": [2, 3], "file": [2, 3], "tabular": [2, 3], "data": [2, 3, 4], "up": 2, "distribut": 2, "across": 2, "sever": 2, "differ": 2, "directori": 2, "accord": 2, "kind": 2, "scheme": 2, "simplifi": 2, "manag": 2, "inspect": 2, "path": [2, 3], "util": 2, "guarante": 2, "let": 2, "u": 2, "our": [2, 3], "A": 2, "directory_bas": 2, "airquality_basedir": 2, "creat": [2, 4], "filesystem": [2, 3], "arrow": 2, "f": [2, 3], "localfilesystem": [2, 3], "make_shar": [2, 3], "selector": [2, 3], "describ": 2, "part": 2, "perform": [2, 4], "recurs": 2, "search": [2, 4], "base": 2, "typic": 2, "from": [2, 4], "fileselector": [2, 3], "base_dir": [2, 3], "true": [2, 3], "out": 2, "so": [2, 3], "we": [2, 3], "step": 2, "necessari": 2, "fileinfo": [2, 3], "file_info": [2, 3], "getfileinfo": [2, 3], "int": [2, 3], "num_print": 2, "isfil": [2, 3], "substr": 2, "10": 2, "break": [2, 3], "month": [2, 3], "9": [2, 3], "dai": [2, 3], "11": [2, 3], "chunk": 2, "parquet": [2, 4], "19": 2, "23": 2, "18": [2, 3], "26": 2, "28": 2, "27": 2, "kei": [2, 3], "refer": [2, 3], "hive": 2, "within": 2, "now": 2, "go": 2, "ahead": 2, "do": [2, 3], "pick": 2, "format": [2, 3], "onc": [2, 3], "piec": 2, "instanc": 2, "here": 2, "specifi": 2, "ipc": [2, 3], "csv": 2, "custom": [2, 3], "addit": [2, 3], "pars": 2, "parquetfileformat": 2, "factori": 2, "infer": 2, "filenam": 2, "flavor": 2, "case": 2, "altern": 2, "work": [2, 3, 4], "well": [2, 4], "partitioningfactori": 2, "partitioning_factori": 2, "hivepartit": 2, "makefactori": 2, "filesystemfactoryopt": 2, "datasetfactori": 2, "dataset_factori": 2, "filesystemdatasetfactori": 2, "scan": 2, "find": 2, "mai": 2, "metadata": [2, 3], "discov": 2, "ozon": [2, 3], "solar": [2, 3], "r": [2, 3], "wind": [2, 3], "temp": [2, 3], "sometim": 2, "scanner": 2, "snippet": 2, "show": 2, "entir": 2, "memori": 2, "scannerbuild": 2, "scanner_build": 2, "usethread": 2, "There": [2, 3], "varieti": 2, "method": 2, "avail": [2, 3], "totabl": [2, 3], "row": 2, "num_column": 2, "153": 2, "rpc": 3, "dataset": [3, 4], "For": 3, "about": 3, "ll": 3, "store": 3, "upload": 3, "request": 3, "actual": 3, "itself": 3, "simplic": 3, "won": 3, "api": 3, "favor": 3, "just": 3, "directli": 3, "parquetstorageservic": 3, "flightserverbas": 3, "actiontyp": 3, "kactiondropdataset": 3, "drop_dataset": 3, "delet": 3, "explicit": 3, "root": 3, "root_": 3, "move": 3, "listflight": 3, "servercallcontext": 3, "criteria": 3, "unique_ptr": 3, "flightlist": 3, "overrid": 3, "flightinfo": 3, "extens": 3, "continu": 3, "info": 3, "makeflightinfo": 3, "simpleflightlist": 3, "getflightinfo": 3, "flightdescriptor": 3, "descriptor": 3, "fileinfofromdescriptor": 3, "flight_info": 3, "doput": 3, "flightmessageread": 3, "reader": 3, "flightmetadatawrit": 3, "sink": 3, "openoutputstream": 3, "writet": 3, "default_memory_pool": 3, "chunk_siz": 3, "65536": 3, "doget": 3, "ticket": 3, "flightdatastream": 3, "stream": 3, "input": 3, "openinputfil": 3, "fileread": 3, "openfil": 3, "readtabl": 3, "note": 3, "pass": 3, "tablebatchread": 3, "recordbatchstream": 3, "becaus": 3, "keep": 3, "non": 3, "own": 3, "would": 3, "freed": 3, "exit": 3, "batch_read": 3, "torecordbatch": 3, "owning_read": 3, "recordbatchread": 3, "listact": 3, "action": 3, "doaction": 3, "resultstream": 3, "simpleresultstream": 3, "doactiondropdataset": 3, "bodi": 3, "unknown": 3, "privat": 3, "getschema": 3, "base_nam": 3, "flightendpoint": 3, "locat": 3, "forgrpctcp": 3, "localhost": 3, "port": 3, "total_record": 3, "parquet_read": 3, "total_byt": 3, "els": 3, "compon": 3, "deletefil": 3, "start": 3, "createdir": 3, "flight_dataset": 3, "deletedircont": 3, "subtreefilesystem": 3, "server_loc": 3, "flightserveropt": 3, "init": 3, "listen": 3, "37117": 3, "connect": 3, "flightclient": 3, "tcp": 3, "open": 3, "airquality_path": 3, "findtestdatafil": 3, "airqual": 3, "io": 3, "randomaccessfil": 3, "flightstreamwrit": 3, "writer": 3, "flightmetadataread": 3, "metadata_read": 3, "put_stream": 3, "row_group": 3, "num_row_group": 3, "iota": 3, "getrecordbatchread": 3, "while": 3, "next": 3, "writerecordbatch": 3, "close": 3, "wrote": 3, "retriev": 3, "info_schema": 3, "dictionarymemo": 3, "dictionary_memo": 3, "And": 3, "back": 3, "flightstreamread": 3, "prettyprintopt": 3, "print_opt": 3, "indent": 3, "window": 3, "prettyprint": 3, "41": 3, "36": 3, "20": 3, "190": 3, "118": 3, "131": 3, "223": 3, "8": 3, "67": 3, "72": 3, "76": 3, "68": 3, "29": 3, "30": 3, "Then": 3, "buffer": 3, "fromstr": 3, "confirm": 3, "": 3, "been": 3, "final": 3, "stop": 3, "shutdown": 3, "shut": 3, "down": 3, "successfulli": 3, "generic_opt": 3, "flightclientopt": 3, "document": 3, "chang": 3, "maximum": 3, "messag": 3, "sent": 3, "client_opt": 3, "veri": 3, "low": 3, "limit": 3, "layer": 3, "emplace_back": 3, "grpc_arg_max_send_message_length": 3, "41083": 3, "backend": 3, "add": 3, "recogn": 3, "gener": [3, 4], "abl": 3, "static": 3, "link": 3, "protobuf": 3, "same": 3, "dynam": 3, "read": [3, 4], "http": 3, "apach": 3, "org": 3, "doc": 3, "cpp": 3, "build_system": 3, "html": 3, "defin": 3, "hello": 3, "world": 3, "specif": 3, "syntax": 3, "proto3": 3, "helloworldservic": 3, "sayhello": 3, "hellorequest": 3, "hellorespons": 3, "name": 3, "repli": 3, "compil": 3, "detail": 3, "helloworldserviceimpl": 3, "servercontext": 3, "empti": 3, "statuscod": 3, "invalid_argu": 3, "set_repli": 3, "builder_hook": 3, "hook": 3, "regist": 3, "5000": 3, "grpc_servic": 3, "void": 3, "raw_build": 3, "reinterpret_cast": 3, "serverbuild": 3, "registerservic": 3, "doesn": 3, "know": 3, "them": 3, "normal": 3, "stub": 3, "definit": 3, "client_channel": 3, "createchannel": 3, "insecurechannelcredenti": 3, "newstub": 3, "clientcontext": 3, "context": 3, "set_nam": 3, "user": [3, 4], "respons": 3, "ioerror": 3, "error_messag": 3, "solv": 4, "mani": 4, "common": 4, "task": 4, "might": 4, "serv": 4, "robust": 4, "solut": 4, "those": 4, "standard": 4, "random": 4, "partit": 4, "flight": 4, "simpl": 4, "storag": 4, "servic": 4, "grpc": 4, "client": 4, "endpoint": 4, "modul": 4, "page": 4}, "objects": {}, "objtypes": {}, "objnames": {}, "titleterms": {"work": 0, "c": [0, 1, 4], "implement": 0, "content": [0, 1, 2, 3, 4], "statu": 0, "result": 0, "us": 0, "visitor": 0, "pattern": 0, "gener": [0, 1], "random": [0, 1], "data": [0, 1], "comput": 0, "across": 0, "arrow": [0, 1, 3, 4], "type": 0, "creat": [1, 3], "object": 1, "arrai": 1, "from": 1, "standard": 1, "given": 1, "schema": 1, "read": 2, "write": 2, "dataset": 2, "partit": 2, "flight": 3, "simpl": 3, "parquet": 3, "storag": 3, "servic": 3, "set": 3, "grpc": 3, "client": 3, "option": 3, "other": 3, "endpoint": 3, "server": 3, "apach": 4, "cookbook": 4, "indic": 4, "tabl": 4}, "envversion": {"sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx": 60}, "alltitles": {"Working with the C++ Implementation": [[0, "working-with-the-c-implementation"]], "Contents": [[0, "contents"], [1, "contents"], [2, "contents"], [3, "contents"]], "Working with Status and Result": [[0, "working-with-status-and-result"]], "Using the Visitor Pattern": [[0, "using-the-visitor-pattern"]], "Generate Random Data": [[0, "generate-random-data"]], "Generalize Computations Across Arrow Types": [[0, "generalize-computations-across-arrow-types"]], "Creating Arrow Objects": [[1, "creating-arrow-objects"]], "Create Arrays from Standard C++": [[1, "create-arrays-from-standard-c"]], "Generate Random Data for a Given Schema": [[1, "generate-random-data-for-a-given-schema"]], "Reading and Writing Datasets": [[2, "reading-and-writing-datasets"]], "Read a Partitioned Dataset": [[2, "read-a-partitioned-dataset"]], "Arrow Flight": [[3, "arrow-flight"]], "Simple Parquet storage service with Arrow Flight": [[3, "simple-parquet-storage-service-with-arrow-flight"]], "Setting gRPC client options": [[3, "setting-grpc-client-options"]], "Flight Service with other gRPC endpoints": [[3, "flight-service-with-other-grpc-endpoints"]], "Creating the server": [[3, "creating-the-server"]], "Creating the client": [[3, "creating-the-client"]], "Apache Arrow C++ Cookbook": [[4, "apache-arrow-c-cookbook"]], "Contents:": [[4, null]], "Indices and tables": [[4, "indices-and-tables"]]}, "indexentries": {}})