I'm Michael. This is Gil. And if you're observant, you notice there's three names up there, and not just two. Unfortunately, Reed Reynolds, our co-presenter for personal issues at the last minute, was unable to arrive. So we're going to try to cover his material as well. We're going to go over the perfect match. Apache Sparks meets OpenStack Swift. So what we're going to cover is a very, very quick overview of OpenStack Swift. A quick overview of Apache Spark. And then Gil is going to talk about how to integrate Apache Spark with OpenStack Swift. We'll show a demo of using Apache Spark on a public Swift object store. We'll then talk about some considerations if someone wants to go and deploy it themselves in terms of how to organize the cluster. Swift obviously runs on a cluster. Apache Spark also runs on a cluster. And we'll then show some advanced stuff we've been experimenting with, showing how we can pull Swift and Spark together in a differentiated and perhaps more efficient way. So let me start with just getting a sense of what people know. How many people here have used OpenStack Swift? And how many people are familiar with Apache Spark? So Swift, an OpenStack project, is a massively scalable object store. It's not a file system. It's not a database. It stores objects. It stores blobs. It's good for storing things like images or videos, logs, JSON documents, basically things. And it's good for hybrid clouds because there's a bunch of public cloud providers that support it. And it's something you can go and deploy in your own data center. It's massively scalable. It's software defined storage. Basically, you download the code for Swift, deploy it on a site of servers, and you have an object store. It exports a RESTful API, meaning that you access it through HTTP requests. You can do a put to create an object to get to retrieve an object. A little bit about the layout of Swift. It is basically a two-tiered architecture. The externally facing tier, the one that the client interacts with, is the proxy tier. The proxy tier is responsible for getting the requests and then redirecting the request to a node in the storage tier for actually serving the requests. At a level of, you know, next level of detail, Swift has accounts. Inaccounts are containers, and in containers are objects. And there are different types of storage nodes for accounts, containers, and objects. And in, you know, so far, the way Swift protects data is it replicates the data such that when you go and you create an object, you're going to get some number of replicas of those objects created on a subset of the storage nodes, such that each storage node is in a different failure domain. You know, a little footnote, those some of you may have heard. Yesterday there was a talk about erasure coding, which is something that's expected to be coming up in the Kilo release for Swift. And to a little more detail about Apache Spark. I assume everyone here is familiar with Hadoop, MapReduce. Well, you can think of Apache Spark as maybe the next generation MapReduce type calculation. It's the fastest growing big data project in Apache. It is capable of operating for workloads that fit in memory, you know, two orders of magnitude faster than a Hadoop MapReduce. For things that go to disk, it's an order of magnitude faster. One of the key innovations for Spark, and this was a project built on a project that started at UC Berkeley, Berkeley is what's called RDDs, right, or Resilient Distributed Data Sets. Now, the way something like Hadoop works is that it's, you know, each time a map task or reduce task produces output, you know, it's calculation that writes it down to a disk, this persistent copy of the data is used for communication between the various stages of the computation. It's also used to protect the computation. In RDDs, everything is kept in memory and to deal with recovery, they keep track of the lineage, how something was computed, and in the event of a failure, failures, you know, while they happen, right, maybe more than we'd like to think, are still relatively rare. They'll redo the computation based on that lineage, based on the history of how that data was created. You know, Spark is mostly written in a language called Scala. When you see the demos in a little bit, you'll see some use of Scala. Don't need to be a Scala expert, though, to understand what we'll be showing. And one of the key companies involved in Spark is a company called Databricks, Reynolds Company. It was founded in 2013. It is the largest contributor to Spark. We have a cloud service for accessing Spark called the Databricks cloud. Spark, as I said, is the most active big data project. You can see it has very quick growth in terms of number of contributors. This is actually reminiscent of what used to be, you know, we saw for OpenStack in its early days. It has a single engine which can handle many different types of big data workloads, and it scales, you know, from gigabytes up to terabytes and petabytes of data.  There's the Spark core engine which does the processing of the data. And on top of that, there are a set of different types of interfaces for giving different ways of interacting with the data. So for instance, there's something called GraphX, which is for graph computation, sort of understanding networks into connections. That's not quite, you know, production level code. There's streaming to deal with streaming applications. And the one we'll be seeing is Spark SQL, which enables putting an SQL-like interface, enabling doing queries like select over data. So what we want to go on to now, and Gil will take over, is how we integrate Spark with various data sources going deeper into that, and then a discussion of how we do it with Swift and Gil. Okay. So Spark can work with the many data sources. It's where the data located in Spark use this data source to make analytics. Originally, it works with local file system, HDFS, Amazon S3, or Cassandra and Mongo and so on. The good thing that you can integrate, you can configure Spark to work with many data sources at once. So you can integrate in the same query, you can access many data sources and pull data from those data sources to perform analytics. You can achieve this in a variety of ways. So first of all, you have shell in Spark. You can use Python shell or Scala shell. It allows you to use interactive way of analytics. Or you can write your code in a Python Java Scala and deploy it to Spark to perform analytics. And the results of the analytics, it's up to you to decide what you want to do with them. So you can store them back in the data source, in the same data source that the source came from, or you can store it in other data source. You can print them, you can see them. We'll see it in the demo, what we can do with them. So what we actually did, we took the Spark and allowed it to integrate with Swift. And the good thing here that you don't really need to modify the code of Swift, so Swift is completely unaware that Spark uses data there. And Spark itself, you don't need to modify code in Spark. What you do need to do is to configure. You just use a certain configuration in Spark. You configure it to use Swift as a data source. Then you build Spark the same way as you build it in any case. And then you use it. We submitted it back to the community in Spark. It was merged in the 1.10 version. And you can see it on the website how to integrate Spark with Swift. The usage, I'm not going here into details, but I just used the schema, Swift. Then you can access your container or particular object in Swift and here we access... Again, I'll explain it in the demo. Here we access container logs data in the soft layer, and we access all the objects in this container. So a bit of this configuration... Basically, we are using a do-driver of Swift. So the configuration is you just need to configure the Swift driver as a source data definition.  So here it's an example of two of them. B1 and B2 authentication with Keystone. And of course, there are many other parameters that you need to configure to make it work. Okay, so Spark allows you to use actually a couple of ways that you can integrate with a data source. So what you see here is a Scala shell. And I'm accessing here the container, the name inside, in soft layer, all the objects. This is the definition of the data source that you see in the SF311. And then when I declare the data source, I can use Spark as a normally use. Here I just count all the lines in these text files. So in the container, there are objects. Each object is a text file. And what we see here is the Spark, first of all, very Swift to understand how many objects are in this container. And then you just count all the number of rows. This is part of the configuration. So we see here that we define soft layer and it actually access the object store there. And we provide additional configuration. In particular, you see here API key and username. You don't have to store it in this configuration file. I mean, it's only for the demo purposes, but you can also provide this in runtime as you normally do in Spark. Spark SQL, it's another way to access data. So the idea that you can use SQL syntax to access data inside those objects, still Spark communicates with an object, but it can also understand what's inside those objects. And then you can write your regular SQL. And you access those objects. So what we see here is standard SQL with select and from and group by. And again, we will see it a little bit later. This is what was before called Shark. Now it's called Spark SQL. And you can access here many data sources in the same query, which is also a very nice feature. Let's see the demo. This is the recorded demo that I did before, but those who are interested can come to me after the talk. I can see them live how it works. And, okay, let's stop it. So what I did, I wanted to do some public data set to show you the taste of this analytics or this integration. And there is public data sets of the three-one-month service in the United States. We took one of San Francisco.  So public there and the good thing that you can download them to in any format that you like. So what I did, I just entered this public data set and I saved records of two years, I think, in two CSV files. And those files I upload to software to the object store. So this is what we see here. This is how the data set looks like. And now I just show you in the rest client that there are two objects inside container inside. There are both CSV files. You can see the content of one of the files. Just a CSV file with this delimiter that I used. And now I'm going to show you what you can do in Spark. So as I mentioned before, there are a couple of ways you can analyze your data. This is a demonstration of how I write an application. Then I deploy it as a JAR file and I submit it to Spark. Later I will show you how you can use interactive shell. So there are a couple of things here that you need to see. The first one, we define the Swift where we want to access. It's container inside. We want to access all the objects. We map. We know what is the information there. It's CSV files. We map it to a table. And this is what we call the table incident. And then we map only particular fields from each record. And now we can use standard SQL to analyze it. So this is the data source. And we use a skill that actually what we want to do here is to get all the neighborhoods and solve them by open records. So after you write this application, you compile it for this BT. You can also use Maven. It generates a JAR file. And now you just submit it to Spark. And you have your results on the screen. All the neighborhoods sorted by open records in this data sense. And now you can use any other tool to visualize it or to build graphs or to continue analytics, if you like. Okay, so we're back to the... A few words about cluster management in Spark. So there are a variety of ways you can use it. The simple one, you can use standalone cluster. It's very easy to set up this cluster. You just run a couple of scripts and you have it automatically. You can use all kinds of other frameworks to build your cluster. There is also support in Sahara in the recent release that allows to run elastic data processing jobs of Sahara inside Spark. A bit about cluster management. A bit about cluster. So actually what we have, we have Swift as a data storage and we have Spark, which is an elite cluster. So we can integrate those clusters in a variety of ways. One way to do this, they can share the same resources. Maybe you install Spark on the same cluster of Swift. Maybe they share only certain resources, certain machines. It allows you actually to have some data locality. So Spark will be close to the data in Swift. But on the other hand, it costly. And it actually requires Swift to share the same resources with Spark, which is not a good approach. So what you can do, you can install them on separate clusters. And now you can manage those clusters separately. This is more standard approach, so you have your storage and you have your own elite cluster. And Spark can access Swift, as we saw before via REST API. The problem here is that sometimes it's not efficient because you use a lot of network. In particular, Spark may need only certain data sets for its analytics and not all what is stored in Swift. So sometimes you transfer a lot of information over the network that's not really needed by Spark. There are also certain security considerations here. For example, you may have some sensitive data in Swift that you can't move to the analytics.  So let's see some use cases where we actually need less information for analytics than we have in the object store. So we may have images in Swift. It's very good to keep them. But on the other hand, we may want to analyze only XF metadata. Those who are familiar with it, XF metadata has a lot of information about image. It has information about camera that was used. And if the customer or user has also enabled GPS coordinates, then you can also extract this from XF metadata and have a lot of information. The same analogy can be with PDF files. You may want to analyze metadata or some partial text of it. And logs, it's another example. So you may want to store your log files in Swift as an object, as an archive. You just put them and it's good. But when you perform analytics, you may only interest it in the records that marked with error. Because this is what you want. And then assuming that you don't have a lot of errors in the log files, then it's only small subset of the data. The problem here is that when you use the standard approach and you move all this data source from Swift to Spark, then you use a lot of network. And it's costly and slow. So the question here can we move a little bit less data over the network? With respect to SQL, there is some analogy that it's a little bit easier to push a scale query inside the data source. So basically you can take this very log status like error and move it inside database. And then database will somehow run this and return only the subset of records to Spark. It will be later used to analyze information. There is some work in the community on this and you can read on this on various websites. Also Cassandra has information on how to push queries down. And what about Swift? Can we do the same? So, storelets is an IBM solution that we can run user codes inside Swift. The idea here, the user can write a standard application. It can be standard Java library. You can use any library dependencies that you want. It's a standard application. You export this as a JAR file. And then you deploy it to Swift. From Swift point of view, the JAR storelet itself and the dependent is just normal objects. So, Swift store them as it usually store objects. But the magic comes from the storelet engine inside Swift. And the storelet engine knows when storelet is triggered, knows how to deploy the storage to the storage node that contains the data. And then it knows how to activate it in a secure way that there will be no harm. So, the regulator talk that you see here about storelets that you can attend. So, the idea here that storelets now can help us to achieve better network utilization when we want analytics. Because Swift is a good, cheap data object store that you can put your data. Spark is good with analytics. Now, you can use storelets to effectively take the data of what is actually needed for analytics and move it to the analytics to Spark. And the example that I show you is the exit metadata that I said before. So, on those images, they have a lot of exit metadata. And an example here. So, you can take a lot of packages and just go to Apache Commons, I think, and you take a package that extracts metadata, exit metadata from an image. It's actually a few lines of code in Java. So, you can take, and the image can be... This particular image is about 10 megabytes, I think, size. The exit metadata is about one kilobyte size. So, you can write a very simple application in Java using some open source package that extracts this metadata from an image. And now we will see how this works. I'm going to video the second one. So, I have images in my Swift. There are 314 images. These images are taken from my camera, and I just upload them to Swift. We can see here that they... Let's see how this image looks like. You will see it's a lot of pixels there. It's a large image. And so now what we do, we want... I wrote this storelet, this code that knows how to extract the exit metadata from an image, and the storelet is returning back as a response. So, you need to trigger this storelet. And the trigger is actually here. There are a couple of ways you can trigger it. One way is to add something to the container that will trigger the storelet. From this moment, when it will arrive to Swift, storelet engine will understand that there is need to activate storelet. It will get to the node, storage node, where the data actually located, this particular image. It will activate the storelet, and return back JSON file. And why we want JSON file? Because this is how Spark knows to work with it efficiently. And now we can have better network utilization because it transfer much less data on the network. So, we enter Spark shell, and we're going to use SQL to analyze this exit metadata. So, we define here the data source, and when we define this data source, we also have this trigger for a storelet. So, the storelet engine will understand inside Swift that storelet need to be activated. From this point, we use standard Spark. I mean, we just define the data set. This is a new feature in Spark that actually allows you to map JSON to table because JSON already contains schema. You have key value, key value, so they just use key to generate table for you. And this is print schema. You see that actually Spark understands what is this JSON about in creating the schema for me. And now I'm using standard SQL, and I'm going to understand to count all those ISO ratings that my camera used. But you can, of course, use here whatever you like. And I want to count all those ISO ratings of my camera. And you see this standard SQL with all the regular syntax. And now we have the result. So, this is the result. We see here that ISO 800 was 106 times in this one. So, we just took this information with the copy-paste to Excel, or I could store it as a text file and automatically load it in Excel, whatever you prefer, and I put it in Excel and created a graph that visualizes this ISO analytics. And the good thing that we transferred that we can have now a very small cluster of Spark because we don't need to transfer all those images in Spark and analyze them in Spark. We just transferred JSON files. And this is the summary. So Swift is great. It's a cheap, good, reliable object store. You can put your data and be confident that it's safe there. Spark is great to do analytics. And you can integrate them in a simple way, and do analytics in Spark. You can also use advanced features and transfer much less data over the network. And again, do the same analytics in Spark. Hi. I work on Sahara. So, my question for Spark and Swift integration in 1.1.0, is that being supported through the Hadoop OpenStack jar or is there another mechanism? The integration itself is through Hadoop OpenStack jar. Exactly. Thank you. Just compile it. So, one of the issues we're looking at in the next version of Sahara is dealing with authentication for Swift and how to get that into the Hadoop configuration under the covers. Do you have any... So, what you saw before, I just put those credentials inside the configuration and then Spark use this. You can provide them in runtime. The same way Spark access Amazon S3, you just need to provide those credentials for S3 to Spark. Exactly the same way you can provide them for Swift. I have an example, a simple Java application that you just provide your credentials in runtime and you don't need to store them in some configuration file. I mean, you can, but if you want to provide in runtime, you can also do it. Okay, thanks. I'm just wondering, these storelets can be part of the Spark script that we pushed to Swift or they should be there in Swift already and the Spark just points to them? Sorry, another storelet question. So, in the example that you have, are your storelets running in the object server or they're running object server or Swift or they're running separately elsewhere and accessing the Swift API? So, the storelets are not running. The storelets are objects inside Swift. They do it on the fly. So, you access Swift in the regular API and you just have this trigger in the container name. Trigger it to be a header. And then the storelet engine understand this and it activates the storelet on the storage node and it's streaming. So, it just streams whatever it needs. So, the access from the storelet to Swift goes through the proxy server? No, no, no, it's already on the... Thank you. Just to follow up on that question. So, are the storelets stored on the same object server node as the data that you're trying to compute? And do they run from that object server or is data transferred from... I was just trying to understand because you talked about data locality and the data is also going to be transferred? I think you mentioned in the slide that there's a detailed talk later on the storelet. Could you expand on that? Up. Up. Any other questions?


