Hi James,

My answers are inline...

On Sun, Sep 3, 2017 at 3:41 AM, James <[email protected]> wrote:

> I am searching one solution to my case.  I just found Apache Ignite
> Yesterday. It appears a good solution. But I am not sure. I need your
> suggestions.
>
> My data is stored in MySQL. It is TB level. I like to do the following:
> 1. Load all data from MySQL into Ignite.
>

You should utilize IgniteDataStreamer [1] API to load data into Ignite.


> 2. Run sql query to get all data to do some "group by" on number data to
> calculate sum, avg, max, min etc.
>

You can do it in Ignite the standard client-server way. However, Ignite is
a distributed system and a much more performant way would be to send
computations to the nodes where the data is and run your logic locally on
those nodes. [2]


> 3. If I need to do some complex math operation, I like ignite to provide
> some stored procedure so I can run it on Ignite side.
>

Ignite does not have stored procedures. Instead, you should use collocated
computations. [2]


> 4. I like to embed Ignite into my Java application.
>

This is easy. Ignite has a very rich Java API and comes with many Java
examples.


> 5. I just want to use One server to achieve above goal.
>

If you use just one server, then what would be the advantage over MySQL?
Ignite brings the most value when you need to scale-out your application. I
would consider at least 2 servers or more.


[1] https://apacheignite.readme.io/docs/data-streamers
[2] https://apacheignite.readme.io/docs/collocate-compute-and-data

Reply via email to