If you had a system of smart contracts in Oracle's in 2005 and 2007, it's very possible the 2008 financial crisis wouldn't have happened anywhere near to the degree that it did happen. This is Sergei Nazarov. He's the co-founder at Chainlink, a technology that connects blockchains with off-chain data by using Oracle's. Oracle's makes sure that value contained in smart contracts corresponds to the same value in the real world. Thus, they ensure trust in the emerging decentralized finance ecosystem. That we can actually prove that there's a certain amount of money in a bank account backing a stablecoin? The implementation of Oracle's is still far from being perfect. A few weeks ago, a series of hacks exploited a vulnerability in this technology, resulting in the theft of around $40 million. Have blockchain Oracle's become defi's weak points? And what is Chainlink's solution to the Oracle problem? To find out, join our latest Cointelegraph interview with Sergei Nazarov and Cointelegraph's tech editor Andrei Shevchenko. What do you think of the latest hacks? Just for context, there were like five hacks in the past month, taking a combined like $40 million that were all executed flashlights. So what do you think projects could have done better in that case? So I think there's two fundamentally faulty assumptions around the security of people's price discovery and price data mechanisms that need to be seriously revisited. The first assumption is that you can source price data into a defi protocol from a single exchange, from a single price discovery mechanism, whether that's an on-chain dex, pool, or a centralized exchange. It doesn't matter. The fundamental problem here is that 80 to 90% of those attacks that you're describing, they're using flash loans to manipulate a decentralized exchange or pool or some mechanism that creates on-chain price discovery. So the first foundational issue is, if you have a crypto asset in your defi protocol and that crypto asset is traded on 50 exchanges, you want a system that provides you an accurate global price across those 50 exchanges. You don't want to just take one exchange and hope for the best because if that one exchange becomes thinly traded or if somebody gets a flash loan, which essentially makes that exchange easier to manipulate in the case of an on-chain dex, then you're in a position where somebody controls the outcomes in your defi protocol. The reason that this initial set of attacks occurred and kind of has been continuing to occur is because they're extremely easy to implement. You don't need to hack anything. You don't need to even be particularly technical to achieve these attacks. All you need to do is take out a flash loan, which makes you well capitalized as an adversary and to apply that flash loans value towards manipulating the price of a dex, of a decentralized on-chain dex or pool or whatever we want to call the price discovery mechanism. And that's why on top of the idea that you never want to use a single exchange to define the price within your defi protocol, you definitely don't want that single thing to be that single price discovery mechanism to be an on-chain decentralized exchange or something like that. Because that is more than doubling your risk. Conversely, in our case with Chainlink, we source data from hundreds of exchanges. So Chainlink from the beginning was made to provide market coverage so that whatever asset we put on, we are sourcing data from many different data providers, connecting us to hundreds of exchanges, and therefore wherever volume shifts, Chainlink can properly represent the accurate global price. Yeah, absolutely. I guess some flash loan attacks are more like market manipulation rather than actual hacks. So this definitely is a complex problem in that sense. But to kind of go on a more general note here, I want to get your opinions on what do you think defi is going into right now. So obviously with the summer of yield farming, let's say, we saw a lot of new projects and a lot of them were maybe questionable, but a lot of them were also good, so overall the sector had a lot of evolution during that summer. And do you think that the ecosystem is actually going in the right direction right now in terms of utility, in terms of just being useful to the world in a sense? Yeah, I think it's extreme. I'm very impressed by a lot of the teams we work with at Synthetix and Ave and Urine and a number of other places. I think there's two kind of fascinating dynamics unfolding literally before our eyes that some people appreciate and aren't clear to other people. So the first one is composability and the ability to implement essentially a service-oriented architecture on Chain, where a piece of the Ave protocol can be used by Synthetix or a piece of Synthetix can be used by Urine or a piece of Urine can be used by Ave. So instead of building their own separate pieces that are of lower quality for their own private use, you're starting to see a kind of templating of how certain operations in the block chain-based finance landscape happen. And I think what that's going to evolve into is to some kind of standards, like the ERC-20 standard created a standard for tokens. You're going to have ways that people say, you know, that's how I do that for a financial product within a block chain. And there's more and more focus on making a single good kind of on-chain service in the form of a contract that other contracts can use. The second great thing I think is the generation of yield. So the ability for people to get yield trustlessly, especially in an environment where inflation is rising and yield in the traditional financial markets is falling, is creating a very, very sharp contrast. You simply can't ignore that you can get 0.5 or 0.1% yield on an asset in the traditional financial world. Whereas in crypto, you can get between 1% to 8% on the same fiat currency in the form of a stablecoin or if it's Bitcoin or whatever it is. And so if that big gap in yield continues to perpetuate itself just through normal market conditions in the global financial system and the DeFi landscape continues to have better and better collateral, better and better kind of composable building blocks, better and better oracles that feed in more and more high quality data for the creation of more and more markets. While the global financial system continues to generate no yield and the pressure of inflation drives people to seek mechanisms to maintain the value that they have in whatever format they can get it into, then the crypto format as a way to maintain value I think is going to be an extremely powerful force if it continues to develop the way it's developing. And in our case, our goal is to provide really reliable oracles, price oracles, so that the type of issues we just discussed don't happen. And the overall reliability and usability of DeFi is maintained through the provision of accurate price data as well as oracles for various other types of data. Yeah, it's actually a very interesting and to your point about yield, I guess I have kind of a follow-up question here, which is, so the promise of DeFi in a sense is to be, for example, decentralized bank, right? So to have real world users, for example, if I want to buy a car on loan, I can do that through DeFi eventually, right? So in terms of yield, to connect that a little bit, so what do you think will be the sources of yield in the future? And do you see maybe DeFi kind of needing to expand beyond the crypto-to-crypto interactions and just into the real world? And can Chainlink maybe facilitate that? Yeah, yeah, I think that's definitely going to happen and I think you already see one type of diversification. And funnily enough, it is a kind of crypto asset, but it's a little bit different. On the one hand, I think you have all these kind of cryptocurrencies and crypto assets and all those things. On the other hand, I think you see NFTs. So NFTs, interestingly enough, are generating their own category of assets that are not necessarily based on the value of crypto. They're based on the scarcity and the value of a digital good in a game or even just as a piece of art or some kind of rare scarce digital good generated on a blockchain. In the case of NFTs, what would we provide to more and more folks now is something called Chainlink VRF. Chainlink VRF generates on-chain verifiable randomness. So randomness is very important for the generation of NFTs because you want to know that the system that made NFTs didn't generate a bad NFT for you but a good NFT for someone else. People want to know that the NFTs are generated fairly so that their scarcity and their ungameability is maintained as an underpinning of their value. I think the next group after NFTs and gaming-based collateral is insurance. So we are doing a large amount of work with people in the insurance industry right now. We already have a few systems that are using or working on using Chainlink in different ways for providing weather insurance to farmers and actually a few of those folks are doing that now in different parts of the world. And what I think will happen and what I think is very logical is that the insurance cash flows that are essentially proven on chain at this point and all the information about the insurance relationship is on chain. Those cash flows can be turned into their own kind of asset, into their own collateral, into their own some kind of securitized or derivative workers or something like that. And now you'll have cryptocurrencies, stablecoins, you'll have gaming and you'll have insurance cash flows. In terms of the stablecoins actually and actually the transfer of tokens from other chains into environments that can use them, we also have something called proof of reserve where thus far we've been using it to prove the accuracy of the WBTC system and that there's actually Bitcoin, backingrap Bitcoin. But I think what you've recently seen is us expanding it into stablecoins so that we can actually prove that there's a certain amount of money in a bank account backing a stablecoin. And that's not an annual audit that's like an automated audit every 10 minutes, every hour, every day, proving that the assets backing the stablecoin are in a bank account. The kind of final stage will be this very advanced stage where we're able to prove things about real world assets and improving things about real world assets like the value of real estate or the value of some other off chain asset. In being able to prove the ongoing current value of those assets will be able to show a lot of reliability to the kind of DeFi ecosystem for that asset. What it'll evolve into is us proving various things about many different off chain assets that are not yet on chain and that proof will enable them to come on chain. Yeah, absolutely. So I think definitely something that people look forward to with oracles. I guess I have a small question here. It's probably a very complex topic, but how automated can these things become? Like for example, checking the bank account of stablecoin, like how can you be for example sure that the bank account is not lying to the oracles somehow? So it's different categories of risk management, right? You basically have to think about what are your current risks and what are the risks that you'll eliminate? There will always be new risks or some version of risk that you acquire in the use of oracles to verify things about assets. If you're looking at a stablecoin and you're thinking, well, how do I know the stablecoin has assets in its bank account? And one answer could be, hey, they're going to use Ernst and Young. They're going to use some accounting firm that is going to audit them once a year. Okay, that's one level of risk that you as a stablecoin holder, as a stablecoin user, as a DeFi protocol using stablecoins within your DeFi protocol to the tune of billions of dollars that you can become comfortable with that risk and you can decide that's a risk I'm comfortable with. It's not great because at the end of the day you have situations like Wirecard that you basically find even large globally traded public companies can somehow find a way to get around these types of controls and these types of audits. So I think what the oracle networks in this case will do is they will provide a very different automated auditing function. And so now your risks are not, do I wait one year for people to manually check this asset? But do I have an oracle network that I can rely on? Hopefully in the case of Chainlink, you can say, yes, I have an oracle network that can verifiably and reliably check things for me. Independent of, you know, blockchain's operation and independent of the data source it's checking. But I actually think there is a kind of middle of the road option where you don't force the bank or the centralized lender or whoever to go completely on chain.  And there's no reason why an oracle network can't go and assess the value of real estate, assess the solvency of an enterprise, assess the state of bank accounts or gold accounts or whatever other account to prove that the on chain asset that represents those things is in sync with reality. And in fact, the fascinating thing is that if you had a system of smart contracts and oracles in 2005 and six and seven, it's very possible that 2008 financial crisis wouldn't have happened anywhere near to the degree that it did happen. Because you might have had a system that was able to check the credit worthiness of various holders of mortgages and the value of various houses and combine all those things into smart contracts on a kind of loan hold. Loan holder by loan holder basis. And I think that transparency would have really softened the boom and bust cycle of the 2008 global financial crisis. Absolutely, that's a very interesting point. Although I guess institutions will need to agree to do that. But in any case, I had a personal curiosity actually like this is going to be the last question.  And I'm curious, why don't I hear that before? Why don't I see projects building on top of that? So, and my first thought is maybe that, for example, in Ethereum, the gas fees are too high to do this consistently. But maybe there's something else going on here. Yeah, so that feature is a feature that some people utilize in some of their applications. I think what this all comes down to is the foundational fundamental value of smart contracts. And the question that smart contracts provided answer to is how can I achieve hyper automation for billions of dollars, eliminating people and various people based systems as checks. So once you achieve a certain level of security and combine that with a certain degree of usability, you see an explosion in what people do in our industry. You see them, you see everybody making tokens or you see everybody doing private key voting and calling it a Dow. Because that functionality has now reached the point where if you build it, it won't be just a POC that you won't put real value or usage or funds behind. It'll be something that you can put millions or billions of dollars into, right? And so, yes, you can go use a single HTTP request. Some people do that for the initial things they built. But the foundational value of Chainlink and of smart contracts is very much the same in that it provides hyper reliability. Smart contracts provide hyper reliability for smart contract state and for the ability to define the relationship between parties and between various outcomes in a state machine that is proven to execute the way it was written under all conditions. And in the case of Chainlink, if you look at the reference data networks and the price feeds that people use and even some of the weather feeds that are starting to use and look at, you see decentralization. You see a multitude of different oracle notes. And what that's a really big part of what Chainlink does is it allows people to compose different oracles run by different people, different institutions, different entities into an oracle network. That creates one level of reliability and then it also provides access to a multitude of different data sources. What you really want and any system that doesn't give you this has serious flaws is an extreme level of decentralization at the oracle mechanism level and whatever level of decentralization that's realistic to achieve at the data source level. And in achieving those two things, you approach this extreme reliability for externally connected smart contracts, such as the ones in DeFi, such as the ones in decentralized insurance. You could go and generate an HTTP request to a single source exchange from a Chainlink node that you run. You could do that and you could use that to build a system and that could work. But it's not clear to me that once you have millions or tens of millions or hundreds of millions of dollars in that system, you wouldn't need to then use the Chainlink network to combine another oracle network around multiple data sources. And then what our system is actually architected to do is to scale with the value secured. So if the value secured by Chainlink goes past five billion to six billion, seven billion, past whatever amount, the Chainlink oracle networks increase in size. And as they increase in size, they can also decide to increase the amount of data sources. And these are the things that are really the bigger future questions of once we achieve tens of billions of dollars secured, how do we properly scale the security of oracle mechanisms and the security of data sources. And that's part of what you're seeing also as we started with flash loan attacks is that the value secured has massively outstripped the security of the oracle mechanism in that case. And that mismatch has led adversaries to exploit the DeFi protocols with enough value, but weak enough oracle mechanisms for price data. And so that's the continual problem that we need to solve as the value in DeFi continues to increase. Yeah, absolutely makes sense. I guess the gist of it is that if you use that, you would need to basically recreate Chainlink's security model, right? Exactly. An extreme pleasure to talk with you and I hope that YouTube would like this interview. And as always, subscribe to the channel and see you next time. Yep, great sharing with you. Thank you very much.


Welcome back everyone to another episode.  I don't know what I'm doing wrong I think I need to figure out a better game plan because this is really tough So so far. Let's check out our equipment. I've got good equipment. I know for a fact. I do but maybe Maybe that'll maybe I should reinforce this strength ring. So here's what I'm gonna do I'm gonna go into Orton items and we're gonna we're going to Use a fun-sized forge Because we can use it here Let's see. What what should we do? We should rework an item Let's leave. Let's forge recently learned what a recipes steel broadsword. We know how to make that. I Can't go quit equip that a steel shield I need more silver or more glass for it and I sold my glass for it so I'm a lot of that Silver right here. No, it's not gonna work rework an item. I Could work rework that higher I've only got a few perfectionist pearls though this How many would that take you details Seven No, sir. How about I know what I need is defense The helmet the armor The shield Six. Yeah, sure Okay, this is gonna be tough So we're gonna use the double-edged bash here Actually, we could use a regular bash first Okay, not bad not bad at all Wow Yes, not good. That was not good. Hey, all right.  We'll try finishing up like that. If I hadn't messed it up the corner It would have been really good That's one. All right, let's try Proper or let's just do this to get the to get the the perfectionist pearls Let's try this one first actually Flourishes will use lightning bash Okay, finish Should be good enough. I just want the pearls Round sword plus two rework accessories a ring rework an item strength ring Girls needed or seven Yeah, I don't have enough but I couldn't rework that if I I'm really in a kind of a struggle here The defense is relatively high Gotta figure out my game plan for now All right, we're gonna try this one more time. Oh, yeah, let me see Character builder. Oh, here we go. All right luminary. What does that do? back power when wielding metal slash Critical hit chance when wielding I can't rid of that That'll do something. I think I've got an idea. So this will make me tougher Talk to this guy rectification 20 gold. Yeah, sure. All right, so I'm gonna free up a bunch of points 460. All right Let the category Need more money to free up those skill points Maybe we'll just try it again Problems, you don't have a lot of money in this Kind of broke right now. All right, we're gonna trust one more time. All right, Robin Jade. You're going down this time Our rab you're done. You're done for a rab. You know why? That said so Okay, yeah, hit him.  You said that situation It's not gonna help you Come on rab you're on down No, no, no Harvest moon Okay, rab Yes, he healed me. I was counting on him. I think he's a pet power move Okay, I'm awake. I'm awake. Keep hitting rab. Keep hitting him He's actually tougher.  Oh No, you're not mid healing buddy. You're not yeah, you're not healing on my watch snooze I The heal myself back to you smash. Oh, you're gonna mid heal. Do I have any? It's not enough these wake up vents Okay, thank you. I Why didn't he heal me? No, oh My goodness. We're trying just one more time one more time. We're going right at it.  Yeah, let's go for it. Okay Gonna keep trying until you win All right skipping this skipping this Let's go rab and Jade Just what you've got All right It rab hit him hit the old man. I'm gonna heal myself because That's that would be the smart thing to do He missed nice Keep attacking the old man I keep my health high.  Oh that didn't do much actually. Oh Like sweep. I'm on the floor Take me in the face while I'm on the ground Thanks Thanks, man. All right. Keep attacking rab. Oh, you're not you're not doing that. You're not me healing Do events can't pep up. All right, almost there almost have him down Missed again, huh? You're supposed to hit the old man. Okay I'm gonna send a heal myself Yeah, that would have killed me Yeah, that helped Yeah, we're we're not done yet Why does she keep doing that? That's so not not cool at all Well, they're both they're both almost done. Oh, you're hitting the guy who has unlimited HP. That's a smart idea Thank you He's a lot of magic. He's a lot of magic. You know that means I'm just time to hit her because Okay, I'm the tiger, baby Okay, nice. We beat the old man, which means it's time to beat this girl up harvest moon It's almost done.  Oh wow, so we we beat them Nice job Vince We won We actually won Well, we finally won which means we're gonna get the rainbow Yeah, of course, they're pretty good Vince. Oh, I can't sell that. Oh, what's happening to him?  I got hurt though Hope he's okay Congrats as there's credible stuff out there. She might have an events though They're postponing the war center until it's better. Oh Man, well free free accommodation at the end that sounds good to me soon rainbow Soon you'll be ours. I Guess rap and jade will be getting that since their second prize winners All right, we'll head off Let's talk to everybody now that we are the winners.  Oh, this is the lady who's and who's underwear drawer I pretty much raided and I took give it to Serena Gave her used underwear from some random woman. Hey, man, that's Vince's buddy The fact is this is not the first time Vince's collapse like that now.   Hey, man, how's it going?  So it's the tough. You'll buy one you get you're gonna be just like him Oh Hey, good to see you fell the where I mean I don't mention shady So he's selling something that makes me strong.  Oh boy. I gotta have it. How much do you want? He's gonna this guy's so gullible that he'll buy whatever this guy's selling him But check up on Vince make sure he's okay. I don't know Head over to his room how the door is locked That's unfortunate. Let's go stay at the end. We do have a free night after all. Where's the others? Um, I need them to congratulate me. Yeah, thanks Veronica She's bored of events. Yeah, we'll head to our rooms. Oh She's proud of me They're all afraid of what's gonna happen Vince It would be a while after you win, but nobody's in the party mood They're not really interested in celebrating Hey, they're champ The pair you being the final really something. Yeah, they're tough Rob and Jade were really tough Well, we'll head up. We'll head onwards Part of events were all in shock Pay. Oh, well, that was nice of them knock at the door Rob. Oh, sure come in I was hoping to speak to your pals, too Could you ask them to join? Yeah, sure. I'll go find them wherever they are the last year was fighting within the tournament She's missing I've looked all over town, but she's nowhere to be found. Maybe she got kidnapped worry She's got herself caught up in something Will you help an old man look for his we friend?  I'm sure we'll find her in no He's a nice guy Affinage she was investigating there or something Wonder what she was doing there Head on downwards to the orphanage. Hey man The rainbows all mine. Oh Yeah, they do get the yellow orb after all and there's rab Run a star search there. So raps follow me around All right, so the orphanage should be up here and here it is Oh, the kids are freaking out. What's going on? Vince is gone Something super weird to happen in the garden downstairs, too Veronica, what do you think? Eric, what do you think? Well, I guess I am the champion No, the kids are freaking out. He's gone Let's go check his room if he's gone and that's not good. What are these blue things that he had? Investigate his room a little bit. Here we go There's a book called memories of a treasure hunter volume one The journal tells the tale of the adventures of a humble treasure hunter I hope that I might prove at least amusing diversion for those who choose to read it Pseudo nim is his name. That's a good name Pseudo nim So what prompted me to set out on my quest? Well, this word this team chief ministers offer 1 million gold for an artifact Hundreds of years ago when the luminary return from H. Rizali brought something back with him the rain bow When I heard that this little stick could make me a millionaire. I didn't even take the time to pack I was on the road in a flash and so He's looking for the rainbow so Vince claims to not know much about the rainbob. I mean only has a book in his room It tells you all about how it's worth millions of dollars Well, they said something weird is going on downstairs. Let's head downstairs All right, this is the place where the garden where me and Vince were hanging out talking. Whoa. Whoa. What the heck? When we realized uncle Vince was missing we searched the orphanage and they found a staircase link underground That's highly suspicious So I think I know what's going on. They must have gone down there. We should save What the kids saying? They're scared. I'm gonna save it like the child's priest upstairs, and then we'll head down that downwards Alright, we're gonna save All right, let's head onwards Caverns under octagonia. This is really strange Go on team. I hate of Veronica is not following us like can't she just falls too. I Feel so empty without her Let's go like a maze Can't afford to get lost If this was a 2d mode, we probably would get lost because you don't map. I want to change my lineup actually I think I'd like to swap out Him with Veronica. All right. There's my little boar. Hey Piglet caverns like is under the orphanage. It's all very suspicious People maybe there are people out of red drag keys Can I even go to go over here? It's probably something hidden here like a Angle web. That's not worth a lot. All right moving onwards. There's zombies here I'd be careful. There's a lot of webs here. Oh The zombies don't want to kind of want a piece of us all under here Now left or right Kind of want to go right to see if there's any treasure. There's always treasure at the end of these halls That was close as Jackie's almost got us don't go silver or nice Okay, those drag keys almost got us I came from the left, which means I should keep going straight and I'll hug the ball here It looks like there's not much over there. So We'll keep moving. Oh Zombie did not see that. Oh No spells. Oh nice rabbit stuff And Veronica's not tough can't cast spells And of course you missed Did she cast spells again? No, she can't I forgot I got rid of everybody's good equipment I might have to go back to the equipment shop and get some better equipment because What I've got going on here is not gonna work out bang He ten for that though All right, let's head back actually Well, actually I should probably grind a little bit and get some money and exp Let's do this. Oh Metal slime Please work, please work One Please work. No Please please, please. Oh nice, Rob One more one more. No, no, I almost had it. I almost had it. No You don't know how bad that feels if I had savanna, I probably would have No, wait, not a barrier We're gonna just grind a bit. Oh Rob's really got the good feeling abilities All right Maybe there'll be more metal slimes down here if I keep running around There are more damn it. Okay damn. Okay Metal slime. Okay, nice one hit No, it's gonna run. It's gonna run. It's gonna run.    Oh Nice Three metal slimes. All right. Metal slime a was that Okay, I don't slime a we're gonna talk. No Dude Yes, it's gonna run. It's gonna run Please work. Please work. No, it's gonna run. It's gonna run. It's gonna run. Oh, I Hate them so much. I hate those things so much There's so many metal slimes in this cave Anybody have a good spell to use? I wonder if I if I do a handy heal Okay, all right, you're dead Sizz on these guys I'm poisoned Like he's whoosh That's a good. That's a good spell Made hail. All right, we'll attack that dracolite All right, now we'll whoosh them And a Serena actually got the final hit. It's not bad. Keep on going Almost got that baddie Some enemies here some clockwork cuckoos That's not gonna do anything Well, I need as a new ability I didn't do anything either. Wow, they're really not It's really not working this Slime slash did well. He won out of magic Rav's ability is really good Let's let's explore this cave a little more and then we'll go back. There's got to be a chest around here, right? There we go Assassin's dagger. All right, let's see. Oh, that's actually really good Probably reworked that All right, let's just kill these guys first. Oh, he has a pep hour He has a pep hour that works on With just him pepped and he only he needs to be pepper to work All right, this will be good and I might as well use Sizz It's a quarter of this so awesome Dead. No not dead yet. Oh Thanks for that Rob. All right. Nice Erica's level 15 his HP MP strength resilience everything went up a lot. So if I use this on knives, I Can make his attack power when we'll link up plus five Crit chance still wielding Yeah, I can do that. Okay. That's okay. I see how it is now I had I Had eight so now I only have that many that'll make a sword way more powerful, but I Don't have that anymore. So oh She has some stuff to use Let's see. Oh, Silvando has a lot Look at that. I Should make a sword's way more. I should make a sword's more powerful five plus five crit chance nine Charm plus 10 Silbering slap weight Cobra strike Interesting, maybe Silvando should have a knife like if I give him this one on plus 10 Let's see. Wow. Look at all it look at look at these stat boosts he can get occasionally invent him Let's see victimizer persecutor huh I'm just looking sobering slap tap dance bottle dance Charm He's got good moves I'll look for something good. I'll increase his charm and That looks good for now. I was trying to attack the dude not talk to you. All right. Now we're in oh It's uh, it's Eric. Oh, thanks, Rob He's whoosh on them right she says Okay, not bad Rob is a good healer. Oh Silvando got poisoned. Oh Wow, she that was a lot He just leveled up nice Fizzle Sure, let's see what she's got Magical mending if I had 10 I would do that wait a minute. What's how much is this one cost him a fire? If I had the money, I would actually get rid of that and give her this but I don't have that kind of cash Just to find a mixture Her level up you just gave her more Power Okay, so let's get the straight 861 gold I didn't kill that metal slime that would be more well, it's not so our metal slimes. I hate them so much There's something you need to call metal slash which sometimes kills them. I was at that dead knot Come here, buddy You can get you can get them to come here by hitting them with narrow Come on. Oh, you got the first attack. Oh Him I wasn't too bad Okay, nice. We could kill one of the dead knots. Oh sure that did not would die Beesh, okay. I'm almost dead. Well, I did nothing but it was one hit one hit hit Okay. All right, nice job team Let's do this. Let's give savando He says the dagger over platter. No Elevating vest the error visit visit Best whatever that is Extra money. Yeah, I could use that I'm looking at this equipment. We've got going Broad sore bronze sword plus two bronze four plus three. Let's see. Wait, wait. Oh, it's like For tonight. I'm just fun size for just use this I want to see if we can make something good like a maximum focus increase Swords That'll be really good for Eric, but the thing is this will be really good for Eric Or just missing materials you can wait we can do that now The cost is 165 gold coins. I don't have 165 gold coins. That's a lot of money Silver or my own one. I need more iron ore that will allow him to be tougher. I Forget it forge armor. Let's see Shield You can equip it That'll be good for him and for his uniform Plate armor looks like there's not much to get there for those Few things We'll do a little more grinding Alright, alright.   How you missed 14? Okay, not bad I'll over a thousand gold right now. That should be enough to get everyone some good equipment Hopefully I'm just going deeper and deeper into the cave though I'm gonna head back regroup and then we'll get some better equipment or something back here Oh by treasure hunting, you know, you know how it is Chunk of silver or oh Did not see him He's whole crap like I hope I can beat him We're not tough yet, but soon we're gonna be really tough No, wow That must be all my magic I have left Doreen is magic is actually not that bad The Vando works better with a knife. Let me honest not bad not bad fellas Pept up. Good job folks and he is leveled up Actually, I think I do want to do character builder Not for her for him. I think it'll be something good Or maybe we can wait a little bit Okay, we're gonna go back through here. We're gonna head back to town Save in town and then we're gonna get better equipment because Trust me. We're not ready for the next boss. But the next boss is really really tough I've already you know beaten him last year. It was it was a little too much. So let's head on back Regroup and Formulate a new strategy plan Okay We're here, I believe that's where the entrance was Okay up these stairs Yeah, we're just not ready to fight those guys. I need everyone to level up. He's a couple of more levels I also need more money. Where can I get money? Only there was a place to get money around here. I was a free bed here. I'll Gladly take that free bed Hey kids, don't mind me. Wait, what's this kid saying? You're feeling tired. You can use the beds here. All right, sure I'll take that offer. All right nice whole refresh and everything and I got some money so we could go you spend this money To make my other guys stronger like Eric who needs who desperately needs to be stronger All right, that's the armor shop. Let's get their armor better because the armor is the first priority So they can last the least All right, that would make his head stronger Iron helmet will make Silvando stronger. They can't equip these That would be good, but it's way too much money That'll be good that Can't equip that the gold platter would work well for Silvando. I need to get him to that iron helmet That'll be good for him also Look of evasion. All right, so ten on out Feel broadsword is really expensive, but and I wouldn't even make that big of a difference if I'm being honest Looking at what I have What if I sell some stuff I got Dover or mystifying mixture Use a single enemy Maybe I should hold on to that, but it looks useful looks like something I can It looks like something that I could sell to get money quickly Now I think we'll hold on to this stuff for for now Yeah, the DLC equipment that these guys have equipped It's already really good. I'm sure there's actually something I can use a seed of skill six of them That's a lot Let's use these An extra skill point upon anyone who needs it. Let me look at this Character builder who needs one So let's see Silvando has seven right?  So how many was that? three Okay, I'm gonna I'm gonna get rid of some of his skill points Eric I'm gonna get rid of his knives Yeah, sure Veronica She's okay Serena.  I'll get rid of it Silvando. No, he's good Uh Veronica, Eric, me. Okay. All right, we're gonna do this now We're gonna fix character builder up. So now Veronica is going to have He only has four but she'll she'll have more for later Serena on the other hand will have magical mending plus 30 plus 30. Look at that That's a crazy good That is crazy.  All right, Silvando. What do you got going here? Agility plus 20. I don't have enough for that yet, but But Eric on the other hand I need to give him two more seed skills skills of you know seeds, right? And I need five from me So I'll give Eric two and then eventually I'll be able to use the rest. So we'll do we'll go into the item bag This on Eric More on Eric There we go. So now Eric has enough to to get the next level. So Attack power one wielding plus 20. Yeah. Yeah, I want that How was this? miracle slash nice let's go back into the Fun size forge Okay, so fun size forge we're going back into fun size forge Forge weapon a sword The sword we need for Eric is the steel broadsword obviously It'll do it'll do a big a big difference Costs us 444 gold coins Huh, what if I sell the sword that he's already holding? What will that do?  Yeah, I'll sell you those for 50 because My use my use underwear. I'll sell you for 50 dollars All right, what else can we sell? Ah, here we go. All right now now we can do this fun size forge Okay, swords steel broadsword. That'll be good for him. Well, wait a minute What about armor? Is there any armor I can do for him? Not really right Nah Nope Nah, wait, wait, that's tricky turban. That is no point But I could forge the the sword the steel broadsword for him Well, let me see what you have for 1000. Yeah Hopefully it comes out. All right Okay, let's do this Come on One more one more Yes a praise Pretty well, so that's good enough for me. That's good enough for me nice It's plus one. It's good enough. Good enough for me.  He looks so smug like yeah, I got myself a sword What about it my sword? All right, not bad. Everyone's got good equipment now And I'm completely broke. Yep Not it's not easy being broke in this game Probably get some strong medicine actually Form is over. Can't sleep wrong medicine He has a bunch tough guy tattoo The sticker will make you stronger Well, that's actually kind of cool. Maybe if I become richer, I'll get that Gonna hold it. I think Eric should hold it I'll set up to the church Save here. All right. That's not too bad So anyway, I think this is a good place to stop. I'm gonna end this today's episode here Thanks for watching and I'll see you guys next time when we venture down to that cave and try to see what's going on here Bye


The formation of persistent soil organic matter is influenced by environmental factors such as temperature and moisture levels. Therefore, it is important to consider both particulate organic matter and mineral associated organic matter when developing effective management strategies. This article was authored by Garrett Angst, Kevin E. Mueller, Michael J. Castelliano, and others.